aicodeman 1.24.7 → 1.26.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/agent-case-marker.d.ts +91 -0
- package/dist/agent-case-marker.d.ts.map +1 -0
- package/dist/agent-case-marker.js +151 -0
- package/dist/agent-case-marker.js.map +1 -0
- 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 +25 -0
- package/dist/hooks-config.d.ts.map +1 -1
- package/dist/hooks-config.js +106 -6
- 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 +51 -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.a9c126c6.js +77 -0
- package/dist/web/public/session-ui.a9c126c6.js.br +0 -0
- package/dist/web/public/session-ui.a9c126c6.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.298f81f2.css +1 -0
- package/dist/web/public/styles.298f81f2.css.br +0 -0
- package/dist/web/public/{styles.421b36d4.css.gz → styles.298f81f2.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 +18 -0
- package/dist/web/route-helpers.d.ts.map +1 -1
- package/dist/web/route-helpers.js +28 -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 +261 -6
- 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 +139 -59
- 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 +30 -0
- package/dist/web/schemas.d.ts.map +1 -1
- package/dist/web/schemas.js +78 -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 +75 -12
- 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/SKILL.md +14 -10
- package/skills/codeman/preamble.sh +6 -3
- package/skills/codeman/reference/endpoints.md +10 -0
- package/skills/codeman/reference/recipes.md +1 -1
- package/skills/codeman/reference/verbs.md +26 -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 +0 -1
- 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
|
@@ -12,16 +12,17 @@ import { join, resolve, basename } from 'node:path';
|
|
|
12
12
|
import { fileURLToPath } from 'node:url';
|
|
13
13
|
import { homedir } from 'node:os';
|
|
14
14
|
import { ApiErrorCode, createErrorResponse, getErrorMessage } from '../../types.js';
|
|
15
|
-
import { CreateCaseSchema, CloneCaseSchema, ClonePreflightSchema, LinkCaseSchema, CaseOrderSchema, RemoteCaseLinkSchema, RemoteHostSchema, DockerCaseLinkSchema, DockerHostSchema, DockerExportSchema, DockerImportSchema, DockerQuickCreateSchema, } from '../schemas.js';
|
|
15
|
+
import { CreateCaseSchema, CloneCaseSchema, ClonePreflightSchema, LinkCaseSchema, CaseOrderSchema, RemoteCaseLinkSchema, RemoteHostSchema, DockerCaseLinkSchema, DockerCaseAdoptSchema, DockerAdoptPreflightSchema, DockerBrowseSchema, DockerHostSchema, DockerExportSchema, DockerImportSchema, DockerQuickCreateSchema, } from '../schemas.js';
|
|
16
16
|
import { exportDockerCase, importDockerBundle, listDockerExports, exportBundleName } from '../../docker-export.js';
|
|
17
17
|
import { cloneRepository, isGitAvailable, isSafeGitRef, parseGitRepositoryUrl, probeGitRemote, } from '../../git-clone.js';
|
|
18
18
|
import { generateClaudeMd } from '../../templates/claude-md.js';
|
|
19
|
+
import { readAgentCaseMarker } from '../../agent-case-marker.js';
|
|
19
20
|
import { settingsWriteBlocker, writeHooksConfig } from '../../hooks-config.js';
|
|
20
21
|
import { canAccessOwned, getAuthUser, isAdmin, isWorkingDirAllowed, ownerFor, resolveCasesDir, SETTINGS_PATH, validatePathWithinBase, parseBody, readJsonConfig, } from '../route-helpers.js';
|
|
21
22
|
import { isMultiUserMode } from '../../config/multiuser.js';
|
|
22
23
|
import { SseEvent } from '../sse-events.js';
|
|
23
24
|
import { dataPath, getDataDir } from '../../config/instance.js';
|
|
24
|
-
import { checkDockerAvailable, checkDockerImagePresent, checkDockerTmuxAvailable, ensureAgentBaseImage, DEFAULT_AGENT_IMAGE, dockerContainerName, dockerDisplayPath, readDockerCases, readDockerHosts, removeDockerContainer, toSessionDocker, writeDockerCases, writeDockerHosts, } from '../../docker-hosts.js';
|
|
25
|
+
import { checkDockerAvailable, checkDockerImagePresent, checkDockerTmuxAvailable, ensureAgentBaseImage, DEFAULT_AGENT_IMAGE, dockerContainerName, dockerDisplayPath, probeAdoptableContainer, listDockerContainers, browseInContainer, dockerAdoptProbeModes, readDockerCases, readDockerHosts, removeDockerContainer, toSessionDocker, writeDockerCases, writeDockerHosts, } from '../../docker-hosts.js';
|
|
25
26
|
import { buildDockerRemoveCommand } from '../../tmux-manager.js';
|
|
26
27
|
import { checkRemoteTmuxAvailable, listRemoteCodemanSessions, readRemoteCases, readRemoteHosts, remoteDisplayPath, writeRemoteCases, writeRemoteHosts, } from '../../remote-hosts.js';
|
|
27
28
|
const LINKED_CASES_FILE = dataPath('linked-cases.json');
|
|
@@ -71,6 +72,20 @@ function gitDiagnosticLine(stderr) {
|
|
|
71
72
|
function repoShipsClaudeSettings(casePath) {
|
|
72
73
|
return ['settings.json', 'settings.local.json'].some((file) => existsSync(join(casePath, '.claude', file)));
|
|
73
74
|
}
|
|
75
|
+
/**
|
|
76
|
+
* Project a case's marker onto the wire shape `CaseInfo.agentCreated` carries.
|
|
77
|
+
* `owner` stays server-side: the listings are already owner-scoped, and it is not
|
|
78
|
+
* something the case list needs to publish.
|
|
79
|
+
*/
|
|
80
|
+
function agentCreatedInfo(marker) {
|
|
81
|
+
return {
|
|
82
|
+
createdAt: marker.createdAt,
|
|
83
|
+
createdBy: marker.createdBy,
|
|
84
|
+
...(marker.parentSessionId ? { parentSessionId: marker.parentSessionId } : {}),
|
|
85
|
+
...(marker.parentSessionName ? { parentSessionName: marker.parentSessionName } : {}),
|
|
86
|
+
...(marker.mode ? { mode: marker.mode } : {}),
|
|
87
|
+
};
|
|
88
|
+
}
|
|
74
89
|
/** Read and parse linked-cases.json, returning empty object on missing/invalid file. */
|
|
75
90
|
async function readLinkedCases() {
|
|
76
91
|
return readJsonConfig(LINKED_CASES_FILE, 'linked cases', {});
|
|
@@ -137,11 +152,16 @@ export function registerCaseRoutes(app, ctx) {
|
|
|
137
152
|
const entries = await fs.readdir(listBase, { withFileTypes: true });
|
|
138
153
|
for (const e of entries) {
|
|
139
154
|
if (e.isDirectory() && SAFE_CASE_NAME.test(e.name)) {
|
|
155
|
+
const casePath = join(listBase, e.name);
|
|
156
|
+
// Only a directory Codeman scaffolded for an agent spawn carries a marker,
|
|
157
|
+
// so this stays absent for every human-created, linked or cloned case.
|
|
158
|
+
const marker = await readAgentCaseMarker(casePath);
|
|
140
159
|
cases.push({
|
|
141
160
|
name: e.name,
|
|
142
|
-
path:
|
|
143
|
-
hasClaudeMd: existsSync(join(
|
|
161
|
+
path: casePath,
|
|
162
|
+
hasClaudeMd: existsSync(join(casePath, 'CLAUDE.md')),
|
|
144
163
|
location: 'local',
|
|
164
|
+
...(marker ? { agentCreated: agentCreatedInfo(marker) } : {}),
|
|
145
165
|
});
|
|
146
166
|
}
|
|
147
167
|
}
|
|
@@ -217,6 +237,8 @@ export function registerCaseRoutes(app, ctx) {
|
|
|
217
237
|
image: host.image,
|
|
218
238
|
path: dockerCase.hostWorkspacePath,
|
|
219
239
|
network: host.network ?? 'bridge',
|
|
240
|
+
...(dockerCase.availableModes ? { availableModes: dockerCase.availableModes } : {}),
|
|
241
|
+
...(dockerCase.owned === false ? { owned: false } : {}),
|
|
220
242
|
},
|
|
221
243
|
};
|
|
222
244
|
const existingIndex = cases.findIndex((item) => item.name === dockerCase.name);
|
|
@@ -240,6 +262,57 @@ export function registerCaseRoutes(app, ctx) {
|
|
|
240
262
|
}
|
|
241
263
|
return cases;
|
|
242
264
|
});
|
|
265
|
+
// ========== Agent-created cases (cleanup listing) ==========
|
|
266
|
+
/**
|
|
267
|
+
* The scratch workspaces agent workers left behind, newest first.
|
|
268
|
+
*
|
|
269
|
+
* A long orchestration creates one case directory per worker, and deleting the
|
|
270
|
+
* sessions does not remove them, so without this the only way to tell an agent's
|
|
271
|
+
* `alpha`/`beta` from a real project was to remember which was which. Reads the same
|
|
272
|
+
* marker `GET /api/cases` exposes and adds the two facts a human needs before
|
|
273
|
+
* deleting a directory: whether a live session is still working in it, and when it
|
|
274
|
+
* was last touched.
|
|
275
|
+
*
|
|
276
|
+
* ⚠️ Read-only on purpose: removal goes through the existing `DELETE /api/cases/:name`,
|
|
277
|
+
* one name at a time, so this file keeps exactly one recursive-delete path. Scoped by
|
|
278
|
+
* construction — it only ever walks the caller's own case space.
|
|
279
|
+
*/
|
|
280
|
+
app.get('/api/cases/agent-created', async (req) => {
|
|
281
|
+
const user = getAuthUser(req);
|
|
282
|
+
const listBase = resolveCasesDir(user);
|
|
283
|
+
const inUsePaths = new Set(Array.from(ctx.sessions.values())
|
|
284
|
+
.filter((session) => canAccessOwned(user, session.owner))
|
|
285
|
+
.map((session) => session.workingDir));
|
|
286
|
+
let entries;
|
|
287
|
+
try {
|
|
288
|
+
entries = await fs.readdir(listBase, { withFileTypes: true });
|
|
289
|
+
}
|
|
290
|
+
catch {
|
|
291
|
+
return { success: true, data: { cases: [] } }; // case space not created yet
|
|
292
|
+
}
|
|
293
|
+
const summaries = [];
|
|
294
|
+
for (const entry of entries) {
|
|
295
|
+
if (!entry.isDirectory() || !SAFE_CASE_NAME.test(entry.name))
|
|
296
|
+
continue;
|
|
297
|
+
const casePath = join(listBase, entry.name);
|
|
298
|
+
const marker = await readAgentCaseMarker(casePath);
|
|
299
|
+
if (!marker)
|
|
300
|
+
continue;
|
|
301
|
+
const modifiedAt = await fs
|
|
302
|
+
.stat(casePath)
|
|
303
|
+
.then((stat) => stat.mtime.toISOString())
|
|
304
|
+
.catch(() => undefined);
|
|
305
|
+
summaries.push({
|
|
306
|
+
name: entry.name,
|
|
307
|
+
path: casePath,
|
|
308
|
+
...agentCreatedInfo(marker),
|
|
309
|
+
inUse: inUsePaths.has(casePath),
|
|
310
|
+
...(modifiedAt ? { modifiedAt } : {}),
|
|
311
|
+
});
|
|
312
|
+
}
|
|
313
|
+
summaries.sort((a, b) => b.createdAt.localeCompare(a.createdAt));
|
|
314
|
+
return { success: true, data: { cases: summaries } };
|
|
315
|
+
});
|
|
243
316
|
app.post('/api/cases', async (req) => {
|
|
244
317
|
const { name, description } = parseBody(CreateCaseSchema, req.body);
|
|
245
318
|
const casePath = validatePathWithinBase(name, resolveCasesDir(getAuthUser(req)));
|
|
@@ -615,6 +688,166 @@ export function registerCaseRoutes(app, ctx) {
|
|
|
615
688
|
},
|
|
616
689
|
};
|
|
617
690
|
});
|
|
691
|
+
/**
|
|
692
|
+
* ADOPT an already-running container (`owned: false`). The mirror of the
|
|
693
|
+
* remote-SSH attach path: Codeman execs into a container the user built and
|
|
694
|
+
* runs, and never creates, starts, stops, restarts or removes it.
|
|
695
|
+
*
|
|
696
|
+
* Everything here is read-only toward the container. The preflight refuses at
|
|
697
|
+
* LINK time — missing, stopped, or no tmux inside — because the alternative is
|
|
698
|
+
* failing at session launch, where the only ways out would be a dead pane or
|
|
699
|
+
* starting a container we do not own. There is no image gate and no
|
|
700
|
+
* `ensureCaseImage`: adoption never runs `docker create`, so the container's
|
|
701
|
+
* image is the user's business.
|
|
702
|
+
*/
|
|
703
|
+
app.post('/api/cases/docker-adopt', async (req, reply) => {
|
|
704
|
+
// ⚠️ Admin-only in multi-user mode, unlike `docker-link` right above. Linking
|
|
705
|
+
// creates OUR container, whose only bind mount is a workspace `isWorkingDirAllowed`
|
|
706
|
+
// has already confined. Adoption names a container someone else built, and its
|
|
707
|
+
// mounts are whatever its owner gave it — a container mounting `/` hands the
|
|
708
|
+
// adopter a shell over the whole host, which is exactly the workspace scoping this
|
|
709
|
+
// mode exists to enforce. Same machine-level reasoning as the docker HOST routes.
|
|
710
|
+
const denied = adminOnly(req, reply);
|
|
711
|
+
if (denied)
|
|
712
|
+
return denied;
|
|
713
|
+
const dockerCase = {
|
|
714
|
+
...parseBody(DockerCaseAdoptSchema, req.body),
|
|
715
|
+
type: 'docker',
|
|
716
|
+
owner: ownerFor(req),
|
|
717
|
+
owned: false,
|
|
718
|
+
};
|
|
719
|
+
const host = (await readDockerHosts(CODEMAN_CONFIG_DIR)).find((item) => item.id === dockerCase.hostId);
|
|
720
|
+
if (!host)
|
|
721
|
+
return createErrorResponse(ApiErrorCode.NOT_FOUND, 'Docker host not found');
|
|
722
|
+
const linkedCases = await readLinkedCases();
|
|
723
|
+
const dockerCases = await readDockerCases(CODEMAN_CONFIG_DIR);
|
|
724
|
+
if (dockerCases.some((item) => item.name === dockerCase.name) ||
|
|
725
|
+
linkedCases[dockerCase.name] ||
|
|
726
|
+
existsSync(join(resolveCasesDir(getAuthUser(req)), dockerCase.name))) {
|
|
727
|
+
return createErrorResponse(ApiErrorCode.ALREADY_EXISTS, 'Case already exists');
|
|
728
|
+
}
|
|
729
|
+
// Two cases must never share one adopted container: session close kills the
|
|
730
|
+
// in-container tmux by session id, but a shared adoption would let one case's
|
|
731
|
+
// teardown and another's launch race over the same tmux server.
|
|
732
|
+
const container = dockerCase.container;
|
|
733
|
+
if (dockerCases.some((item) => (item.container ?? dockerContainerName(item.name)) === container)) {
|
|
734
|
+
return createErrorResponse(ApiErrorCode.ALREADY_EXISTS, `Container "${container}" is already linked to a case`);
|
|
735
|
+
}
|
|
736
|
+
if (!isWorkingDirAllowed(getAuthUser(req), dockerCase.hostWorkspacePath)) {
|
|
737
|
+
return createErrorResponse(ApiErrorCode.FORBIDDEN, 'hostWorkspacePath is outside your workspace');
|
|
738
|
+
}
|
|
739
|
+
// The workspace must ALREADY exist: it mirrors a path inside a container we
|
|
740
|
+
// did not create, so silently mkdir-ing it would invent a host directory that
|
|
741
|
+
// does not correspond to whatever is actually mounted there.
|
|
742
|
+
if (!existsSync(dockerCase.hostWorkspacePath)) {
|
|
743
|
+
return createErrorResponse(ApiErrorCode.INVALID_INPUT, 'hostWorkspacePath does not exist. Adoption mirrors an existing container, so point this at the real host directory already mounted into it.');
|
|
744
|
+
}
|
|
745
|
+
const availability = await checkDockerAvailable(host.engine);
|
|
746
|
+
if (!availability.ok) {
|
|
747
|
+
return createErrorResponse(ApiErrorCode.OPERATION_FAILED, availability.error || 'docker daemon is not available');
|
|
748
|
+
}
|
|
749
|
+
// The container workdir is validated INSIDE the container. It defaults to
|
|
750
|
+
// hostWorkspacePath only because that is what an owned container's bind
|
|
751
|
+
// mount guarantees; adoption mounts nothing, so the probe has to prove it.
|
|
752
|
+
const adoptDocker = toSessionDocker(host, dockerCase);
|
|
753
|
+
const probe = await probeAdoptableContainer(adoptDocker, dockerAdoptProbeModes(), adoptDocker.containerWorkdir);
|
|
754
|
+
if (!probe.ok) {
|
|
755
|
+
return createErrorResponse(ApiErrorCode.OPERATION_FAILED, probe.error || 'container is not adoptable');
|
|
756
|
+
}
|
|
757
|
+
// Persist what the container actually has: the run-mode picker gates on
|
|
758
|
+
// HOST CLIs, which is the wrong question for a case whose agents run inside
|
|
759
|
+
// a container the host knows nothing about.
|
|
760
|
+
const adoptedCase = { ...dockerCase, availableModes: probe.availableModes };
|
|
761
|
+
await writeDockerCases(CODEMAN_CONFIG_DIR, [...dockerCases, adoptedCase]);
|
|
762
|
+
ctx.broadcast(SseEvent.CaseLinked, {
|
|
763
|
+
name: adoptedCase.name,
|
|
764
|
+
path: adoptedCase.hostWorkspacePath,
|
|
765
|
+
type: 'docker',
|
|
766
|
+
});
|
|
767
|
+
return {
|
|
768
|
+
success: true,
|
|
769
|
+
data: { case: adoptedCase, image: probe.image, availableModes: probe.availableModes },
|
|
770
|
+
};
|
|
771
|
+
});
|
|
772
|
+
/**
|
|
773
|
+
* Preflight an existing container WITHOUT linking anything, so the UI can tell
|
|
774
|
+
* the user "not running" / "no tmux" / "codex present, claude missing" before
|
|
775
|
+
* they commit to a case name. Read-only; never touches container lifecycle.
|
|
776
|
+
*/
|
|
777
|
+
/**
|
|
778
|
+
* Containers on the host's engine, for the adoption picker. Read-only and
|
|
779
|
+
* best-effort (mirror of the remote `:hostId/sessions` discovery route): an
|
|
780
|
+
* unreachable daemon yields an empty list rather than an error, because the
|
|
781
|
+
* container name is a free-text field the user can always type by hand.
|
|
782
|
+
*/
|
|
783
|
+
app.get('/api/docker-hosts/:hostId/containers', async (req, reply) => {
|
|
784
|
+
// Enumerating every container on the engine is machine-level information (names,
|
|
785
|
+
// images, uptime), so it follows the docker-host policy rather than the case one.
|
|
786
|
+
const denied = adminOnly(req, reply);
|
|
787
|
+
if (denied)
|
|
788
|
+
return denied;
|
|
789
|
+
const { hostId } = req.params;
|
|
790
|
+
const host = (await readDockerHosts(CODEMAN_CONFIG_DIR)).find((item) => item.id === hostId);
|
|
791
|
+
if (!host)
|
|
792
|
+
return createErrorResponse(ApiErrorCode.NOT_FOUND, 'Docker host not found');
|
|
793
|
+
const containers = await listDockerContainers({
|
|
794
|
+
engine: host.engine ?? 'docker',
|
|
795
|
+
context: host.context,
|
|
796
|
+
daemonHost: host.daemonHost,
|
|
797
|
+
});
|
|
798
|
+
return { success: true, data: { containers } };
|
|
799
|
+
});
|
|
800
|
+
/**
|
|
801
|
+
* Browse a directory INSIDE a container, for the adoption form's
|
|
802
|
+
* container-workdir picker. The host picker cannot answer this: for an adopted
|
|
803
|
+
* container nothing is mounted at a matching host path, so the field would
|
|
804
|
+
* otherwise be typed blind. Read-only — one `ls` through `docker exec`.
|
|
805
|
+
*/
|
|
806
|
+
app.post('/api/docker-cases/browse', async (req, reply) => {
|
|
807
|
+
// Reads a directory listing inside an ARBITRARY named container, so it is gated with
|
|
808
|
+
// the adopt flow it serves rather than with the (owner-scoped) case file routes.
|
|
809
|
+
const denied = adminOnly(req, reply);
|
|
810
|
+
if (denied)
|
|
811
|
+
return denied;
|
|
812
|
+
const body = parseBody(DockerBrowseSchema, req.body);
|
|
813
|
+
const host = (await readDockerHosts(CODEMAN_CONFIG_DIR)).find((item) => item.id === body.hostId);
|
|
814
|
+
if (!host)
|
|
815
|
+
return createErrorResponse(ApiErrorCode.NOT_FOUND, 'Docker host not found');
|
|
816
|
+
const result = await browseInContainer({
|
|
817
|
+
engine: host.engine ?? 'docker',
|
|
818
|
+
context: host.context,
|
|
819
|
+
daemonHost: host.daemonHost,
|
|
820
|
+
containerName: body.container,
|
|
821
|
+
}, body.path || '/');
|
|
822
|
+
return { success: true, data: result };
|
|
823
|
+
});
|
|
824
|
+
app.post('/api/docker-cases/adopt-preflight', async (req, reply) => {
|
|
825
|
+
const body = parseBody(DockerAdoptPreflightSchema, req.body);
|
|
826
|
+
const dockerCases = await readDockerCases(CODEMAN_CONFIG_DIR);
|
|
827
|
+
// ⚠️ NOT plain `adminOnly`, unlike the two routes above: the run menu probes this for
|
|
828
|
+
// every docker case to learn which CLIs the CONTAINER has, so an admin-only gate would
|
|
829
|
+
// hide every agent mode from a non-admin's own docker case. A non-admin may therefore
|
|
830
|
+
// probe a container ALREADY linked to a case they can access — never an arbitrary one,
|
|
831
|
+
// which is the adopt-time question and stays admin-only with the rest of that flow.
|
|
832
|
+
if (!isAdmin(req)) {
|
|
833
|
+
const owns = dockerCases.some((item) => (item.container ?? dockerContainerName(item.name)) === body.container &&
|
|
834
|
+
canAccessOwned(getAuthUser(req), item.owner));
|
|
835
|
+
if (!owns) {
|
|
836
|
+
reply.code(403);
|
|
837
|
+
return createErrorResponse(ApiErrorCode.FORBIDDEN, 'Admin only in multi-user mode');
|
|
838
|
+
}
|
|
839
|
+
}
|
|
840
|
+
const host = (await readDockerHosts(CODEMAN_CONFIG_DIR)).find((item) => item.id === body.hostId);
|
|
841
|
+
if (!host)
|
|
842
|
+
return createErrorResponse(ApiErrorCode.NOT_FOUND, 'Docker host not found');
|
|
843
|
+
const probe = await probeAdoptableContainer({
|
|
844
|
+
engine: host.engine ?? 'docker',
|
|
845
|
+
context: host.context,
|
|
846
|
+
daemonHost: host.daemonHost,
|
|
847
|
+
containerName: body.container,
|
|
848
|
+
}, dockerAdoptProbeModes(), body.containerWorkdir);
|
|
849
|
+
return { success: true, data: probe };
|
|
850
|
+
});
|
|
618
851
|
// One-click "Run in Docker": create a NORMAL case (folder in CASES_DIR, scaffolded)
|
|
619
852
|
// AND link it to a hardened container with default settings, auto-provisioning a
|
|
620
853
|
// shared `default` docker host so the user never touches host/image/network fields.
|
|
@@ -725,6 +958,14 @@ export function registerCaseRoutes(app, ctx) {
|
|
|
725
958
|
if (!host)
|
|
726
959
|
return createErrorResponse(ApiErrorCode.NOT_FOUND, 'Docker host not found');
|
|
727
960
|
const sessionDocker = toSessionDocker(host, dockerCase);
|
|
961
|
+
// A full export `docker commit`s the container into an image. For an ADOPTED
|
|
962
|
+
// container that means packaging someone else's container — with whatever
|
|
963
|
+
// credentials its owner logged in with — into a bundle Codeman then hands out,
|
|
964
|
+
// and it is the one export step that touches the container at all. The
|
|
965
|
+
// workspace-only export is a plain host-directory tar and stays available.
|
|
966
|
+
if (mode === 'full' && dockerCase.owned === false) {
|
|
967
|
+
return createErrorResponse(ApiErrorCode.FORBIDDEN, `Case "${name}" adopted an existing container. Codeman does not own it and will not commit it to an image — use a workspace-only export, or build the image yourself.`);
|
|
968
|
+
}
|
|
728
969
|
if (mode === 'full' && !sessionDocker.mountCredentials) {
|
|
729
970
|
return createErrorResponse(ApiErrorCode.INVALID_INPUT, 'full-image export is refused for a sealed container (its in-container login would ride the committed layer). Use a workspace-only export.');
|
|
730
971
|
}
|
|
@@ -848,9 +1089,18 @@ export function registerCaseRoutes(app, ctx) {
|
|
|
848
1089
|
// (removal would yank the container out from under their panes).
|
|
849
1090
|
app.post('/api/docker-cases/:name/recreate', async (req) => {
|
|
850
1091
|
const { name } = req.params;
|
|
851
|
-
|
|
1092
|
+
// Ownership gate: recreate DESTROYS a container, so it must be scoped like
|
|
1093
|
+
// delete is (`canAccessOwned`). Without it any user could rebuild another
|
|
1094
|
+
// user's container by name.
|
|
1095
|
+
const dockerCase = (await readDockerCases(CODEMAN_CONFIG_DIR)).find((item) => item.name === name && canAccessOwned(getAuthUser(req), item.owner));
|
|
852
1096
|
if (!dockerCase)
|
|
853
1097
|
return createErrorResponse(ApiErrorCode.NOT_FOUND, 'Docker case not found');
|
|
1098
|
+
// An ADOPTED container is the user's own: there is nothing to recreate it
|
|
1099
|
+
// from (no create-config, no image gate) and destroying it is exactly what
|
|
1100
|
+
// adoption promises never to do.
|
|
1101
|
+
if (dockerCase.owned === false) {
|
|
1102
|
+
return createErrorResponse(ApiErrorCode.FORBIDDEN, `Case "${name}" adopted an existing container. Codeman does not own its lifecycle and will not recreate it — rebuild it yourself, or unlink the case.`);
|
|
1103
|
+
}
|
|
854
1104
|
const host = (await readDockerHosts(CODEMAN_CONFIG_DIR)).find((item) => item.id === dockerCase.hostId);
|
|
855
1105
|
if (!host)
|
|
856
1106
|
return createErrorResponse(ApiErrorCode.NOT_FOUND, 'Docker host not found');
|
|
@@ -935,7 +1185,12 @@ export function registerCaseRoutes(app, ctx) {
|
|
|
935
1185
|
await writeDockerCases(CODEMAN_CONFIG_DIR, dockerCases.filter((item) => item !== dockerCase));
|
|
936
1186
|
// Best-effort `docker rm -f` the per-case container (case-delete is the
|
|
937
1187
|
// explicit teardown that removes it; the bind-mounted workspace survives).
|
|
938
|
-
|
|
1188
|
+
// An ADOPTED container is skipped entirely: unlinking the case must leave
|
|
1189
|
+
// the user's own container running and untouched. The seed file is skipped
|
|
1190
|
+
// with it — adoption never wrote one.
|
|
1191
|
+
const host = dockerCase.owned === false
|
|
1192
|
+
? undefined
|
|
1193
|
+
: (await readDockerHosts(CODEMAN_CONFIG_DIR)).find((item) => item.id === dockerCase.hostId);
|
|
939
1194
|
if (host) {
|
|
940
1195
|
const sessionDocker = toSessionDocker(host, dockerCase);
|
|
941
1196
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"case-routes.js","sourceRoot":"","sources":["../../../src/web/routes/case-routes.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"case-routes.js","sourceRoot":"","sources":["../../../src/web/routes/case-routes.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"file-routes.d.ts","sourceRoot":"","sources":["../../../src/web/routes/file-routes.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,eAAe,EAAqB,MAAM,SAAS,CAAC;AA+C7D,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"file-routes.d.ts","sourceRoot":"","sources":["../../../src/web/routes/file-routes.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,eAAe,EAAqB,MAAM,SAAS,CAAC;AA+C7D,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AA4vB5E,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,eAAe,EAAE,GAAG,EAAE,WAAW,GAAG,SAAS,GAAG,UAAU,GAAG,IAAI,CAmqCxG"}
|