aicodeman 1.24.7 → 1.25.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 (185) hide show
  1. package/dist/cli.d.ts.map +1 -1
  2. package/dist/cli.js +17 -2
  3. package/dist/cli.js.map +1 -1
  4. package/dist/config/base-path.d.ts +55 -0
  5. package/dist/config/base-path.d.ts.map +1 -0
  6. package/dist/config/base-path.js +105 -0
  7. package/dist/config/base-path.js.map +1 -0
  8. package/dist/config/cli-registry/schema.d.ts +2 -0
  9. package/dist/config/cli-registry/schema.d.ts.map +1 -1
  10. package/dist/config/cli-registry/schema.js +1 -1
  11. package/dist/config/cli-registry/schema.js.map +1 -1
  12. package/dist/config/cli-registry/stock.d.ts.map +1 -1
  13. package/dist/config/cli-registry/stock.js +4 -1
  14. package/dist/config/cli-registry/stock.js.map +1 -1
  15. package/dist/config/cli-registry/types.d.ts +9 -0
  16. package/dist/config/cli-registry/types.d.ts.map +1 -1
  17. package/dist/daemon-control.d.ts +2 -0
  18. package/dist/daemon-control.d.ts.map +1 -1
  19. package/dist/daemon-control.js +2 -0
  20. package/dist/daemon-control.js.map +1 -1
  21. package/dist/docker-export.d.ts.map +1 -1
  22. package/dist/docker-export.js +8 -1
  23. package/dist/docker-export.js.map +1 -1
  24. package/dist/docker-hosts.d.ts +97 -3
  25. package/dist/docker-hosts.d.ts.map +1 -1
  26. package/dist/docker-hosts.js +260 -4
  27. package/dist/docker-hosts.js.map +1 -1
  28. package/dist/hooks-config.d.ts.map +1 -1
  29. package/dist/hooks-config.js +39 -3
  30. package/dist/hooks-config.js.map +1 -1
  31. package/dist/session.d.ts +31 -1
  32. package/dist/session.d.ts.map +1 -1
  33. package/dist/session.js +101 -5
  34. package/dist/session.js.map +1 -1
  35. package/dist/tmux-manager.d.ts.map +1 -1
  36. package/dist/tmux-manager.js +54 -8
  37. package/dist/tmux-manager.js.map +1 -1
  38. package/dist/types/api.d.ts +19 -1
  39. package/dist/types/api.d.ts.map +1 -1
  40. package/dist/types/api.js.map +1 -1
  41. package/dist/types/session.d.ts +49 -0
  42. package/dist/types/session.d.ts.map +1 -1
  43. package/dist/types/session.js.map +1 -1
  44. package/dist/web/middleware/auth.d.ts +3 -3
  45. package/dist/web/middleware/auth.d.ts.map +1 -1
  46. package/dist/web/middleware/auth.js +13 -11
  47. package/dist/web/middleware/auth.js.map +1 -1
  48. package/dist/web/public/admin-ui.js.gz +0 -0
  49. package/dist/web/public/api-client.c9b1cddc.js.gz +0 -0
  50. package/dist/web/public/app.3a89ac57.js +38 -0
  51. package/dist/web/public/app.3a89ac57.js.br +0 -0
  52. package/dist/web/public/app.3a89ac57.js.gz +0 -0
  53. package/dist/web/public/approvals-ui.js.gz +0 -0
  54. package/dist/web/public/{constants.7bd482dc.js → constants.7a635e34.js} +58 -0
  55. package/dist/web/public/constants.7a635e34.js.br +0 -0
  56. package/dist/web/public/constants.7a635e34.js.gz +0 -0
  57. package/dist/web/public/cron-ui.js.gz +0 -0
  58. package/dist/web/public/entrance-animations.js.gz +0 -0
  59. package/dist/web/public/home-sessions.js.gz +0 -0
  60. package/dist/web/public/i18n.9db8c4e0.js +1 -0
  61. package/dist/web/public/i18n.9db8c4e0.js.br +0 -0
  62. package/dist/web/public/i18n.9db8c4e0.js.gz +0 -0
  63. package/dist/web/public/image-input.ee16ad88.js.gz +0 -0
  64. package/dist/web/public/index.html +46 -17
  65. package/dist/web/public/index.html.br +0 -0
  66. package/dist/web/public/index.html.gz +0 -0
  67. package/dist/web/public/input-cjk.87f14251.js.gz +0 -0
  68. package/dist/web/public/{keyboard-accessory.0454a3e9.js → keyboard-accessory.daf18302.js} +8 -4
  69. package/dist/web/public/keyboard-accessory.daf18302.js.br +0 -0
  70. package/dist/web/public/keyboard-accessory.daf18302.js.gz +0 -0
  71. package/dist/web/public/manifest.json +2 -1
  72. package/dist/web/public/mobile-handlers.0f83a608.js.gz +0 -0
  73. package/dist/web/public/mobile-overview.js.gz +0 -0
  74. package/dist/web/public/{mobile.87674154.css → mobile.7112f27d.css} +1 -1
  75. package/dist/web/public/{mobile.87674154.css.br → mobile.7112f27d.css.br} +0 -0
  76. package/dist/web/public/mobile.7112f27d.css.gz +0 -0
  77. package/dist/web/public/{notification-manager.5d229063.js → notification-manager.36ea4624.js} +1 -1
  78. package/dist/web/public/notification-manager.36ea4624.js.br +0 -0
  79. package/dist/web/public/notification-manager.36ea4624.js.gz +0 -0
  80. package/dist/web/public/orchestrator-panel.js.gz +0 -0
  81. package/dist/web/public/{panels-ui.e6e06034.js → panels-ui.db4785bf.js} +8 -8
  82. package/dist/web/public/panels-ui.db4785bf.js.br +0 -0
  83. package/dist/web/public/panels-ui.db4785bf.js.gz +0 -0
  84. package/dist/web/public/ralph-panel.6de2d0f8.js.gz +0 -0
  85. package/dist/web/public/ralph-wizard.13a1831e.js.gz +0 -0
  86. package/dist/web/public/readmymind-ui.js.gz +0 -0
  87. package/dist/web/public/respawn-ui.ff0dae4c.js.gz +0 -0
  88. package/dist/web/public/sanitize-html.bc7078d6.js.gz +0 -0
  89. package/dist/web/public/session-lineage.js.gz +0 -0
  90. package/dist/web/public/session-ui.58116fce.js +68 -0
  91. package/dist/web/public/session-ui.58116fce.js.br +0 -0
  92. package/dist/web/public/session-ui.58116fce.js.gz +0 -0
  93. package/dist/web/public/{settings-ui.1ed208dd.js → settings-ui.554f9cdd.js} +1 -1
  94. package/dist/web/public/settings-ui.554f9cdd.js.br +0 -0
  95. package/dist/web/public/settings-ui.554f9cdd.js.gz +0 -0
  96. package/dist/web/public/{styles.421b36d4.css → styles.2a35729d.css} +1 -1
  97. package/dist/web/public/styles.2a35729d.css.br +0 -0
  98. package/dist/web/public/{styles.421b36d4.css.gz → styles.2a35729d.css.gz} +0 -0
  99. package/dist/web/public/subagent-windows.e6ca799f.js.gz +0 -0
  100. package/dist/web/public/sw.js +13 -6
  101. package/dist/web/public/sw.js.br +0 -0
  102. package/dist/web/public/sw.js.gz +0 -0
  103. package/dist/web/public/tab-rail-resize.42c24949.js.gz +0 -0
  104. package/dist/web/public/terminal-ui.70445f81.js.gz +0 -0
  105. package/dist/web/public/ultracode-panel.js.gz +0 -0
  106. package/dist/web/public/ultracode-windows.js.gz +0 -0
  107. package/dist/web/public/upload.html.gz +0 -0
  108. package/dist/web/public/vendor/dompurify.min.js.gz +0 -0
  109. package/dist/web/public/vendor/marked.min.js.gz +0 -0
  110. package/dist/web/public/vendor/xterm-addon-fit.min.js.gz +0 -0
  111. package/dist/web/public/vendor/xterm-addon-serialize.min.js.gz +0 -0
  112. package/dist/web/public/vendor/xterm-addon-unicode11.min.js.gz +0 -0
  113. package/dist/web/public/vendor/xterm-addon-webgl.min.js.gz +0 -0
  114. package/dist/web/public/vendor/xterm-predictive-echo.bd6882b8.js.gz +0 -0
  115. package/dist/web/public/vendor/xterm-zerolag-input.6fee72f2.js.gz +0 -0
  116. package/dist/web/public/vendor/xterm.css.gz +0 -0
  117. package/dist/web/public/vendor/xterm.min.js.gz +0 -0
  118. package/dist/web/public/{voice-input.4ec670b0.js → voice-input.c4b51eb6.js} +1 -1
  119. package/dist/web/public/voice-input.c4b51eb6.js.br +0 -0
  120. package/dist/web/public/voice-input.c4b51eb6.js.gz +0 -0
  121. package/dist/web/public/voice-pcm-worklet.js.gz +0 -0
  122. package/dist/web/public/webview-tabs.js +3 -1
  123. package/dist/web/public/webview-tabs.js.br +0 -0
  124. package/dist/web/public/webview-tabs.js.gz +0 -0
  125. package/dist/web/route-helpers.d.ts.map +1 -1
  126. package/dist/web/route-helpers.js +5 -0
  127. package/dist/web/route-helpers.js.map +1 -1
  128. package/dist/web/routes/case-routes.d.ts.map +1 -1
  129. package/dist/web/routes/case-routes.js +188 -4
  130. package/dist/web/routes/case-routes.js.map +1 -1
  131. package/dist/web/routes/file-routes.d.ts.map +1 -1
  132. package/dist/web/routes/file-routes.js +62 -4
  133. package/dist/web/routes/file-routes.js.map +1 -1
  134. package/dist/web/routes/hook-event-routes.d.ts.map +1 -1
  135. package/dist/web/routes/hook-event-routes.js +29 -3
  136. package/dist/web/routes/hook-event-routes.js.map +1 -1
  137. package/dist/web/routes/session-routes.d.ts.map +1 -1
  138. package/dist/web/routes/session-routes.js +116 -56
  139. package/dist/web/routes/session-routes.js.map +1 -1
  140. package/dist/web/routes/webview-routes.d.ts +2 -2
  141. package/dist/web/routes/webview-routes.d.ts.map +1 -1
  142. package/dist/web/routes/webview-routes.js +23 -21
  143. package/dist/web/routes/webview-routes.js.map +1 -1
  144. package/dist/web/schemas.d.ts +29 -0
  145. package/dist/web/schemas.d.ts.map +1 -1
  146. package/dist/web/schemas.js +68 -0
  147. package/dist/web/schemas.js.map +1 -1
  148. package/dist/web/server.d.ts +4 -2
  149. package/dist/web/server.d.ts.map +1 -1
  150. package/dist/web/server.js +55 -11
  151. package/dist/web/server.js.map +1 -1
  152. package/dist/web/sse-events.d.ts +4 -2
  153. package/dist/web/sse-events.d.ts.map +1 -1
  154. package/dist/web/sse-events.js +4 -2
  155. package/dist/web/sse-events.js.map +1 -1
  156. package/dist/web/webview-proxy.d.ts +16 -7
  157. package/dist/web/webview-proxy.d.ts.map +1 -1
  158. package/dist/web/webview-proxy.js +28 -15
  159. package/dist/web/webview-proxy.js.map +1 -1
  160. package/package.json +8 -7
  161. package/skills/codeman/reference/endpoints.md +1 -0
  162. package/skills/codeman/reference/verbs.md +11 -1
  163. package/dist/web/public/app.a5d2fc08.js +0 -38
  164. package/dist/web/public/app.a5d2fc08.js.br +0 -0
  165. package/dist/web/public/app.a5d2fc08.js.gz +0 -0
  166. package/dist/web/public/constants.7bd482dc.js.br +0 -0
  167. package/dist/web/public/constants.7bd482dc.js.gz +0 -0
  168. package/dist/web/public/i18n.9ae15b51.js +0 -1
  169. package/dist/web/public/i18n.9ae15b51.js.br +0 -0
  170. package/dist/web/public/i18n.9ae15b51.js.gz +0 -0
  171. package/dist/web/public/keyboard-accessory.0454a3e9.js.br +0 -0
  172. package/dist/web/public/keyboard-accessory.0454a3e9.js.gz +0 -0
  173. package/dist/web/public/mobile.87674154.css.gz +0 -0
  174. package/dist/web/public/notification-manager.5d229063.js.br +0 -0
  175. package/dist/web/public/notification-manager.5d229063.js.gz +0 -0
  176. package/dist/web/public/panels-ui.e6e06034.js.br +0 -0
  177. package/dist/web/public/panels-ui.e6e06034.js.gz +0 -0
  178. package/dist/web/public/session-ui.c558f981.js +0 -68
  179. package/dist/web/public/session-ui.c558f981.js.br +0 -0
  180. package/dist/web/public/session-ui.c558f981.js.gz +0 -0
  181. package/dist/web/public/settings-ui.1ed208dd.js.br +0 -0
  182. package/dist/web/public/settings-ui.1ed208dd.js.gz +0 -0
  183. package/dist/web/public/styles.421b36d4.css.br +0 -0
  184. package/dist/web/public/voice-input.4ec670b0.js.br +0 -0
  185. package/dist/web/public/voice-input.4ec670b0.js.gz +0 -0
@@ -23,7 +23,7 @@
23
23
  import { existsSync, mkdirSync, readFileSync, writeFileSync } from 'node:fs';
24
24
  import fs from 'node:fs/promises';
25
25
  import { dirname, isAbsolute, join, relative, resolve } from 'node:path';
26
- import { getCli } from './config/cli-registry/registry.js';
26
+ import { enabledCliIds, getCli } from './config/cli-registry/registry.js';
27
27
  import { fileURLToPath } from 'node:url';
28
28
  import { homedir } from 'node:os';
29
29
  import { createHash } from 'node:crypto';
@@ -39,6 +39,28 @@ const DOCKER_CASES_FILE = 'docker-cases.json';
39
39
  export const DEFAULT_AGENT_IMAGE = 'codeman/agent:base';
40
40
  /** HOME inside the base image (the `agent` user). Cred mounts + hook-secret land under it. */
41
41
  export const CONTAINER_HOME = '/home/agent';
42
+ /**
43
+ * Modes the adoption preflight probes for inside an existing container, derived from the
44
+ * CLI registry so a newly-enabled CLI is probed without a second list to remember.
45
+ *
46
+ * No arm for `shell` here: it declares no binary, so `probeAdoptableContainer` drops it
47
+ * from the `command -v` list and reports it available unconditionally, which is the same
48
+ * answer a special case would have produced.
49
+ */
50
+ export function dockerAdoptProbeModes() {
51
+ return enabledCliIds();
52
+ }
53
+ /**
54
+ * The BINARY a mode looks for inside a container. ⚠️ NOT always the mode name:
55
+ * `antigravity` ships as `agy` and `deepseek` as `dsh`, so probing by mode name
56
+ * would report those two as missing on a container that has them. Same source
57
+ * `probeDockerCliVersion` reads, and the same one `defaultDockerCommandForMode`
58
+ * launches from — a local table here duplicated the registry with nothing
59
+ * keeping the two in step.
60
+ */
61
+ function containerBinaryFor(mode) {
62
+ return getCli(mode)?.discovery.binaries[0];
63
+ }
42
64
  /** Per-case container name prefix. The `case` letters deliberately do NOT matter to
43
65
  * tmux; this is a DOCKER name (`^[a-zA-Z0-9][a-zA-Z0-9_.-]+$`), and case names are
44
66
  * already validated `^[a-zA-Z0-9_-]+$`, so `codeman-case-<name>` is always valid. */
@@ -111,15 +133,22 @@ export function dockerContainerName(caseName) {
111
133
  * nothing keeping the two in step. `shell` is the one arm still written here, because it is
112
134
  * the entry that declares `docker: { disabled: true }` — a container has no per-user login
113
135
  * shell to resolve, so it gets a plain `bash -l` rather than a CLI invocation.
136
+ *
137
+ * ⚠️ `runsAsRoot` selects the overlay's `rootCommand` when it declares one. Claude Code
138
+ * REFUSES `--dangerously-skip-permissions` under uid 0 ("cannot be used with root/sudo
139
+ * privileges", still true in 2.1.261), and the refusal is only visible INSIDE the
140
+ * container, so the pane just dies. Our own base image runs a non-root user and never hits
141
+ * it; an ADOPTED container's user belongs to its owner and is frequently root. Which flag
142
+ * to drop is a per-CLI fact, so it lives in the registry rather than in a branch here.
114
143
  */
115
- export function defaultDockerCommandForMode(mode) {
144
+ export function defaultDockerCommandForMode(mode, runsAsRoot = false) {
116
145
  const entry = getCli(mode);
117
146
  const overlay = entry?.overlays.docker;
118
147
  if (!entry || (overlay && 'disabled' in overlay))
119
148
  return 'exec bash -l';
120
149
  // Mirrors the LOCAL default for each CLI; claude's carries
121
150
  // `--dangerously-skip-permissions` so the in-container agent runs non-interactively.
122
- const cli = overlay?.command ?? entry.discovery.binaries[0];
151
+ const cli = (runsAsRoot ? overlay?.rootCommand : undefined) ?? overlay?.command ?? entry.discovery.binaries[0];
123
152
  return cli ? `exec ${cli}` : 'exec bash -l';
124
153
  }
125
154
  /** `container:/workdir` display string (mirror of remoteDisplayPath's `user@host:path`). */
@@ -206,7 +235,22 @@ export function toSessionDocker(host, dockerCase) {
206
235
  extraCreateArgs: host.extraCreateArgs,
207
236
  extraExecArgs: host.extraExecArgs,
208
237
  };
209
- return { ...base, configHash: dockerConfigHash(base) };
238
+ // `owned` is deliberately applied AFTER the hash: dockerConfigHash() picks an
239
+ // explicit field list, so ownership can never shift an existing case's hash and
240
+ // mass-trip the drift gate.
241
+ const session = { ...base, configHash: dockerConfigHash(base) };
242
+ if (dockerCase.owned === false)
243
+ session.owned = false;
244
+ return session;
245
+ }
246
+ /**
247
+ * An ADOPTED container is one the user built and runs themselves. Codeman may
248
+ * only exec into it; it must never create, start, stop, restart or remove it.
249
+ * Every lifecycle branch routes through this one predicate so a new call site
250
+ * cannot silently opt out.
251
+ */
252
+ export function isAdoptedContainer(docker) {
253
+ return docker.owned === false;
210
254
  }
211
255
  // ========== Shell escaping ==========
212
256
  /**
@@ -589,6 +633,13 @@ function dockerEngineArgv(docker) {
589
633
  export async function checkDockerConfigDrift(docker) {
590
634
  if (IS_TEST_MODE)
591
635
  return { exists: false, running: false, drifted: false };
636
+ // An ADOPTED container carries no `codeman.confighash` label — it was never
637
+ // created from our config — so every comparison would report drift and the
638
+ // launch gate would demand a recreate we are not allowed to perform. Ownership
639
+ // of its configuration belongs to the user; report "no drift" and never offer
640
+ // to rebuild it.
641
+ if (isAdoptedContainer(docker))
642
+ return { exists: true, running: false, drifted: false };
592
643
  const argv = dockerEngineArgv(docker);
593
644
  try {
594
645
  const { stdout } = await execFileAsync(argv[0], [
@@ -612,6 +663,11 @@ export async function checkDockerConfigDrift(docker) {
612
663
  * case's lastClaudeSessionId. No-op under VITEST.
613
664
  */
614
665
  export async function removeDockerContainer(docker) {
666
+ // Fail CLOSED at the lowest layer: an adopted container is the user's, and no
667
+ // caller — recreate-on-drift, case delete, a future teardown — may remove it.
668
+ if (isAdoptedContainer(docker)) {
669
+ throw new Error(`Refusing to remove adopted container "${docker.containerName}": Codeman does not own its lifecycle.`);
670
+ }
615
671
  if (IS_TEST_MODE)
616
672
  return;
617
673
  const argv = dockerEngineArgv(docker);
@@ -805,6 +861,198 @@ export async function checkDockerTmuxAvailable(docker) {
805
861
  return { ok: false, error: `could not verify tmux in ${docker.image}: ${msg}` };
806
862
  }
807
863
  }
864
+ /**
865
+ * List the engine's containers for the adoption picker (mirror of
866
+ * `listRemoteCodemanSessions`). Read-only and NEVER throws: an unreachable
867
+ * daemon, a missing engine or zero containers all return `[]`, because this
868
+ * feeds a convenience picker whose input the user can always type by hand.
869
+ *
870
+ * Stopped containers ARE included, sorted after running ones and carrying their
871
+ * status: adoption requires a running container, but hiding a stopped one turns
872
+ * "my container is not in the list" into a dead end with no explanation, while
873
+ * showing `my-box (Exited (0) 2 days ago)` says exactly what to fix.
874
+ */
875
+ export async function listDockerContainers(docker) {
876
+ if (IS_TEST_MODE)
877
+ return [];
878
+ const argv = dockerEngineArgv(docker);
879
+ try {
880
+ const { stdout } = await execFileAsync(argv[0], [...argv.slice(1), 'ps', '-a', '--format', '{{.Names}}\t{{.Image}}\t{{.State}}\t{{.Status}}'], { timeout: DOCKER_PROBE_TIMEOUT_MS });
881
+ const rows = stdout
882
+ .split('\n')
883
+ .map((line) => line.split('\t'))
884
+ .filter((parts) => parts.length >= 4 && parts[0])
885
+ .map(([name, image, state, status]) => ({
886
+ name,
887
+ image: image || '',
888
+ running: state === 'running',
889
+ status: status || '',
890
+ }));
891
+ // Running first, then by name, so the containers a user can actually adopt
892
+ // are the ones at the top of the list.
893
+ return rows.sort((a, b) => Number(b.running) - Number(a.running) || a.name.localeCompare(b.name));
894
+ }
895
+ catch {
896
+ return [];
897
+ }
898
+ }
899
+ /**
900
+ * Preflight an EXISTING container for adoption. Read-only by construction: it
901
+ * runs `inspect` plus one `exec` of `command -v`, and never creates, starts or
902
+ * modifies anything. Refusing here is what keeps the failure at link time — a
903
+ * clear message — instead of at session launch, where the only alternatives
904
+ * would be a dead pane or starting a container we do not own.
905
+ *
906
+ * `--pull=never` is irrelevant here: adoption never touches images. The image
907
+ * ref is reported only so the UI can show what the user is attaching to.
908
+ */
909
+ export async function probeAdoptableContainer(docker, modes = [], containerWorkdir) {
910
+ if (IS_TEST_MODE) {
911
+ return {
912
+ ok: true,
913
+ exists: true,
914
+ running: true,
915
+ tmuxPath: '/usr/bin/tmux',
916
+ availableModes: modes,
917
+ workdirExists: true,
918
+ };
919
+ }
920
+ const argv = dockerEngineArgv(docker);
921
+ let running = false;
922
+ let image;
923
+ try {
924
+ const { stdout } = await execFileAsync(argv[0], [...argv.slice(1), 'inspect', '-f', '{{.State.Running}}\t{{.Config.Image}}', docker.containerName], { timeout: DOCKER_PROBE_TIMEOUT_MS });
925
+ const [state = '', img = ''] = stdout.trim().split('\t');
926
+ running = state === 'true';
927
+ image = img || undefined;
928
+ }
929
+ catch {
930
+ return {
931
+ ok: false,
932
+ exists: false,
933
+ running: false,
934
+ error: `container "${docker.containerName}" not found (adoption never creates a container — start it yourself first)`,
935
+ };
936
+ }
937
+ if (!running) {
938
+ return {
939
+ ok: false,
940
+ exists: true,
941
+ running: false,
942
+ image,
943
+ error: `container "${docker.containerName}" exists but is not running (Codeman never starts a container it does not own — start it yourself, then retry)`,
944
+ };
945
+ }
946
+ // One exec resolves tmux plus every requested CLI, so adoption costs a single
947
+ // round trip. Binaries are fixed mode names, never user input.
948
+ // A mode with no binary of its own (`shell`) is dropped: there is nothing to look up,
949
+ // and `command -v ''` would make the whole probe meaningless.
950
+ const wanted = modes.filter((m) => !!containerBinaryFor(m));
951
+ const probes = ['tmux', ...wanted.map((m) => containerBinaryFor(m))];
952
+ // `; exit 0` is load-bearing: the script's status is its LAST command's, so a
953
+ // missing final CLI made the whole `sh -lc` exit 1 and the probe reported
954
+ // "could not exec into the container" for a container that was perfectly fine.
955
+ // Absence of a CLI is data here, not failure — only a real exec error is.
956
+ const steps = probes.map((bin) => `command -v ${bin} >/dev/null 2>&1 && echo ${bin}`);
957
+ // The workdir is checked INSIDE the container, and that is a fact independent
958
+ // of hostWorkspacePath: an owned container gets the host dir bind-mounted at the
959
+ // same absolute path at create time, but adoption mounts nothing, so the two
960
+ // paths only coincide if the user mounted it there themselves. `docker exec
961
+ // --workdir <missing>` fails with an OCI chdir error the pane surfaces as a bare
962
+ // "execvp failed", so it is resolved here into an actionable message.
963
+ if (containerWorkdir)
964
+ steps.push(`[ -d ${shellescape(containerWorkdir)} ] && echo __workdir__`);
965
+ // Claude Code REFUSES --dangerously-skip-permissions as root. Our own base
966
+ // image runs a non-root user so an owned container never hits it; an adopted
967
+ // container's user belongs to its owner and is frequently root.
968
+ steps.push(`[ "$(id -u)" = 0 ] && echo __root__`);
969
+ const script = `${steps.join('; ')}; exit 0`;
970
+ try {
971
+ const { stdout } = await execFileAsync(argv[0], [...argv.slice(1), 'exec', docker.containerName, 'sh', '-lc', script], { timeout: DOCKER_PROBE_TIMEOUT_MS });
972
+ const found = new Set(stdout
973
+ .split('\n')
974
+ .map((line) => line.trim())
975
+ .filter(Boolean));
976
+ if (!found.has('tmux')) {
977
+ return {
978
+ ok: false,
979
+ exists: true,
980
+ running: true,
981
+ image,
982
+ error: `container "${docker.containerName}" has no tmux (required for durable sessions; install it inside the container)`,
983
+ };
984
+ }
985
+ const workdirExists = containerWorkdir ? found.has('__workdir__') : undefined;
986
+ if (containerWorkdir && !workdirExists) {
987
+ return {
988
+ ok: false,
989
+ exists: true,
990
+ running: true,
991
+ image,
992
+ workdirExists: false,
993
+ error: `"${containerWorkdir}" does not exist inside container "${docker.containerName}". Adoption mounts nothing, so the container workdir must already exist there — set it to a path inside the container (it need not match the host workspace path).`,
994
+ };
995
+ }
996
+ return {
997
+ ok: true,
998
+ exists: true,
999
+ running: true,
1000
+ image,
1001
+ tmuxPath: 'tmux',
1002
+ availableModes: modes.filter((m) => {
1003
+ const bin = containerBinaryFor(m);
1004
+ return bin ? found.has(bin) : true; // `shell` needs no binary
1005
+ }),
1006
+ workdirExists,
1007
+ runsAsRoot: found.has('__root__'),
1008
+ };
1009
+ }
1010
+ catch (err) {
1011
+ const msg = err instanceof Error ? err.message : String(err);
1012
+ return { ok: false, exists: true, running: true, image, error: `could not exec into the container: ${msg}` };
1013
+ }
1014
+ }
1015
+ /**
1016
+ * List a directory INSIDE a container, for the adoption form's container-workdir
1017
+ * picker. The host filesystem picker cannot serve this: the path lives in the
1018
+ * container, and for an adopted container nothing is mounted at a matching host
1019
+ * location, so the user would otherwise be typing a path blind.
1020
+ *
1021
+ * Read-only: one `ls` through `docker exec`, no writes, no lifecycle. The path
1022
+ * is shell-escaped like every other value this module interpolates, and output
1023
+ * is parsed as NUL-free lines with a leading type marker so a filename with
1024
+ * spaces survives.
1025
+ */
1026
+ export async function browseInContainer(docker, path) {
1027
+ const target = path && path.startsWith('/') ? path : '/';
1028
+ const parent = target === '/' ? null : target.replace(/\/+$/, '').split('/').slice(0, -1).join('/') || '/';
1029
+ if (IS_TEST_MODE)
1030
+ return { path: target, parent, entries: [] };
1031
+ const argv = dockerEngineArgv(docker);
1032
+ // `-p` marks directories with a trailing slash; `-A` shows dotfiles but not
1033
+ // the . and .. entries the picker navigates with its own Up control.
1034
+ const script = `cd ${shellescape(target)} 2>/dev/null && ls -Ap 2>/dev/null || echo __ERR__`;
1035
+ try {
1036
+ const { stdout } = await execFileAsync(argv[0], [...argv.slice(1), 'exec', docker.containerName, 'sh', '-lc', script], { timeout: DOCKER_PROBE_TIMEOUT_MS, maxBuffer: 4 * 1024 * 1024 });
1037
+ if (stdout.includes('__ERR__'))
1038
+ return { path: target, parent, entries: [], error: 'Not a readable directory' };
1039
+ const base = target.endsWith('/') ? target : `${target}/`;
1040
+ const entries = stdout
1041
+ .split('\n')
1042
+ .map((line) => line.trim())
1043
+ .filter(Boolean)
1044
+ .map((name) => {
1045
+ const isDir = name.endsWith('/');
1046
+ const clean = isDir ? name.slice(0, -1) : name;
1047
+ return { name: clean, path: `${base}${clean}`, type: (isDir ? 'directory' : 'file') };
1048
+ })
1049
+ .sort((a, b) => Number(b.type === 'directory') - Number(a.type === 'directory') || a.name.localeCompare(b.name));
1050
+ return { path: target, parent, entries };
1051
+ }
1052
+ catch (err) {
1053
+ return { path: target, parent, entries: [], error: err instanceof Error ? err.message : String(err) };
1054
+ }
1055
+ }
808
1056
  /**
809
1057
  * Resolve the host's IP on the default docker bridge (the address a container
810
1058
  * reaches as `host.docker.internal`), so the server can bind a hooks-only listener
@@ -858,10 +1106,18 @@ export async function reapOrphanedDockerContainers(configDir, instance, engine =
858
1106
  }
859
1107
  const cases = await readDockerCases(configDir);
860
1108
  const expected = new Set(cases.map((c) => c.container ?? dockerContainerName(c.name)));
1109
+ // ADOPTED containers are never reapable, and this guard is deliberately
1110
+ // independent of the two conditions that already cover them (we never applied
1111
+ // the `codeman.managed=1` label filtered on above, and they are referenced by a
1112
+ // live case so they are in `expected`). An adopted container is the user's
1113
+ // property; it must survive even if a future edit narrows either condition.
1114
+ const adopted = new Set(cases.filter((item) => item.owned === false).map((item) => item.container ?? dockerContainerName(item.name)));
861
1115
  const reaped = [];
862
1116
  for (const { name, inst } of rows) {
863
1117
  if (inst !== instance)
864
1118
  continue; // only THIS instance's containers
1119
+ if (adopted.has(name))
1120
+ continue; // never reap a container we do not own
865
1121
  if (expected.has(name))
866
1122
  continue; // still referenced by a live case
867
1123
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"docker-hosts.js","sourceRoot":"","sources":["../src/docker-hosts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"docker-hosts.js","sourceRoot":"","sources":["../src/docker-hosts.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"hooks-config.d.ts","sourceRoot":"","sources":["../src/hooks-config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AA0CH;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,4BAA4B,IAAI,MAAM,CA4GrD;AAED;;;;GAIG;AACH,wBAAgB,+BAA+B,IAAI,MAAM,CA0ExD;AAiBD;;;;;;;;;;;GAWG;AACH,wBAAsB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAenF;AA+BD;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,IAAI;IAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,CAAA;CAAE,CA2F1E;AA0ED;;;;;;GAMG;AACH,wBAAsB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA4BvG;AAED;;;GAGG;AACH,wBAAsB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAyBxG;AAED;;;GAGG;AACH,wBAAsB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAqB3F;AAED;;;;;GAKG;AACH,wBAAsB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAsBtE;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAsB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAqBxE;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,wBAAwB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAmC9E;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,wBAAsB,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAS7F;AAqBD;;;;;;GAMG;AACH,wBAAgB,yBAAyB,IAAI,MAAM,CAalD;AAED;;;;;;;GAOG;AACH,wBAAsB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CA2B7F;AAsFD,8EAA8E;AAC9E,MAAM,MAAM,qBAAqB,GAC7B,WAAW,GACX,WAAW,GACX,WAAW,GACX,SAAS,GACT,QAAQ,GACR,SAAS,GACT,SAAS,CAAC;AAEd;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC,CA8B5F;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,wBAAwB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAK/E;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,qBAAqB,GAAG,QAAQ,CAAC,CASvF;AAED;;;;;;;;GAQG;AACH,wBAAsB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAuB3F;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAGxG"}
1
+ {"version":3,"file":"hooks-config.d.ts","sourceRoot":"","sources":["../src/hooks-config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AA0CH;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,4BAA4B,IAAI,MAAM,CA4GrD;AAED;;;;GAIG;AACH,wBAAgB,+BAA+B,IAAI,MAAM,CA0ExD;AAiBD;;;;;;;;;;;GAWG;AACH,wBAAsB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAenF;AA+BD;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,IAAI;IAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,CAAA;CAAE,CAmH1E;AA0ED;;;;;;GAMG;AACH,wBAAsB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA4BvG;AAED;;;GAGG;AACH,wBAAsB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAyBxG;AAED;;;GAGG;AACH,wBAAsB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAqB3F;AAED;;;;;GAKG;AACH,wBAAsB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAsBtE;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAsB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAqBxE;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,wBAAwB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAgD9E;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,wBAAsB,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAS7F;AAqBD;;;;;;GAMG;AACH,wBAAgB,yBAAyB,IAAI,MAAM,CAalD;AAED;;;;;;;GAOG;AACH,wBAAsB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CA2B7F;AAsFD,8EAA8E;AAC9E,MAAM,MAAM,qBAAqB,GAC7B,WAAW,GACX,WAAW,GACX,WAAW,GACX,SAAS,GACT,QAAQ,GACR,SAAS,GACT,SAAS,CAAC;AAEd;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC,CA8B5F;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,wBAAwB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAK/E;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,qBAAqB,GAAG,QAAQ,CAAC,CASvF;AAED;;;;;;;;GAQG;AACH,wBAAsB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAuB3F;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAGxG"}
@@ -354,17 +354,30 @@ export function generateHooksConfig() {
354
354
  // never lands in this config and rotation needs no respawn. If the var/file is
355
355
  // missing the header is empty — the middleware then allows the request only on
356
356
  // the plain loopback bypass (tunnel down), same as pre-secret behavior.
357
- const curlCmd = (event) => `HOOK_DATA=$(cat 2>/dev/null || echo '{}'); ` +
357
+ const curlCmd = (event, options = {}) => `HOOK_DATA=$(cat 2>/dev/null || echo '{}'); ` +
358
358
  `printf '{"event":"${event}","sessionId":"%s","data":%s}' "$CODEMAN_SESSION_ID" "$HOOK_DATA" | ` +
359
359
  // `-k`, same as the statusline exporter: CODEMAN_API_URL is loopback HTTPS with
360
360
  // a self-signed cert on --https/tailscale installs. Without it curl exits 60,
361
361
  // the `|| true` swallows it, and ALL SIX hook events die silently: respawn loses
362
362
  // its definitive idle signals and the wait endpoints lose stop/blocked.
363
- `curl -sk -X POST "$CODEMAN_API_URL/api/hook-event" ` +
363
+ `curl -sk ${options.discardStdout ? '-o /dev/null ' : ''}-X POST "$CODEMAN_API_URL/api/hook-event" ` +
364
364
  `-H 'Content-Type: application/json' ` +
365
365
  `-H "X-Codeman-Hook-Secret: $(cat "$CODEMAN_HOOK_SECRET_FILE" 2>/dev/null)" ` +
366
366
  `--data @- ` +
367
367
  `2>/dev/null || true`;
368
+ // The same POST with stdout DISCARDED, via curl's own `-o`. UserPromptSubmit is
369
+ // one of the hook events whose stdout Claude Code injects into the model's
370
+ // context (the CLI's own hook reference: "Exit code 0 - stdout shown to
371
+ // Claude"), so an undiscarded curl pastes Codeman's `{"success":true,…}`
372
+ // envelope into the user's prompt on every single turn.
373
+ // ⚠️ It MUST be curl's flag, not a trailing redirect. `curlCmd` already ends
374
+ // `… 2>/dev/null || true`, and in `pipeline || true >/dev/null` the shell binds
375
+ // the redirection to `true` — which never runs on the success path — so the
376
+ // envelope still reaches stdout. Verified in dash and bash.
377
+ // ⚠️ The flag is opt-in so the other events' command text stays byte-identical:
378
+ // their stdout feeds the SSE stream harmlessly, and changing it would rewrite
379
+ // every workspace's settings file for no gain.
380
+ const curlCmdSilent = (event) => curlCmd(event, { discardStdout: true });
368
381
  return {
369
382
  hooks: {
370
383
  Notification: [
@@ -396,6 +409,16 @@ export function generateHooksConfig() {
396
409
  hooks: [{ type: 'command', command: curlCmd('stop'), timeout: HOOK_TIMEOUT_SECONDS }],
397
410
  },
398
411
  ],
412
+ // The pane's LIVE conversation id, reported by the CLI process itself.
413
+ // Without it the response viewer has to guess which `<uuid>.jsonl` a pane
414
+ // is on after a `/clear`, and the only anchor it can guess from is an
415
+ // Enter that went THROUGH Codeman — so a user who attaches to tmux
416
+ // directly never gets one and stays pinned to the launch conversation.
417
+ UserPromptSubmit: [
418
+ {
419
+ hooks: [{ type: 'command', command: curlCmdSilent('prompt_submitted'), timeout: HOOK_TIMEOUT_SECONDS }],
420
+ },
421
+ ],
399
422
  SubagentStop: [
400
423
  {
401
424
  hooks: [
@@ -707,8 +730,21 @@ export async function refreshStaleCodemanHooks(casePath) {
707
730
  // Approvals Inbox needs the elicitation_complete/elicitation_response
708
731
  // matchers; their absence marks a pre-inbox hooks block.
709
732
  const hasElicitationComplete = hooksJson.includes('elicitation_complete');
733
+ // The UserPromptSubmit event is what gives a tmux-driven pane a first-hand
734
+ // conversation id; its absence marks a pre-prompt_submitted hooks block.
735
+ // ⚠️ No surrounding quotes: `hooksJson` is JSON.stringify'd, so the marker
736
+ // inside the command reads \"prompt_submitted\" and a quoted needle never
737
+ // matches — which would make this gate permanently false and rewrite every
738
+ // workspace's settings file on every Claude spawn. The sibling markers are
739
+ // quote-free for the same reason.
740
+ const hasPromptSubmit = hooksJson.includes('prompt_submitted');
710
741
  if (!isOurs ||
711
- (hasSecret && hasBackgroundWake && hasSubagentStopGuard && hasElicitationComplete && !hasTlsFlaglessCurl))
742
+ (hasSecret &&
743
+ hasBackgroundWake &&
744
+ hasSubagentStopGuard &&
745
+ hasElicitationComplete &&
746
+ hasPromptSubmit &&
747
+ !hasTlsFlaglessCurl))
712
748
  return;
713
749
  const generated = generateHooksConfig();
714
750
  const merged = {