aicodeman 1.32.0 → 1.32.1

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 (190) hide show
  1. package/dist/config/cli-registry/schema.d.ts +3 -0
  2. package/dist/config/cli-registry/schema.d.ts.map +1 -1
  3. package/dist/config/cli-registry/schema.js +32 -0
  4. package/dist/config/cli-registry/schema.js.map +1 -1
  5. package/dist/config/cli-registry/stock.d.ts.map +1 -1
  6. package/dist/config/cli-registry/stock.js +82 -13
  7. package/dist/config/cli-registry/stock.js.map +1 -1
  8. package/dist/config/cli-registry/types.d.ts +48 -1
  9. package/dist/config/cli-registry/types.d.ts.map +1 -1
  10. package/dist/docker-hosts.d.ts +14 -3
  11. package/dist/docker-hosts.d.ts.map +1 -1
  12. package/dist/docker-hosts.js +66 -5
  13. package/dist/docker-hosts.js.map +1 -1
  14. package/dist/git-clone.d.ts +22 -2
  15. package/dist/git-clone.d.ts.map +1 -1
  16. package/dist/git-clone.js +26 -6
  17. package/dist/git-clone.js.map +1 -1
  18. package/dist/mux-interface.d.ts +33 -1
  19. package/dist/mux-interface.d.ts.map +1 -1
  20. package/dist/session-activity.d.ts +41 -0
  21. package/dist/session-activity.d.ts.map +1 -1
  22. package/dist/session-activity.js +62 -0
  23. package/dist/session-activity.js.map +1 -1
  24. package/dist/session.d.ts +225 -1
  25. package/dist/session.d.ts.map +1 -1
  26. package/dist/session.js +402 -22
  27. package/dist/session.js.map +1 -1
  28. package/dist/tmux-manager.d.ts +183 -4
  29. package/dist/tmux-manager.d.ts.map +1 -1
  30. package/dist/tmux-manager.js +333 -15
  31. package/dist/tmux-manager.js.map +1 -1
  32. package/dist/tui/tui-approvals.d.ts +10 -2
  33. package/dist/tui/tui-approvals.d.ts.map +1 -1
  34. package/dist/tui/tui-approvals.js +14 -3
  35. package/dist/tui/tui-approvals.js.map +1 -1
  36. package/dist/tui/tui-model.d.ts +12 -0
  37. package/dist/tui/tui-model.d.ts.map +1 -1
  38. package/dist/tui/tui-model.js +19 -2
  39. package/dist/tui/tui-model.js.map +1 -1
  40. package/dist/tui/tui-render.d.ts +11 -2
  41. package/dist/tui/tui-render.d.ts.map +1 -1
  42. package/dist/tui/tui-render.js +14 -5
  43. package/dist/tui/tui-render.js.map +1 -1
  44. package/dist/types/session.d.ts +62 -0
  45. package/dist/types/session.d.ts.map +1 -1
  46. package/dist/types/session.js.map +1 -1
  47. package/dist/utils/claude-transcript.d.ts +49 -0
  48. package/dist/utils/claude-transcript.d.ts.map +1 -0
  49. package/dist/utils/claude-transcript.js +76 -0
  50. package/dist/utils/claude-transcript.js.map +1 -0
  51. package/dist/web/approval-inbox.d.ts +31 -0
  52. package/dist/web/approval-inbox.d.ts.map +1 -1
  53. package/dist/web/approval-inbox.js +20 -0
  54. package/dist/web/approval-inbox.js.map +1 -1
  55. package/dist/web/public/admin-ui.js.gz +0 -0
  56. package/dist/web/public/api-client.c9b1cddc.js.gz +0 -0
  57. package/dist/web/public/app.3ea688d2.js +43 -0
  58. package/dist/web/public/app.3ea688d2.js.br +0 -0
  59. package/dist/web/public/app.3ea688d2.js.gz +0 -0
  60. package/dist/web/public/approvals-ui.js +26 -1
  61. package/dist/web/public/approvals-ui.js.br +0 -0
  62. package/dist/web/public/approvals-ui.js.gz +0 -0
  63. package/dist/web/public/{constants.b26748e9.js → constants.dee9dcc7.js} +288 -24
  64. package/dist/web/public/constants.dee9dcc7.js.br +0 -0
  65. package/dist/web/public/constants.dee9dcc7.js.gz +0 -0
  66. package/dist/web/public/cron-ui.js.gz +0 -0
  67. package/dist/web/public/entrance-animations.js.gz +0 -0
  68. package/dist/web/public/home-sessions.js +9 -0
  69. package/dist/web/public/home-sessions.js.br +0 -0
  70. package/dist/web/public/home-sessions.js.gz +0 -0
  71. package/dist/web/public/host-wake-ui.js.gz +0 -0
  72. package/dist/web/public/i18n.d22be5c4.js.gz +0 -0
  73. package/dist/web/public/image-input.a216cf9e.js.gz +0 -0
  74. package/dist/web/public/index.html +20 -13
  75. package/dist/web/public/index.html.br +0 -0
  76. package/dist/web/public/index.html.gz +0 -0
  77. package/dist/web/public/input-cjk.8bc46081.js.gz +0 -0
  78. package/dist/web/public/keyboard-accessory.c1e7c7b7.js.gz +0 -0
  79. package/dist/web/public/{mobile-handlers.6f354a87.js → mobile-handlers.23a85db1.js} +22 -27
  80. package/dist/web/public/mobile-handlers.23a85db1.js.br +0 -0
  81. package/dist/web/public/mobile-handlers.23a85db1.js.gz +0 -0
  82. package/dist/web/public/mobile-overview.js +48 -0
  83. package/dist/web/public/mobile-overview.js.br +0 -0
  84. package/dist/web/public/mobile-overview.js.gz +0 -0
  85. package/dist/web/public/mobile.eeadfbbe.css +1 -0
  86. package/dist/web/public/mobile.eeadfbbe.css.br +0 -0
  87. package/dist/web/public/mobile.eeadfbbe.css.gz +0 -0
  88. package/dist/web/public/{notification-manager.36ea4624.js → notification-manager.50bb87d8.js} +4 -2
  89. package/dist/web/public/notification-manager.50bb87d8.js.br +0 -0
  90. package/dist/web/public/notification-manager.50bb87d8.js.gz +0 -0
  91. package/dist/web/public/orchestrator-panel.js.gz +0 -0
  92. package/dist/web/public/{panels-ui.28df5053.js → panels-ui.24ea8932.js} +1 -1
  93. package/dist/web/public/panels-ui.24ea8932.js.br +0 -0
  94. package/dist/web/public/{panels-ui.28df5053.js.gz → panels-ui.24ea8932.js.gz} +0 -0
  95. package/dist/web/public/{ralph-panel.6de2d0f8.js → ralph-panel.b350e2ef.js} +11 -11
  96. package/dist/web/public/ralph-panel.b350e2ef.js.br +0 -0
  97. package/dist/web/public/ralph-panel.b350e2ef.js.gz +0 -0
  98. package/dist/web/public/ralph-wizard.13a1831e.js.gz +0 -0
  99. package/dist/web/public/readmymind-ui.js.gz +0 -0
  100. package/dist/web/public/reboot-restore-ui.js.gz +0 -0
  101. package/dist/web/public/respawn-ui.ff0dae4c.js.gz +0 -0
  102. package/dist/web/public/sanitize-html.bc7078d6.js.gz +0 -0
  103. package/dist/web/public/session-lineage.js.gz +0 -0
  104. package/dist/web/public/session-ui.7df17fd3.js.gz +0 -0
  105. package/dist/web/public/settings-ui.336cf5da.js +78 -0
  106. package/dist/web/public/settings-ui.336cf5da.js.br +0 -0
  107. package/dist/web/public/settings-ui.336cf5da.js.gz +0 -0
  108. package/dist/web/public/styles.dd278987.css +1 -0
  109. package/dist/web/public/styles.dd278987.css.br +0 -0
  110. package/dist/web/public/styles.dd278987.css.gz +0 -0
  111. package/dist/web/public/subagent-windows.e6ca799f.js.gz +0 -0
  112. package/dist/web/public/sw.js +36 -17
  113. package/dist/web/public/sw.js.br +0 -0
  114. package/dist/web/public/sw.js.gz +0 -0
  115. package/dist/web/public/tab-rail-resize.dcdc5772.js +1 -0
  116. package/dist/web/public/tab-rail-resize.dcdc5772.js.br +0 -0
  117. package/dist/web/public/tab-rail-resize.dcdc5772.js.gz +0 -0
  118. package/dist/web/public/terminal-keycode229-recovery.fb91b25b.js.gz +0 -0
  119. package/dist/web/public/terminal-split.js +12 -1
  120. package/dist/web/public/terminal-split.js.br +0 -0
  121. package/dist/web/public/terminal-split.js.gz +0 -0
  122. package/dist/web/public/terminal-ui.baf7c9c6.js +2 -0
  123. package/dist/web/public/terminal-ui.baf7c9c6.js.br +0 -0
  124. package/dist/web/public/terminal-ui.baf7c9c6.js.gz +0 -0
  125. package/dist/web/public/ultracode-panel.js.gz +0 -0
  126. package/dist/web/public/ultracode-windows.js.gz +0 -0
  127. package/dist/web/public/upload.html.gz +0 -0
  128. package/dist/web/public/vendor/dompurify.min.js.gz +0 -0
  129. package/dist/web/public/vendor/marked.min.js.gz +0 -0
  130. package/dist/web/public/vendor/xterm-addon-fit.min.js.gz +0 -0
  131. package/dist/web/public/vendor/xterm-addon-serialize.min.js.gz +0 -0
  132. package/dist/web/public/vendor/xterm-addon-unicode11.min.js.gz +0 -0
  133. package/dist/web/public/vendor/xterm-addon-webgl.min.js.gz +0 -0
  134. package/dist/web/public/vendor/xterm-predictive-echo.bd6882b8.js.gz +0 -0
  135. package/dist/web/public/vendor/xterm-zerolag-input.6fee72f2.js.gz +0 -0
  136. package/dist/web/public/vendor/xterm.css.gz +0 -0
  137. package/dist/web/public/vendor/xterm.min.js.gz +0 -0
  138. package/dist/web/public/voice-input.c4b51eb6.js.gz +0 -0
  139. package/dist/web/public/voice-pcm-worklet.js.gz +0 -0
  140. package/dist/web/public/webview-tabs.js.gz +0 -0
  141. package/dist/web/routes/case-routes.d.ts +10 -0
  142. package/dist/web/routes/case-routes.d.ts.map +1 -1
  143. package/dist/web/routes/case-routes.js +19 -3
  144. package/dist/web/routes/case-routes.js.map +1 -1
  145. package/dist/web/routes/hook-event-routes.d.ts.map +1 -1
  146. package/dist/web/routes/hook-event-routes.js +23 -6
  147. package/dist/web/routes/hook-event-routes.js.map +1 -1
  148. package/dist/web/routes/session-routes.d.ts.map +1 -1
  149. package/dist/web/routes/session-routes.js +16 -1
  150. package/dist/web/routes/session-routes.js.map +1 -1
  151. package/dist/web/routes/ws-routes.d.ts +3 -0
  152. package/dist/web/routes/ws-routes.d.ts.map +1 -1
  153. package/dist/web/routes/ws-routes.js +16 -0
  154. package/dist/web/routes/ws-routes.js.map +1 -1
  155. package/dist/web/server.d.ts +17 -0
  156. package/dist/web/server.d.ts.map +1 -1
  157. package/dist/web/server.js +73 -0
  158. package/dist/web/server.js.map +1 -1
  159. package/dist/web/session-listener-wiring.d.ts +1 -0
  160. package/dist/web/session-listener-wiring.d.ts.map +1 -1
  161. package/dist/web/session-listener-wiring.js +12 -0
  162. package/dist/web/session-listener-wiring.js.map +1 -1
  163. package/package.json +2 -1
  164. package/dist/web/public/app.a792bf71.js +0 -38
  165. package/dist/web/public/app.a792bf71.js.br +0 -0
  166. package/dist/web/public/app.a792bf71.js.gz +0 -0
  167. package/dist/web/public/constants.b26748e9.js.br +0 -0
  168. package/dist/web/public/constants.b26748e9.js.gz +0 -0
  169. package/dist/web/public/mobile-handlers.6f354a87.js.br +0 -0
  170. package/dist/web/public/mobile-handlers.6f354a87.js.gz +0 -0
  171. package/dist/web/public/mobile.6caaa28a.css +0 -1
  172. package/dist/web/public/mobile.6caaa28a.css.br +0 -0
  173. package/dist/web/public/mobile.6caaa28a.css.gz +0 -0
  174. package/dist/web/public/notification-manager.36ea4624.js.br +0 -0
  175. package/dist/web/public/notification-manager.36ea4624.js.gz +0 -0
  176. package/dist/web/public/panels-ui.28df5053.js.br +0 -0
  177. package/dist/web/public/ralph-panel.6de2d0f8.js.br +0 -0
  178. package/dist/web/public/ralph-panel.6de2d0f8.js.gz +0 -0
  179. package/dist/web/public/settings-ui.df5ffb68.js +0 -78
  180. package/dist/web/public/settings-ui.df5ffb68.js.br +0 -0
  181. package/dist/web/public/settings-ui.df5ffb68.js.gz +0 -0
  182. package/dist/web/public/styles.74f312e5.css +0 -1
  183. package/dist/web/public/styles.74f312e5.css.br +0 -0
  184. package/dist/web/public/styles.74f312e5.css.gz +0 -0
  185. package/dist/web/public/tab-rail-resize.42c24949.js +0 -1
  186. package/dist/web/public/tab-rail-resize.42c24949.js.br +0 -0
  187. package/dist/web/public/tab-rail-resize.42c24949.js.gz +0 -0
  188. package/dist/web/public/terminal-ui.32fbeaf6.js +0 -2
  189. package/dist/web/public/terminal-ui.32fbeaf6.js.br +0 -0
  190. package/dist/web/public/terminal-ui.32fbeaf6.js.gz +0 -0
@@ -6,7 +6,7 @@
6
6
  * @module mux-interface
7
7
  */
8
8
  import type { EventEmitter } from 'node:events';
9
- import type { ProcessStats, PersistedRespawnConfig, NiceConfig, ClaudeMode, SessionMode, OpenCodeConfig, CodexConfig, EffortLevel, GeminiConfig, AntigravityConfig, PiConfig, GrokConfig, DeepSeekConfig, OmpConfig, SessionRemote, SessionDocker } from './types.js';
9
+ import type { ProcessStats, PersistedRespawnConfig, NiceConfig, ClaudeMode, SessionMode, OpenCodeConfig, CodexConfig, EffortLevel, GeminiConfig, AntigravityConfig, PiConfig, GrokConfig, DeepSeekConfig, OmpConfig, SessionRemote, SessionDocker, PaneExit } from './types.js';
10
10
  /**
11
11
  * Multiplexer session metadata.
12
12
  */
@@ -37,6 +37,23 @@ export interface MuxSession {
37
37
  respawnConfig?: PersistedRespawnConfig;
38
38
  /** Whether Ralph / Todo tracking is enabled */
39
39
  ralphEnabled?: boolean;
40
+ /**
41
+ * This record was rebuilt from the tmux socket rather than from Codeman's own
42
+ * bookkeeping, so everything on it but the name and the pid is a guess. Its
43
+ * synthetic `restored-<fragment>` id cannot find the session's `state.json`
44
+ * entry either, which means a remote or docker session rediscovered this way
45
+ * arrives with no `remote`/`docker` metadata and looks local. Anything that
46
+ * would be WRONG about such a session rather than merely vague must fail
47
+ * closed on this flag.
48
+ *
49
+ * ⚠ It is PERMANENT, not merely true for the boot that rediscovered the
50
+ * session: `saveSessions()` serializes the whole record to
51
+ * `mux-sessions.json` and `loadSessions()` restores it, so a genuinely local
52
+ * session rediscovered once stays opted out of everything keyed on this for
53
+ * the life of that record. That is the safe direction to fail, and it costs
54
+ * only the guess Codeman is declining to make.
55
+ */
56
+ discovered?: boolean;
40
57
  }
41
58
  /**
42
59
  * MuxSession with optional process resource statistics.
@@ -159,6 +176,7 @@ export interface PaneCaptureOptions {
159
176
  * - `sessionKilled` (data: { sessionId: string }) - Session terminated
160
177
  * - `sessionDied` (data: { sessionId: string }) - Session died unexpectedly
161
178
  * - `statsUpdated` (sessions: MuxSessionWithStats[]) - Stats refreshed
179
+ * - `paneExitsUpdated` () - A pane read finished; ask `getPaneExit()` per session
162
180
  */
163
181
  export interface TerminalMultiplexer extends EventEmitter {
164
182
  /** Which backend this instance uses */
@@ -234,6 +252,20 @@ export interface TerminalMultiplexer extends EventEmitter {
234
252
  muxSessionExists(muxName: string): boolean;
235
253
  /** Check if the pane in a session is dead (command exited but remain-on-exit keeps it alive) */
236
254
  isPaneDead(muxName: string): boolean;
255
+ /**
256
+ * What the last pane read saw of this session's agent, or `undefined` for
257
+ * UNKNOWN (Ark0N/Codeman#446). Unlike `isPaneDead()` this costs nothing: it
258
+ * reads a map the batched watcher fills, so it answers no fresher than that
259
+ * watcher's interval and the three synchronous `isPaneDead()` callers still
260
+ * need their own probe. See {@link PaneExit}.
261
+ */
262
+ getPaneExit?(muxName: string): PaneExit | undefined;
263
+ /** Forget a session's exit observation, e.g. once its pane has been respawned. */
264
+ clearPaneExit?(muxName: string): void;
265
+ /** Start polling every pane on the socket for an exited agent. */
266
+ startPaneExitWatcher?(intervalMs?: number): void;
267
+ /** Stop the pane-exit watcher. */
268
+ stopPaneExitWatcher?(): void;
237
269
  /** Respawn a dead pane with a fresh command. Returns the new PID or null on failure. */
238
270
  respawnPane(options: RespawnPaneOptions): Promise<number | null>;
239
271
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"mux-interface.d.ts","sourceRoot":"","sources":["../src/mux-interface.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mux-interface.d.ts","sourceRoot":"","sources":["../src/mux-interface.ts"],"names":[],"mappings":"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"}
@@ -70,4 +70,45 @@ export declare function trackActivityStreak(streak: ActivityStreak | null, now:
70
70
  export declare function isSustainedActivity(streak: ActivityStreak | null, streakMs?: number): boolean;
71
71
  /** True when the pane has produced nothing for long enough to call it idle. */
72
72
  export declare function isPaneQuiet(lastActivityAt: number, now: number, silenceMs?: number): boolean;
73
+ /**
74
+ * How many rows at the foot of a pane capture may hold the background-work row, for a
75
+ * CLI that declares no number of its own (`capabilities.workDetect.watchingLines`).
76
+ *
77
+ * One, because the tightest window is the right default and Claude Code needs no more:
78
+ * it draws its chip on the LAST row of the screen. Blank rows are dropped before the
79
+ * window is taken, so a trailing blank costs nothing, and a CLI that ever prints a row
80
+ * BELOW its chip loses the badge rather than gaining a hole.
81
+ *
82
+ * ⚠️ The size of this window is a trust boundary, not a tidiness measure, and the row
83
+ * it excludes first is the one that taught us so: Claude's status line sits directly
84
+ * above the footer, its content comes from a `statusLine` command, and a session running
85
+ * with permissions bypassed can write that command into `.claude/settings.json` in its
86
+ * own workspace. A window of two therefore let an agent print `· 1 monitor ·` onto a row
87
+ * of its own and silence its own idle alert. Every row added here is another row
88
+ * somebody may be able to write, so widen this only for a CLI whose layout forces it,
89
+ * and never to a whole-pane search.
90
+ */
91
+ export declare const WATCHING_TAIL_LINES = 1;
92
+ /** Longest label a badge will carry. A footer chip is a handful of words. */
93
+ export declare const MAX_WATCHING_LABEL_CHARS = 40;
94
+ /**
95
+ * What a pane says is still running in the background, e.g. `1 monitor` or `2 shells`.
96
+ *
97
+ * The CLI writes that chip while a monitor, a backgrounded shell or a cloud session it
98
+ * started is still going, which is exactly the case where the agent has ended its turn
99
+ * without wanting anything from the user. `pattern` comes from the CLI's own registry
100
+ * entry (`capabilities.workDetect.watchingLine`); group 1 is the label when the pattern
101
+ * declares one, and the whole match stands in when it does not.
102
+ *
103
+ * Each candidate row is tested on its own, bottom row first, so a pattern can anchor
104
+ * itself with `^` or `$` against a single row rather than against a joined block. Blank
105
+ * rows are dropped before the window is taken, because a CLI that leaves a blank line
106
+ * between its chrome rows would otherwise spend the window on nothing. The answer is
107
+ * stripped of ANSI and capped, because it ends up on a badge and in an approval card.
108
+ *
109
+ * @param tailLines how many non-blank rows from the bottom to look at, defaulting to
110
+ * `WATCHING_TAIL_LINES`; a CLI declares its own when its row is not the last one
111
+ * @returns the label, or null when the pane shows no background work
112
+ */
113
+ export declare function watchingLabel(paneText: string | null | undefined, pattern: RegExp, tailLines?: number): string | null;
73
114
  //# sourceMappingURL=session-activity.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"session-activity.d.ts","sourceRoot":"","sources":["../src/session-activity.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH;;;GAGG;AACH,eAAO,MAAM,eAAe,OAAO,CAAC;AAEpC;;;GAGG;AACH,eAAO,MAAM,iBAAiB,OAAO,CAAC;AAEtC;;;;GAIG;AACH,eAAO,MAAM,eAAe,OAAO,CAAC;AAEpC,kFAAkF;AAClF,eAAO,MAAM,eAAe,MAAM,CAAC;AAEnC;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,OAAO,CAAC;AAE/C;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,OAAO,CAAC;AAE1C,qCAAqC;AACrC,MAAM,WAAW,cAAc;IAC7B,2BAA2B;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,mCAAmC;IACnC,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,cAAc,GAAG,IAAI,EAC7B,GAAG,EAAE,MAAM,EACX,KAAK,GAAE,MAAwB,GAC9B,cAAc,CAGhB;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,EAAE,QAAQ,GAAE,MAA0B,GAAG,OAAO,CAEhH;AAED,+EAA+E;AAC/E,wBAAgB,WAAW,CAAC,cAAc,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,GAAE,MAAwB,GAAG,OAAO,CAE7G"}
1
+ {"version":3,"file":"session-activity.d.ts","sourceRoot":"","sources":["../src/session-activity.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAIH;;;GAGG;AACH,eAAO,MAAM,eAAe,OAAO,CAAC;AAEpC;;;GAGG;AACH,eAAO,MAAM,iBAAiB,OAAO,CAAC;AAEtC;;;;GAIG;AACH,eAAO,MAAM,eAAe,OAAO,CAAC;AAEpC,kFAAkF;AAClF,eAAO,MAAM,eAAe,MAAM,CAAC;AAEnC;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,OAAO,CAAC;AAE/C;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,OAAO,CAAC;AAE1C,qCAAqC;AACrC,MAAM,WAAW,cAAc;IAC7B,2BAA2B;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,mCAAmC;IACnC,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,cAAc,GAAG,IAAI,EAC7B,GAAG,EAAE,MAAM,EACX,KAAK,GAAE,MAAwB,GAC9B,cAAc,CAGhB;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,EAAE,QAAQ,GAAE,MAA0B,GAAG,OAAO,CAEhH;AAED,+EAA+E;AAC/E,wBAAgB,WAAW,CAAC,cAAc,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,GAAE,MAAwB,GAAG,OAAO,CAE7G;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,mBAAmB,IAAI,CAAC;AAErC,6EAA6E;AAC7E,eAAO,MAAM,wBAAwB,KAAK,CAAC;AAE3C;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,aAAa,CAC3B,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EACnC,OAAO,EAAE,MAAM,EACf,SAAS,GAAE,MAA4B,GACtC,MAAM,GAAG,IAAI,CAiBf"}
@@ -20,6 +20,7 @@
20
20
  * second for 12s across six live sessions, the two working ones produced output
21
21
  * in 12/12 windows and the four idle ones in 0/12.
22
22
  */
23
+ import { stripAnsi } from './utils/regex-patterns.js';
23
24
  /**
24
25
  * A gap longer than this ends a run of continuous output. Claude repaints at
25
26
  * least once a second while working, so this leaves generous headroom.
@@ -71,4 +72,65 @@ export function isSustainedActivity(streak, streakMs = WORKING_STREAK_MS) {
71
72
  export function isPaneQuiet(lastActivityAt, now, silenceMs = IDLE_SILENCE_MS) {
72
73
  return now - lastActivityAt >= silenceMs;
73
74
  }
75
+ /**
76
+ * How many rows at the foot of a pane capture may hold the background-work row, for a
77
+ * CLI that declares no number of its own (`capabilities.workDetect.watchingLines`).
78
+ *
79
+ * One, because the tightest window is the right default and Claude Code needs no more:
80
+ * it draws its chip on the LAST row of the screen. Blank rows are dropped before the
81
+ * window is taken, so a trailing blank costs nothing, and a CLI that ever prints a row
82
+ * BELOW its chip loses the badge rather than gaining a hole.
83
+ *
84
+ * ⚠️ The size of this window is a trust boundary, not a tidiness measure, and the row
85
+ * it excludes first is the one that taught us so: Claude's status line sits directly
86
+ * above the footer, its content comes from a `statusLine` command, and a session running
87
+ * with permissions bypassed can write that command into `.claude/settings.json` in its
88
+ * own workspace. A window of two therefore let an agent print `· 1 monitor ·` onto a row
89
+ * of its own and silence its own idle alert. Every row added here is another row
90
+ * somebody may be able to write, so widen this only for a CLI whose layout forces it,
91
+ * and never to a whole-pane search.
92
+ */
93
+ export const WATCHING_TAIL_LINES = 1;
94
+ /** Longest label a badge will carry. A footer chip is a handful of words. */
95
+ export const MAX_WATCHING_LABEL_CHARS = 40;
96
+ /**
97
+ * What a pane says is still running in the background, e.g. `1 monitor` or `2 shells`.
98
+ *
99
+ * The CLI writes that chip while a monitor, a backgrounded shell or a cloud session it
100
+ * started is still going, which is exactly the case where the agent has ended its turn
101
+ * without wanting anything from the user. `pattern` comes from the CLI's own registry
102
+ * entry (`capabilities.workDetect.watchingLine`); group 1 is the label when the pattern
103
+ * declares one, and the whole match stands in when it does not.
104
+ *
105
+ * Each candidate row is tested on its own, bottom row first, so a pattern can anchor
106
+ * itself with `^` or `$` against a single row rather than against a joined block. Blank
107
+ * rows are dropped before the window is taken, because a CLI that leaves a blank line
108
+ * between its chrome rows would otherwise spend the window on nothing. The answer is
109
+ * stripped of ANSI and capped, because it ends up on a badge and in an approval card.
110
+ *
111
+ * @param tailLines how many non-blank rows from the bottom to look at, defaulting to
112
+ * `WATCHING_TAIL_LINES`; a CLI declares its own when its row is not the last one
113
+ * @returns the label, or null when the pane shows no background work
114
+ */
115
+ export function watchingLabel(paneText, pattern, tailLines = WATCHING_TAIL_LINES) {
116
+ if (!paneText)
117
+ return null;
118
+ const lines = stripAnsi(paneText)
119
+ .split('\n')
120
+ .map((line) => line.trimEnd())
121
+ .filter((line) => line !== '');
122
+ for (const line of lines.slice(-Math.max(1, tailLines)).reverse()) {
123
+ // A pattern compiled by compileVersionRegex() never carries the `g` flag, but a
124
+ // caller reaching in from a test or a config reload might, and a stale lastIndex
125
+ // would make the same screen match every other call.
126
+ pattern.lastIndex = 0;
127
+ const match = pattern.exec(line);
128
+ if (!match)
129
+ continue;
130
+ const label = (match[1] ?? match[0]).trim().slice(0, MAX_WATCHING_LABEL_CHARS);
131
+ if (label)
132
+ return label;
133
+ }
134
+ return null;
135
+ }
74
136
  //# sourceMappingURL=session-activity.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"session-activity.js","sourceRoot":"","sources":["../src/session-activity.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,CAAC;AAEpC;;;GAGG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,CAAC;AAEtC;;;;GAIG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,CAAC;AAEpC,kFAAkF;AAClF,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,CAAC;AAEnC;;;;GAIG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,IAAI,CAAC;AAE/C;;;;GAIG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,IAAI,CAAC;AAU1C;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CACjC,MAA6B,EAC7B,GAAW,EACX,QAAgB,eAAe;IAE/B,IAAI,CAAC,MAAM,IAAI,GAAG,GAAG,MAAM,CAAC,MAAM,GAAG,KAAK;QAAE,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;IACnF,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;AACtD,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CAAC,MAA6B,EAAE,WAAmB,iBAAiB;IACrG,OAAO,CAAC,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,SAAS,IAAI,QAAQ,CAAC;AAClE,CAAC;AAED,+EAA+E;AAC/E,MAAM,UAAU,WAAW,CAAC,cAAsB,EAAE,GAAW,EAAE,YAAoB,eAAe;IAClG,OAAO,GAAG,GAAG,cAAc,IAAI,SAAS,CAAC;AAC3C,CAAC"}
1
+ {"version":3,"file":"session-activity.js","sourceRoot":"","sources":["../src/session-activity.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAEtD;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,CAAC;AAEpC;;;GAGG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,CAAC;AAEtC;;;;GAIG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,CAAC;AAEpC,kFAAkF;AAClF,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,CAAC;AAEnC;;;;GAIG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,IAAI,CAAC;AAE/C;;;;GAIG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,IAAI,CAAC;AAU1C;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CACjC,MAA6B,EAC7B,GAAW,EACX,QAAgB,eAAe;IAE/B,IAAI,CAAC,MAAM,IAAI,GAAG,GAAG,MAAM,CAAC,MAAM,GAAG,KAAK;QAAE,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;IACnF,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;AACtD,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CAAC,MAA6B,EAAE,WAAmB,iBAAiB;IACrG,OAAO,CAAC,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,SAAS,IAAI,QAAQ,CAAC;AAClE,CAAC;AAED,+EAA+E;AAC/E,MAAM,UAAU,WAAW,CAAC,cAAsB,EAAE,GAAW,EAAE,YAAoB,eAAe;IAClG,OAAO,GAAG,GAAG,cAAc,IAAI,SAAS,CAAC;AAC3C,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC;AAErC,6EAA6E;AAC7E,MAAM,CAAC,MAAM,wBAAwB,GAAG,EAAE,CAAC;AAE3C;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,aAAa,CAC3B,QAAmC,EACnC,OAAe,EACf,YAAoB,mBAAmB;IAEvC,IAAI,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC3B,MAAM,KAAK,GAAG,SAAS,CAAC,QAAQ,CAAC;SAC9B,KAAK,CAAC,IAAI,CAAC;SACX,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;SAC7B,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC;IACjC,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;QAClE,gFAAgF;QAChF,iFAAiF;QACjF,qDAAqD;QACrD,OAAO,CAAC,SAAS,GAAG,CAAC,CAAC;QACtB,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjC,IAAI,CAAC,KAAK;YAAE,SAAS;QACrB,MAAM,KAAK,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,wBAAwB,CAAC,CAAC;QAC/E,IAAI,KAAK;YAAE,OAAO,KAAK,CAAC;IAC1B,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
package/dist/session.d.ts CHANGED
@@ -28,7 +28,7 @@
28
28
  * @module session
29
29
  */
30
30
  import { EventEmitter } from 'node:events';
31
- import { SessionState, SessionStatus, SessionConfig, RalphTrackerState, RalphTodoItem, ActiveBashTool, NiceConfig, type ClaudeMode, type SessionMode, type OpenCodeConfig, type CodexConfig, type EffortLevel, type CustomModelBookkeeping, type CustomModelSelection, type GeminiConfig, type AntigravityConfig, type PiConfig, type GrokConfig, type DeepSeekConfig, type OmpConfig, type SessionRemote, type SessionDocker, type SessionNameSource, type SessionWriteOptions } from './types.js';
31
+ import { SessionState, SessionStatus, SessionConfig, RalphTrackerState, RalphTodoItem, ActiveBashTool, NiceConfig, type ClaudeMode, type SessionMode, type OpenCodeConfig, type CodexConfig, type EffortLevel, type CustomModelBookkeeping, type CustomModelSelection, type GeminiConfig, type AntigravityConfig, type PiConfig, type GrokConfig, type DeepSeekConfig, type OmpConfig, type SessionRemote, type SessionDocker, type SessionNameSource, type SessionWriteOptions, type PaneExit } from './types.js';
32
32
  import type { TerminalMultiplexer, MuxSession } from './mux-interface.js';
33
33
  import { TaskTracker, type BackgroundTask } from './task-tracker.js';
34
34
  import { RalphTracker } from './ralph-tracker.js';
@@ -243,8 +243,35 @@ export declare class Session extends EventEmitter {
243
243
  private _activityStreak;
244
244
  private _lastPaneProbeAt;
245
245
  private _lastPaneProbeWorking;
246
+ /**
247
+ * Background work the pane's own footer reports, e.g. `1 monitor`; null for none.
248
+ *
249
+ * Cached BESIDE `_lastPaneProbeWorking` and refreshed only by a capture that really
250
+ * happened, so it goes stale exactly as that verdict does. The probe returns its
251
+ * cached boolean without re-capturing inside `PANE_PROBE_MIN_INTERVAL_MS`, and a
252
+ * label derived from a capture nobody took would be a guess wearing a fact's clothes.
253
+ *
254
+ * ⚠️ It then FREEZES once `_confirmIdle()` concludes: `activityTimeout` is null from
255
+ * there, and nothing looks at the pane again until it produces output. That is
256
+ * correct rather than merely tolerable, because work ending repaints the pane either
257
+ * way — a monitor firing wakes the agent, and codex drops its background-terminal row
258
+ * on its own. Do not add a timer to keep this fresh; it would spend a `capture-pane`
259
+ * per idle session per tick to learn nothing.
260
+ *
261
+ * A server restart is not a hole in that either, though it looks like one: this field
262
+ * is live state and starts empty. Reconciliation re-attaches the pane, the attach
263
+ * repaint carries the composer glyph, and the idle confirmation that arms on it probes
264
+ * and re-reads the label with no input from anyone — measured 2026-09-23 on a restarted
265
+ * instance, back within ~20 s for a session whose background terminal was still
266
+ * running. A session that comes back with no label has no chip on its screen.
267
+ */
268
+ private _watching;
246
269
  /** Lazily compiled `capabilities.workDetect.workingLine`. See _workingLinePattern(). */
247
270
  private _workingLineRe;
271
+ /** Lazily compiled `capabilities.workDetect.watchingLine`. See _watchingLinePattern(). */
272
+ private _watchingLineRe;
273
+ /** Resolved with the pattern above: how many rows at the foot of the screen to search. */
274
+ private _watchingWindow;
248
275
  private _trustDialogAccepted;
249
276
  private _trustDialogAttempts;
250
277
  private _lastTrustDialogScanAt;
@@ -271,6 +298,20 @@ export declare class Session extends EventEmitter {
271
298
  private _mux;
272
299
  private _muxSession;
273
300
  private _useMux;
301
+ /**
302
+ * The agent in this session's local tmux pane has exited (Ark0N/Codeman#446).
303
+ * `null` is the UNKNOWN arm of the tri-state and is what {@link setPaneExit}
304
+ * stores for every session shape the field does not apply to. See
305
+ * {@link PaneExit} for the shapes and for why an unknown answer must never be
306
+ * rendered as "alive".
307
+ */
308
+ private _paneExit;
309
+ /**
310
+ * This session was rebuilt from the tmux socket rather than from Codeman's
311
+ * own records, so its `remote`/`docker` metadata is missing rather than known
312
+ * to be absent. See {@link MuxSession.discovered}.
313
+ */
314
+ private _discoveredMuxSession;
274
315
  private _isStopped;
275
316
  private _ralphTracker;
276
317
  private _parentAgentId;
@@ -361,6 +402,10 @@ export declare class Session extends EventEmitter {
361
402
  lastSubmitAt?: number;
362
403
  /** Restored conversation chain, oldest first (see `claudeSessionChain`). */
363
404
  claudeSessionChain?: string[];
405
+ /** Restored agent-exit observation for this session's pane (see `paneExit`). */
406
+ paneExit?: PaneExit;
407
+ /** This session was rebuilt from the tmux socket, so its metadata is a guess. */
408
+ discoveredMuxSession?: boolean;
364
409
  /** Restored wall-clock ms of the pane's last output (recovery only; see `_wireActivityAt`). */
365
410
  lastActivityAt?: number;
366
411
  /** Remote execution metadata for sessions launched through SSH inside local tmux. */
@@ -439,6 +484,48 @@ export declare class Session extends EventEmitter {
439
484
  private _recordClaudeSessionInChain;
440
485
  /** The tmux session name, if the session is running inside a mux */
441
486
  get muxName(): string | null;
487
+ /**
488
+ * True when a tmux pane's death would mean THIS session's agent has exited.
489
+ *
490
+ * Four shapes fail the test, and each would otherwise publish a death that is
491
+ * not the agent's. A direct-PTY session owns no pane at all. A remote SSH
492
+ * session's local pane holds the ssh client, whose death means a transport
493
+ * drop OR an exit, which is the ambiguity PR #355 was about. A docker case's
494
+ * local pane holds a `docker exec` into the container's own tmux.
495
+ *
496
+ * The fourth is a session rebuilt from the socket. Absent `remote`/`docker`
497
+ * normally means "this is local", but on a discovered record it only means
498
+ * "Codeman never found the metadata": the synthetic `restored-<fragment>` id
499
+ * matches no `state.json` entry, so a remote session rediscovered after
500
+ * `mux-sessions.json` was lost arrives looking local, and its next transport
501
+ * drop would be published as an agent exit. Unproven locality fails closed.
502
+ */
503
+ private get paneExitApplies();
504
+ /** What Codeman last observed of this pane's agent, or undefined for UNKNOWN. */
505
+ get paneExit(): PaneExit | undefined;
506
+ /**
507
+ * Forget this pane's exit, on both this record and the mux layer's cache.
508
+ * Every path that starts or relaunches a command in the pane calls it, and
509
+ * the mux half also invalidates a pane read already in flight.
510
+ *
511
+ * It does not persist or broadcast by itself; the caller owns both. ⚠ That
512
+ * caller MUST persist, and the pane-exit watcher is not a fallback for it:
513
+ * the watcher's next tick reads UNKNOWN, finds this field already cleared,
514
+ * reports no change and therefore writes nothing, so a caller that only
515
+ * broadcasts leaves `state.json` saying the agent exited for as long as the
516
+ * session stays quiet. `/interactive` and `/shell` did exactly that until
517
+ * Ark0N/Codeman#446 review; both now persist on their success path.
518
+ */
519
+ private clearPaneExitForNewPane;
520
+ /**
521
+ * Record what the mux layer observed of this pane's agent, and say whether
522
+ * that changed the answer. The caller persists and broadcasts on a true.
523
+ *
524
+ * A session the field does not apply to is forced to UNKNOWN here rather than
525
+ * at the reporting end, so the rule lives in one place and the mux layer stays
526
+ * free to report the raw pane reading its own remote-reconnect watcher needs.
527
+ */
528
+ setPaneExit(next: PaneExit | undefined): boolean;
442
529
  /**
443
530
  * True when this session's PTY is a tmux client rather than the program itself.
444
531
  * Read by the replay-side alt-screen strip, which must apply the same
@@ -448,6 +535,13 @@ export declare class Session extends EventEmitter {
448
535
  get totalCost(): number;
449
536
  get messages(): ClaudeMessage[];
450
537
  get isWorking(): boolean;
538
+ /**
539
+ * What the pane says is still running in the background, e.g. `1 monitor`, or null when
540
+ * nothing is. A session with a label here has ended its turn without wanting anything
541
+ * from the user, so a surface that would otherwise file it under "needs you" can say
542
+ * what it is waiting for instead.
543
+ */
544
+ get watching(): string | null;
451
545
  /**
452
546
  * Check if the session's process tree has active child processes beyond Claude itself.
453
547
  * Detects running bash tools, test suites, builds, servers, etc. that Claude spawned.
@@ -619,6 +713,7 @@ export declare class Session extends EventEmitter {
619
713
  totalCost: number;
620
714
  messageCount: number;
621
715
  isWorking: boolean;
716
+ watching: string | null;
622
717
  lastPromptTime: number;
623
718
  bufferStats: {
624
719
  terminalBufferSize: number;
@@ -713,6 +808,7 @@ export declare class Session extends EventEmitter {
713
808
  lastSubmitAt?: number;
714
809
  claudeSessionChain?: string[];
715
810
  respawnBlocked?: boolean;
811
+ paneExit?: PaneExit;
716
812
  };
717
813
  /**
718
814
  * Lightweight detailed state that excludes heavy buffers (textOutput, terminalBuffer).
@@ -726,6 +822,7 @@ export declare class Session extends EventEmitter {
726
822
  totalCost: number;
727
823
  messageCount: number;
728
824
  isWorking: boolean;
825
+ watching: string | null;
729
826
  lastPromptTime: number;
730
827
  bufferStats: {
731
828
  terminalBufferSize: number;
@@ -820,6 +917,7 @@ export declare class Session extends EventEmitter {
820
917
  lastSubmitAt?: number;
821
918
  claudeSessionChain?: string[];
822
919
  respawnBlocked?: boolean;
920
+ paneExit?: PaneExit;
823
921
  };
824
922
  /**
825
923
  * Starts an interactive Claude CLI session with full terminal support.
@@ -883,6 +981,78 @@ export declare class Session extends EventEmitter {
883
981
  * the spawn path.
884
982
  */
885
983
  private _buildRespawnPaneOptions;
984
+ /**
985
+ * Respawn options for a pane whose command is being REPLACED, with the
986
+ * conversation pinned so the relaunch resumes rather than collides.
987
+ *
988
+ * A CLI that launches with `--session-id <id>` refuses an id that is already
989
+ * in use (claude: `Error: Session ID ... is already in use.`), and every
990
+ * session whose agent has been prompted owns a transcript under that id. So
991
+ * relaunching such a pane with the bare launch line fails, the pane dies
992
+ * again immediately, and the user's conversation is stranded. A launch that
993
+ * declares a `fallback` chain renders `resume || new` once a resume id is
994
+ * set, which is the shape that survives both cases.
995
+ *
996
+ * Three candidates are tried in priority order — the conversation chain's
997
+ * tail, the launch seed, then the session's own id — and the first one a
998
+ * transcript backs is pinned. Four conditions gate that walk, each protecting
999
+ * against a way of resuming the WRONG conversation or of making a working
1000
+ * relaunch fail.
1001
+ *
1002
+ * ⚠️ **A remote or docker session is never pinned.** Unlike `restartCli()`,
1003
+ * whose route refuses both, the dead-pane respawn is reached by every session
1004
+ * shape. Their pane commands (`buildRemoteLaunchCommand`,
1005
+ * `claudeDockerPaneCommand`) already render a SELF-HEALING
1006
+ * `--session-id <sid> || --resume <sid>`, and both flip to resume-first the
1007
+ * moment the resume id differs from the session id. The conversation lives on
1008
+ * the far side, so a local id pinned onto it resolves to nothing there, the
1009
+ * resume fails, and the `--session-id` fallback then collides with the
1010
+ * transcript the far side really does hold — both branches fail and the pane
1011
+ * dies. `_pinOmpRespawnId()` refuses remote for the same reason.
1012
+ *
1013
+ * ⚠️ **The candidates come from the conversation CHAIN, never from
1014
+ * `_claudeSessionId`.** That field holds either a first-hand id from the
1015
+ * CLI's own hook payload or a history correlation, which is a guess keyed on
1016
+ * the working directory. `_recordClaudeSessionInChain()` refuses a guess
1017
+ * precisely so it cannot "write a foreign conversation into this pane's
1018
+ * permanent record", and launching from one would do worse than the display
1019
+ * bug that rule exists to prevent: the relaunched CLI would open and WRITE to
1020
+ * a conversation that was never this pane's. The chain's tail is the live
1021
+ * conversation and is hook-vouched, so it leads the walk, ahead of the launch
1022
+ * seed, which is written once at construction and never moves off a `/clear`.
1023
+ *
1024
+ * ⚠️ **Every candidate must be backed by a transcript, the session's own id
1025
+ * included, and a candidate that has none is passed over rather than ending
1026
+ * the walk.** A pin that differs from the session id leaves
1027
+ * `--session-id <this.id>` in the fallback branch, so a resume that finds
1028
+ * nothing collides there and the pane dies exactly as it did before this
1029
+ * pinning existed. Pinning `this.id` renders the self-healing
1030
+ * `--resume <id> || --session-id <id>`, which is correct whether or not a
1031
+ * transcript exists, but a pane that has none pays for the shape twice:
1032
+ * claude prints "No conversation found" into the scrollback of a session that
1033
+ * is brand new, and `wrapWithNice()` prefixes only the FIRST branch of the
1034
+ * rendered `a || b`, so the branch that actually runs loses its priority for
1035
+ * the life of the session. Falling off the end of the walk therefore adds
1036
+ * no pin (the options keep any launch seed they already carried), which is
1037
+ * the right answer: with no transcript anywhere there is nothing for the
1038
+ * bare `--session-id <this.id>` to collide with.
1039
+ *
1040
+ * The create route pre-validates a resume id for the same reason, though it
1041
+ * additionally requires the transcript be substantial — here mere existence
1042
+ * is the question, because a one-line transcript still makes `--session-id`
1043
+ * collide.
1044
+ *
1045
+ * The registry shape is the last gate, not the CLI's name: an entry whose
1046
+ * resume id is minted by the CLI itself (codex/pi/omp/grok) declares no
1047
+ * `fallback` chain and reads its resume field from its own `<Mode>Config`.
1048
+ *
1049
+ * `reattachRemote()` deliberately does NOT call this. It re-runs the remote
1050
+ * session command, which attaches to the durable remote tmux with the agent
1051
+ * still inside it and renders no local `--session-id` to collide.
1052
+ */
1053
+ private _buildRespawnPaneOptionsWithResumePin;
1054
+ /** The session's Claude config dir when it has been relocated (#255), else undefined. */
1055
+ private _claudeConfigDir;
886
1056
  /**
887
1057
  * Force the custom-model selection's `launchModel` (pi/omp `custom/<id>`, grok's
888
1058
  * `[model.<name>]` block name) onto the CLI's `model` launch param. Where that param
@@ -990,6 +1160,30 @@ export declare class Session extends EventEmitter {
990
1160
  * and fall back to their stream heuristics.
991
1161
  */
992
1162
  private _probePaneWorking;
1163
+ /**
1164
+ * Read the background-work chip off the same capture the working probe just took.
1165
+ *
1166
+ * The two questions are different. A turn that is running is work the user is waiting
1167
+ * for; a monitor, a backgrounded shell or a cloud session the agent started is work
1168
+ * the AGENT is waiting for, and it is the reason a pane can sit at its composer with
1169
+ * nothing to say and still not want anything from the user. `_confirmIdle` takes this
1170
+ * capture at exactly the moment the turn ends, which is the moment the answer starts
1171
+ * mattering.
1172
+ *
1173
+ * A capture that could not be read CLEARS the label rather than keeping the last one.
1174
+ * The two wrong answers are not symmetric: a stale label opens the next idle prompt
1175
+ * already acknowledged, so a failed capture would silence a real alert, while a dropped
1176
+ * label only costs a card and an alert that the next readable capture takes back.
1177
+ * Degrading toward the alert is the rule the whole signal is built on.
1178
+ */
1179
+ private _readWatching;
1180
+ /**
1181
+ * The regex matching this CLI's background-work chip, or null for a CLI whose registry
1182
+ * entry declares none. Compiled once per session, like the working-line pattern, and
1183
+ * null rather than a fallback: no other CLI has been measured drawing such a chip, and
1184
+ * guessing one would badge sessions on the strength of an unread screen.
1185
+ */
1186
+ private _watchingLinePattern;
993
1187
  /**
994
1188
  * The regex matching this CLI's "a turn is running" status line.
995
1189
  *
@@ -1237,6 +1431,36 @@ export declare class Session extends EventEmitter {
1237
1431
  /** Current PTY dimensions — used to skip no-op resizes that trigger Ink redraws */
1238
1432
  private _ptyCols;
1239
1433
  private _ptyRows;
1434
+ /**
1435
+ * Record the geometry a PTY was just spawned at. A reattached pane keeps the
1436
+ * tmux window's size, not the constructor's 120x40, and without this
1437
+ * `ptyGeometry` reported the old numbers for a live pane and the dedupe in
1438
+ * `resize()` skipped a real resize that happened to match them.
1439
+ */
1440
+ private _notePtySpawnGeometry;
1441
+ /**
1442
+ * The geometry the CLI is actually drawing for, or null when nothing is
1443
+ * drawing.
1444
+ *
1445
+ * Exposed because `resize()` can decline a request outright (arbitration
1446
+ * below) and the asking client has no other way to find out: a browser
1447
+ * terminal that keeps a shape the PTY refused renders garbled output rather
1448
+ * than wrong-sized output, because Claude Code's repaints are computed from
1449
+ * the width it was told (issue #464). Both transports report this back.
1450
+ *
1451
+ * ⚠️ NULL WITHOUT A PANE, never the field values. The fields are seeded at
1452
+ * spawn (`_notePtySpawnGeometry`) and moved by `resize()`, but a session with
1453
+ * a dead pane (or one created through the API and never started) still
1454
+ * holds the constructor defaults of 120x40, or the size of a pane that is
1455
+ * gone. Reporting those made a client adopt a size no process had ever
1456
+ * been told, and on anything narrower than 120 columns it claimed another
1457
+ * device owned the pane when none existed. `reconcilePtyGeometry` treats a
1458
+ * report with no finite numbers as no evidence, which is the truth here.
1459
+ */
1460
+ get ptyGeometry(): {
1461
+ cols: number;
1462
+ rows: number;
1463
+ } | null;
1240
1464
  /**
1241
1465
  * Live WebSocket connections that have announced a desktop viewport for this
1242
1466
  * session. While at least one is registered, small-viewport (mobile/tablet)
@@ -1 +1 @@
1
- {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"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"}