@automagik/genie 3.260322.1 → 3.260322.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/git-cliff/CHANGELOG.md +1 -18
- package/package.json +7 -3
- package/scripts/tmux/genie.tmux.conf +52 -38
package/git-cliff/CHANGELOG.md
CHANGED
|
@@ -1,24 +1,7 @@
|
|
|
1
1
|
|
|
2
2
|
|
|
3
|
-
### 🚀 Features
|
|
4
|
-
- **core:** auto-create tmux session in ensureTeamWindow for --session flag ([`90fa22b`](https://github.com/automagik-dev/genie/commit/90fa22b2363a69e732f96daddc38347a730f2ff8))
|
|
5
|
-
- **session:** replace --resume UUID with --continue by session name (#663) ([`6ccaff5`](https://github.com/automagik-dev/genie/commit/6ccaff512b36b02d7af5f92fc639bf4a742c6f4b))
|
|
6
|
-
- **core:** folder-based sessions, run-in-current-tab, agent bottom bar ([`4d15229`](https://github.com/automagik-dev/genie/commit/4d15229d6f7c4eee9fd207a4c0401ef2b8f83897))
|
|
7
|
-
- **history:** provider-agnostic transcript reader (#670) ([`d289fef`](https://github.com/automagik-dev/genie/commit/d289fef8c54a7ab1f0d2c1d32ba7c66a8bea8c0d))
|
|
8
|
-
|
|
9
3
|
### 🐛 Bug Fixes
|
|
10
|
-
- **
|
|
11
|
-
- **test:** update protocol-router-session tests for --continue (was --resume) ([`e9db2cb`](https://github.com/automagik-dev/genie/commit/e9db2cb10fca4e3bc069d5a785f3c5418766c2b9))
|
|
12
|
-
- **core:** resolve lint errors from cherry-pick conflicts ([`155570d`](https://github.com/automagik-dev/genie/commit/155570d57e31a629a6cd17dac22769b0fb4de697))
|
|
13
|
-
- **claude-logs:** replace dots with dashes in project path hash ([`8230d58`](https://github.com/automagik-dev/genie/commit/8230d58544895c394249f7752cdae13571dcda26))
|
|
14
|
-
- **session:** remove remaining hardcoded 'genie' session references ([`e376ef0`](https://github.com/automagik-dev/genie/commit/e376ef0848511f03735954ea554ff580ceaf2319))
|
|
15
|
-
- **session:** drop hardcoded 'genie' session name and UUID session IDs ([`c299737`](https://github.com/automagik-dev/genie/commit/c299737537fa2c2bc35c1910ffc26f1c08dbba63))
|
|
16
|
-
|
|
17
|
-
### 📚 Documentation
|
|
18
|
-
- **core:** update skills and agent docs for transcript system ([`e835ce1`](https://github.com/automagik-dev/genie/commit/e835ce188dc838eedba941d236008097a783d057))
|
|
4
|
+
- **tmux:** rebuild TUI — 3-bar layout with clickable sessions and windows ([`710851d`](https://github.com/automagik-dev/genie/commit/710851dd552f16b3473efda136f9f4362414c8d2))
|
|
19
5
|
|
|
20
6
|
### 👥 Contributors
|
|
21
7
|
- [@genie](https://github.com/genie) 🤖
|
|
22
|
-
- Luís Sousa
|
|
23
|
-
- [@namastex888](https://github.com/namastex888)
|
|
24
|
-
- Luís
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@automagik/genie",
|
|
3
|
-
"version": "3.260322.
|
|
3
|
+
"version": "3.260322.2",
|
|
4
4
|
"description": "Collaborative terminal toolkit for human + AI workflows",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -46,7 +46,9 @@
|
|
|
46
46
|
"url": "git+https://github.com/automagik-dev/genie.git"
|
|
47
47
|
},
|
|
48
48
|
"openclaw": {
|
|
49
|
-
"extensions": [
|
|
49
|
+
"extensions": [
|
|
50
|
+
"./plugins/genie/index.ts"
|
|
51
|
+
]
|
|
50
52
|
},
|
|
51
53
|
"engines": {
|
|
52
54
|
"bun": ">=1.3.10"
|
|
@@ -54,5 +56,7 @@
|
|
|
54
56
|
"publishConfig": {
|
|
55
57
|
"access": "public"
|
|
56
58
|
},
|
|
57
|
-
"trustedDependencies": [
|
|
59
|
+
"trustedDependencies": [
|
|
60
|
+
"@biomejs/biome"
|
|
61
|
+
]
|
|
58
62
|
}
|
|
@@ -1,7 +1,12 @@
|
|
|
1
1
|
# ============================================================================
|
|
2
2
|
# Genie TUI — tmux configuration
|
|
3
3
|
# Dark theme with purple/cyan/gold palette
|
|
4
|
-
# Native tmux
|
|
4
|
+
# Native tmux 3.3+, zero plugins
|
|
5
|
+
#
|
|
6
|
+
# Layout:
|
|
7
|
+
# TOP: pane-border — left: version + folder | right: git, CPU, RAM, time
|
|
8
|
+
# BOTTOM: status line 0 — window tabs for current session (clickable)
|
|
9
|
+
# status line 1 — agent sessions list (clickable to switch)
|
|
5
10
|
# ============================================================================
|
|
6
11
|
|
|
7
12
|
# --- Terminal & basics ---
|
|
@@ -45,45 +50,44 @@ setw -g mode-style "bg=#7b2ff7,fg=#e0e0e0"
|
|
|
45
50
|
setw -g clock-mode-colour "#7b2ff7"
|
|
46
51
|
|
|
47
52
|
# ============================================================================
|
|
48
|
-
#
|
|
53
|
+
# TOP BAR — pane-border: left = branding + folder | right = git, CPU, RAM, time
|
|
49
54
|
# ============================================================================
|
|
50
|
-
set -g status
|
|
51
|
-
set -g
|
|
52
|
-
set -g
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
#
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
55
|
+
set -g pane-border-status top
|
|
56
|
+
set -g pane-border-lines heavy
|
|
57
|
+
set -g pane-border-format "\
|
|
58
|
+
#[align=left,bg=#16213e,fg=#e0e0e0]\
|
|
59
|
+
#[fg=#7b2ff7,bold]Genie#[fg=#6c6c8a,nobold] #(genie --version 2>/dev/null | head -1 || echo '?') \
|
|
60
|
+
#[fg=#0f3460]│ \
|
|
61
|
+
#[fg=#b8a9c9]#{pane_current_path}\
|
|
62
|
+
#[align=right,bg=#16213e]\
|
|
63
|
+
#[fg=#f5a623]#($HOME/.genie/scripts/genie-git.sh) \
|
|
64
|
+
#[fg=#0f3460]│ \
|
|
65
|
+
#[fg=#00d2ff]CPU #($HOME/.genie/scripts/cpu-info.sh) \
|
|
66
|
+
#[fg=#0f3460]│ \
|
|
67
|
+
#[fg=#00d2ff]RAM #($HOME/.genie/scripts/ram-info.sh) \
|
|
68
|
+
#[fg=#0f3460]│ \
|
|
69
|
+
#[fg=#e0e0e0]%H:%M "
|
|
62
70
|
|
|
63
71
|
# ============================================================================
|
|
64
|
-
#
|
|
72
|
+
# BOTTOM BARS — dual status lines (status 2)
|
|
73
|
+
# Line 0 (top): windows in current session (clickable tabs)
|
|
74
|
+
# Line 1 (bottom): agents = tmux sessions (clickable to switch)
|
|
65
75
|
# ============================================================================
|
|
76
|
+
set -g status on
|
|
77
|
+
set -g status 2
|
|
78
|
+
set -g status-interval 5
|
|
79
|
+
set -g status-position bottom
|
|
80
|
+
set -g status-style "bg=#1a1a2e,fg=#e0e0e0"
|
|
66
81
|
|
|
67
|
-
#
|
|
68
|
-
set -g
|
|
69
|
-
|
|
70
|
-
# Inactive tabs: lavender text on dark bg
|
|
71
|
-
set -g window-status-format "#[fg=#b8a9c9,bg=#1a1a2e] #I:#W "
|
|
82
|
+
# --- Line 0 (very bottom): Window tabs for current session ---
|
|
83
|
+
set -g status-format[0] "#[align=left,bg=#1a1a2e,fg=#e0e0e0] #{W:#[range=window|#{window_index}]#{?#{window_active},#[bg=#7b2ff7#,fg=#e0e0e0#,bold] #{window_index}:#{window_name} #[bg=#1a1a2e#,fg=#7b2ff7#,nobold],#[bg=#1a1a2e#,fg=#b8a9c9] #{window_index}:#{window_name} }#[norange default]}#[align=right,bg=#1a1a2e,fg=#6c6c8a]#{session_name} "
|
|
72
84
|
|
|
73
|
-
#
|
|
74
|
-
set -g
|
|
85
|
+
# --- Line 1 (above, closer to content): Agent sessions ---
|
|
86
|
+
set -g status-format[1] "#[align=left,bg=#16213e,fg=#b8a9c9] #[fg=#6c6c8a]Agents: #{S:#[range=session|#{session_name}]#{?#{==:#{session_name},#{client_session}},#[bg=#7b2ff7#,fg=#e0e0e0#,bold] #{session_name} #[bg=#16213e#,nobold],#[bg=#16213e#,fg=#b8a9c9] #{session_name} }#[norange default]}"
|
|
75
87
|
|
|
76
88
|
# Activity monitoring
|
|
77
89
|
setw -g monitor-activity on
|
|
78
90
|
set -g visual-activity off
|
|
79
|
-
set -g window-status-activity-style "fg=#f5a623,bg=#1a1a2e"
|
|
80
|
-
|
|
81
|
-
# ============================================================================
|
|
82
|
-
# BOTTOM BAR — Session list via pane borders
|
|
83
|
-
# ============================================================================
|
|
84
|
-
set -g pane-border-status bottom
|
|
85
|
-
set -g pane-border-format "#[align=left,bg=#16213e,fg=#b8a9c9] Agents: #($HOME/.genie/scripts/genie-sessions.sh #{session_name})"
|
|
86
|
-
set -g pane-border-lines heavy
|
|
87
91
|
|
|
88
92
|
# ============================================================================
|
|
89
93
|
# KEYBINDINGS
|
|
@@ -92,19 +96,29 @@ set -g pane-border-lines heavy
|
|
|
92
96
|
# Reload config
|
|
93
97
|
bind r source-file ~/.tmux.conf \; display-message "Config reloaded"
|
|
94
98
|
|
|
95
|
-
# Ctrl+T — new tab in current session
|
|
96
|
-
# Uses #{session_path} (the directory where the session was created)
|
|
97
|
-
# Falls back to #{pane_current_path} if session_path is empty
|
|
99
|
+
# Ctrl+T — new tab in current session
|
|
98
100
|
bind -n C-t new-window -c "#{?session_path,#{session_path},#{pane_current_path}}"
|
|
99
101
|
|
|
100
102
|
# Vi copy mode bindings
|
|
101
103
|
bind -T copy-mode-vi v send-keys -X begin-selection
|
|
102
104
|
bind -T copy-mode-vi y send-keys -X copy-selection-and-cancel
|
|
103
105
|
|
|
104
|
-
# Session switching —
|
|
105
|
-
bind -n
|
|
106
|
-
bind -n
|
|
106
|
+
# Session switching — Alt+[ / Alt+] cycle sessions (works in all terminals)
|
|
107
|
+
bind -n M-] switch-client -n
|
|
108
|
+
bind -n M-[ switch-client -p
|
|
109
|
+
|
|
110
|
+
# Window switching — Alt+left / Alt+right cycle windows
|
|
111
|
+
bind -n M-Left previous-window
|
|
112
|
+
bind -n M-Right next-window
|
|
113
|
+
|
|
114
|
+
# Interactive picker — prefix+s for sessions, prefix+w for windows
|
|
115
|
+
bind s choose-tree -s
|
|
116
|
+
bind w choose-tree -w
|
|
117
|
+
|
|
118
|
+
# Single-click on status bar: switch to clicked window/session via range= targets
|
|
119
|
+
bind -n MouseDown1Status select-window -t =
|
|
120
|
+
bind -n MouseDown1StatusDefault select-window -t =
|
|
107
121
|
|
|
108
|
-
# Double-click
|
|
122
|
+
# Double-click on pane opens interactive session/window picker
|
|
109
123
|
bind -n DoubleClick1Pane choose-tree -s
|
|
110
|
-
bind -n
|
|
124
|
+
bind -n DoubleClick1Status choose-tree -s
|