fix(tmux): dual bar layout — tabs top, sessions bottom - #656
Conversation
…-border - Top: pane-border with system info (git, CPU, RAM, clock) - Bottom line 0: native clickable window tabs - Bottom line 1: clickable session list + Genie version (right) - Fix update-check to use @automagik/genie (scoped package) - Only show update notice when npm version is actually newer
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: ASSERTIVE Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
📝 Coding Plan
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Summary of ChangesHello, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! This pull request significantly enhances the user experience of the Genie TUI by introducing a more organized and informative tmux layout. It separates window management and session navigation into distinct, clickable status bars, while also providing crucial system information directly in the pane-border. Additionally, the update mechanism for Genie has been made more robust and accurate. Highlights
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for GitHub and other Google products, sign up here. Footnotes
|
There was a problem hiding this comment.
Code Review
This pull request refactors the tmux layout to a dual-bar design, separating window tabs from session information and moving system stats to the pane border. It also updates the genie-update-check.sh script to query the correct scoped npm package and improves the version comparison logic to prevent false positives for development builds. My review focuses on ensuring the portability of the shell scripts. I've added one comment regarding the version comparison method in the update check script to improve its compatibility across different environments.
| older=$(printf '%s\n%s\n' "$current_version" "$latest_version" | sort -V | head -1) | ||
| if [[ "$older" == "$current_version" ]]; then |
There was a problem hiding this comment.
The sort -V flag for version sorting is a GNU extension and may not be available or behave identically on all systems, particularly older macOS versions that use BSD sort. This could lead to incorrect version comparison results. Given that other scripts in this project handle OS-specific differences (e.g., for Linux vs. Darwin), consider adding a fallback for non-GNU environments or using a more portable version comparison method to ensure consistent behavior across platforms.
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 6793dd80cb
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| set -g pane-active-border-style "fg=#7b2ff7" | ||
| set -g pane-border-status off | ||
| set -g pane-border-status top | ||
| set -g pane-border-format "#[bg=#1a1a2e,fg=#e0e0e0]#[align=right]#[fg=#6c6c8a]#($HOME/.genie/scripts/genie-git.sh) #[fg=#0f3460]| #[fg=#00d2ff]CPU #($HOME/.genie/scripts/cpu-info.sh) #[fg=#0f3460]| #[fg=#00d2ff]RAM #($HOME/.genie/scripts/ram-info.sh) #[fg=#0f3460]| #[fg=#e0e0e0]%H:%M " |
There was a problem hiding this comment.
Avoid running shell metrics in per-pane border format
Moving #($HOME/.genie/scripts/genie-git.sh), cpu-info.sh, and ram-info.sh into pane-border-format makes tmux execute those commands for every pane border render, not once per status line. In multi-pane layouts this scales linearly with pane count and can noticeably increase shell-process churn and UI lag compared to the previous status-right placement, especially because the format is now attached to each pane via pane-border-status top.
Useful? React with 👍 / 👎.
…-border (#656) - Top: pane-border with system info (git, CPU, RAM, clock) - Bottom line 0: native clickable window tabs - Bottom line 1: clickable session list + Genie version (right) - Fix update-check to use @automagik/genie (scoped package) - Only show update notice when npm version is actually newer Co-authored-by: Genie <genie@automagik.ai>
Summary
genie-update-check.shto query@automagik/genie(not the old unscoped package)Test plan