aicodeman 1.22.0 → 1.23.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 (199) hide show
  1. package/dist/config/dependency-registry.d.ts.map +1 -1
  2. package/dist/config/dependency-registry.js +27 -0
  3. package/dist/config/dependency-registry.js.map +1 -1
  4. package/dist/cron/cron-service.d.ts +3 -2
  5. package/dist/cron/cron-service.d.ts.map +1 -1
  6. package/dist/cron/cron-service.js +17 -3
  7. package/dist/cron/cron-service.js.map +1 -1
  8. package/dist/deepseek-status-shim.d.ts +77 -0
  9. package/dist/deepseek-status-shim.d.ts.map +1 -0
  10. package/dist/deepseek-status-shim.js +268 -0
  11. package/dist/deepseek-status-shim.js.map +1 -0
  12. package/dist/deepseek-transcript.d.ts +188 -0
  13. package/dist/deepseek-transcript.d.ts.map +1 -0
  14. package/dist/deepseek-transcript.js +633 -0
  15. package/dist/deepseek-transcript.js.map +1 -0
  16. package/dist/deepseek-web-server.d.ts +60 -0
  17. package/dist/deepseek-web-server.d.ts.map +1 -0
  18. package/dist/deepseek-web-server.js +249 -0
  19. package/dist/deepseek-web-server.js.map +1 -0
  20. package/dist/docker-hosts.d.ts.map +1 -1
  21. package/dist/docker-hosts.js +12 -0
  22. package/dist/docker-hosts.js.map +1 -1
  23. package/dist/mux-interface.d.ts +3 -1
  24. package/dist/mux-interface.d.ts.map +1 -1
  25. package/dist/remote-hosts.d.ts.map +1 -1
  26. package/dist/remote-hosts.js +4 -0
  27. package/dist/remote-hosts.js.map +1 -1
  28. package/dist/session.d.ts +27 -1
  29. package/dist/session.d.ts.map +1 -1
  30. package/dist/session.js +47 -2
  31. package/dist/session.js.map +1 -1
  32. package/dist/tmux-manager.d.ts +23 -1
  33. package/dist/tmux-manager.d.ts.map +1 -1
  34. package/dist/tmux-manager.js +134 -5
  35. package/dist/tmux-manager.js.map +1 -1
  36. package/dist/tui/tui-app.d.ts.map +1 -1
  37. package/dist/tui/tui-app.js +1 -0
  38. package/dist/tui/tui-app.js.map +1 -1
  39. package/dist/tui/tui-client.d.ts +1 -1
  40. package/dist/tui/tui-client.d.ts.map +1 -1
  41. package/dist/types/api.d.ts +1 -1
  42. package/dist/types/api.d.ts.map +1 -1
  43. package/dist/types/api.js.map +1 -1
  44. package/dist/types/session.d.ts +61 -4
  45. package/dist/types/session.d.ts.map +1 -1
  46. package/dist/types/session.js +2 -1
  47. package/dist/types/session.js.map +1 -1
  48. package/dist/types/webview.d.ts +15 -0
  49. package/dist/types/webview.d.ts.map +1 -1
  50. package/dist/utils/deepseek-cli-resolver.d.ts +144 -0
  51. package/dist/utils/deepseek-cli-resolver.d.ts.map +1 -0
  52. package/dist/utils/deepseek-cli-resolver.js +339 -0
  53. package/dist/utils/deepseek-cli-resolver.js.map +1 -0
  54. package/dist/utils/index.d.ts +2 -0
  55. package/dist/utils/index.d.ts.map +1 -1
  56. package/dist/utils/index.js +1 -0
  57. package/dist/utils/index.js.map +1 -1
  58. package/dist/web/public/admin-ui.js.gz +0 -0
  59. package/dist/web/public/api-client.c9b1cddc.js.gz +0 -0
  60. package/dist/web/public/app.360ece48.js +36 -0
  61. package/dist/web/public/app.360ece48.js.br +0 -0
  62. package/dist/web/public/app.360ece48.js.gz +0 -0
  63. package/dist/web/public/approvals-ui.js.gz +0 -0
  64. package/dist/web/public/{constants.189c7bff.js → constants.f4ea0a19.js} +8 -1
  65. package/dist/web/public/constants.f4ea0a19.js.br +0 -0
  66. package/dist/web/public/constants.f4ea0a19.js.gz +0 -0
  67. package/dist/web/public/cron-ui.js.gz +0 -0
  68. package/dist/web/public/entrance-animations.js.gz +0 -0
  69. package/dist/web/public/home-sessions.js +1 -0
  70. package/dist/web/public/home-sessions.js.br +0 -0
  71. package/dist/web/public/home-sessions.js.gz +0 -0
  72. package/dist/web/public/i18n.9ae15b51.js +1 -0
  73. package/dist/web/public/i18n.9ae15b51.js.br +0 -0
  74. package/dist/web/public/i18n.9ae15b51.js.gz +0 -0
  75. package/dist/web/public/image-input.ee16ad88.js.gz +0 -0
  76. package/dist/web/public/index.html +46 -13
  77. package/dist/web/public/index.html.br +0 -0
  78. package/dist/web/public/index.html.gz +0 -0
  79. package/dist/web/public/input-cjk.87f14251.js.gz +0 -0
  80. package/dist/web/public/keyboard-accessory.0454a3e9.js.gz +0 -0
  81. package/dist/web/public/mobile-handlers.0f83a608.js.gz +0 -0
  82. package/dist/web/public/mobile-overview.js +6 -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.cab92e3f.css +1 -0
  86. package/dist/web/public/mobile.cab92e3f.css.br +0 -0
  87. package/dist/web/public/mobile.cab92e3f.css.gz +0 -0
  88. package/dist/web/public/notification-manager.5d229063.js.gz +0 -0
  89. package/dist/web/public/orchestrator-panel.js.gz +0 -0
  90. package/dist/web/public/{panels-ui.7c667123.js → panels-ui.50200a8d.js} +1 -1
  91. package/dist/web/public/panels-ui.50200a8d.js.br +0 -0
  92. package/dist/web/public/panels-ui.50200a8d.js.gz +0 -0
  93. package/dist/web/public/ralph-panel.6de2d0f8.js.gz +0 -0
  94. package/dist/web/public/ralph-wizard.13a1831e.js.gz +0 -0
  95. package/dist/web/public/readmymind-ui.js.gz +0 -0
  96. package/dist/web/public/respawn-ui.ff0dae4c.js.gz +0 -0
  97. package/dist/web/public/sanitize-html.bc7078d6.js.gz +0 -0
  98. package/dist/web/public/session-lineage.js.gz +0 -0
  99. package/dist/web/public/session-ui.103656d3.js +68 -0
  100. package/dist/web/public/session-ui.103656d3.js.br +0 -0
  101. package/dist/web/public/session-ui.103656d3.js.gz +0 -0
  102. package/dist/web/public/settings-ui.45f311a7.js +67 -0
  103. package/dist/web/public/settings-ui.45f311a7.js.br +0 -0
  104. package/dist/web/public/settings-ui.45f311a7.js.gz +0 -0
  105. package/dist/web/public/styles.1938fd02.css +1 -0
  106. package/dist/web/public/styles.1938fd02.css.br +0 -0
  107. package/dist/web/public/styles.1938fd02.css.gz +0 -0
  108. package/dist/web/public/subagent-windows.e6ca799f.js.gz +0 -0
  109. package/dist/web/public/sw.js.gz +0 -0
  110. package/dist/web/public/tab-rail-resize.42c24949.js +1 -0
  111. package/dist/web/public/tab-rail-resize.42c24949.js.br +0 -0
  112. package/dist/web/public/tab-rail-resize.42c24949.js.gz +0 -0
  113. package/dist/web/public/terminal-ui.ef68a666.js.gz +0 -0
  114. package/dist/web/public/ultracode-panel.js.gz +0 -0
  115. package/dist/web/public/ultracode-windows.js.gz +0 -0
  116. package/dist/web/public/upload.html.gz +0 -0
  117. package/dist/web/public/vendor/dompurify.min.js.gz +0 -0
  118. package/dist/web/public/vendor/marked.min.js.gz +0 -0
  119. package/dist/web/public/vendor/xterm-addon-fit.min.js.gz +0 -0
  120. package/dist/web/public/vendor/xterm-addon-serialize.min.js.gz +0 -0
  121. package/dist/web/public/vendor/xterm-addon-unicode11.min.js.gz +0 -0
  122. package/dist/web/public/vendor/xterm-addon-webgl.min.js.gz +0 -0
  123. package/dist/web/public/vendor/xterm-predictive-echo.bd6882b8.js.gz +0 -0
  124. package/dist/web/public/vendor/xterm-zerolag-input.6fee72f2.js.gz +0 -0
  125. package/dist/web/public/vendor/xterm.css.gz +0 -0
  126. package/dist/web/public/vendor/xterm.min.js.gz +0 -0
  127. package/dist/web/public/voice-input.4ec670b0.js.gz +0 -0
  128. package/dist/web/public/voice-pcm-worklet.js.gz +0 -0
  129. package/dist/web/public/webview-tabs.js +4 -1
  130. package/dist/web/public/webview-tabs.js.br +0 -0
  131. package/dist/web/public/webview-tabs.js.gz +0 -0
  132. package/dist/web/response-viewer-transcript.js +1 -1
  133. package/dist/web/response-viewer-transcript.js.map +1 -1
  134. package/dist/web/routes/approval-routes.d.ts.map +1 -1
  135. package/dist/web/routes/approval-routes.js +12 -2
  136. package/dist/web/routes/approval-routes.js.map +1 -1
  137. package/dist/web/routes/hook-event-routes.d.ts.map +1 -1
  138. package/dist/web/routes/hook-event-routes.js +51 -7
  139. package/dist/web/routes/hook-event-routes.js.map +1 -1
  140. package/dist/web/routes/readmymind-routes.d.ts.map +1 -1
  141. package/dist/web/routes/readmymind-routes.js +5 -2
  142. package/dist/web/routes/readmymind-routes.js.map +1 -1
  143. package/dist/web/routes/session-routes.d.ts +30 -2
  144. package/dist/web/routes/session-routes.d.ts.map +1 -1
  145. package/dist/web/routes/session-routes.js +158 -16
  146. package/dist/web/routes/session-routes.js.map +1 -1
  147. package/dist/web/routes/system-routes.d.ts.map +1 -1
  148. package/dist/web/routes/system-routes.js +203 -2
  149. package/dist/web/routes/system-routes.js.map +1 -1
  150. package/dist/web/routes/webview-routes.d.ts.map +1 -1
  151. package/dist/web/routes/webview-routes.js +1 -0
  152. package/dist/web/routes/webview-routes.js.map +1 -1
  153. package/dist/web/schemas.d.ts +68 -0
  154. package/dist/web/schemas.d.ts.map +1 -1
  155. package/dist/web/schemas.js +107 -4
  156. package/dist/web/schemas.js.map +1 -1
  157. package/dist/web/server.d.ts.map +1 -1
  158. package/dist/web/server.js +21 -3
  159. package/dist/web/server.js.map +1 -1
  160. package/dist/web/session-wait-registry.d.ts +63 -7
  161. package/dist/web/session-wait-registry.d.ts.map +1 -1
  162. package/dist/web/session-wait-registry.js +67 -9
  163. package/dist/web/session-wait-registry.js.map +1 -1
  164. package/dist/web/sse-events.d.ts +11 -2
  165. package/dist/web/sse-events.d.ts.map +1 -1
  166. package/dist/web/sse-events.js +11 -2
  167. package/dist/web/sse-events.js.map +1 -1
  168. package/package.json +2 -1
  169. package/skills/codeman/SKILL.md +121 -34
  170. package/skills/codeman/preamble.sh +81 -26
  171. package/skills/codeman/reference/endpoints.md +18 -10
  172. package/skills/codeman/reference/messaging.md +2 -2
  173. package/skills/codeman/reference/recipes.md +53 -0
  174. package/skills/codeman/reference/verbs.md +39 -8
  175. package/dist/web/public/app.84bf8955.js +0 -36
  176. package/dist/web/public/app.84bf8955.js.br +0 -0
  177. package/dist/web/public/app.84bf8955.js.gz +0 -0
  178. package/dist/web/public/constants.189c7bff.js.br +0 -0
  179. package/dist/web/public/constants.189c7bff.js.gz +0 -0
  180. package/dist/web/public/i18n.34016b89.js +0 -1
  181. package/dist/web/public/i18n.34016b89.js.br +0 -0
  182. package/dist/web/public/i18n.34016b89.js.gz +0 -0
  183. package/dist/web/public/mobile.983f064e.css +0 -1
  184. package/dist/web/public/mobile.983f064e.css.br +0 -0
  185. package/dist/web/public/mobile.983f064e.css.gz +0 -0
  186. package/dist/web/public/panels-ui.7c667123.js.br +0 -0
  187. package/dist/web/public/panels-ui.7c667123.js.gz +0 -0
  188. package/dist/web/public/session-ui.acd79900.js +0 -68
  189. package/dist/web/public/session-ui.acd79900.js.br +0 -0
  190. package/dist/web/public/session-ui.acd79900.js.gz +0 -0
  191. package/dist/web/public/settings-ui.115a2d1e.js +0 -67
  192. package/dist/web/public/settings-ui.115a2d1e.js.br +0 -0
  193. package/dist/web/public/settings-ui.115a2d1e.js.gz +0 -0
  194. package/dist/web/public/styles.64369ebd.css +0 -1
  195. package/dist/web/public/styles.64369ebd.css.br +0 -0
  196. package/dist/web/public/styles.64369ebd.css.gz +0 -0
  197. package/dist/web/public/tab-rail-resize.f3465ce1.js +0 -1
  198. package/dist/web/public/tab-rail-resize.f3465ce1.js.br +0 -0
  199. package/dist/web/public/tab-rail-resize.f3465ce1.js.gz +0 -0
@@ -21,7 +21,7 @@
21
21
  * @module tmux-manager
22
22
  */
23
23
  import { EventEmitter } from 'node:events';
24
- import { ProcessStats, PersistedRespawnConfig, type PaneInfo, type ClaudeMode, type SessionMode, type OpenCodeConfig, type CodexConfig, type EffortLevel, type GeminiConfig, type AntigravityConfig, type PiConfig, type GrokConfig, type SessionRemote, type SessionDocker } from './types.js';
24
+ import { ProcessStats, PersistedRespawnConfig, type PaneInfo, type ClaudeMode, type SessionMode, type OpenCodeConfig, type CodexConfig, type EffortLevel, type GeminiConfig, type AntigravityConfig, type PiConfig, type GrokConfig, type DeepSeekConfig, type SessionRemote, type SessionDocker } from './types.js';
25
25
  import { type DockerCreateContext, type DockerSeedCopy } from './docker-hosts.js';
26
26
  import type { TerminalMultiplexer, MuxSession, MuxSessionWithStats, CreateSessionOptions, RespawnPaneOptions, PaneCaptureOptions } from './mux-interface.js';
27
27
  /** Claude Code native macOS recommendation for avoiding low nofile startup failures. */
@@ -95,6 +95,7 @@ export declare function buildSpawnCommand(options: {
95
95
  antigravityConfig?: AntigravityConfig;
96
96
  piConfig?: PiConfig;
97
97
  grokConfig?: GrokConfig;
98
+ deepSeekConfig?: DeepSeekConfig;
98
99
  resumeSessionId?: string;
99
100
  effort?: EffortLevel;
100
101
  /** Codeman session name, passed to claude as `--name` (version-gated, sanitized; local spawns only). */
@@ -337,6 +338,27 @@ export declare class TmuxManager extends EventEmitter implements TerminalMultipl
337
338
  * Configure Gemini-specific environment on a tmux session.
338
339
  */
339
340
  private _configureGemini;
341
+ /**
342
+ * Configure DeepSeek Harness environment on a tmux session.
343
+ *
344
+ * Two independent things, both via `tmux setenv` so they are inherited by the
345
+ * pane without appearing in `ps`:
346
+ *
347
+ * 1. `DSH_PERMISSION_MODE` — the harness's only permission input. Exported
348
+ * ONLY when the caller sent one, so an absent config lands on the harness's
349
+ * own `workspace-write` default (which asks) rather than on ours. That
350
+ * "only if sent" shape is what the multi-user clamp relies on.
351
+ * 2. The `HERDR_*` triple — the supervisor contract the terminal front door
352
+ * uses to report idle/working/blocked. Pointing `HERDR_BIN_PATH` at our own
353
+ * generated shim is what upgrades this mode from output-stabilization
354
+ * guessing to definitive hook events (see deepseek-status-shim.ts). The
355
+ * pane id IS the Codeman session id, which is how the shim attributes a
356
+ * report without trusting anything the agent could influence.
357
+ *
358
+ * Also forwards DEEPSEEK_API_KEY / DEEPSEEK_BASE_URL from the server env when
359
+ * present, matching the codex/gemini precedent for headless auth.
360
+ */
361
+ private _configureDeepSeek;
340
362
  /**
341
363
  * Creates a new tmux session wrapping Claude CLI or a shell.
342
364
  * In test mode: creates an in-memory session only (no real tmux session).
@@ -1 +1 @@
1
- {"version":3,"file":"tmux-manager.d.ts","sourceRoot":"","sources":["../src/tmux-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tmux-manager.d.ts","sourceRoot":"","sources":["../src/tmux-manager.ts"],"names":[],"mappings":"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"}
@@ -34,12 +34,13 @@ import { getErrorMessage, DEFAULT_NICE_CONFIG, } from './types.js';
34
34
  import { buildEffortCliArgs, buildNameCliArgs } from './session-cli-builder.js';
35
35
  import { buildSshConnectionArgs, defaultRemoteCommandForMode, remoteLoginShellCommand, remoteSshTarget, } from './remote-hosts.js';
36
36
  import { buildDockerBaseArgs, buildDockerCreateArgs, containerApiUrl, CONTAINER_HOME, defaultDockerCommandForMode, hostGatewayAlias, resolveDockerClaudeArtifacts, resolveDockerCredentialArtifacts, } from './docker-hosts.js';
37
- import { wrapWithNice, SAFE_PATH_PATTERN, findClaudeDir, getClaudeCliVersion, getClaudeNotFoundMessage, resolveOpenCodeDir, getOpenCodeNotFoundMessage, resolveCodexDir, getCodexNotFoundMessage, resolveGeminiDir, getGeminiNotFoundMessage, resolveAntigravityDir, getAntigravityNotFoundMessage, resolvePiDir, getPiNotFoundMessage, resolveGrokDir, getGrokNotFoundMessage, resolveLocalShell, loginShellArgs, } from './utils/index.js';
37
+ import { wrapWithNice, SAFE_PATH_PATTERN, findClaudeDir, getClaudeCliVersion, getClaudeNotFoundMessage, resolveOpenCodeDir, getOpenCodeNotFoundMessage, resolveCodexDir, getCodexNotFoundMessage, resolveGeminiDir, getGeminiNotFoundMessage, resolveAntigravityDir, getAntigravityNotFoundMessage, resolvePiDir, getPiNotFoundMessage, resolveGrokDir, getGrokNotFoundMessage, resolveDeepSeekDir, getDeepSeekNotFoundMessage, resolveDefaultDeepSeekProfile, resolveLocalShell, loginShellArgs, } from './utils/index.js';
38
38
  import { decideReconnect, advanceBackoff, freshReconnectState, resetReconnectState, } from './remote-reconnect.js';
39
39
  // ============================================================================
40
40
  // Timing Constants
41
41
  // ============================================================================
42
42
  import { EXEC_TIMEOUT_MS } from './config/exec-timeout.js';
43
+ import { ensureDeepSeekStatusShim } from './deepseek-status-shim.js';
43
44
  /** How long a cached process snapshot stays usable. */
44
45
  const PROC_SNAPSHOT_TTL_MS = 2000;
45
46
  /**
@@ -697,6 +698,47 @@ function buildGrokCommand(config) {
697
698
  }
698
699
  return parts.join(' ');
699
700
  }
701
+ /**
702
+ * Build the DeepSeek Harness (`dsh`) command with appropriate flags.
703
+ *
704
+ * Unlike every sibling builder, the interesting decision here is not a flag but
705
+ * WHICH PROFILE to boot: `dsh` is a launcher over `$DSH_HOME/profiles/<name>`,
706
+ * and DeepSeek ships no interactive terminal profile of its own, so the agent a
707
+ * pane runs is always one the user installed. An absent `profile` resolves to
708
+ * the first pane-capable profile on the box; when there is none we still emit a
709
+ * bare `dsh --profile <default>` rather than inventing a name, because the
710
+ * availability gate in createSession() has already refused the spawn by then and
711
+ * this path only runs for a session that passed it.
712
+ *
713
+ * There is deliberately NO permission flag: the harness has none. The sandbox
714
+ * and approval rows read `DSH_PERMISSION_MODE`, exported through `tmux setenv`
715
+ * in buildEnvExports() so it never lands on this command line.
716
+ *
717
+ * Like the sibling builders, every user value is regex-allowlisted and silently
718
+ * DROPPED on failure: the result is interpolated into a `bash -c "..."` string.
719
+ */
720
+ function buildDeepSeekCommand(config) {
721
+ const parts = ['dsh'];
722
+ // A profile name is a single path segment: it is both interpolated into the
723
+ // shell line and joined into a filesystem path.
724
+ const requested = config?.profile;
725
+ const safeProfile = requested && /^[a-zA-Z0-9][a-zA-Z0-9._-]*$/.test(requested)
726
+ ? requested
727
+ : (resolveDefaultDeepSeekProfile() ?? undefined);
728
+ if (safeProfile)
729
+ parts.push('--profile', safeProfile);
730
+ // The launcher forwards everything after its own flags to the profile's app,
731
+ // which is where `--resume` is understood. An explicit id wins over the
732
+ // most-recent-session form, mirroring the sibling builders.
733
+ const safeSessionId = config?.resumeSessionId && /^[a-zA-Z0-9._-]+$/.test(config.resumeSessionId) ? config.resumeSessionId : undefined;
734
+ if (safeSessionId) {
735
+ parts.push('--resume', safeSessionId);
736
+ }
737
+ else if (config?.resumeSession) {
738
+ parts.push('--resume');
739
+ }
740
+ return parts.join(' ');
741
+ }
700
742
  /**
701
743
  * Build the spawn command for any session mode.
702
744
  * Shared by createSession() and respawnPane() to avoid duplication.
@@ -764,6 +806,9 @@ export function buildSpawnCommand(options) {
764
806
  if (options.mode === 'grok') {
765
807
  return buildGrokCommand(options.grokConfig);
766
808
  }
809
+ if (options.mode === 'deepseek') {
810
+ return buildDeepSeekCommand(options.deepSeekConfig);
811
+ }
767
812
  // #208: NOT the literal '$SHELL'. This string is embedded in the `bash -c "…"`
768
813
  // argument of the respawn-pane line, which execSync runs through `/bin/sh -c`,
769
814
  // so a `$SHELL` here is expanded by the SERVER process's shell against the
@@ -964,6 +1009,8 @@ function appendResumeFlag(modeCommand, mode, resumeId) {
964
1009
  return `${modeCommand} --session ${resumeId}`;
965
1010
  case 'grok':
966
1011
  return `${modeCommand} --resume ${resumeId}`;
1012
+ case 'deepseek':
1013
+ return `${modeCommand} --resume ${resumeId}`;
967
1014
  default:
968
1015
  return modeCommand; // shell / opencode: no resume
969
1016
  }
@@ -1499,10 +1546,20 @@ export class TmuxManager extends EventEmitter {
1499
1546
  const exports = [
1500
1547
  'export LANG=en_US.UTF-8',
1501
1548
  'export LC_ALL=en_US.UTF-8',
1502
- mode === 'codex' || mode === 'gemini' || mode === 'antigravity' || mode === 'pi' || mode === 'grok'
1549
+ mode === 'codex' ||
1550
+ mode === 'gemini' ||
1551
+ mode === 'antigravity' ||
1552
+ mode === 'pi' ||
1553
+ mode === 'grok' ||
1554
+ mode === 'deepseek'
1503
1555
  ? 'export COLORTERM=truecolor'
1504
1556
  : 'unset COLORTERM',
1505
- ...(mode === 'codex' || mode === 'gemini' || mode === 'antigravity' || mode === 'pi' || mode === 'grok'
1557
+ ...(mode === 'codex' ||
1558
+ mode === 'gemini' ||
1559
+ mode === 'antigravity' ||
1560
+ mode === 'pi' ||
1561
+ mode === 'grok' ||
1562
+ mode === 'deepseek'
1506
1563
  ? ['unset NO_COLOR']
1507
1564
  : []),
1508
1565
  // Stamp each Codex pane with a unique originator so the response-viewer
@@ -1606,6 +1663,10 @@ export class TmuxManager extends EventEmitter {
1606
1663
  const dir = resolveGrokDir();
1607
1664
  return { pathExport: dir ? `export PATH="${dir}:$PATH" && ` : '', dir };
1608
1665
  }
1666
+ if (mode === 'deepseek') {
1667
+ const dir = resolveDeepSeekDir();
1668
+ return { pathExport: dir ? `export PATH="${dir}:$PATH" && ` : '', dir };
1669
+ }
1609
1670
  return { pathExport: '', dir: null };
1610
1671
  }
1611
1672
  /**
@@ -1632,12 +1693,67 @@ export class TmuxManager extends EventEmitter {
1632
1693
  _configureGemini(muxName) {
1633
1694
  setGeminiEnvVars(this.tmux(), muxName);
1634
1695
  }
1696
+ /**
1697
+ * Configure DeepSeek Harness environment on a tmux session.
1698
+ *
1699
+ * Two independent things, both via `tmux setenv` so they are inherited by the
1700
+ * pane without appearing in `ps`:
1701
+ *
1702
+ * 1. `DSH_PERMISSION_MODE` — the harness's only permission input. Exported
1703
+ * ONLY when the caller sent one, so an absent config lands on the harness's
1704
+ * own `workspace-write` default (which asks) rather than on ours. That
1705
+ * "only if sent" shape is what the multi-user clamp relies on.
1706
+ * 2. The `HERDR_*` triple — the supervisor contract the terminal front door
1707
+ * uses to report idle/working/blocked. Pointing `HERDR_BIN_PATH` at our own
1708
+ * generated shim is what upgrades this mode from output-stabilization
1709
+ * guessing to definitive hook events (see deepseek-status-shim.ts). The
1710
+ * pane id IS the Codeman session id, which is how the shim attributes a
1711
+ * report without trusting anything the agent could influence.
1712
+ *
1713
+ * Also forwards DEEPSEEK_API_KEY / DEEPSEEK_BASE_URL from the server env when
1714
+ * present, matching the codex/gemini precedent for headless auth.
1715
+ */
1716
+ _configureDeepSeek(muxName, sessionId, config) {
1717
+ const tmuxCmd = this.tmux();
1718
+ const setenv = (key, value) => {
1719
+ const escaped = value.replace(/'/g, "'\\''");
1720
+ try {
1721
+ execSync(`${tmuxCmd} setenv -t '${muxName}' ${key} '${escaped}'`, {
1722
+ encoding: 'utf8',
1723
+ timeout: EXEC_TIMEOUT_MS,
1724
+ stdio: ['pipe', 'pipe', 'pipe'],
1725
+ });
1726
+ }
1727
+ catch {
1728
+ /* Non-critical */
1729
+ }
1730
+ };
1731
+ for (const key of ['DEEPSEEK_API_KEY', 'DEEPSEEK_BASE_URL', 'DSH_HOME']) {
1732
+ const val = process.env[key];
1733
+ if (val)
1734
+ setenv(key, val);
1735
+ }
1736
+ // Enum-validated at the schema boundary; re-checked here because this value
1737
+ // reaches a shell line, and a builder must never trust its caller.
1738
+ if (config?.permissionMode &&
1739
+ ['read-only', 'workspace-write', 'danger-full-access'].includes(config.permissionMode)) {
1740
+ setenv('DSH_PERMISSION_MODE', config.permissionMode);
1741
+ }
1742
+ if (config?.statusReporting !== false) {
1743
+ const shim = ensureDeepSeekStatusShim();
1744
+ if (shim) {
1745
+ setenv('HERDR_ENV', '1');
1746
+ setenv('HERDR_BIN_PATH', shim);
1747
+ setenv('HERDR_PANE_ID', sessionId);
1748
+ }
1749
+ }
1750
+ }
1635
1751
  /**
1636
1752
  * Creates a new tmux session wrapping Claude CLI or a shell.
1637
1753
  * In test mode: creates an in-memory session only (no real tmux session).
1638
1754
  */
1639
1755
  async createSession(options) {
1640
- const { sessionId, workingDir, mode, name, niceConfig, model, claudeMode, allowedTools, openCodeConfig, codexConfig, geminiConfig, antigravityConfig, piConfig, grokConfig, resumeSessionId, envOverrides, effort, historyLimit = DEFAULT_TMUX_HISTORY_LIMIT, remote, docker, owner, } = options;
1756
+ const { sessionId, workingDir, mode, name, niceConfig, model, claudeMode, allowedTools, openCodeConfig, codexConfig, geminiConfig, antigravityConfig, piConfig, grokConfig, deepSeekConfig, resumeSessionId, envOverrides, effort, historyLimit = DEFAULT_TMUX_HISTORY_LIMIT, remote, docker, owner, } = options;
1641
1757
  const muxName = `codeman-${sessionId.slice(0, 8)}`;
1642
1758
  if (!isValidMuxName(muxName)) {
1643
1759
  throw new Error('Invalid session name: contains unsafe characters');
@@ -1687,6 +1803,9 @@ export class TmuxManager extends EventEmitter {
1687
1803
  if (mode === 'pi' && !cliDir) {
1688
1804
  throw new Error(getPiNotFoundMessage());
1689
1805
  }
1806
+ if (mode === 'deepseek' && !cliDir) {
1807
+ throw new Error(getDeepSeekNotFoundMessage());
1808
+ }
1690
1809
  if (mode === 'grok' && !cliDir) {
1691
1810
  throw new Error(getGrokNotFoundMessage());
1692
1811
  }
@@ -1703,6 +1822,7 @@ export class TmuxManager extends EventEmitter {
1703
1822
  antigravityConfig,
1704
1823
  piConfig,
1705
1824
  grokConfig,
1825
+ deepSeekConfig,
1706
1826
  resumeSessionId,
1707
1827
  effort,
1708
1828
  sessionName: name,
@@ -1767,6 +1887,10 @@ export class TmuxManager extends EventEmitter {
1767
1887
  if (mode === 'gemini') {
1768
1888
  this._configureGemini(muxName);
1769
1889
  }
1890
+ // For DeepSeek: permission mode + the Herdr-compatible status bridge.
1891
+ if (mode === 'deepseek') {
1892
+ this._configureDeepSeek(muxName, sessionId, deepSeekConfig);
1893
+ }
1770
1894
  // Apply user-supplied env overrides (e.g., CLAUDE_CODE_EFFORT_LEVEL) via tmux setenv
1771
1895
  // so secret values stay off the bash command line. Must run before respawn-pane.
1772
1896
  this.applyEnvOverrides(muxName, envOverrides);
@@ -1895,7 +2019,7 @@ export class TmuxManager extends EventEmitter {
1895
2019
  * preserving the session and its scrollback buffer.
1896
2020
  */
1897
2021
  async respawnPane(options) {
1898
- const { sessionId, workingDir, mode, niceConfig, model, claudeMode, allowedTools, openCodeConfig, codexConfig, geminiConfig, antigravityConfig, piConfig, grokConfig, resumeSessionId, envOverrides, effort, remote, docker, name, } = options;
2022
+ const { sessionId, workingDir, mode, niceConfig, model, claudeMode, allowedTools, openCodeConfig, codexConfig, geminiConfig, antigravityConfig, piConfig, grokConfig, deepSeekConfig, resumeSessionId, envOverrides, effort, remote, docker, name, } = options;
1899
2023
  const session = this.sessions.get(sessionId);
1900
2024
  if (!session)
1901
2025
  return null;
@@ -1917,6 +2041,7 @@ export class TmuxManager extends EventEmitter {
1917
2041
  antigravityConfig,
1918
2042
  piConfig,
1919
2043
  grokConfig,
2044
+ deepSeekConfig,
1920
2045
  resumeSessionId,
1921
2046
  effort,
1922
2047
  sessionName: name,
@@ -1941,6 +2066,10 @@ export class TmuxManager extends EventEmitter {
1941
2066
  if (mode === 'gemini') {
1942
2067
  this._configureGemini(muxName);
1943
2068
  }
2069
+ // For DeepSeek: permission mode + the Herdr-compatible status bridge.
2070
+ if (mode === 'deepseek') {
2071
+ this._configureDeepSeek(muxName, sessionId, deepSeekConfig);
2072
+ }
1944
2073
  // Re-apply user env overrides before respawn so the new shell inherits them.
1945
2074
  this.applyEnvOverrides(muxName, envOverrides);
1946
2075
  // -c /tmp + cd bounce — see createSession() for rationale (stale FUSE state).