@jx0/jmux 0.1.3 → 0.1.5
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/README.md +1 -2
- package/config/tmux.conf +0 -7
- package/package.json +1 -1
- package/src/main.ts +36 -0
package/README.md
CHANGED
|
@@ -154,7 +154,6 @@ The session is created in the selected directory and the sidebar updates immedia
|
|
|
154
154
|
|-----|--------|
|
|
155
155
|
| `Ctrl-a k` | Clear pane screen and scrollback |
|
|
156
156
|
| `Ctrl-a y` | Copy entire pane to clipboard |
|
|
157
|
-
| `Ctrl-a Space` | Toggle scratchpad popup |
|
|
158
157
|
|
|
159
158
|
## Claude Code Integration
|
|
160
159
|
|
|
@@ -163,7 +162,7 @@ jmux is built for agentic workflows. When you have Claude Code running in multip
|
|
|
163
162
|
### One-Command Setup
|
|
164
163
|
|
|
165
164
|
```bash
|
|
166
|
-
|
|
165
|
+
jmux --install-agent-hooks
|
|
167
166
|
```
|
|
168
167
|
|
|
169
168
|
This adds a hook to `~/.claude/settings.json` that sets the attention flag whenever Claude Code finishes a response. The orange `!` appears in your sidebar so you know which session to check.
|
package/config/tmux.conf
CHANGED
|
@@ -70,13 +70,6 @@ bind-key j display-popup -E -x 0 -y 0 -w 30% -h 100% -b heavy -S 'fg=#4f565d' \
|
|
|
70
70
|
cut -d: -f1 | \
|
|
71
71
|
xargs -I{} tmux select-window -t :{}"
|
|
72
72
|
|
|
73
|
-
# Scratchpad toggle (C-a Space)
|
|
74
|
-
bind-key Space if-shell -F '#{==:#{session_name},scratch}' {
|
|
75
|
-
detach-client
|
|
76
|
-
} {
|
|
77
|
-
display-popup -E -w 80% -h 70% -b heavy -S 'fg=#4f565d' "tmux new-session -A -s scratch"
|
|
78
|
-
}
|
|
79
|
-
|
|
80
73
|
# --- Session lifecycle ---
|
|
81
74
|
# When a session is killed, switch to the next one instead of detaching.
|
|
82
75
|
# jmux only exits when the last session is destroyed.
|
package/package.json
CHANGED
package/src/main.ts
CHANGED
|
@@ -12,6 +12,42 @@ import { homedir } from "os";
|
|
|
12
12
|
|
|
13
13
|
// --- CLI commands (run and exit before TUI) ---
|
|
14
14
|
|
|
15
|
+
const VERSION = "0.1.5";
|
|
16
|
+
|
|
17
|
+
const HELP = `jmux — a persistent session sidebar for tmux
|
|
18
|
+
|
|
19
|
+
Usage:
|
|
20
|
+
jmux [session-name] [options]
|
|
21
|
+
|
|
22
|
+
Options:
|
|
23
|
+
-L, --socket <name> Use a separate tmux server socket
|
|
24
|
+
--install-agent-hooks Install Claude Code attention flag hooks
|
|
25
|
+
-v, --version Show version
|
|
26
|
+
-h, --help Show this help
|
|
27
|
+
|
|
28
|
+
Examples:
|
|
29
|
+
jmux Start with default session
|
|
30
|
+
jmux my-project Start with named session
|
|
31
|
+
jmux -L work Use isolated tmux server
|
|
32
|
+
jmux --install-agent-hooks Set up Claude Code integration
|
|
33
|
+
|
|
34
|
+
Keybindings:
|
|
35
|
+
Ctrl-Shift-Up/Down Switch sessions
|
|
36
|
+
Ctrl-a n New session (directory picker)
|
|
37
|
+
Ctrl-a j Window picker (fzf)
|
|
38
|
+
Ctrl-a c New window
|
|
39
|
+
Click sidebar Switch to session`;
|
|
40
|
+
|
|
41
|
+
if (process.argv.includes("-h") || process.argv.includes("--help")) {
|
|
42
|
+
console.log(HELP);
|
|
43
|
+
process.exit(0);
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
if (process.argv.includes("-v") || process.argv.includes("--version")) {
|
|
47
|
+
console.log(`jmux ${VERSION}`);
|
|
48
|
+
process.exit(0);
|
|
49
|
+
}
|
|
50
|
+
|
|
15
51
|
if (process.argv.includes("--install-agent-hooks")) {
|
|
16
52
|
installAgentHooks();
|
|
17
53
|
process.exit(0);
|