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.
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +17 -2
- package/dist/cli.js.map +1 -1
- package/dist/config/base-path.d.ts +55 -0
- package/dist/config/base-path.d.ts.map +1 -0
- package/dist/config/base-path.js +105 -0
- package/dist/config/base-path.js.map +1 -0
- package/dist/config/cli-registry/schema.d.ts +2 -0
- package/dist/config/cli-registry/schema.d.ts.map +1 -1
- package/dist/config/cli-registry/schema.js +1 -1
- package/dist/config/cli-registry/schema.js.map +1 -1
- package/dist/config/cli-registry/stock.d.ts.map +1 -1
- package/dist/config/cli-registry/stock.js +4 -1
- package/dist/config/cli-registry/stock.js.map +1 -1
- package/dist/config/cli-registry/types.d.ts +9 -0
- package/dist/config/cli-registry/types.d.ts.map +1 -1
- package/dist/daemon-control.d.ts +2 -0
- package/dist/daemon-control.d.ts.map +1 -1
- package/dist/daemon-control.js +2 -0
- package/dist/daemon-control.js.map +1 -1
- package/dist/docker-export.d.ts.map +1 -1
- package/dist/docker-export.js +8 -1
- package/dist/docker-export.js.map +1 -1
- package/dist/docker-hosts.d.ts +97 -3
- package/dist/docker-hosts.d.ts.map +1 -1
- package/dist/docker-hosts.js +260 -4
- package/dist/docker-hosts.js.map +1 -1
- package/dist/hooks-config.d.ts.map +1 -1
- package/dist/hooks-config.js +39 -3
- package/dist/hooks-config.js.map +1 -1
- package/dist/session.d.ts +31 -1
- package/dist/session.d.ts.map +1 -1
- package/dist/session.js +101 -5
- package/dist/session.js.map +1 -1
- package/dist/tmux-manager.d.ts.map +1 -1
- package/dist/tmux-manager.js +54 -8
- package/dist/tmux-manager.js.map +1 -1
- package/dist/types/api.d.ts +19 -1
- package/dist/types/api.d.ts.map +1 -1
- package/dist/types/api.js.map +1 -1
- package/dist/types/session.d.ts +49 -0
- package/dist/types/session.d.ts.map +1 -1
- package/dist/types/session.js.map +1 -1
- package/dist/web/middleware/auth.d.ts +3 -3
- package/dist/web/middleware/auth.d.ts.map +1 -1
- package/dist/web/middleware/auth.js +13 -11
- package/dist/web/middleware/auth.js.map +1 -1
- package/dist/web/public/admin-ui.js.gz +0 -0
- package/dist/web/public/api-client.c9b1cddc.js.gz +0 -0
- package/dist/web/public/app.3a89ac57.js +38 -0
- package/dist/web/public/app.3a89ac57.js.br +0 -0
- package/dist/web/public/app.3a89ac57.js.gz +0 -0
- package/dist/web/public/approvals-ui.js.gz +0 -0
- package/dist/web/public/{constants.7bd482dc.js → constants.7a635e34.js} +58 -0
- package/dist/web/public/constants.7a635e34.js.br +0 -0
- package/dist/web/public/constants.7a635e34.js.gz +0 -0
- package/dist/web/public/cron-ui.js.gz +0 -0
- package/dist/web/public/entrance-animations.js.gz +0 -0
- package/dist/web/public/home-sessions.js.gz +0 -0
- package/dist/web/public/i18n.9db8c4e0.js +1 -0
- package/dist/web/public/i18n.9db8c4e0.js.br +0 -0
- package/dist/web/public/i18n.9db8c4e0.js.gz +0 -0
- package/dist/web/public/image-input.ee16ad88.js.gz +0 -0
- package/dist/web/public/index.html +46 -17
- package/dist/web/public/index.html.br +0 -0
- package/dist/web/public/index.html.gz +0 -0
- package/dist/web/public/input-cjk.87f14251.js.gz +0 -0
- package/dist/web/public/{keyboard-accessory.0454a3e9.js → keyboard-accessory.daf18302.js} +8 -4
- package/dist/web/public/keyboard-accessory.daf18302.js.br +0 -0
- package/dist/web/public/keyboard-accessory.daf18302.js.gz +0 -0
- package/dist/web/public/manifest.json +2 -1
- package/dist/web/public/mobile-handlers.0f83a608.js.gz +0 -0
- package/dist/web/public/mobile-overview.js.gz +0 -0
- package/dist/web/public/{mobile.87674154.css → mobile.7112f27d.css} +1 -1
- package/dist/web/public/{mobile.87674154.css.br → mobile.7112f27d.css.br} +0 -0
- package/dist/web/public/mobile.7112f27d.css.gz +0 -0
- package/dist/web/public/{notification-manager.5d229063.js → notification-manager.36ea4624.js} +1 -1
- package/dist/web/public/notification-manager.36ea4624.js.br +0 -0
- package/dist/web/public/notification-manager.36ea4624.js.gz +0 -0
- package/dist/web/public/orchestrator-panel.js.gz +0 -0
- package/dist/web/public/{panels-ui.e6e06034.js → panels-ui.db4785bf.js} +8 -8
- package/dist/web/public/panels-ui.db4785bf.js.br +0 -0
- package/dist/web/public/panels-ui.db4785bf.js.gz +0 -0
- package/dist/web/public/ralph-panel.6de2d0f8.js.gz +0 -0
- package/dist/web/public/ralph-wizard.13a1831e.js.gz +0 -0
- package/dist/web/public/readmymind-ui.js.gz +0 -0
- package/dist/web/public/respawn-ui.ff0dae4c.js.gz +0 -0
- package/dist/web/public/sanitize-html.bc7078d6.js.gz +0 -0
- package/dist/web/public/session-lineage.js.gz +0 -0
- package/dist/web/public/session-ui.58116fce.js +68 -0
- package/dist/web/public/session-ui.58116fce.js.br +0 -0
- package/dist/web/public/session-ui.58116fce.js.gz +0 -0
- package/dist/web/public/{settings-ui.1ed208dd.js → settings-ui.554f9cdd.js} +1 -1
- package/dist/web/public/settings-ui.554f9cdd.js.br +0 -0
- package/dist/web/public/settings-ui.554f9cdd.js.gz +0 -0
- package/dist/web/public/{styles.421b36d4.css → styles.2a35729d.css} +1 -1
- package/dist/web/public/styles.2a35729d.css.br +0 -0
- package/dist/web/public/{styles.421b36d4.css.gz → styles.2a35729d.css.gz} +0 -0
- package/dist/web/public/subagent-windows.e6ca799f.js.gz +0 -0
- package/dist/web/public/sw.js +13 -6
- package/dist/web/public/sw.js.br +0 -0
- package/dist/web/public/sw.js.gz +0 -0
- package/dist/web/public/tab-rail-resize.42c24949.js.gz +0 -0
- package/dist/web/public/terminal-ui.70445f81.js.gz +0 -0
- package/dist/web/public/ultracode-panel.js.gz +0 -0
- package/dist/web/public/ultracode-windows.js.gz +0 -0
- package/dist/web/public/upload.html.gz +0 -0
- package/dist/web/public/vendor/dompurify.min.js.gz +0 -0
- package/dist/web/public/vendor/marked.min.js.gz +0 -0
- package/dist/web/public/vendor/xterm-addon-fit.min.js.gz +0 -0
- package/dist/web/public/vendor/xterm-addon-serialize.min.js.gz +0 -0
- package/dist/web/public/vendor/xterm-addon-unicode11.min.js.gz +0 -0
- package/dist/web/public/vendor/xterm-addon-webgl.min.js.gz +0 -0
- package/dist/web/public/vendor/xterm-predictive-echo.bd6882b8.js.gz +0 -0
- package/dist/web/public/vendor/xterm-zerolag-input.6fee72f2.js.gz +0 -0
- package/dist/web/public/vendor/xterm.css.gz +0 -0
- package/dist/web/public/vendor/xterm.min.js.gz +0 -0
- package/dist/web/public/{voice-input.4ec670b0.js → voice-input.c4b51eb6.js} +1 -1
- package/dist/web/public/voice-input.c4b51eb6.js.br +0 -0
- package/dist/web/public/voice-input.c4b51eb6.js.gz +0 -0
- package/dist/web/public/voice-pcm-worklet.js.gz +0 -0
- package/dist/web/public/webview-tabs.js +3 -1
- package/dist/web/public/webview-tabs.js.br +0 -0
- package/dist/web/public/webview-tabs.js.gz +0 -0
- package/dist/web/route-helpers.d.ts.map +1 -1
- package/dist/web/route-helpers.js +5 -0
- package/dist/web/route-helpers.js.map +1 -1
- package/dist/web/routes/case-routes.d.ts.map +1 -1
- package/dist/web/routes/case-routes.js +188 -4
- package/dist/web/routes/case-routes.js.map +1 -1
- package/dist/web/routes/file-routes.d.ts.map +1 -1
- package/dist/web/routes/file-routes.js +62 -4
- package/dist/web/routes/file-routes.js.map +1 -1
- package/dist/web/routes/hook-event-routes.d.ts.map +1 -1
- package/dist/web/routes/hook-event-routes.js +29 -3
- package/dist/web/routes/hook-event-routes.js.map +1 -1
- package/dist/web/routes/session-routes.d.ts.map +1 -1
- package/dist/web/routes/session-routes.js +116 -56
- package/dist/web/routes/session-routes.js.map +1 -1
- package/dist/web/routes/webview-routes.d.ts +2 -2
- package/dist/web/routes/webview-routes.d.ts.map +1 -1
- package/dist/web/routes/webview-routes.js +23 -21
- package/dist/web/routes/webview-routes.js.map +1 -1
- package/dist/web/schemas.d.ts +29 -0
- package/dist/web/schemas.d.ts.map +1 -1
- package/dist/web/schemas.js +68 -0
- package/dist/web/schemas.js.map +1 -1
- package/dist/web/server.d.ts +4 -2
- package/dist/web/server.d.ts.map +1 -1
- package/dist/web/server.js +55 -11
- package/dist/web/server.js.map +1 -1
- package/dist/web/sse-events.d.ts +4 -2
- package/dist/web/sse-events.d.ts.map +1 -1
- package/dist/web/sse-events.js +4 -2
- package/dist/web/sse-events.js.map +1 -1
- package/dist/web/webview-proxy.d.ts +16 -7
- package/dist/web/webview-proxy.d.ts.map +1 -1
- package/dist/web/webview-proxy.js +28 -15
- package/dist/web/webview-proxy.js.map +1 -1
- package/package.json +8 -7
- package/skills/codeman/reference/endpoints.md +1 -0
- package/skills/codeman/reference/verbs.md +11 -1
- package/dist/web/public/app.a5d2fc08.js +0 -38
- package/dist/web/public/app.a5d2fc08.js.br +0 -0
- package/dist/web/public/app.a5d2fc08.js.gz +0 -0
- package/dist/web/public/constants.7bd482dc.js.br +0 -0
- package/dist/web/public/constants.7bd482dc.js.gz +0 -0
- package/dist/web/public/i18n.9ae15b51.js +0 -1
- package/dist/web/public/i18n.9ae15b51.js.br +0 -0
- package/dist/web/public/i18n.9ae15b51.js.gz +0 -0
- package/dist/web/public/keyboard-accessory.0454a3e9.js.br +0 -0
- package/dist/web/public/keyboard-accessory.0454a3e9.js.gz +0 -0
- package/dist/web/public/mobile.87674154.css.gz +0 -0
- package/dist/web/public/notification-manager.5d229063.js.br +0 -0
- package/dist/web/public/notification-manager.5d229063.js.gz +0 -0
- package/dist/web/public/panels-ui.e6e06034.js.br +0 -0
- package/dist/web/public/panels-ui.e6e06034.js.gz +0 -0
- package/dist/web/public/session-ui.c558f981.js +0 -68
- package/dist/web/public/session-ui.c558f981.js.br +0 -0
- package/dist/web/public/session-ui.c558f981.js.gz +0 -0
- package/dist/web/public/settings-ui.1ed208dd.js.br +0 -0
- package/dist/web/public/settings-ui.1ed208dd.js.gz +0 -0
- package/dist/web/public/styles.421b36d4.css.br +0 -0
- package/dist/web/public/voice-input.4ec670b0.js.br +0 -0
- package/dist/web/public/voice-input.4ec670b0.js.gz +0 -0
package/dist/docker-hosts.js
CHANGED
|
@@ -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
|
-
|
|
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 {
|
package/dist/docker-hosts.js.map
CHANGED
|
@@ -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,
|
|
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"}
|
package/dist/hooks-config.js
CHANGED
|
@@ -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 &&
|
|
742
|
+
(hasSecret &&
|
|
743
|
+
hasBackgroundWake &&
|
|
744
|
+
hasSubagentStopGuard &&
|
|
745
|
+
hasElicitationComplete &&
|
|
746
|
+
hasPromptSubmit &&
|
|
747
|
+
!hasTlsFlaglessCurl))
|
|
712
748
|
return;
|
|
713
749
|
const generated = generateHooksConfig();
|
|
714
750
|
const merged = {
|