botmux 2.51.1 → 2.53.0
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.en.md +22 -265
- package/README.md +21 -296
- package/dist/adapters/backend/session-backend-selector.d.ts +5 -1
- package/dist/adapters/backend/session-backend-selector.d.ts.map +1 -1
- package/dist/adapters/backend/session-backend-selector.js +15 -1
- package/dist/adapters/backend/session-backend-selector.js.map +1 -1
- package/dist/adapters/backend/tmux-backend.d.ts.map +1 -1
- package/dist/adapters/backend/tmux-backend.js +3 -0
- package/dist/adapters/backend/tmux-backend.js.map +1 -1
- package/dist/adapters/backend/types.d.ts +22 -0
- package/dist/adapters/backend/types.d.ts.map +1 -1
- package/dist/adapters/backend/types.js +7 -1
- package/dist/adapters/backend/types.js.map +1 -1
- package/dist/adapters/backend/zellij-backend.d.ts +132 -0
- package/dist/adapters/backend/zellij-backend.d.ts.map +1 -0
- package/dist/adapters/backend/zellij-backend.js +375 -0
- package/dist/adapters/backend/zellij-backend.js.map +1 -0
- package/dist/adapters/backend/zellij-observe-backend.d.ts +62 -0
- package/dist/adapters/backend/zellij-observe-backend.d.ts.map +1 -0
- package/dist/adapters/backend/zellij-observe-backend.js +218 -0
- package/dist/adapters/backend/zellij-observe-backend.js.map +1 -0
- package/dist/adapters/cli/claude-code.d.ts +39 -5
- package/dist/adapters/cli/claude-code.d.ts.map +1 -1
- package/dist/adapters/cli/claude-code.js +53 -31
- package/dist/adapters/cli/claude-code.js.map +1 -1
- package/dist/adapters/cli/registry.d.ts +2 -1
- package/dist/adapters/cli/registry.d.ts.map +1 -1
- package/dist/adapters/cli/registry.js +3 -1
- package/dist/adapters/cli/registry.js.map +1 -1
- package/dist/adapters/cli/seed.d.ts +29 -0
- package/dist/adapters/cli/seed.d.ts.map +1 -0
- package/dist/adapters/cli/seed.js +63 -0
- package/dist/adapters/cli/seed.js.map +1 -0
- package/dist/adapters/cli/types.d.ts +17 -1
- package/dist/adapters/cli/types.d.ts.map +1 -1
- package/dist/bot-registry.d.ts +31 -1
- package/dist/bot-registry.d.ts.map +1 -1
- package/dist/bot-registry.js +31 -0
- package/dist/bot-registry.js.map +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +37 -27
- package/dist/cli.js.map +1 -1
- package/dist/config.d.ts +7 -1
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +8 -0
- package/dist/config.js.map +1 -1
- package/dist/core/ask-hook/registry.d.ts.map +1 -1
- package/dist/core/ask-hook/registry.js +4 -0
- package/dist/core/ask-hook/registry.js.map +1 -1
- package/dist/core/command-handler.d.ts +4 -1
- package/dist/core/command-handler.d.ts.map +1 -1
- package/dist/core/command-handler.js +100 -8
- package/dist/core/command-handler.js.map +1 -1
- package/dist/core/dashboard-ipc-server.d.ts.map +1 -1
- package/dist/core/dashboard-ipc-server.js +37 -0
- package/dist/core/dashboard-ipc-server.js.map +1 -1
- package/dist/core/dispatch.d.ts +33 -0
- package/dist/core/dispatch.d.ts.map +1 -1
- package/dist/core/dispatch.js +26 -0
- package/dist/core/dispatch.js.map +1 -1
- package/dist/core/session-discovery.d.ts +13 -4
- package/dist/core/session-discovery.d.ts.map +1 -1
- package/dist/core/session-discovery.js +5 -5
- package/dist/core/session-discovery.js.map +1 -1
- package/dist/core/session-manager.d.ts +10 -0
- package/dist/core/session-manager.d.ts.map +1 -1
- package/dist/core/session-manager.js +43 -18
- package/dist/core/session-manager.js.map +1 -1
- package/dist/core/types.d.ts +5 -2
- package/dist/core/types.d.ts.map +1 -1
- package/dist/core/types.js.map +1 -1
- package/dist/core/worker-pool.d.ts +1 -1
- package/dist/core/worker-pool.d.ts.map +1 -1
- package/dist/core/worker-pool.js +22 -9
- package/dist/core/worker-pool.js.map +1 -1
- package/dist/core/zellij-adopt-discovery.d.ts +28 -0
- package/dist/core/zellij-adopt-discovery.d.ts.map +1 -0
- package/dist/core/zellij-adopt-discovery.js +255 -0
- package/dist/core/zellij-adopt-discovery.js.map +1 -0
- package/dist/core/zellij-session-discovery.d.ts +73 -0
- package/dist/core/zellij-session-discovery.d.ts.map +1 -0
- package/dist/core/zellij-session-discovery.js +259 -0
- package/dist/core/zellij-session-discovery.js.map +1 -0
- package/dist/daemon.d.ts +3 -0
- package/dist/daemon.d.ts.map +1 -1
- package/dist/daemon.js +145 -13
- package/dist/daemon.js.map +1 -1
- package/dist/dashboard/web/bot-defaults.d.ts.map +1 -1
- package/dist/dashboard/web/bot-defaults.js +114 -0
- package/dist/dashboard/web/bot-defaults.js.map +1 -1
- package/dist/dashboard/web/i18n.d.ts.map +1 -1
- package/dist/dashboard/web/i18n.js +23 -1
- package/dist/dashboard/web/i18n.js.map +1 -1
- package/dist/dashboard/web/sessions.d.ts.map +1 -1
- package/dist/dashboard/web/sessions.js +1 -0
- package/dist/dashboard/web/sessions.js.map +1 -1
- package/dist/dashboard/web/workflows.js +1 -1
- package/dist/dashboard/web/workflows.js.map +1 -1
- package/dist/dashboard-web/app.js +449 -426
- package/dist/dashboard.js +20 -0
- package/dist/dashboard.js.map +1 -1
- package/dist/i18n/en.d.ts.map +1 -1
- package/dist/i18n/en.js +15 -1
- package/dist/i18n/en.js.map +1 -1
- package/dist/i18n/zh.d.ts.map +1 -1
- package/dist/i18n/zh.js +16 -2
- package/dist/i18n/zh.js.map +1 -1
- package/dist/im/lark/card-builder.d.ts +8 -3
- package/dist/im/lark/card-builder.d.ts.map +1 -1
- package/dist/im/lark/card-builder.js +74 -5
- package/dist/im/lark/card-builder.js.map +1 -1
- package/dist/im/lark/card-handler.d.ts.map +1 -1
- package/dist/im/lark/card-handler.js +72 -10
- package/dist/im/lark/card-handler.js.map +1 -1
- package/dist/im/lark/event-dispatcher.d.ts +12 -0
- package/dist/im/lark/event-dispatcher.d.ts.map +1 -1
- package/dist/im/lark/event-dispatcher.js +39 -31
- package/dist/im/lark/event-dispatcher.js.map +1 -1
- package/dist/im/lark/grant-command.d.ts +26 -0
- package/dist/im/lark/grant-command.d.ts.map +1 -1
- package/dist/im/lark/grant-command.js +142 -3
- package/dist/im/lark/grant-command.js.map +1 -1
- package/dist/im/lark/grant-pending.d.ts +7 -4
- package/dist/im/lark/grant-pending.d.ts.map +1 -1
- package/dist/im/lark/grant-pending.js +12 -6
- package/dist/im/lark/grant-pending.js.map +1 -1
- package/dist/services/codex-app-threads.d.ts +20 -0
- package/dist/services/codex-app-threads.d.ts.map +1 -0
- package/dist/services/codex-app-threads.js +165 -0
- package/dist/services/codex-app-threads.js.map +1 -0
- package/dist/services/grant-prefs-store.d.ts +23 -0
- package/dist/services/grant-prefs-store.d.ts.map +1 -0
- package/dist/services/grant-prefs-store.js +94 -0
- package/dist/services/grant-prefs-store.js.map +1 -0
- package/dist/services/grant-store.d.ts +34 -2
- package/dist/services/grant-store.d.ts.map +1 -1
- package/dist/services/grant-store.js +160 -9
- package/dist/services/grant-store.js.map +1 -1
- package/dist/services/quota-dedup.d.ts +33 -0
- package/dist/services/quota-dedup.d.ts.map +1 -0
- package/dist/services/quota-dedup.js +67 -0
- package/dist/services/quota-dedup.js.map +1 -0
- package/dist/setup/bot-config-editor.d.ts +1 -1
- package/dist/setup/bot-config-editor.d.ts.map +1 -1
- package/dist/setup/bot-config-editor.js +5 -4
- package/dist/setup/bot-config-editor.js.map +1 -1
- package/dist/setup/ensure-zellij.d.ts +48 -0
- package/dist/setup/ensure-zellij.d.ts.map +1 -0
- package/dist/setup/ensure-zellij.js +93 -0
- package/dist/setup/ensure-zellij.js.map +1 -0
- package/dist/types.d.ts +9 -3
- package/dist/types.d.ts.map +1 -1
- package/dist/utils/anchor-serializer.d.ts +3 -2
- package/dist/utils/anchor-serializer.d.ts.map +1 -1
- package/dist/utils/anchor-serializer.js +20 -5
- package/dist/utils/anchor-serializer.js.map +1 -1
- package/dist/utils/transient-snapshot.js +2 -2
- package/dist/utils/transient-snapshot.js.map +1 -1
- package/dist/worker.js +124 -30
- package/dist/worker.js.map +1 -1
- package/dist/workflows/attempt-resume.d.ts +1 -1
- package/dist/workflows/attempt-resume.d.ts.map +1 -1
- package/dist/workflows/attempt-resume.js +1 -1
- package/dist/workflows/attempt-resume.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,218 @@
|
|
|
1
|
+
import { execFileSync } from 'node:child_process';
|
|
2
|
+
import { tmuxKeyToBytes } from './zellij-backend.js';
|
|
3
|
+
import { normaliseCaptureLineEndings } from './tmux-pipe-backend.js';
|
|
4
|
+
import { zellijEnv } from '../../setup/ensure-zellij.js';
|
|
5
|
+
import { logger } from '../../utils/logger.js';
|
|
6
|
+
/**
|
|
7
|
+
* ZellijObserveBackend — the zellij analogue of TmuxPipeBackend, for /adopt.
|
|
8
|
+
*
|
|
9
|
+
* zellij has no `pipe-pane` (zero-touch raw byte tap). The non-invasive
|
|
10
|
+
* primitives that DON'T disturb the user's session (size/focus) are:
|
|
11
|
+
* - observe: poll `zellij action dump-screen --pane-id <p> --ansi` (a query;
|
|
12
|
+
* no client attaches, no resize, no focus change — verified)
|
|
13
|
+
* - drive: `zellij action write/write-chars/send-keys --pane-id <p>`
|
|
14
|
+
* (targets the pane regardless of focus — verified focus-neutral)
|
|
15
|
+
*
|
|
16
|
+
* So this backend OBSERVES by polling dump-screen and emitting a snapshot on
|
|
17
|
+
* change (cleared + redrawn so the web-terminal xterm shows the current screen
|
|
18
|
+
* rather than stacking frames), and DRIVES via targeted `action` calls. It owns
|
|
19
|
+
* nothing: kill()/destroySession() only stop the pollers — the user's zellij
|
|
20
|
+
* session is never touched.
|
|
21
|
+
*
|
|
22
|
+
* Tradeoff vs tmux pipe-pane: the live screen has ~POLL_MS latency and isn't
|
|
23
|
+
* byte-exact. The authoritative conversation turns come from the per-CLI
|
|
24
|
+
* transcript bridge watchers (multiplexer-agnostic), which are immediate; the
|
|
25
|
+
* snapshot only drives the web-terminal/screenshot observation.
|
|
26
|
+
*/
|
|
27
|
+
const POLL_MS = 700;
|
|
28
|
+
const LIVENESS_MS = 1000;
|
|
29
|
+
/** Home + clear screen — prefix each emitted snapshot so the consuming xterm
|
|
30
|
+
* redraws the current screen instead of appending successive frames. */
|
|
31
|
+
const CLEAR_HOME = '\x1b[H\x1b[2J';
|
|
32
|
+
export class ZellijObserveBackend {
|
|
33
|
+
session;
|
|
34
|
+
paneId;
|
|
35
|
+
cliPid;
|
|
36
|
+
cols;
|
|
37
|
+
rows;
|
|
38
|
+
dataCbs = [];
|
|
39
|
+
exitCbs = [];
|
|
40
|
+
pollTimer = null;
|
|
41
|
+
livenessTimer = null;
|
|
42
|
+
lastSnapshot = '';
|
|
43
|
+
exited = false;
|
|
44
|
+
// PtyHandle fields the worker may set (parallel to the other backends).
|
|
45
|
+
claudeJsonlPath;
|
|
46
|
+
cliCwd;
|
|
47
|
+
constructor(session, paneId, opts) {
|
|
48
|
+
this.session = session;
|
|
49
|
+
this.paneId = paneId;
|
|
50
|
+
this.cliPid = opts?.cliPid ?? null;
|
|
51
|
+
this.cols = 80;
|
|
52
|
+
this.rows = 24;
|
|
53
|
+
}
|
|
54
|
+
// ─── SessionBackend ───────────────────────────────────────────────────────
|
|
55
|
+
/** bin/args are ignored — we observe an existing pane, we don't launch. */
|
|
56
|
+
spawn(_bin, _args, opts) {
|
|
57
|
+
this.cols = opts.cols;
|
|
58
|
+
this.rows = opts.rows;
|
|
59
|
+
logger.debug(`[zellij-observe] ${this.session}/${this.paneId} observe ${this.cols}x${this.rows} cliPid=${this.cliPid}`);
|
|
60
|
+
this.pollTimer = setInterval(() => this.poll(), POLL_MS);
|
|
61
|
+
this.livenessTimer = setInterval(() => this.checkLiveness(), LIVENESS_MS);
|
|
62
|
+
}
|
|
63
|
+
poll() {
|
|
64
|
+
const snap = this.captureViewport();
|
|
65
|
+
if (snap && snap !== this.lastSnapshot) {
|
|
66
|
+
this.lastSnapshot = snap;
|
|
67
|
+
const frame = CLEAR_HOME + snap;
|
|
68
|
+
for (const cb of this.dataCbs)
|
|
69
|
+
cb(frame);
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
checkLiveness() {
|
|
73
|
+
if (this.exited)
|
|
74
|
+
return;
|
|
75
|
+
// Two exit signals: (a) the pane vanished, (b) the adopted CLI pid is gone.
|
|
76
|
+
// (b) is essential for user-typed CLIs: when the CLI exits, the pane drops
|
|
77
|
+
// back to a shell and stays "alive", so a pane-only check would keep the
|
|
78
|
+
// worker running and route subsequent Lark input INTO the user's shell.
|
|
79
|
+
// Mirrors the pid guard the restore path already uses.
|
|
80
|
+
if (!this.isPaneAlive() || !this.isCliPidAlive())
|
|
81
|
+
this.handlePaneExit();
|
|
82
|
+
}
|
|
83
|
+
/** Whether the adopted CLI process is still running. Unknown pid → defer to
|
|
84
|
+
* pane liveness only. EPERM (exists, not ours) counts as alive; ESRCH = gone. */
|
|
85
|
+
isCliPidAlive() {
|
|
86
|
+
if (this.cliPid === null)
|
|
87
|
+
return true;
|
|
88
|
+
try {
|
|
89
|
+
process.kill(this.cliPid, 0);
|
|
90
|
+
return true;
|
|
91
|
+
}
|
|
92
|
+
catch (e) {
|
|
93
|
+
return e?.code === 'EPERM';
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
handlePaneExit() {
|
|
97
|
+
if (this.exited)
|
|
98
|
+
return;
|
|
99
|
+
this.exited = true;
|
|
100
|
+
this.stopTimers();
|
|
101
|
+
for (const cb of this.exitCbs)
|
|
102
|
+
cb(0, null);
|
|
103
|
+
}
|
|
104
|
+
// ── Input: targeted `action` calls (focus-neutral, non-invasive) ──
|
|
105
|
+
write(data) {
|
|
106
|
+
this.writeBytes(data);
|
|
107
|
+
}
|
|
108
|
+
/** Literal text via write-chars (preserves UTF-8). */
|
|
109
|
+
sendText(text) {
|
|
110
|
+
if (!text)
|
|
111
|
+
return;
|
|
112
|
+
this.action(['write-chars', '--pane-id', this.paneId, '--', text]);
|
|
113
|
+
}
|
|
114
|
+
/** Special keys by tmux-style name → raw bytes → `action write`. */
|
|
115
|
+
sendSpecialKeys(...keys) {
|
|
116
|
+
for (const key of keys)
|
|
117
|
+
this.writeBytes(tmuxKeyToBytes(key));
|
|
118
|
+
}
|
|
119
|
+
/** Bracketed paste — wrap so TUIs detect the boundary (mirrors paste-buffer -p). */
|
|
120
|
+
pasteText(text) {
|
|
121
|
+
this.writeBytes('\x1b[200~');
|
|
122
|
+
this.sendText(text);
|
|
123
|
+
this.writeBytes('\x1b[201~');
|
|
124
|
+
}
|
|
125
|
+
/** Write arbitrary bytes via `action write <decimal>…` (handles control/escape).
|
|
126
|
+
* Chunked so a large web-terminal paste can't blow the argv limit; zellij
|
|
127
|
+
* serialises the writes in arrival order. */
|
|
128
|
+
writeBytes(data) {
|
|
129
|
+
if (!data)
|
|
130
|
+
return;
|
|
131
|
+
const buf = Buffer.from(data, 'utf-8');
|
|
132
|
+
const CHUNK = 512;
|
|
133
|
+
for (let i = 0; i < buf.length; i += CHUNK) {
|
|
134
|
+
const bytes = Array.from(buf.subarray(i, i + CHUNK), b => String(b));
|
|
135
|
+
this.action(['write', '--pane-id', this.paneId, ...bytes]);
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
/** Resize is a NO-OP in observe mode — the pane size is the user's, and
|
|
139
|
+
* resizing it would disturb their layout. The transient snapshot reads the
|
|
140
|
+
* real pane size via getPaneSize(). */
|
|
141
|
+
resize(_cols, _rows) { }
|
|
142
|
+
onData(cb) { this.dataCbs.push(cb); }
|
|
143
|
+
onExit(cb) { this.exitCbs.push(cb); }
|
|
144
|
+
getChildPid() { return this.cliPid; }
|
|
145
|
+
/** Detach observer — stop polling. Never touches the user's zellij session. */
|
|
146
|
+
kill() { this.stopTimers(); }
|
|
147
|
+
/** Adopt owns nothing — destroy == detach (don't kill the user's session). */
|
|
148
|
+
destroySession() { this.kill(); }
|
|
149
|
+
stopTimers() {
|
|
150
|
+
if (this.pollTimer) {
|
|
151
|
+
clearInterval(this.pollTimer);
|
|
152
|
+
this.pollTimer = null;
|
|
153
|
+
}
|
|
154
|
+
if (this.livenessTimer) {
|
|
155
|
+
clearInterval(this.livenessTimer);
|
|
156
|
+
this.livenessTimer = null;
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
// ─── ObserveBackend snapshot surface ──────────────────────────────────────
|
|
160
|
+
captureCurrentScreen() {
|
|
161
|
+
return this.dumpScreen(true);
|
|
162
|
+
}
|
|
163
|
+
captureViewport() {
|
|
164
|
+
return this.dumpScreen(false);
|
|
165
|
+
}
|
|
166
|
+
getPaneSize() {
|
|
167
|
+
const pane = this.listPane();
|
|
168
|
+
if (!pane)
|
|
169
|
+
return null;
|
|
170
|
+
const cols = Number(pane.pane_content_columns ?? pane.pane_columns);
|
|
171
|
+
const rows = Number(pane.pane_content_rows ?? pane.pane_rows);
|
|
172
|
+
if (!Number.isFinite(cols) || !Number.isFinite(rows))
|
|
173
|
+
return null;
|
|
174
|
+
return { cols, rows };
|
|
175
|
+
}
|
|
176
|
+
isPaneAlive() {
|
|
177
|
+
const pane = this.listPane();
|
|
178
|
+
return !!pane && pane.exited !== true;
|
|
179
|
+
}
|
|
180
|
+
// ─── zellij plumbing ──────────────────────────────────────────────────────
|
|
181
|
+
dumpScreen(full) {
|
|
182
|
+
const args = ['dump-screen', '--pane-id', this.paneId, '--ansi'];
|
|
183
|
+
if (full)
|
|
184
|
+
args.push('--full');
|
|
185
|
+
// zellij dump-screen separates rows with bare `\n` (no `\r`). Fed to an
|
|
186
|
+
// xterm as-is, each line continues from the previous line's end column
|
|
187
|
+
// instead of returning to column 0 → the staircase/right-drift garble.
|
|
188
|
+
// Same fix tmux's capture path uses (normaliseCaptureLineEndings).
|
|
189
|
+
return normaliseCaptureLineEndings(this.action(args) ?? '');
|
|
190
|
+
}
|
|
191
|
+
listPane() {
|
|
192
|
+
try {
|
|
193
|
+
const out = execFileSync('zellij', ['--session', this.session, 'action', 'list-panes', '--json'], {
|
|
194
|
+
encoding: 'utf-8', stdio: ['ignore', 'pipe', 'ignore'], timeout: 3000, env: zellijEnv(),
|
|
195
|
+
});
|
|
196
|
+
const arr = JSON.parse(out);
|
|
197
|
+
if (!Array.isArray(arr))
|
|
198
|
+
return null;
|
|
199
|
+
return arr.find((p) => !p.is_plugin && `terminal_${p.id}` === this.paneId) ?? null;
|
|
200
|
+
}
|
|
201
|
+
catch {
|
|
202
|
+
return null;
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
/** Run a `zellij --session S action …`, returning stdout or null on failure. */
|
|
206
|
+
action(args) {
|
|
207
|
+
try {
|
|
208
|
+
return execFileSync('zellij', ['--session', this.session, 'action', ...args], {
|
|
209
|
+
encoding: 'utf-8', stdio: ['ignore', 'pipe', 'ignore'], timeout: 4000, env: zellijEnv(),
|
|
210
|
+
});
|
|
211
|
+
}
|
|
212
|
+
catch (err) {
|
|
213
|
+
logger.debug(`[zellij-observe] action ${args[0]} failed: ${err?.message}`);
|
|
214
|
+
return null;
|
|
215
|
+
}
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
//# sourceMappingURL=zellij-observe-backend.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"zellij-observe-backend.js","sourceRoot":"","sources":["../../../src/adapters/backend/zellij-observe-backend.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,15 @@
|
|
|
1
|
-
import type { CliAdapter } from './types.js';
|
|
1
|
+
import type { CliAdapter, CliId } from './types.js';
|
|
2
|
+
/** The default Claude Code data root (`CLAUDE_CONFIG_DIR` equivalent): where
|
|
3
|
+
* `projects/`, `sessions/`, `tasks/`, `keybindings.json` and `settings.json`
|
|
4
|
+
* live. Claude-family forks (e.g. Seed CLI) relocate this — every helper below
|
|
5
|
+
* takes an optional `dataDir` so the same machinery drives both. Defaulting to
|
|
6
|
+
* `~/.claude` keeps all existing call sites byte-for-byte unchanged. */
|
|
7
|
+
export declare const DEFAULT_CLAUDE_DATA_DIR: string;
|
|
2
8
|
/** Resolve the JSONL transcript path Claude Code writes user/assistant turns to.
|
|
3
9
|
* Claude Code's project-hash scheme replaces every non-[A-Za-z0-9-] char with `-`
|
|
4
10
|
* (observed: `/foo/life_workspace` → `-foo-life-workspace`; `/`, `.`, `_` all become `-`).
|
|
5
11
|
* Always operates on realpath(cwd) — see realpathCwd above. */
|
|
6
|
-
export declare function claudeJsonlPathForSession(sessionId: string, cwd: string): string;
|
|
12
|
+
export declare function claudeJsonlPathForSession(sessionId: string, cwd: string, dataDir?: string): string;
|
|
7
13
|
/** Returns the absolute path to Claude Code's per-process session state file.
|
|
8
14
|
* Claude writes `{pid, sessionId, cwd, procStart, status, updatedAt, ...}`
|
|
9
15
|
* here. Empirical scope (Claude Code 2.1.123): `status` and `updatedAt`
|
|
@@ -14,14 +20,14 @@ export declare function claudeJsonlPathForSession(sessionId: string, cwd: string
|
|
|
14
20
|
* rely on this for rotation tracking must therefore treat a "matching
|
|
15
21
|
* sessionId" answer as "no spawn-time rotation observed", not "no
|
|
16
22
|
* rotation at all" — the latter requires fingerprint corroboration. */
|
|
17
|
-
export declare function claudePidStatePath(pid: number): string;
|
|
23
|
+
export declare function claudePidStatePath(pid: number, dataDir?: string): string;
|
|
18
24
|
/** Resolve Claude Code's authoritative current session id via
|
|
19
25
|
* ~/.claude/sessions/<pid>.json. Validates pid + sessionId UUID + cwd so a
|
|
20
26
|
* stale or unrelated pid file can't redirect us to the wrong jsonl. On Linux
|
|
21
27
|
* also matches procStart against /proc/<pid>/stat to reject PID reuse. If
|
|
22
28
|
* procStart is present but cannot be verified on Linux, fail closed; callers
|
|
23
29
|
* fall back to fingerprint detection. */
|
|
24
|
-
export declare function resolveJsonlFromPid(pid: number, expectedCwd: string): {
|
|
30
|
+
export declare function resolveJsonlFromPid(pid: number, expectedCwd: string, dataDir?: string): {
|
|
25
31
|
path: string;
|
|
26
32
|
cliSessionId: string;
|
|
27
33
|
} | null;
|
|
@@ -40,7 +46,35 @@ export declare function resolveJsonlFromPid(pid: number, expectedCwd: string): {
|
|
|
40
46
|
* Returns deduplicated sessionIds in arbitrary order; caller picks one
|
|
41
47
|
* (typically by mtime of the corresponding jsonl). Returns [] on
|
|
42
48
|
* non-Linux platforms or if /proc lookup fails. */
|
|
43
|
-
export declare function findOpenClaudeSessionIds(pid: number): string[];
|
|
49
|
+
export declare function findOpenClaudeSessionIds(pid: number, dataDir?: string): string[];
|
|
50
|
+
/** A member of the Claude-family CLIs: Claude Code itself and forks that share
|
|
51
|
+
* its on-disk session layout (per-project JSONL transcripts, `sessions/<pid>.json`
|
|
52
|
+
* pid-state, `tasks/` fd locks, keybindings.json, settings.json hooks) but
|
|
53
|
+
* relocate the data root and/or rename the binary. Seed CLI
|
|
54
|
+
* (`@bytedance-seed/claude-code`, binary `seed`) is one such fork — it reuses
|
|
55
|
+
* this entire adapter, only swapping `dataDir`/`stateJsonPath`/binary. */
|
|
56
|
+
export interface ClaudeFamilyVariant {
|
|
57
|
+
/** CliId for this variant (`claude-code`, `seed`, …). */
|
|
58
|
+
readonly id: CliId;
|
|
59
|
+
/** Binary name printed in the user-facing `buildResumeCommand` handoff. */
|
|
60
|
+
readonly resumeBin: string;
|
|
61
|
+
/** Data root: `projects/`, `sessions/`, `tasks/`, `keybindings.json`,
|
|
62
|
+
* `settings.json`. `~/.claude` for Claude Code; Seed's `.claude-runtime`. */
|
|
63
|
+
readonly dataDir: string;
|
|
64
|
+
/** Path to the `.claude.json` state / folder-trust file. Lives at
|
|
65
|
+
* `~/.claude.json` (home) for Claude Code, but *inside* the data root for
|
|
66
|
+
* forks that set CLAUDE_CONFIG_DIR — so it can't be derived from dataDir. */
|
|
67
|
+
readonly stateJsonPath: string;
|
|
68
|
+
/** Env injected at spawn so the forked CLI actually writes to `dataDir`
|
|
69
|
+
* (e.g. Seed's `CLAUDE_CONFIG_DIR`). undefined for Claude Code, which already
|
|
70
|
+
* defaults to ~/.claude. */
|
|
71
|
+
readonly spawnEnv?: Readonly<Record<string, string>>;
|
|
72
|
+
/** Curated `botmux setup` model candidates. Claude Code lists Anthropic
|
|
73
|
+
* aliases; forks whose model set is gateway-defined (e.g. Seed via SuperRelay)
|
|
74
|
+
* pass undefined so setup skips the prompt. */
|
|
75
|
+
readonly modelChoices?: readonly string[];
|
|
76
|
+
}
|
|
44
77
|
export declare function createClaudeCodeAdapter(pathOverride?: string): CliAdapter;
|
|
78
|
+
export declare function createClaudeFamilyAdapter(variant: ClaudeFamilyVariant, bin: string): CliAdapter;
|
|
45
79
|
export declare const create: typeof createClaudeCodeAdapter;
|
|
46
80
|
//# sourceMappingURL=claude-code.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claude-code.d.ts","sourceRoot":"","sources":["../../../src/adapters/cli/claude-code.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAa,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"claude-code.d.ts","sourceRoot":"","sources":["../../../src/adapters/cli/claude-code.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,KAAK,EAAa,MAAM,YAAY,CAAC;AAkB/D;;;;yEAIyE;AACzE,eAAO,MAAM,uBAAuB,QAA6B,CAAC;AAElE;;;gEAGgE;AAChE,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,GAAE,MAAgC,GAAG,MAAM,CAG3H;AA2DD;;;;;;;;;wEASwE;AACxE,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,GAAE,MAAgC,GAAG,MAAM,CAEjG;AAoBD;;;;;0CAK0C;AAC1C,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,GAAE,MAAgC,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAoC9J;AAED;;;;;;;;;;;;;;oDAcoD;AACpD,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,GAAE,MAAgC,GAAG,MAAM,EAAE,CAmCzG;AAoKD;;;;;2EAK2E;AAC3E,MAAM,WAAW,mBAAmB;IAClC,yDAAyD;IACzD,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IACnB,2EAA2E;IAC3E,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B;kFAC8E;IAC9E,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB;;kFAE8E;IAC9E,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B;;iCAE6B;IAC7B,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACrD;;oDAEgD;IAChD,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC3C;AAED,wBAAgB,uBAAuB,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,UAAU,CAUzE;AAED,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,mBAAmB,EAAE,GAAG,EAAE,MAAM,GAAG,UAAU,CAmX/F;AAED,eAAO,MAAM,MAAM,gCAA0B,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { existsSync, statSync, openSync, readSync, closeSync, readFileSync, readdirSync, readlinkSync, realpathSync } from 'node:fs';
|
|
2
2
|
import { homedir } from 'node:os';
|
|
3
|
-
import { dirname, join } from 'node:path';
|
|
3
|
+
import { basename, dirname, join } from 'node:path';
|
|
4
4
|
import { resolveCommand } from './registry.js';
|
|
5
5
|
import { findJsonlContainingFingerprint, jsonlContainsFingerprint, normaliseForFingerprint } from '../../services/claude-transcript.js';
|
|
6
6
|
import { t } from '../../i18n/index.js';
|
|
@@ -22,13 +22,19 @@ function realpathCwd(cwd) {
|
|
|
22
22
|
return cwd;
|
|
23
23
|
}
|
|
24
24
|
}
|
|
25
|
+
/** The default Claude Code data root (`CLAUDE_CONFIG_DIR` equivalent): where
|
|
26
|
+
* `projects/`, `sessions/`, `tasks/`, `keybindings.json` and `settings.json`
|
|
27
|
+
* live. Claude-family forks (e.g. Seed CLI) relocate this — every helper below
|
|
28
|
+
* takes an optional `dataDir` so the same machinery drives both. Defaulting to
|
|
29
|
+
* `~/.claude` keeps all existing call sites byte-for-byte unchanged. */
|
|
30
|
+
export const DEFAULT_CLAUDE_DATA_DIR = join(homedir(), '.claude');
|
|
25
31
|
/** Resolve the JSONL transcript path Claude Code writes user/assistant turns to.
|
|
26
32
|
* Claude Code's project-hash scheme replaces every non-[A-Za-z0-9-] char with `-`
|
|
27
33
|
* (observed: `/foo/life_workspace` → `-foo-life-workspace`; `/`, `.`, `_` all become `-`).
|
|
28
34
|
* Always operates on realpath(cwd) — see realpathCwd above. */
|
|
29
|
-
export function claudeJsonlPathForSession(sessionId, cwd) {
|
|
35
|
+
export function claudeJsonlPathForSession(sessionId, cwd, dataDir = DEFAULT_CLAUDE_DATA_DIR) {
|
|
30
36
|
const projectHash = realpathCwd(cwd).replace(/[^A-Za-z0-9-]/g, '-');
|
|
31
|
-
return join(
|
|
37
|
+
return join(dataDir, 'projects', projectHash, `${sessionId}.jsonl`);
|
|
32
38
|
}
|
|
33
39
|
/** botmux ships its built-in skills as a Claude Code plugin here and injects it
|
|
34
40
|
* per-session via `--plugin-dir` (see buildArgs). Kept out of the global
|
|
@@ -105,8 +111,8 @@ const SESSION_UUID_RE = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-
|
|
|
105
111
|
* rely on this for rotation tracking must therefore treat a "matching
|
|
106
112
|
* sessionId" answer as "no spawn-time rotation observed", not "no
|
|
107
113
|
* rotation at all" — the latter requires fingerprint corroboration. */
|
|
108
|
-
export function claudePidStatePath(pid) {
|
|
109
|
-
return join(
|
|
114
|
+
export function claudePidStatePath(pid, dataDir = DEFAULT_CLAUDE_DATA_DIR) {
|
|
115
|
+
return join(dataDir, 'sessions', `${pid}.json`);
|
|
110
116
|
}
|
|
111
117
|
/** Linux-only: read /proc/<pid>/stat field 22 (starttime). Returns null when
|
|
112
118
|
* /proc isn't available or the stat line is unreadable/malformed; callers
|
|
@@ -133,12 +139,12 @@ function readProcStarttime(pid) {
|
|
|
133
139
|
* also matches procStart against /proc/<pid>/stat to reject PID reuse. If
|
|
134
140
|
* procStart is present but cannot be verified on Linux, fail closed; callers
|
|
135
141
|
* fall back to fingerprint detection. */
|
|
136
|
-
export function resolveJsonlFromPid(pid, expectedCwd) {
|
|
142
|
+
export function resolveJsonlFromPid(pid, expectedCwd, dataDir = DEFAULT_CLAUDE_DATA_DIR) {
|
|
137
143
|
if (!Number.isInteger(pid) || pid <= 0)
|
|
138
144
|
return null;
|
|
139
145
|
let parsed;
|
|
140
146
|
try {
|
|
141
|
-
parsed = JSON.parse(readFileSync(claudePidStatePath(pid), 'utf8'));
|
|
147
|
+
parsed = JSON.parse(readFileSync(claudePidStatePath(pid, dataDir), 'utf8'));
|
|
142
148
|
}
|
|
143
149
|
catch {
|
|
144
150
|
return null;
|
|
@@ -175,7 +181,7 @@ export function resolveJsonlFromPid(pid, expectedCwd) {
|
|
|
175
181
|
if (!procStartVerified && realpathCwd(parsed.cwd) !== realpathCwd(expectedCwd))
|
|
176
182
|
return null;
|
|
177
183
|
return {
|
|
178
|
-
path: claudeJsonlPathForSession(parsed.sessionId, parsed.cwd),
|
|
184
|
+
path: claudeJsonlPathForSession(parsed.sessionId, parsed.cwd, dataDir),
|
|
179
185
|
cliSessionId: parsed.sessionId,
|
|
180
186
|
};
|
|
181
187
|
}
|
|
@@ -194,7 +200,7 @@ export function resolveJsonlFromPid(pid, expectedCwd) {
|
|
|
194
200
|
* Returns deduplicated sessionIds in arbitrary order; caller picks one
|
|
195
201
|
* (typically by mtime of the corresponding jsonl). Returns [] on
|
|
196
202
|
* non-Linux platforms or if /proc lookup fails. */
|
|
197
|
-
export function findOpenClaudeSessionIds(pid) {
|
|
203
|
+
export function findOpenClaudeSessionIds(pid, dataDir = DEFAULT_CLAUDE_DATA_DIR) {
|
|
198
204
|
if (!Number.isInteger(pid) || pid <= 0)
|
|
199
205
|
return [];
|
|
200
206
|
if (process.platform !== 'linux')
|
|
@@ -206,8 +212,12 @@ export function findOpenClaudeSessionIds(pid) {
|
|
|
206
212
|
catch {
|
|
207
213
|
return [];
|
|
208
214
|
}
|
|
209
|
-
const tasksPrefix = join(
|
|
210
|
-
|
|
215
|
+
const tasksPrefix = join(dataDir, 'tasks') + '/';
|
|
216
|
+
// Substring (not absolute prefix) so a symlinked dataDir parent — e.g. a
|
|
217
|
+
// symlinked home — still matches the kernel-realpath'd fd target. Derived
|
|
218
|
+
// from dataDir's basename: `~/.claude` → `/.claude/projects/` (unchanged);
|
|
219
|
+
// Seed's `.../.claude-runtime` → `/.claude-runtime/projects/`.
|
|
220
|
+
const projectsInfix = `/${basename(dataDir)}/projects/`;
|
|
211
221
|
const out = new Set();
|
|
212
222
|
for (const name of entries) {
|
|
213
223
|
let target;
|
|
@@ -275,7 +285,6 @@ function findJsonlAcrossProjectsRoot(searchPath, fingerprint, options) {
|
|
|
275
285
|
return null;
|
|
276
286
|
}
|
|
277
287
|
const COMPLETION_RE = /\u2733\s*(?:Worked|Crunched|Cogitated|Cooked|Churned|Saut[eé]ed|Baked|Brewed) for \d+[smh]/;
|
|
278
|
-
const CLAUDE_KEYBINDINGS_PATH = join(homedir(), '.claude', 'keybindings.json');
|
|
279
288
|
/** Escape hatch: force a specific chat:submit key regardless of
|
|
280
289
|
* keybindings.json. Accepts the same spellings as the config (e.g.
|
|
281
290
|
* `meta+enter`, `alt+enter`, `enter`). A value that can't be sent through the
|
|
@@ -288,10 +297,10 @@ const DEFAULT_SUBMIT_KEY = 'Enter';
|
|
|
288
297
|
const UNSUPPORTED_SUBMIT_KEY_FAILURE = 'Claude Code Chat keybindings have no terminal-sendable chat:submit key. ' +
|
|
289
298
|
'Only Enter, Meta+Enter (Alt+Enter) can be delivered through tmux/PTY; ' +
|
|
290
299
|
'keys such as Cmd+Enter, Ctrl+Enter or Shift+Enter cannot.';
|
|
291
|
-
function readClaudeChatBindings() {
|
|
300
|
+
function readClaudeChatBindings(keybindingsPath) {
|
|
292
301
|
let parsed;
|
|
293
302
|
try {
|
|
294
|
-
parsed = JSON.parse(readFileSync(
|
|
303
|
+
parsed = JSON.parse(readFileSync(keybindingsPath, 'utf8'));
|
|
295
304
|
}
|
|
296
305
|
catch {
|
|
297
306
|
return null;
|
|
@@ -366,8 +375,8 @@ function bindingActionForKey(bindings, targetKey) {
|
|
|
366
375
|
return Object.entries(bindings ?? {})
|
|
367
376
|
.find(([key]) => key.toLowerCase() === normalizedTarget)?.[1];
|
|
368
377
|
}
|
|
369
|
-
function resolveClaudeChatKeybindings() {
|
|
370
|
-
const bindings = readClaudeChatBindings();
|
|
378
|
+
function resolveClaudeChatKeybindings(keybindingsPath) {
|
|
379
|
+
const bindings = readClaudeChatBindings(keybindingsPath);
|
|
371
380
|
const submitKey = selectSubmitKey(bindings);
|
|
372
381
|
const tmuxSubmitKey = submitKey ? toTmuxSubmitKey(submitKey) : null;
|
|
373
382
|
const rawSubmitSequence = submitKey ? toRawSubmitSequence(submitKey) : null;
|
|
@@ -387,15 +396,28 @@ function resolveClaudeChatKeybindings() {
|
|
|
387
396
|
const claudeFirstWriteSeen = new WeakSet();
|
|
388
397
|
export function createClaudeCodeAdapter(pathOverride) {
|
|
389
398
|
const bin = resolveCommand(pathOverride ?? 'claude');
|
|
390
|
-
return {
|
|
399
|
+
return createClaudeFamilyAdapter({
|
|
391
400
|
id: 'claude-code',
|
|
401
|
+
resumeBin: 'claude',
|
|
402
|
+
dataDir: DEFAULT_CLAUDE_DATA_DIR,
|
|
403
|
+
stateJsonPath: join(homedir(), '.claude.json'),
|
|
404
|
+
// alias(opus/sonnet/haiku)会被 Claude Code 解析成当前推荐的具体版本;具体 ID 锁版本。
|
|
405
|
+
modelChoices: ['opus', 'sonnet', 'haiku', 'claude-opus-4-7', 'claude-sonnet-4-6', 'claude-haiku-4-5-20251001'],
|
|
406
|
+
}, bin);
|
|
407
|
+
}
|
|
408
|
+
export function createClaudeFamilyAdapter(variant, bin) {
|
|
409
|
+
return {
|
|
410
|
+
id: variant.id,
|
|
392
411
|
resolvedBin: bin,
|
|
393
412
|
supportsTypeAhead: true,
|
|
413
|
+
claudeDataDir: variant.dataDir,
|
|
414
|
+
claudeStateJsonPath: variant.stateJsonPath,
|
|
415
|
+
spawnEnv: variant.spawnEnv,
|
|
394
416
|
buildResumeCommand({ sessionId, cliSessionId }) {
|
|
395
417
|
// Claude resumes by reading <id>.jsonl, so we need the most recently
|
|
396
418
|
// observed CLI-native id (rotation can happen mid-run); fall back to the
|
|
397
419
|
// botmux sessionId for the first-turn case where they coincide.
|
|
398
|
-
return
|
|
420
|
+
return `${variant.resumeBin} --resume ${cliSessionId ?? sessionId}`;
|
|
399
421
|
},
|
|
400
422
|
buildArgs({ sessionId, resume, resumeSessionId, botName, botOpenId, locale, model, disableCliBypass }) {
|
|
401
423
|
const args = [];
|
|
@@ -502,7 +524,7 @@ export function createClaudeCodeAdapter(pathOverride) {
|
|
|
502
524
|
}
|
|
503
525
|
const TYPING_THROTTLE_MS = isFirstWrite ? 80 : 30;
|
|
504
526
|
const tick = () => new Promise(r => setTimeout(r, TYPING_THROTTLE_MS));
|
|
505
|
-
const keybindings = resolveClaudeChatKeybindings();
|
|
527
|
+
const keybindings = resolveClaudeChatKeybindings(join(variant.dataDir, 'keybindings.json'));
|
|
506
528
|
const sendSubmit = () => {
|
|
507
529
|
if (pty.sendSpecialKeys && keybindings.submitKeys) {
|
|
508
530
|
pty.sendSpecialKeys(...keybindings.submitKeys);
|
|
@@ -531,7 +553,7 @@ export function createClaudeCodeAdapter(pathOverride) {
|
|
|
531
553
|
return false;
|
|
532
554
|
};
|
|
533
555
|
if (pty.cliPid && pty.cliCwd) {
|
|
534
|
-
const resolved = resolveJsonlFromPid(pty.cliPid, pty.cliCwd);
|
|
556
|
+
const resolved = resolveJsonlFromPid(pty.cliPid, pty.cliCwd, variant.dataDir);
|
|
535
557
|
if (resolved)
|
|
536
558
|
applyResolved(resolved);
|
|
537
559
|
}
|
|
@@ -610,7 +632,7 @@ export function createClaudeCodeAdapter(pathOverride) {
|
|
|
610
632
|
// the rotated file. For (b), poll from the rotated file's own current
|
|
611
633
|
// size so an older, larger startPath cannot hide a delayed append.
|
|
612
634
|
if (pty.cliPid && pty.cliCwd) {
|
|
613
|
-
const resolved = resolveJsonlFromPid(pty.cliPid, pty.cliCwd);
|
|
635
|
+
const resolved = resolveJsonlFromPid(pty.cliPid, pty.cliCwd, variant.dataDir);
|
|
614
636
|
if (resolved) {
|
|
615
637
|
const switched = applyResolved(resolved);
|
|
616
638
|
const newPath = pty.claudeJsonlPath;
|
|
@@ -703,7 +725,7 @@ export function createClaudeCodeAdapter(pathOverride) {
|
|
|
703
725
|
return false;
|
|
704
726
|
// Latest pid → path; covers post-failure rotations (/clear, /resume).
|
|
705
727
|
if (pty.cliPid && pty.cliCwd) {
|
|
706
|
-
const resolved = resolveJsonlFromPid(pty.cliPid, pty.cliCwd);
|
|
728
|
+
const resolved = resolveJsonlFromPid(pty.cliPid, pty.cliCwd, variant.dataDir);
|
|
707
729
|
if (resolved)
|
|
708
730
|
applyResolved(resolved);
|
|
709
731
|
}
|
|
@@ -735,16 +757,16 @@ export function createClaudeCodeAdapter(pathOverride) {
|
|
|
735
757
|
// installed into the global ~/.claude/skills — so they never leak into the
|
|
736
758
|
// user's standalone `claude`. pluginDir is consumed by ensurePluginSkills.
|
|
737
759
|
pluginDir: CLAUDE_PLUGIN_DIR,
|
|
738
|
-
// 候选 model
|
|
739
|
-
//
|
|
740
|
-
modelChoices:
|
|
741
|
-
// askUserQuestion hook
|
|
742
|
-
//
|
|
743
|
-
//
|
|
744
|
-
//
|
|
745
|
-
// claude
|
|
760
|
+
// 候选 model 由 variant 决定(Claude 给 Anthropic alias;Seed 走网关交给 setup 跳过)。
|
|
761
|
+
// setup 选 Other 可自由填,比如要回退或试 canary 模型。
|
|
762
|
+
modelChoices: variant.modelChoices,
|
|
763
|
+
// askUserQuestion hook 写各 variant 的 settings.json(matcher='AskUserQuestion' 的
|
|
764
|
+
// PreToolUse),把事件转发到 `botmux hook <id>`。Claude 用全局 ~/.claude/settings.json
|
|
765
|
+
// 是为了 adopt 模式(接管的 claude 会话拿不到进程级 --settings,只读全局那条);hook
|
|
766
|
+
// 客户端缺 BOTMUX_* env 时直接 passthrough 放行,不破坏非 botmux 的会话。Seed 写自己
|
|
767
|
+
// 的 .claude-runtime/settings.json,只作用于走该 CLAUDE_CONFIG_DIR 的 seed 会话。
|
|
746
768
|
hookInstall: {
|
|
747
|
-
configPath: '
|
|
769
|
+
configPath: join(variant.dataDir, 'settings.json'),
|
|
748
770
|
format: 'claude-settings',
|
|
749
771
|
},
|
|
750
772
|
asksViaHook: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claude-code.js","sourceRoot":"","sources":["../../../src/adapters/cli/claude-code.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"claude-code.js","sourceRoot":"","sources":["../../../src/adapters/cli/claude-code.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { CliAdapter, CliId } from './types.js';
|
|
2
2
|
import { createClaudeCodeAdapter } from './claude-code.js';
|
|
3
|
+
import { createSeedAdapter } from './seed.js';
|
|
3
4
|
import { createAidenAdapter } from './aiden.js';
|
|
4
5
|
import { createCocoAdapter } from './coco.js';
|
|
5
6
|
import { createCodexAdapter } from './codex.js';
|
|
@@ -17,7 +18,7 @@ import { createMiraAdapter } from './mira.js';
|
|
|
17
18
|
export declare function resolveCommand(cmd: string): string;
|
|
18
19
|
/** Async adapter factory (uses dynamic import for lazy loading in daemon process). */
|
|
19
20
|
export declare function createCliAdapter(id: CliId, pathOverride?: string): Promise<CliAdapter>;
|
|
20
|
-
export { createClaudeCodeAdapter, createAidenAdapter, createCocoAdapter, createCodexAdapter, createCodexAppAdapter, createCursorAdapter, createGeminiAdapter, createOpenCodeAdapter, createAntigravityAdapter, createMtrAdapter, createHermesAdapter, createMiraAdapter };
|
|
21
|
+
export { createClaudeCodeAdapter, createSeedAdapter, createAidenAdapter, createCocoAdapter, createCodexAdapter, createCodexAppAdapter, createCursorAdapter, createGeminiAdapter, createOpenCodeAdapter, createAntigravityAdapter, createMtrAdapter, createHermesAdapter, createMiraAdapter };
|
|
21
22
|
/** Synchronous version for use in worker process. */
|
|
22
23
|
export declare function createCliAdapterSync(id: CliId, pathOverride?: string): CliAdapter;
|
|
23
24
|
//# sourceMappingURL=registry.d.ts.map
|