botmux 1.14.5 → 2.0.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.
Files changed (43) hide show
  1. package/README.en.md +14 -0
  2. package/README.md +14 -0
  3. package/dist/adapters/backend/tmux-backend.d.ts +14 -1
  4. package/dist/adapters/backend/tmux-backend.d.ts.map +1 -1
  5. package/dist/adapters/backend/tmux-backend.js +65 -15
  6. package/dist/adapters/backend/tmux-backend.js.map +1 -1
  7. package/dist/core/command-handler.d.ts +2 -0
  8. package/dist/core/command-handler.d.ts.map +1 -1
  9. package/dist/core/command-handler.js +59 -3
  10. package/dist/core/command-handler.js.map +1 -1
  11. package/dist/core/session-discovery.d.ts +28 -0
  12. package/dist/core/session-discovery.d.ts.map +1 -0
  13. package/dist/core/session-discovery.js +215 -0
  14. package/dist/core/session-discovery.js.map +1 -0
  15. package/dist/core/session-manager.d.ts.map +1 -1
  16. package/dist/core/session-manager.js +6 -0
  17. package/dist/core/session-manager.js.map +1 -1
  18. package/dist/core/types.d.ts +11 -0
  19. package/dist/core/types.d.ts.map +1 -1
  20. package/dist/core/types.js.map +1 -1
  21. package/dist/core/worker-pool.d.ts +1 -0
  22. package/dist/core/worker-pool.d.ts.map +1 -1
  23. package/dist/core/worker-pool.js +122 -9
  24. package/dist/core/worker-pool.js.map +1 -1
  25. package/dist/im/lark/card-builder.d.ts +3 -1
  26. package/dist/im/lark/card-builder.d.ts.map +1 -1
  27. package/dist/im/lark/card-builder.js +72 -7
  28. package/dist/im/lark/card-builder.js.map +1 -1
  29. package/dist/im/lark/card-handler.d.ts.map +1 -1
  30. package/dist/im/lark/card-handler.js +68 -2
  31. package/dist/im/lark/card-handler.js.map +1 -1
  32. package/dist/types.d.ts +4 -0
  33. package/dist/types.d.ts.map +1 -1
  34. package/dist/utils/idle-detector.d.ts.map +1 -1
  35. package/dist/utils/idle-detector.js +5 -2
  36. package/dist/utils/idle-detector.js.map +1 -1
  37. package/dist/utils/terminal-renderer.d.ts +16 -1
  38. package/dist/utils/terminal-renderer.d.ts.map +1 -1
  39. package/dist/utils/terminal-renderer.js +56 -24
  40. package/dist/utils/terminal-renderer.js.map +1 -1
  41. package/dist/worker.js +65 -5
  42. package/dist/worker.js.map +1 -1
  43. package/package.json +2 -1
@@ -0,0 +1,215 @@
1
+ /**
2
+ * Session Discovery — scans tmux panes for running CLI processes that can be adopted.
3
+ *
4
+ * Discovers non-botmux tmux sessions running known CLI binaries (Claude Code,
5
+ * Codex, Aiden, CoCo, Gemini, OpenCode) and collects metadata needed to adopt them.
6
+ */
7
+ import { execSync } from 'node:child_process';
8
+ import { readFileSync, readlinkSync } from 'node:fs';
9
+ import { homedir } from 'node:os';
10
+ import { join } from 'node:path';
11
+ // ─── CLI process name → CliId mapping ────────────────────────────────────────
12
+ const CLI_COMM_MAP = {
13
+ claude: 'claude-code',
14
+ codex: 'codex',
15
+ aiden: 'aiden',
16
+ coco: 'coco',
17
+ gemini: 'gemini',
18
+ opencode: 'opencode',
19
+ };
20
+ // ─── Helpers ─────────────────────────────────────────────────────────────────
21
+ /** Minimal shell-escape for tmux targets. */
22
+ function shellescape(s) {
23
+ return `'${s.replace(/'/g, "'\\''")}'`;
24
+ }
25
+ /**
26
+ * Read the comm name for a PID from /proc.
27
+ * Returns undefined if the process no longer exists.
28
+ */
29
+ function readComm(pid) {
30
+ try {
31
+ return readFileSync(`/proc/${pid}/comm`, 'utf-8').trim();
32
+ }
33
+ catch {
34
+ return undefined;
35
+ }
36
+ }
37
+ /**
38
+ * Read the cwd for a PID via /proc/<pid>/cwd symlink.
39
+ * Returns undefined if unavailable.
40
+ */
41
+ function readCwd(pid) {
42
+ try {
43
+ return readlinkSync(`/proc/${pid}/cwd`);
44
+ }
45
+ catch {
46
+ return undefined;
47
+ }
48
+ }
49
+ /** Get direct child PIDs of a process via `ps --ppid`. */
50
+ function getChildPids(pid) {
51
+ try {
52
+ const out = execSync(`ps --ppid ${pid} -o pid=`, { encoding: 'utf-8', stdio: ['pipe', 'pipe', 'pipe'] });
53
+ return out
54
+ .split('\n')
55
+ .map(s => s.trim())
56
+ .filter(Boolean)
57
+ .map(Number)
58
+ .filter(n => !isNaN(n));
59
+ }
60
+ catch {
61
+ return [];
62
+ }
63
+ }
64
+ /**
65
+ * Recursively search the process tree (up to `maxDepth` levels) for a known CLI binary.
66
+ * Returns { pid, cliId } of the first match, or undefined.
67
+ */
68
+ function findCliProcess(rootPid, maxDepth) {
69
+ // BFS through the process tree
70
+ let current = [rootPid];
71
+ for (let depth = 0; depth <= maxDepth && current.length > 0; depth++) {
72
+ const next = [];
73
+ for (const pid of current) {
74
+ const comm = readComm(pid);
75
+ if (comm && comm in CLI_COMM_MAP) {
76
+ return { pid, cliId: CLI_COMM_MAP[comm] };
77
+ }
78
+ next.push(...getChildPids(pid));
79
+ }
80
+ current = next;
81
+ }
82
+ return undefined;
83
+ }
84
+ /**
85
+ * Try to read Claude Code session metadata from ~/.claude/sessions/<PID>.json.
86
+ * Returns { sessionId, cwd, startedAt } or undefined.
87
+ */
88
+ function readClaudeSessionMeta(pid) {
89
+ try {
90
+ const metaPath = join(homedir(), '.claude', 'sessions', `${pid}.json`);
91
+ const raw = readFileSync(metaPath, 'utf-8');
92
+ const data = JSON.parse(raw);
93
+ return {
94
+ sessionId: typeof data.sessionId === 'string' ? data.sessionId : undefined,
95
+ cwd: typeof data.cwd === 'string' ? data.cwd : undefined,
96
+ startedAt: typeof data.startedAt === 'number' ? data.startedAt : undefined,
97
+ };
98
+ }
99
+ catch {
100
+ return undefined;
101
+ }
102
+ }
103
+ /**
104
+ * Get pane dimensions via tmux display command.
105
+ * Returns { cols, rows } or undefined on failure.
106
+ */
107
+ function getPaneDimensions(tmuxTarget) {
108
+ try {
109
+ const out = execSync(`tmux display -t ${shellescape(tmuxTarget)} -p '#{pane_width} #{pane_height}'`, { encoding: 'utf-8', stdio: ['pipe', 'pipe', 'pipe'] }).trim();
110
+ const [colsStr, rowsStr] = out.split(' ');
111
+ const cols = Number(colsStr);
112
+ const rows = Number(rowsStr);
113
+ if (isNaN(cols) || isNaN(rows))
114
+ return undefined;
115
+ return { cols, rows };
116
+ }
117
+ catch {
118
+ return undefined;
119
+ }
120
+ }
121
+ // ─── Public API ──────────────────────────────────────────────────────────────
122
+ /**
123
+ * Scan all tmux panes for running CLI processes that can be adopted by Botmux.
124
+ *
125
+ * Skips `bmx-*` prefixed sessions (already managed by Botmux).
126
+ * For each remaining pane, recursively searches the process tree (up to 3 levels)
127
+ * for known CLI binaries.
128
+ *
129
+ * @param filterCliId - If provided, only return sessions matching this CLI type.
130
+ */
131
+ export function discoverAdoptableSessions(filterCliId) {
132
+ // 1. List all tmux panes
133
+ let panesRaw;
134
+ try {
135
+ panesRaw = execSync("tmux list-panes -a -F '#{session_name}:#{window_index}.#{pane_index} #{pane_pid}'", { encoding: 'utf-8', stdio: ['pipe', 'pipe', 'pipe'] });
136
+ }
137
+ catch {
138
+ // tmux not available or no server running
139
+ return [];
140
+ }
141
+ const results = [];
142
+ const lines = panesRaw.split('\n').filter(Boolean);
143
+ for (const line of lines) {
144
+ // Parse: "session_name:window_index.pane_index pane_pid"
145
+ const spaceIdx = line.indexOf(' ');
146
+ if (spaceIdx === -1)
147
+ continue;
148
+ const tmuxTarget = line.slice(0, spaceIdx);
149
+ const panePid = Number(line.slice(spaceIdx + 1));
150
+ if (isNaN(panePid))
151
+ continue;
152
+ // 2. Filter out bmx-* sessions
153
+ const sessionName = tmuxTarget.split(':')[0];
154
+ if (sessionName?.startsWith('bmx-'))
155
+ continue;
156
+ // 3. Recursively search process tree for known CLI binaries (up to 3 levels)
157
+ const match = findCliProcess(panePid, 3);
158
+ if (!match)
159
+ continue;
160
+ // 3b. Filter by CLI type if requested
161
+ if (filterCliId && match.cliId !== filterCliId)
162
+ continue;
163
+ // 4. Read CLI working directory from /proc
164
+ const cwd = readCwd(match.pid);
165
+ if (!cwd)
166
+ continue;
167
+ // 5. Try to read Claude Code session metadata
168
+ let sessionId;
169
+ let startedAt;
170
+ if (match.cliId === 'claude-code') {
171
+ const meta = readClaudeSessionMeta(match.pid);
172
+ if (meta) {
173
+ sessionId = meta.sessionId;
174
+ startedAt = meta.startedAt;
175
+ }
176
+ }
177
+ // 6. Get pane dimensions
178
+ const dims = getPaneDimensions(tmuxTarget);
179
+ if (!dims)
180
+ continue;
181
+ results.push({
182
+ tmuxTarget,
183
+ panePid,
184
+ cliPid: match.pid,
185
+ cliId: match.cliId,
186
+ sessionId,
187
+ cwd,
188
+ startedAt,
189
+ paneCols: dims.cols,
190
+ paneRows: dims.rows,
191
+ });
192
+ }
193
+ return results;
194
+ }
195
+ /**
196
+ * Re-check that a specific pane still has the expected CLI process running.
197
+ * Used to validate an adopt target right before the actual adoption.
198
+ */
199
+ export function validateAdoptTarget(tmuxTarget, expectedPid) {
200
+ // Verify the tmux pane still exists and get its shell PID
201
+ let panePid;
202
+ try {
203
+ const out = execSync(`tmux display -t ${shellescape(tmuxTarget)} -p '#{pane_pid}'`, { encoding: 'utf-8', stdio: ['pipe', 'pipe', 'pipe'] }).trim();
204
+ panePid = Number(out);
205
+ if (isNaN(panePid))
206
+ return false;
207
+ }
208
+ catch {
209
+ return false;
210
+ }
211
+ // Search the process tree for the expected CLI PID
212
+ const match = findCliProcess(panePid, 3);
213
+ return match !== undefined && match.pid === expectedPid;
214
+ }
215
+ //# sourceMappingURL=session-discovery.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-discovery.js","sourceRoot":"","sources":["../../src/core/session-discovery.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"session-manager.d.ts","sourceRoot":"","sources":["../../src/core/session-manager.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC9E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAEpE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAIhD,wBAAgB,UAAU,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAE5C;AAED,wBAAgB,oBAAoB,CAAC,EAAE,CAAC,EAAE,aAAa,GAAG,MAAM,CAQ/D;AAED,wBAAgB,iBAAiB,CAAC,EAAE,CAAC,EAAE,aAAa,GAAG,MAAM,CAO5D;AAED,oFAAoF;AACpF,wBAAgB,kBAAkB,CAAC,EAAE,CAAC,EAAE,aAAa,GAAG,MAAM,EAAE,CA2B/D;AAID,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAE3D;AAED,wBAAsB,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,eAAe,EAAE,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,CAiBrI;AAID;;8EAE8E;AAC9E,wBAAsB,gBAAgB,CACpC,YAAY,EAAE,MAAM,EACpB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC,CAuBlE;AAED,wBAAgB,qBAAqB,CAAC,WAAW,CAAC,EAAE,cAAc,EAAE,GAAG,MAAM,CAI5E;AAED,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,KAAK,EACZ,eAAe,CAAC,EAAE,MAAM,EACxB,WAAW,CAAC,EAAE,cAAc,EAAE,EAC9B,QAAQ,CAAC,EAAE,WAAW,EAAE,EACxB,aAAa,CAAC,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,EACvE,SAAS,CAAC,EAAE,MAAM,EAAE,GACnB,MAAM,CA2CR;AAID,wBAAgB,qBAAqB,CAAC,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,GAAG,IAAI,CAgDtF;AAID,wBAAsB,oBAAoB,CACxC,IAAI,EAAE,aAAa,EACnB,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,EAC1C,iBAAiB,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,OAAO,GAC7C,OAAO,CAAC,IAAI,CAAC,CAyCf"}
1
+ {"version":3,"file":"session-manager.d.ts","sourceRoot":"","sources":["../../src/core/session-manager.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC9E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAEpE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAIhD,wBAAgB,UAAU,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAE5C;AAED,wBAAgB,oBAAoB,CAAC,EAAE,CAAC,EAAE,aAAa,GAAG,MAAM,CAQ/D;AAED,wBAAgB,iBAAiB,CAAC,EAAE,CAAC,EAAE,aAAa,GAAG,MAAM,CAO5D;AAED,oFAAoF;AACpF,wBAAgB,kBAAkB,CAAC,EAAE,CAAC,EAAE,aAAa,GAAG,MAAM,EAAE,CA2B/D;AAID,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAE3D;AAED,wBAAsB,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,eAAe,EAAE,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,CAiBrI;AAID;;8EAE8E;AAC9E,wBAAsB,gBAAgB,CACpC,YAAY,EAAE,MAAM,EACpB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC,CAuBlE;AAED,wBAAgB,qBAAqB,CAAC,WAAW,CAAC,EAAE,cAAc,EAAE,GAAG,MAAM,CAI5E;AAED,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,KAAK,EACZ,eAAe,CAAC,EAAE,MAAM,EACxB,WAAW,CAAC,EAAE,cAAc,EAAE,EAC9B,QAAQ,CAAC,EAAE,WAAW,EAAE,EACxB,aAAa,CAAC,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,EACvE,SAAS,CAAC,EAAE,MAAM,EAAE,GACnB,MAAM,CA2CR;AAID,wBAAgB,qBAAqB,CAAC,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,GAAG,IAAI,CAsDtF;AAID,wBAAsB,oBAAoB,CACxC,IAAI,EAAE,aAAa,EACnB,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,EAC1C,iBAAiB,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,OAAO,GAC7C,OAAO,CAAC,IAAI,CAAC,CAyCf"}
@@ -168,6 +168,12 @@ export function restoreActiveSessions(activeSessions) {
168
168
  killStalePids(active);
169
169
  logger.info(`Registering ${active.length} active session(s) (no CLI spawn until new messages arrive)...`);
170
170
  for (const session of active) {
171
+ // Skip adopt sessions — they are ephemeral and should be re-created via /adopt
172
+ if (session.title?.startsWith('Adopt:')) {
173
+ logger.debug(`Skipping adopt session ${session.sessionId} (ephemeral)`);
174
+ sessionStore.closeSession(session.sessionId);
175
+ continue;
176
+ }
171
177
  messageQueue.ensureQueue(session.rootMessageId);
172
178
  const larkAppId = session.larkAppId ?? getAllBots()[0]?.config.larkAppId ?? '';
173
179
  activeSessions.set(sessionKey(session.rootMessageId, larkAppId), {
@@ -1 +1 @@
1
- {"version":3,"file":"session-manager.js","sourceRoot":"","sources":["../../src/core/session-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session-manager.js","sourceRoot":"","sources":["../../src/core/session-manager.ts"],"names":[],"mappings":"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"}
@@ -41,7 +41,18 @@ export interface DaemonSession {
41
41
  currentTurnTitle?: string;
42
42
  cardPatchInFlight?: boolean;
43
43
  pendingCardJson?: string;
44
+ pendingCardId?: string;
44
45
  frozenCards?: Map<string, FrozenCard>;
46
+ /** Present when this session was created via /adopt (shared observation mode). */
47
+ adoptedFrom?: {
48
+ tmuxTarget: string;
49
+ originalCliPid: number;
50
+ sessionId?: string;
51
+ cliId?: import('../adapters/cli/types.js').CliId;
52
+ cwd: string;
53
+ paneCols?: number;
54
+ paneRows?: number;
55
+ };
45
56
  }
46
57
  /** Composite key for activeSessions — allows multiple bots to have independent sessions for the same thread. */
47
58
  export declare function sessionKey(rootId: string, larkAppId: string): string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAExF,mGAAmG;AACnG,MAAM,WAAW,UAAU;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED;;;+CAG+C;AAC/C,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,YAAY,GAAG,IAAI,CAAC;IAC5B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,OAAO,GAAG,KAAK,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,cAAc,CAAC;IAC5B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kBAAkB,CAAC,EAAE,cAAc,EAAE,CAAC;IACtC,eAAe,CAAC,EAAE,WAAW,EAAE,CAAC;IAChC,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gBAAgB,CAAC,EAAE,UAAU,GAAG,SAAS,GAAG,MAAM,CAAC;IACnD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;CACvC;AAED,gHAAgH;AAChH,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAEpE"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAExF,mGAAmG;AACnG,MAAM,WAAW,UAAU;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED;;;+CAG+C;AAC/C,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,YAAY,GAAG,IAAI,CAAC;IAC5B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,OAAO,GAAG,KAAK,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,cAAc,CAAC;IAC5B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kBAAkB,CAAC,EAAE,cAAc,EAAE,CAAC;IACtC,eAAe,CAAC,EAAE,WAAW,EAAE,CAAC;IAChC,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gBAAgB,CAAC,EAAE,UAAU,GAAG,SAAS,GAAG,MAAM,CAAC;IACnD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACtC,kFAAkF;IAClF,WAAW,CAAC,EAAE;QACZ,UAAU,EAAE,MAAM,CAAC;QACnB,cAAc,EAAE,MAAM,CAAC;QACvB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,KAAK,CAAC,EAAE,OAAO,0BAA0B,EAAE,KAAK,CAAC;QACjD,GAAG,EAAE,MAAM,CAAC;QACZ,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC;CACH;AAED,gHAAgH;AAChH,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAEpE"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"AAgDA,gHAAgH;AAChH,MAAM,UAAU,UAAU,CAAC,MAAc,EAAE,SAAiB;IAC1D,OAAO,GAAG,MAAM,KAAK,SAAS,EAAE,CAAC;AACnC,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"AA2DA,gHAAgH;AAChH,MAAM,UAAU,UAAU,CAAC,MAAc,EAAE,SAAiB;IAC1D,OAAO,GAAG,MAAM,KAAK,SAAS,EAAE,CAAC;AACnC,CAAC"}
@@ -30,6 +30,7 @@ export declare const restartCounts: Map<string, {
30
30
  export declare function ensureMcpConfig(cliId: CliId, cliPathOverride?: string): void;
31
31
  export declare function killWorker(ds: DaemonSession): void;
32
32
  export declare function forkWorker(ds: DaemonSession, prompt: string, resume?: boolean): void;
33
+ export declare function forkAdoptWorker(ds: DaemonSession): void;
33
34
  export declare function killStalePids(activeSessions_: Session[]): void;
34
35
  export declare function setCurrentCliVersion(v: string): void;
35
36
  export declare function getCurrentCliVersion(): string;
@@ -1 +1 @@
1
- {"version":3,"file":"worker-pool.d.ts","sourceRoot":"","sources":["../../src/core/worker-pool.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,KAAK,EAAkC,OAAO,EAAE,MAAM,aAAa,CAAC;AAC3E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAOhD,MAAM,WAAW,mBAAmB;IAClC,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACzG,oBAAoB,EAAE,CAAC,EAAE,CAAC,EAAE,aAAa,KAAK,MAAM,CAAC;IACrD,cAAc,EAAE,MAAM,MAAM,CAAC;IAC7B,sDAAsD;IACtD,YAAY,EAAE,CAAC,EAAE,EAAE,aAAa,KAAK,IAAI,CAAC;CAC3C;AAID;;GAEG;AACH,wBAAgB,cAAc,CAAC,EAAE,EAAE,mBAAmB,GAAG,IAAI,CAE5D;AAgBD,eAAO,MAAM,qBAAqB,gBAAgB,CAAC;AASnD;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAI3E;AA8BD,eAAO,MAAM,aAAa;WAA4B,MAAM;YAAU,MAAM;EAAK,CAAC;AAOlF;;;GAGG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,KAAK,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAe5E;AAID,wBAAgB,UAAU,CAAC,EAAE,EAAE,aAAa,GAAG,IAAI,CAWlD;AAID,wBAAgB,UAAU,CAAC,EAAE,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,UAAQ,GAAG,IAAI,CAyQlF;AAID,wBAAgB,aAAa,CAAC,eAAe,EAAE,OAAO,EAAE,GAAG,IAAI,CA6D9D;AAOD,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,CAEpD;AAED,wBAAgB,oBAAoB,IAAI,MAAM,CAE7C"}
1
+ {"version":3,"file":"worker-pool.d.ts","sourceRoot":"","sources":["../../src/core/worker-pool.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,KAAK,EAAkC,OAAO,EAAE,MAAM,aAAa,CAAC;AAC3E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAOhD,MAAM,WAAW,mBAAmB;IAClC,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACzG,oBAAoB,EAAE,CAAC,EAAE,CAAC,EAAE,aAAa,KAAK,MAAM,CAAC;IACrD,cAAc,EAAE,MAAM,MAAM,CAAC;IAC7B,sDAAsD;IACtD,YAAY,EAAE,CAAC,EAAE,EAAE,aAAa,KAAK,IAAI,CAAC;CAC3C;AAID;;GAEG;AACH,wBAAgB,cAAc,CAAC,EAAE,EAAE,mBAAmB,GAAG,IAAI,CAE5D;AAgBD,eAAO,MAAM,qBAAqB,gBAAgB,CAAC;AASnD;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAO3E;AAgCD,eAAO,MAAM,aAAa;WAA4B,MAAM;YAAU,MAAM;EAAK,CAAC;AAOlF;;;GAGG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,KAAK,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAe5E;AAID,wBAAgB,UAAU,CAAC,EAAE,EAAE,aAAa,GAAG,IAAI,CAWlD;AAID,wBAAgB,UAAU,CAAC,EAAE,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,UAAQ,GAAG,IAAI,CA2ElF;AA4OD,wBAAgB,eAAe,CAAC,EAAE,EAAE,aAAa,GAAG,IAAI,CA6EvD;AAID,wBAAgB,aAAa,CAAC,eAAe,EAAE,OAAO,EAAE,GAAG,IAAI,CA6D9D;AAOD,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,CAEpD;AAED,wBAAgB,oBAAoB,IAAI,MAAM,CAE7C"}
@@ -50,18 +50,23 @@ export const CARD_POSTING_SENTINEL = '__posting__';
50
50
  */
51
51
  export function scheduleCardPatch(ds, cardJson) {
52
52
  ds.pendingCardJson = cardJson;
53
+ // Capture the card ID now — by the time flushCardPatch runs, ds.streamCardId
54
+ // may have been overwritten by a new turn's card (CARD_POSTING_SENTINEL).
55
+ ds.pendingCardId = ds.streamCardId;
53
56
  if (ds.cardPatchInFlight)
54
57
  return;
55
58
  flushCardPatch(ds);
56
59
  }
57
60
  function flushCardPatch(ds) {
58
61
  const json = ds.pendingCardJson;
59
- const cardId = ds.streamCardId;
62
+ const cardId = ds.pendingCardId;
60
63
  if (!json || !cardId || cardId === CARD_POSTING_SENTINEL) {
61
64
  ds.pendingCardJson = undefined;
65
+ ds.pendingCardId = undefined;
62
66
  return;
63
67
  }
64
68
  ds.pendingCardJson = undefined;
69
+ ds.pendingCardId = undefined;
65
70
  ds.cardPatchInFlight = true;
66
71
  updateMessage(ds.larkAppId, cardId, json)
67
72
  .catch(err => {
@@ -191,7 +196,23 @@ export function forkWorker(ds, prompt, resume = false) {
191
196
  };
192
197
  worker.send(initMsg);
193
198
  ds.initConfig = initMsg;
194
- // Handle IPC messages from worker
199
+ // Use shared handler for IPC messages and exit
200
+ setupWorkerHandlers(ds, worker);
201
+ ds.worker = worker;
202
+ ds.spawnedAt = Date.now();
203
+ ds.cliVersion = currentCliVersion;
204
+ sessionStore.updateSessionPid(ds.session.sessionId, worker.pid ?? null);
205
+ logger.info(`[${t}] Worker forked (pid: ${worker.pid}, active: ${cb.getActiveCount()})`);
206
+ }
207
+ // ─── Shared worker IPC handler ──────────────────────────────────────────────
208
+ function setupWorkerHandlers(ds, worker) {
209
+ const cb = requireCallbacks();
210
+ const t = tag(ds);
211
+ const bot = getBot(ds.larkAppId);
212
+ const botCfg = bot.config;
213
+ // Adopt mode flags — computed once, used in all buildStreamingCard calls
214
+ const isAdopt = !!ds.adoptedFrom;
215
+ const showTakeover = isAdopt && !!ds.adoptedFrom?.sessionId;
195
216
  worker.on('message', async (msg) => {
196
217
  switch (msg.type) {
197
218
  case 'ready': {
@@ -210,7 +231,7 @@ export function forkWorker(ds, prompt, resume = false) {
210
231
  try {
211
232
  ds.streamCardNonce = randomBytes(4).toString('hex');
212
233
  const initTitle = ds.currentTurnTitle || ds.session.title || getCliDisplayName(botCfg.cliId);
213
- const streamCardJson = buildStreamingCard(ds.session.sessionId, ds.session.rootMessageId, readOnlyUrl, initTitle, '', 'starting', botCfg.cliId, ds.streamExpanded, ds.streamCardNonce);
234
+ const streamCardJson = buildStreamingCard(ds.session.sessionId, ds.session.rootMessageId, readOnlyUrl, initTitle, '', 'starting', botCfg.cliId, ds.streamExpanded, ds.streamCardNonce, isAdopt, showTakeover);
214
235
  ds.streamCardId = await cb.sessionReply(ds.session.rootMessageId, streamCardJson, 'interactive', ds.larkAppId);
215
236
  }
216
237
  catch (err) {
@@ -260,7 +281,7 @@ export function forkWorker(ds, prompt, resume = false) {
260
281
  // Generate new nonce so old card buttons are distinguishable.
261
282
  const isNewTurn = !!ds.streamCardPending;
262
283
  ds.streamCardNonce = randomBytes(4).toString('hex');
263
- const cardJson = buildStreamingCard(ds.session.sessionId, ds.session.rootMessageId, readUrl, turnTitle, isNewTurn ? '' : msg.content, msg.status, botCfg.cliId, ds.streamExpanded, ds.streamCardNonce);
284
+ const cardJson = buildStreamingCard(ds.session.sessionId, ds.session.rootMessageId, readUrl, turnTitle, isNewTurn ? '' : msg.content, msg.status, botCfg.cliId, ds.streamExpanded, ds.streamCardNonce, isAdopt, showTakeover);
264
285
  // Mark POST in-flight so subsequent screen_updates are dropped,
265
286
  // not POSTed as duplicate cards.
266
287
  ds.streamCardPending = false;
@@ -280,7 +301,7 @@ export function forkWorker(ds, prompt, resume = false) {
280
301
  }
281
302
  else {
282
303
  // Same turn — queue PATCH (serialized, latest-wins), reuse existing nonce
283
- const cardJson = buildStreamingCard(ds.session.sessionId, ds.session.rootMessageId, readUrl, turnTitle, msg.content, msg.status, botCfg.cliId, ds.streamExpanded, ds.streamCardNonce);
304
+ const cardJson = buildStreamingCard(ds.session.sessionId, ds.session.rootMessageId, readUrl, turnTitle, msg.content, msg.status, botCfg.cliId, ds.streamExpanded, ds.streamCardNonce, isAdopt, showTakeover);
284
305
  scheduleCardPatch(ds, cardJson);
285
306
  }
286
307
  break;
@@ -288,6 +309,23 @@ export function forkWorker(ds, prompt, resume = false) {
288
309
  case 'claude_exit': {
289
310
  logger.info(`[${t}] ${getCliDisplayName(botCfg.cliId)} exited (code: ${msg.code}, signal: ${msg.signal})`);
290
311
  ds.hasHistory = true;
312
+ // Do NOT auto-restart in adopt mode — there's nothing to restart
313
+ if (ds.adoptedFrom) {
314
+ logger.info(`[${t}] Adopted session ended`);
315
+ // Freeze the streaming card
316
+ if (ds.streamCardId && ds.workerPort) {
317
+ const readUrl = `http://${config.web.externalHost}:${ds.workerPort}`;
318
+ const turnTitle = ds.currentTurnTitle || ds.session.title || getCliDisplayName(botCfg.cliId);
319
+ const frozenCard = buildStreamingCard(ds.session.sessionId, ds.session.rootMessageId, readUrl, turnTitle, ds.lastScreenContent ?? '', 'idle', botCfg.cliId, ds.streamExpanded, ds.streamCardNonce, isAdopt, showTakeover);
320
+ scheduleCardPatch(ds, frozenCard);
321
+ }
322
+ killWorker(ds);
323
+ try {
324
+ await cb.sessionReply(ds.session.rootMessageId, '\u23cf 已采纳的 CLI 会话已退出', 'text', ds.larkAppId);
325
+ }
326
+ catch { /* best effort */ }
327
+ break;
328
+ }
291
329
  // Rate-limit auto-restart to prevent crash loops
292
330
  const key = ds.session.sessionId;
293
331
  const rc = restartCounts.get(key) ?? { count: 0, lastAt: 0 };
@@ -310,7 +348,7 @@ export function forkWorker(ds, prompt, resume = false) {
310
348
  killWorker(ds);
311
349
  const cliName = getCliDisplayName(botCfg.cliId);
312
350
  try {
313
- await cb.sessionReply(ds.session.rootMessageId, `⚠️ ${cliName} 在 1 分钟内崩溃 ${rc.count} 次,已停止自动重启。发消息可触发重新启动。`, 'text', ds.larkAppId);
351
+ await cb.sessionReply(ds.session.rootMessageId, `\u26a0\ufe0f ${cliName} 在 1 分钟内崩溃 ${rc.count} 次,已停止自动重启。发消息可触发重新启动。`, 'text', ds.larkAppId);
314
352
  }
315
353
  catch (replyErr) {
316
354
  if (replyErr instanceof MessageWithdrawnError) {
@@ -338,11 +376,86 @@ export function forkWorker(ds, prompt, resume = false) {
338
376
  ds.worker = null;
339
377
  ds.workerPort = null;
340
378
  });
379
+ }
380
+ // ─── Fork adopt worker ──────────────────────────────────────────────────────
381
+ export function forkAdoptWorker(ds) {
382
+ const cb = requireCallbacks();
383
+ const workerPath = join(__dirname, '..', 'worker.js');
384
+ const t = tag(ds);
385
+ const adopted = ds.adoptedFrom;
386
+ if (!adopted)
387
+ throw new Error('forkAdoptWorker called without adoptedFrom');
388
+ const bot = getBot(ds.larkAppId);
389
+ const botCfg = bot.config;
390
+ // Guard against double-fork
391
+ if (ds.worker && !ds.worker.killed) {
392
+ logger.warn(`[${t}] Worker already running, killing before adopt-fork`);
393
+ try {
394
+ ds.worker.send({ type: 'close' });
395
+ }
396
+ catch { }
397
+ try {
398
+ ds.worker.kill();
399
+ }
400
+ catch { }
401
+ ds.worker = null;
402
+ ds.workerPort = null;
403
+ ds.workerToken = null;
404
+ }
405
+ // NO ensureMcpConfig — adopt mode has no MCP
406
+ const worker = fork(workerPath, [], {
407
+ stdio: ['ignore', 'pipe', 'pipe', 'ipc'],
408
+ cwd: adopted.cwd ?? ds.workingDir ?? process.cwd(),
409
+ env: {
410
+ ...process.env,
411
+ CLAUDECODE: undefined,
412
+ BOTMUX: '1',
413
+ LARK_APP_ID: botCfg.larkAppId,
414
+ LARK_APP_SECRET: botCfg.larkAppSecret,
415
+ },
416
+ });
417
+ // Pipe worker stdout/stderr
418
+ worker.stdout?.on('data', (data) => {
419
+ for (const line of data.toString().split('\n')) {
420
+ const trimmed = line.trim();
421
+ if (trimmed)
422
+ logger.info(`[${t}:out] ${trimmed}`);
423
+ }
424
+ });
425
+ worker.stderr?.on('data', (data) => {
426
+ for (const line of data.toString().split('\n')) {
427
+ const trimmed = line.trim();
428
+ if (trimmed)
429
+ logger.error(`[${t}:worker] ${trimmed}`);
430
+ }
431
+ });
432
+ const initMsg = {
433
+ type: 'init',
434
+ sessionId: ds.session.sessionId,
435
+ chatId: ds.chatId,
436
+ rootMessageId: ds.session.rootMessageId,
437
+ workingDir: adopted.cwd,
438
+ cliId: adopted.cliId ?? 'claude-code',
439
+ backendType: 'tmux',
440
+ prompt: '',
441
+ resume: false,
442
+ ownerOpenId: ds.ownerOpenId,
443
+ webPort: ds.session.webPort,
444
+ larkAppId: botCfg.larkAppId,
445
+ larkAppSecret: botCfg.larkAppSecret,
446
+ adoptMode: true,
447
+ adoptTmuxTarget: adopted.tmuxTarget,
448
+ adoptPaneCols: adopted.paneCols,
449
+ adoptPaneRows: adopted.paneRows,
450
+ };
451
+ worker.send(initMsg);
452
+ ds.initConfig = initMsg;
453
+ // Use shared handler
454
+ setupWorkerHandlers(ds, worker);
341
455
  ds.worker = worker;
342
456
  ds.spawnedAt = Date.now();
343
- ds.cliVersion = currentCliVersion;
344
- sessionStore.updateSessionPid(ds.session.sessionId, worker.pid ?? null);
345
- logger.info(`[${t}] Worker forked (pid: ${worker.pid}, active: ${cb.getActiveCount()})`);
457
+ ds.cliVersion = '';
458
+ logger.info(`[${t}] Adopt worker forked (pid: ${worker.pid}, target: ${adopted.tmuxTarget})`);
346
459
  }
347
460
  // ─── Kill stale PIDs ────────────────────────────────────────────────────────
348
461
  export function killStalePids(activeSessions_) {
@@ -1 +1 @@
1
- {"version":3,"file":"worker-pool.js","sourceRoot":"","sources":["../../src/core/worker-pool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"worker-pool.js","sourceRoot":"","sources":["../../src/core/worker-pool.ts"],"names":[],"mappings":"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"}