@namzu/cli 12.1.0 → 13.0.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/README.md +25 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +119 -60
- package/dist/cli.js.map +1 -1
- package/dist/commands/acp.d.ts +24 -8
- package/dist/commands/acp.d.ts.map +1 -1
- package/dist/commands/acp.js +221 -80
- package/dist/commands/acp.js.map +1 -1
- package/dist/commands/drain.d.ts.map +1 -1
- package/dist/commands/drain.js +45 -9
- package/dist/commands/drain.js.map +1 -1
- package/dist/commands/prior-messages.d.ts +11 -0
- package/dist/commands/prior-messages.d.ts.map +1 -0
- package/dist/commands/prior-messages.js +280 -0
- package/dist/commands/prior-messages.js.map +1 -0
- package/dist/commands/resume.d.ts.map +1 -1
- package/dist/commands/resume.js +21 -19
- package/dist/commands/resume.js.map +1 -1
- package/dist/commands/run-stream.d.ts +5 -3
- package/dist/commands/run-stream.d.ts.map +1 -1
- package/dist/commands/run-stream.js +66 -62
- package/dist/commands/run-stream.js.map +1 -1
- package/dist/commands/run.d.ts.map +1 -1
- package/dist/commands/run.js +50 -37
- package/dist/commands/run.js.map +1 -1
- package/dist/config/debug.d.ts +55 -0
- package/dist/config/debug.d.ts.map +1 -0
- package/dist/config/debug.js +126 -0
- package/dist/config/debug.js.map +1 -0
- package/dist/config/load.d.ts +88 -4
- package/dist/config/load.d.ts.map +1 -1
- package/dist/config/load.js +386 -56
- package/dist/config/load.js.map +1 -1
- package/dist/config/schema.d.ts +87 -5
- package/dist/config/schema.d.ts.map +1 -1
- package/dist/config/schema.js +5 -5
- package/dist/config/schema.js.map +1 -1
- package/dist/config/trusted-project-context.d.ts +11 -0
- package/dist/config/trusted-project-context.d.ts.map +1 -0
- package/dist/config/trusted-project-context.js +28 -0
- package/dist/config/trusted-project-context.js.map +1 -0
- package/dist/context/project-path.d.ts +3 -0
- package/dist/context/project-path.d.ts.map +1 -0
- package/dist/context/project-path.js +16 -0
- package/dist/context/project-path.js.map +1 -0
- package/dist/context/project-tracker.d.ts +30 -0
- package/dist/context/project-tracker.d.ts.map +1 -0
- package/dist/context/project-tracker.js +217 -0
- package/dist/context/project-tracker.js.map +1 -0
- package/dist/context/sandbox.d.ts +29 -9
- package/dist/context/sandbox.d.ts.map +1 -1
- package/dist/context/sandbox.js +8 -0
- package/dist/context/sandbox.js.map +1 -1
- package/dist/exit-codes.d.ts +5 -4
- package/dist/exit-codes.d.ts.map +1 -1
- package/dist/exit-codes.js +5 -4
- package/dist/exit-codes.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/integrations/clipboard/text.d.ts +43 -0
- package/dist/integrations/clipboard/text.d.ts.map +1 -0
- package/dist/integrations/clipboard/text.js +43 -0
- package/dist/integrations/clipboard/text.js.map +1 -0
- package/dist/integrations/mcp/servers.d.ts +9 -0
- package/dist/integrations/mcp/servers.d.ts.map +1 -1
- package/dist/integrations/mcp/servers.js +11 -4
- package/dist/integrations/mcp/servers.js.map +1 -1
- package/dist/integrations/notifications/terminal.d.ts +32 -0
- package/dist/integrations/notifications/terminal.d.ts.map +1 -0
- package/dist/integrations/notifications/terminal.js +46 -0
- package/dist/integrations/notifications/terminal.js.map +1 -0
- package/dist/integrations/plugins/runtime.d.ts +17 -0
- package/dist/integrations/plugins/runtime.d.ts.map +1 -0
- package/dist/integrations/plugins/runtime.js +100 -0
- package/dist/integrations/plugins/runtime.js.map +1 -0
- package/dist/integrations/providers/credential-store.d.ts +17 -0
- package/dist/integrations/providers/credential-store.d.ts.map +1 -1
- package/dist/integrations/providers/credential-store.js +114 -2
- package/dist/integrations/providers/credential-store.js.map +1 -1
- package/dist/integrations/providers/index.d.ts +2 -2
- package/dist/integrations/providers/index.d.ts.map +1 -1
- package/dist/integrations/providers/index.js +2 -2
- package/dist/integrations/providers/index.js.map +1 -1
- package/dist/integrations/providers/keychain.d.ts +0 -13
- package/dist/integrations/providers/keychain.d.ts.map +1 -1
- package/dist/integrations/providers/keychain.js +0 -76
- package/dist/integrations/providers/keychain.js.map +1 -1
- package/dist/integrations/providers/oauth.d.ts +45 -16
- package/dist/integrations/providers/oauth.d.ts.map +1 -1
- package/dist/integrations/providers/oauth.js +170 -43
- package/dist/integrations/providers/oauth.js.map +1 -1
- package/dist/integrations/providers/subscription-login.d.ts +2 -0
- package/dist/integrations/providers/subscription-login.d.ts.map +1 -1
- package/dist/integrations/providers/subscription-login.js +117 -14
- package/dist/integrations/providers/subscription-login.js.map +1 -1
- package/dist/integrations/sessions/store.d.ts +111 -1
- package/dist/integrations/sessions/store.d.ts.map +1 -1
- package/dist/integrations/sessions/store.js +400 -7
- package/dist/integrations/sessions/store.js.map +1 -1
- package/dist/integrations/sessions/transcript-export.d.ts +25 -0
- package/dist/integrations/sessions/transcript-export.d.ts.map +1 -0
- package/dist/integrations/sessions/transcript-export.js +441 -0
- package/dist/integrations/sessions/transcript-export.js.map +1 -0
- package/dist/integrations/sessions/turn-evidence.d.ts +138 -0
- package/dist/integrations/sessions/turn-evidence.d.ts.map +1 -0
- package/dist/integrations/sessions/turn-evidence.js +506 -0
- package/dist/integrations/sessions/turn-evidence.js.map +1 -0
- package/dist/integrations/subagents/runtime.d.ts +7 -12
- package/dist/integrations/subagents/runtime.d.ts.map +1 -1
- package/dist/integrations/subagents/runtime.js +19 -10
- package/dist/integrations/subagents/runtime.js.map +1 -1
- package/dist/integrations/trust/store.d.ts.map +1 -1
- package/dist/integrations/trust/store.js +27 -13
- package/dist/integrations/trust/store.js.map +1 -1
- package/dist/permissions/canonical-project.d.ts +9 -0
- package/dist/permissions/canonical-project.d.ts.map +1 -0
- package/dist/permissions/canonical-project.js +13 -0
- package/dist/permissions/canonical-project.js.map +1 -0
- package/dist/permissions/checks.d.ts +65 -0
- package/dist/permissions/checks.d.ts.map +1 -0
- package/dist/permissions/checks.js +122 -0
- package/dist/permissions/checks.js.map +1 -0
- package/dist/permissions/headless-trust.d.ts +9 -5
- package/dist/permissions/headless-trust.d.ts.map +1 -1
- package/dist/permissions/headless-trust.js +18 -4
- package/dist/permissions/headless-trust.js.map +1 -1
- package/dist/permissions/rules.d.ts +16 -7
- package/dist/permissions/rules.d.ts.map +1 -1
- package/dist/permissions/rules.js +78 -13
- package/dist/permissions/rules.js.map +1 -1
- package/dist/tui/App.d.ts +5 -2
- package/dist/tui/App.d.ts.map +1 -1
- package/dist/tui/App.js +1555 -143
- package/dist/tui/App.js.map +1 -1
- package/dist/tui/Composer.d.ts +14 -3
- package/dist/tui/Composer.d.ts.map +1 -1
- package/dist/tui/Composer.js +53 -15
- package/dist/tui/Composer.js.map +1 -1
- package/dist/tui/EditPromptPicker.d.ts +8 -0
- package/dist/tui/EditPromptPicker.d.ts.map +1 -0
- package/dist/tui/EditPromptPicker.js +18 -0
- package/dist/tui/EditPromptPicker.js.map +1 -0
- package/dist/tui/LiveActivity.d.ts.map +1 -1
- package/dist/tui/LiveActivity.js +2 -1
- package/dist/tui/LiveActivity.js.map +1 -1
- package/dist/tui/Markdown.d.ts.map +1 -1
- package/dist/tui/Markdown.js +2 -1
- package/dist/tui/Markdown.js.map +1 -1
- package/dist/tui/PermissionOverlay.d.ts.map +1 -1
- package/dist/tui/PermissionOverlay.js +7 -1
- package/dist/tui/PermissionOverlay.js.map +1 -1
- package/dist/tui/Picker.d.ts +4 -4
- package/dist/tui/Picker.d.ts.map +1 -1
- package/dist/tui/Picker.js +86 -7
- package/dist/tui/Picker.js.map +1 -1
- package/dist/tui/ResumePicker.d.ts.map +1 -1
- package/dist/tui/ResumePicker.js +1 -1
- package/dist/tui/ResumePicker.js.map +1 -1
- package/dist/tui/Transcript.d.ts +4 -2
- package/dist/tui/Transcript.d.ts.map +1 -1
- package/dist/tui/Transcript.js +31 -5
- package/dist/tui/Transcript.js.map +1 -1
- package/dist/tui/agent.d.ts +123 -19
- package/dist/tui/agent.d.ts.map +1 -1
- package/dist/tui/agent.js +665 -143
- package/dist/tui/agent.js.map +1 -1
- package/dist/tui/compact-transcript.d.ts +24 -0
- package/dist/tui/compact-transcript.d.ts.map +1 -0
- package/dist/tui/compact-transcript.js +46 -0
- package/dist/tui/compact-transcript.js.map +1 -0
- package/dist/tui/conversation-history.d.ts +33 -0
- package/dist/tui/conversation-history.d.ts.map +1 -0
- package/dist/tui/conversation-history.js +42 -0
- package/dist/tui/conversation-history.js.map +1 -0
- package/dist/tui/edit-prompts.d.ts +23 -0
- package/dist/tui/edit-prompts.d.ts.map +1 -0
- package/dist/tui/edit-prompts.js +35 -0
- package/dist/tui/edit-prompts.js.map +1 -0
- package/dist/tui/live-window.d.ts +3 -1
- package/dist/tui/live-window.d.ts.map +1 -1
- package/dist/tui/live-window.js +20 -8
- package/dist/tui/live-window.js.map +1 -1
- package/dist/tui/slashCommands.d.ts +178 -9
- package/dist/tui/slashCommands.d.ts.map +1 -1
- package/dist/tui/slashCommands.js +339 -15
- package/dist/tui/slashCommands.js.map +1 -1
- package/dist/tui/terminal-display.d.ts +12 -0
- package/dist/tui/terminal-display.d.ts.map +1 -0
- package/dist/tui/terminal-display.js +65 -0
- package/dist/tui/terminal-display.js.map +1 -0
- package/dist/tui/types.d.ts +14 -2
- package/dist/tui/types.d.ts.map +1 -1
- package/dist/tui/workspace-diff.d.ts +40 -0
- package/dist/tui/workspace-diff.d.ts.map +1 -0
- package/dist/tui/workspace-diff.js +101 -0
- package/dist/tui/workspace-diff.js.map +1 -0
- package/package.json +7 -7
package/dist/commands/acp.js
CHANGED
|
@@ -2,6 +2,10 @@ import { ACPServer, HostCommandRegistry, ServerStdioTransport, ToolRegistry, cre
|
|
|
2
2
|
import { readFileSync } from 'node:fs';
|
|
3
3
|
import { dirname, join } from 'node:path';
|
|
4
4
|
import { fileURLToPath } from 'node:url';
|
|
5
|
+
import { resolveTrustedProjectContext } from '../config/trusted-project-context.js';
|
|
6
|
+
import { cliLogger } from '../logging.js';
|
|
7
|
+
import { decideHeadlessTrust } from '../permissions/headless-trust.js';
|
|
8
|
+
import { compilePermissions } from '../permissions/rules.js';
|
|
5
9
|
import { createAgentSession, probeAgentSession } from '../tui/agent.js';
|
|
6
10
|
/** Same read as `cli.ts`'s `--version`: the manifest, never a second copy. */
|
|
7
11
|
function readPackageVersion() {
|
|
@@ -20,76 +24,174 @@ function defaultPrefs(detected) {
|
|
|
20
24
|
? { version: 3, providers: [{ id: first.entry.id }], subagents: { active: [] } }
|
|
21
25
|
: null;
|
|
22
26
|
}
|
|
27
|
+
function waitForOperation(operation, signal) {
|
|
28
|
+
if (signal.aborted)
|
|
29
|
+
return Promise.reject(signal.reason);
|
|
30
|
+
return new Promise((resolve, reject) => {
|
|
31
|
+
let active = true;
|
|
32
|
+
const finish = () => {
|
|
33
|
+
if (!active)
|
|
34
|
+
return false;
|
|
35
|
+
active = false;
|
|
36
|
+
signal.removeEventListener('abort', onAbort);
|
|
37
|
+
return true;
|
|
38
|
+
};
|
|
39
|
+
const onAbort = () => {
|
|
40
|
+
if (finish())
|
|
41
|
+
reject(signal.reason);
|
|
42
|
+
};
|
|
43
|
+
signal.addEventListener('abort', onAbort, { once: true });
|
|
44
|
+
operation.then((value) => {
|
|
45
|
+
if (finish())
|
|
46
|
+
resolve(value);
|
|
47
|
+
}, (error) => {
|
|
48
|
+
if (finish())
|
|
49
|
+
reject(error);
|
|
50
|
+
});
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
const DEFAULT_RUNTIME_DEPS = {
|
|
54
|
+
probe: probeAgentSession,
|
|
55
|
+
createSession: createAgentSession,
|
|
56
|
+
decideTrust: decideHeadlessTrust,
|
|
57
|
+
resolveProjectContext: resolveTrustedProjectContext,
|
|
58
|
+
};
|
|
23
59
|
/**
|
|
24
|
-
*
|
|
25
|
-
*
|
|
26
|
-
* This command exists in the same change as the bridge it drives, and that
|
|
27
|
-
* is the point rather than a convenience. `MCPServer` and
|
|
28
|
-
* `ServerStdioTransport` are both exported from this SDK and nothing in the
|
|
29
|
-
* tree ever constructed an `MCPServer`: a complete protocol server with no
|
|
30
|
-
* driver, which reads as a supported feature and is not one. A subprocess
|
|
31
|
-
* test spawns this binary, so removing the registration below fails a test
|
|
32
|
-
* rather than quietly shipping the same shape twice.
|
|
33
|
-
*
|
|
34
|
-
* **stdout belongs to the protocol.** Everything this command prints for a
|
|
35
|
-
* human goes to stderr. The SDK's logger already writes there; what this
|
|
36
|
-
* file must not do is `console.log`, and a test asserts zero non-JSON bytes
|
|
37
|
-
* on the child's stdout under info-level logging.
|
|
38
|
-
*/
|
|
39
|
-
/**
|
|
40
|
-
* Bridges the SDK session to the one verb the protocol server needs.
|
|
60
|
+
* Owns the CLI runtime behind one ACP connection.
|
|
41
61
|
*
|
|
42
|
-
*
|
|
43
|
-
*
|
|
44
|
-
* session
|
|
45
|
-
* result, a background job settling — reaches no client, which is correct:
|
|
46
|
-
* there is no prompt for it to belong to.
|
|
62
|
+
* The wire server owns IDs, cwd, cancellation and history. This owner mirrors
|
|
63
|
+
* that boundary into the model runtime: one AgentSession and event route per
|
|
64
|
+
* wire session, never one mutable connection-global slot.
|
|
47
65
|
*/
|
|
48
|
-
export
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
let route;
|
|
60
|
-
const ensureSession = async () => {
|
|
61
|
-
if (session)
|
|
62
|
-
return session;
|
|
63
|
-
const probe = await probeAgentSession();
|
|
64
|
-
const prefs = probe.preferences ?? defaultPrefs(probe.detected);
|
|
65
|
-
if (!prefs) {
|
|
66
|
-
throw new Error('No LLM provider is available on this machine: set a credential in the environment, or run `namzu` interactively to pick one. The protocol handshake succeeded; there is nothing to run a prompt with.');
|
|
66
|
+
export function createCliAcpRuntime(bootstrapCtx, deps = DEFAULT_RUNTIME_DEPS) {
|
|
67
|
+
const records = new Map();
|
|
68
|
+
const constructing = new Map();
|
|
69
|
+
let probePromise;
|
|
70
|
+
let closed = false;
|
|
71
|
+
const sharedProbe = () => {
|
|
72
|
+
if (!probePromise) {
|
|
73
|
+
probePromise = deps.probe().catch((error) => {
|
|
74
|
+
probePromise = undefined;
|
|
75
|
+
throw error;
|
|
76
|
+
});
|
|
67
77
|
}
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
if (
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
78
|
+
return probePromise;
|
|
79
|
+
};
|
|
80
|
+
const ensureSession = async (sessionId, requestedCwd, signal) => {
|
|
81
|
+
signal.throwIfAborted();
|
|
82
|
+
if (closed)
|
|
83
|
+
throw new Error('The ACP connection has closed.');
|
|
84
|
+
// This is the first project-aware operation. Session creation and the
|
|
85
|
+
// protocol handshake remain credential-free and do not read the target.
|
|
86
|
+
const trust = deps.decideTrust({ cwd: requestedCwd, trustFlag: false });
|
|
87
|
+
if (!trust.allowed)
|
|
88
|
+
throw new Error(trust.message ?? 'folder not trusted');
|
|
89
|
+
const cwd = trust.cwd;
|
|
90
|
+
const existing = records.get(sessionId);
|
|
91
|
+
if (existing) {
|
|
92
|
+
if (existing.cwd !== cwd) {
|
|
93
|
+
throw new Error(`ACP session "${sessionId}" already owns ${existing.cwd}; refusing to reuse it for ${cwd}.`);
|
|
94
|
+
}
|
|
95
|
+
return existing;
|
|
96
|
+
}
|
|
97
|
+
if (constructing.has(sessionId)) {
|
|
98
|
+
throw new Error(`ACP session "${sessionId}" is already being constructed.`);
|
|
77
99
|
}
|
|
78
|
-
|
|
100
|
+
constructing.set(sessionId, cwd);
|
|
101
|
+
const construction = (async () => {
|
|
102
|
+
let candidate;
|
|
103
|
+
const closeCandidate = async () => {
|
|
104
|
+
const owned = candidate;
|
|
105
|
+
candidate = undefined;
|
|
106
|
+
if (owned)
|
|
107
|
+
await owned.close();
|
|
108
|
+
};
|
|
109
|
+
try {
|
|
110
|
+
const projectCtx = deps.resolveProjectContext(bootstrapCtx, cwd);
|
|
111
|
+
const permissions = compilePermissions(projectCtx.config.permissions, projectCtx.config.permissionChecks);
|
|
112
|
+
if (permissions.diagnostics.length > 0) {
|
|
113
|
+
throw new Error(permissions.diagnostics
|
|
114
|
+
.map((diagnostic) => {
|
|
115
|
+
const where = diagnostic.pattern
|
|
116
|
+
? `permissions.${diagnostic.tool}."${diagnostic.pattern}"`
|
|
117
|
+
: `permissions.${diagnostic.tool}`;
|
|
118
|
+
return `${where}: ${diagnostic.message}`;
|
|
119
|
+
})
|
|
120
|
+
.join('\n'));
|
|
121
|
+
}
|
|
122
|
+
const probe = await sharedProbe();
|
|
123
|
+
signal.throwIfAborted();
|
|
124
|
+
if (closed)
|
|
125
|
+
throw new Error('The ACP connection closed while its session was starting.');
|
|
126
|
+
const prefs = probe.preferences ?? defaultPrefs(probe.detected);
|
|
127
|
+
if (!prefs) {
|
|
128
|
+
throw new Error('No LLM provider is available on this machine: set a credential in the environment, or run `namzu` interactively to pick one. The protocol handshake succeeded; there is nothing to run a prompt with.');
|
|
129
|
+
}
|
|
130
|
+
const routeOwner = {};
|
|
131
|
+
candidate = await deps.createSession(prefs, probe.detected, {
|
|
132
|
+
cwd,
|
|
133
|
+
rules: permissions.rules,
|
|
134
|
+
...(projectCtx.config.mcpServers ? { mcpServers: projectCtx.config.mcpServers } : {}),
|
|
135
|
+
...(projectCtx.config.plugins ? { plugins: projectCtx.config.plugins } : {}),
|
|
136
|
+
...(projectCtx.config.sandbox ? { sandbox: projectCtx.config.sandbox } : {}),
|
|
137
|
+
onRunEvent: (event) => routeOwner.current?.route?.(event),
|
|
138
|
+
});
|
|
139
|
+
if (signal.aborted || closed) {
|
|
140
|
+
await closeCandidate();
|
|
141
|
+
signal.throwIfAborted();
|
|
142
|
+
throw new Error('The ACP connection closed while its session was starting.');
|
|
143
|
+
}
|
|
144
|
+
if (!candidate.hasProvider) {
|
|
145
|
+
const hint = candidate.errorHint ?? 'agent is not ready';
|
|
146
|
+
await closeCandidate();
|
|
147
|
+
throw new Error(hint);
|
|
148
|
+
}
|
|
149
|
+
if (candidate.mcpFailed.length > 0) {
|
|
150
|
+
const failure = candidate.mcpFailed
|
|
151
|
+
.map((entry) => `tool server "${entry.name}" is not available: ${entry.reason}`)
|
|
152
|
+
.join('\n');
|
|
153
|
+
await closeCandidate();
|
|
154
|
+
throw new Error(failure);
|
|
155
|
+
}
|
|
156
|
+
const record = { cwd, session: candidate, route: undefined };
|
|
157
|
+
routeOwner.current = record;
|
|
158
|
+
if (records.has(sessionId)) {
|
|
159
|
+
await closeCandidate();
|
|
160
|
+
throw new Error(`ACP session "${sessionId}" was published by another operation.`);
|
|
161
|
+
}
|
|
162
|
+
records.set(sessionId, record);
|
|
163
|
+
candidate = undefined;
|
|
164
|
+
return record;
|
|
165
|
+
}
|
|
166
|
+
finally {
|
|
167
|
+
constructing.delete(sessionId);
|
|
168
|
+
await closeCandidate();
|
|
169
|
+
}
|
|
170
|
+
})();
|
|
171
|
+
// Session startup can include provider, MCP and sandbox work that does
|
|
172
|
+
// not itself settle when the wire prompt is cancelled. Release the ACP
|
|
173
|
+
// turn immediately, but keep this construction observed and reserved;
|
|
174
|
+
// its own fences close any candidate that eventually arrives.
|
|
175
|
+
return waitForOperation(construction, signal);
|
|
79
176
|
};
|
|
80
177
|
const gateway = {
|
|
81
|
-
prompt: async ({ prompt, onEvent, signal, ask, history }) => {
|
|
82
|
-
|
|
83
|
-
|
|
178
|
+
prompt: async ({ sessionId, prompt, cwd, onEvent, signal, ask, history }) => {
|
|
179
|
+
let record;
|
|
180
|
+
try {
|
|
181
|
+
record = await ensureSession(sessionId, cwd, signal);
|
|
182
|
+
}
|
|
183
|
+
catch (error) {
|
|
184
|
+
if (signal.aborted)
|
|
185
|
+
return { stopReason: 'cancelled' };
|
|
186
|
+
throw error;
|
|
187
|
+
}
|
|
188
|
+
record.route = onEvent;
|
|
84
189
|
try {
|
|
85
190
|
let stopReason;
|
|
86
|
-
|
|
87
|
-
// shape. The mapping is a rename, and it is written out rather
|
|
88
|
-
// than cast so a third outcome added on either side stops
|
|
89
|
-
// compiling here instead of silently becoming an approval.
|
|
191
|
+
let settledHistory;
|
|
90
192
|
const onPermission = async (request) => {
|
|
91
193
|
const outcome = await ask({
|
|
92
|
-
sessionId
|
|
194
|
+
sessionId,
|
|
93
195
|
toolCalls: request.toolCalls.map((call) => ({
|
|
94
196
|
id: call.id,
|
|
95
197
|
name: call.name,
|
|
@@ -109,48 +211,87 @@ export async function runAcpCommand(cwd) {
|
|
|
109
211
|
};
|
|
110
212
|
}
|
|
111
213
|
};
|
|
112
|
-
// Prior turns first, so a resumed session answers with the
|
|
113
|
-
// conversation it actually had rather than as if it were new.
|
|
114
214
|
const messages = [...history, createUserMessage(prompt)];
|
|
115
|
-
for await (const event of
|
|
215
|
+
for await (const event of record.session.send(messages, {
|
|
216
|
+
signal,
|
|
217
|
+
onPermission,
|
|
218
|
+
onConversationMessages: (messages) => {
|
|
219
|
+
settledHistory = [...messages];
|
|
220
|
+
},
|
|
221
|
+
})) {
|
|
116
222
|
if (event.kind === 'done')
|
|
117
223
|
stopReason = event.stopReason;
|
|
118
|
-
// An `error` event is a run that FAILED, and the protocol's word
|
|
119
|
-
// for that is a stop reason rather than a JSON-RPC error: the
|
|
120
|
-
// call itself succeeded, and the turn is what went wrong.
|
|
121
224
|
else if (event.kind === 'error')
|
|
122
|
-
stopReason = 'error';
|
|
225
|
+
stopReason = signal.aborted ? 'cancelled' : 'error';
|
|
123
226
|
}
|
|
124
|
-
|
|
227
|
+
if (signal.aborted)
|
|
228
|
+
stopReason = 'cancelled';
|
|
229
|
+
return {
|
|
230
|
+
...(stopReason === undefined ? {} : { stopReason }),
|
|
231
|
+
...(settledHistory === undefined ? {} : { history: settledHistory }),
|
|
232
|
+
};
|
|
125
233
|
}
|
|
126
234
|
finally {
|
|
127
|
-
route
|
|
235
|
+
if (record.route === onEvent)
|
|
236
|
+
record.route = undefined;
|
|
128
237
|
}
|
|
129
238
|
},
|
|
130
239
|
};
|
|
240
|
+
return {
|
|
241
|
+
gateway,
|
|
242
|
+
close: async () => {
|
|
243
|
+
closed = true;
|
|
244
|
+
const owned = [...records.values()];
|
|
245
|
+
records.clear();
|
|
246
|
+
const results = await Promise.allSettled(owned.map((record) => record.session.close()));
|
|
247
|
+
const failures = results
|
|
248
|
+
.filter((result) => result.status === 'rejected')
|
|
249
|
+
.map((result) => result.reason);
|
|
250
|
+
if (failures.length > 0)
|
|
251
|
+
throw new AggregateError(failures, 'Failed to close ACP sessions.');
|
|
252
|
+
},
|
|
253
|
+
};
|
|
254
|
+
}
|
|
255
|
+
export async function runAcpCommand(ctx) {
|
|
256
|
+
const runtime = createCliAcpRuntime(ctx);
|
|
131
257
|
const server = new ACPServer({
|
|
132
258
|
transport: new ServerStdioTransport(),
|
|
133
|
-
gateway,
|
|
134
|
-
// The registry, not a list. A host that registers a command later still
|
|
135
|
-
// has it appear, and this file has no place to hard-code one.
|
|
259
|
+
gateway: runtime.gateway,
|
|
136
260
|
commands: new HostCommandRegistry(),
|
|
137
261
|
presenter: createToolPresenter(new ToolRegistry()),
|
|
138
262
|
agentInfo: { name: 'namzu', version: readPackageVersion() },
|
|
139
263
|
});
|
|
140
264
|
await server.start();
|
|
141
|
-
//
|
|
142
|
-
//
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
265
|
+
// Bootstrap context deliberately does not activate the project yet, so it
|
|
266
|
+
// cannot emit the project-aware boot narrative. Still make the live protocol
|
|
267
|
+
// owner observable on stderr; stdout remains exclusively JSON-RPC frames.
|
|
268
|
+
cliLogger().info('ACP protocol server started');
|
|
269
|
+
try {
|
|
270
|
+
// Held open until stdin ends. The client owns the lifetime — it spawned
|
|
271
|
+
// this process — so there is no idle timeout to get wrong.
|
|
272
|
+
await new Promise((resolve) => {
|
|
273
|
+
const finish = () => {
|
|
274
|
+
process.stdin.off('end', finish);
|
|
275
|
+
process.stdin.off('close', finish);
|
|
276
|
+
resolve();
|
|
277
|
+
};
|
|
278
|
+
process.stdin.once('end', finish);
|
|
279
|
+
process.stdin.once('close', finish);
|
|
280
|
+
});
|
|
281
|
+
}
|
|
282
|
+
finally {
|
|
283
|
+
try {
|
|
284
|
+
await server.stop();
|
|
285
|
+
}
|
|
286
|
+
finally {
|
|
287
|
+
await runtime.close();
|
|
288
|
+
}
|
|
289
|
+
}
|
|
149
290
|
return 0;
|
|
150
291
|
}
|
|
151
292
|
export const acpCommand = {
|
|
152
293
|
name: 'acp',
|
|
153
294
|
description: "Speak the agent-client protocol over this process's stdio",
|
|
154
|
-
handler: async () => runAcpCommand(
|
|
295
|
+
handler: async ({ ctx }) => runAcpCommand(ctx),
|
|
155
296
|
};
|
|
156
297
|
//# sourceMappingURL=acp.js.map
|
package/dist/commands/acp.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"acp.js","sourceRoot":"","sources":["../../src/commands/acp.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"acp.js","sourceRoot":"","sources":["../../src/commands/acp.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"drain.d.ts","sourceRoot":"","sources":["../../src/commands/drain.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAUH,OAAO,KAAK,EAAmB,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"drain.d.ts","sourceRoot":"","sources":["../../src/commands/drain.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAUH,OAAO,KAAK,EAAmB,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AASjF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAK5C,MAAM,WAAW,UAAU;IAC1B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;IACtB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;IACtB,GAAG,EAAE,MAAM,GAAG,IAAI,CAAA;IAClB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,KAAK,EAAE,OAAO,CAAA;IACd,OAAO,EAAE,MAAM,EAAE,CAAA;CACjB;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,GAAG,UAAU,CAgEtE;AAED,mFAAmF;AACnF,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,QAAQ,GAAG,SAAS,GAAG,SAAS,CAAC,GACxF;IAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAC1B;IAGA,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAA;IAC3B,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAA;IAC7B,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAA;CAC5B,CAoCH;AAED,yDAAyD;AACzD,wBAAgB,aAAa,IAAI,MAAM,CAEtC;AAkBD,eAAO,MAAM,YAAY,EAAE,UA4M1B,CAAA"}
|
package/dist/commands/drain.js
CHANGED
|
@@ -22,9 +22,11 @@
|
|
|
22
22
|
* one.
|
|
23
23
|
*/
|
|
24
24
|
import { DiskCheckpointStore, InvalidIdError, asProjectId, asSessionId, asTenantId, drainRuns, } from '@namzu/sdk';
|
|
25
|
+
import { resolveTrustedProjectContext } from '../config/trusted-project-context.js';
|
|
25
26
|
import { EXIT_UNTRUSTED, EXIT_USAGE } from '../exit-codes.js';
|
|
26
27
|
import { contextLogging, createStderrSink, installCliLogging } from '../logging.js';
|
|
27
28
|
import { decideHeadlessTrust } from '../permissions/headless-trust.js';
|
|
29
|
+
import { compilePermissions } from '../permissions/rules.js';
|
|
28
30
|
import { applyProviderFlags, resolveWorkingDirectory } from './run-flags.js';
|
|
29
31
|
/** Lease length when the operator names none. Long enough for a real turn. */
|
|
30
32
|
const DEFAULT_TTL_MS = 600_000;
|
|
@@ -150,7 +152,11 @@ function describe(entry) {
|
|
|
150
152
|
function defaultPrefs(detected) {
|
|
151
153
|
const first = detected[0];
|
|
152
154
|
return first
|
|
153
|
-
? {
|
|
155
|
+
? {
|
|
156
|
+
version: 3,
|
|
157
|
+
providers: [{ id: first.entry.id }],
|
|
158
|
+
subagents: { active: [] },
|
|
159
|
+
}
|
|
154
160
|
: null;
|
|
155
161
|
}
|
|
156
162
|
export const drainCommand = {
|
|
@@ -184,10 +190,13 @@ export const drainCommand = {
|
|
|
184
190
|
'Exit codes: 0 when every run it took was continued, 1 when any run failed,',
|
|
185
191
|
'64 when an argument is wrong, 77 when the folder has not been trusted.',
|
|
186
192
|
].join('\n'),
|
|
187
|
-
handler: async ({ ctx, rawArgs }) => {
|
|
193
|
+
handler: async ({ ctx: bootstrapCtx, rawArgs }) => {
|
|
194
|
+
let ctx = bootstrapCtx;
|
|
188
195
|
const flags = parseDrainFlags(rawArgs);
|
|
189
196
|
if (flags.unknown.length > 0) {
|
|
190
|
-
ctx.formatter.error({
|
|
197
|
+
ctx.formatter.error({
|
|
198
|
+
message: `unknown option(s): ${flags.unknown.join(', ')}`,
|
|
199
|
+
});
|
|
191
200
|
return EXIT_USAGE;
|
|
192
201
|
}
|
|
193
202
|
if (!flags.store) {
|
|
@@ -203,7 +212,9 @@ export const drainCommand = {
|
|
|
203
212
|
}
|
|
204
213
|
const ttlMs = flags.ttlMs ?? DEFAULT_TTL_MS;
|
|
205
214
|
if (!Number.isFinite(ttlMs) || ttlMs <= 0) {
|
|
206
|
-
ctx.formatter.error({
|
|
215
|
+
ctx.formatter.error({
|
|
216
|
+
message: `--ttl must be a positive number of ms, got ${flags.ttlMs}`,
|
|
217
|
+
});
|
|
207
218
|
return EXIT_USAGE;
|
|
208
219
|
}
|
|
209
220
|
const resolved = resolveWorkingDirectory(flags.cwd);
|
|
@@ -211,11 +222,16 @@ export const drainCommand = {
|
|
|
211
222
|
ctx.formatter.error({ message: resolved.error });
|
|
212
223
|
return EXIT_USAGE;
|
|
213
224
|
}
|
|
214
|
-
const trust = decideHeadlessTrust({
|
|
225
|
+
const trust = decideHeadlessTrust({
|
|
226
|
+
cwd: resolved.cwd,
|
|
227
|
+
trustFlag: flags.trust,
|
|
228
|
+
});
|
|
215
229
|
if (!trust.allowed) {
|
|
216
230
|
ctx.formatter.error({ message: trust.message ?? 'folder not trusted' });
|
|
217
231
|
return EXIT_UNTRUSTED;
|
|
218
232
|
}
|
|
233
|
+
const cwd = trust.cwd;
|
|
234
|
+
ctx = resolveTrustedProjectContext(bootstrapCtx, cwd);
|
|
219
235
|
// The CLI owns stderr, not the kernel it drives (LOG-05) — a live sink
|
|
220
236
|
// at the level --verbose/--quiet/NAMZU_LOG_LEVEL named, instead of
|
|
221
237
|
// forcing the level to `silent` via `configureLogger`. `{ replace:
|
|
@@ -234,10 +250,26 @@ export const drainCommand = {
|
|
|
234
250
|
return 1;
|
|
235
251
|
}
|
|
236
252
|
prefs = applyProviderFlags(prefs, flags);
|
|
237
|
-
const
|
|
253
|
+
const permissions = compilePermissions(ctx.config.permissions, ctx.config.permissionChecks);
|
|
254
|
+
for (const diagnostic of permissions.diagnostics) {
|
|
255
|
+
const where = diagnostic.pattern
|
|
256
|
+
? `permissions.${diagnostic.tool}."${diagnostic.pattern}"`
|
|
257
|
+
: `permissions.${diagnostic.tool}`;
|
|
258
|
+
ctx.formatter.error({ message: `${where}: ${diagnostic.message}` });
|
|
259
|
+
}
|
|
260
|
+
const session = await createAgentSession(prefs, probe.detected, {
|
|
261
|
+
cwd,
|
|
262
|
+
rules: permissions.rules,
|
|
263
|
+
permissionMode: 'auto',
|
|
264
|
+
...(ctx.config.mcpServers ? { mcpServers: ctx.config.mcpServers } : {}),
|
|
265
|
+
...(ctx.config.plugins ? { plugins: ctx.config.plugins } : {}),
|
|
266
|
+
...(ctx.config.sandbox ? { sandbox: ctx.config.sandbox } : {}),
|
|
267
|
+
});
|
|
238
268
|
if (!session.hasProvider) {
|
|
239
269
|
await session.close();
|
|
240
|
-
ctx.formatter.error({
|
|
270
|
+
ctx.formatter.error({
|
|
271
|
+
message: session.errorHint ?? 'agent is not ready',
|
|
272
|
+
});
|
|
241
273
|
return 1;
|
|
242
274
|
}
|
|
243
275
|
// `resolveDrainScope` refuses a partial prefix above, so all three are
|
|
@@ -305,7 +337,9 @@ export const drainCommand = {
|
|
|
305
337
|
// landed, but the run is unavailable to the next reader until the
|
|
306
338
|
// lease lapses, and an operator watching throughput needs to know.
|
|
307
339
|
for (const u of result.unreleased) {
|
|
308
|
-
ctx.formatter.error({
|
|
340
|
+
ctx.formatter.error({
|
|
341
|
+
message: `${u.runId}: lease not released — ${u.error}`,
|
|
342
|
+
});
|
|
309
343
|
}
|
|
310
344
|
return result.failed.length > 0 ? 1 : 0;
|
|
311
345
|
}
|
|
@@ -313,7 +347,9 @@ export const drainCommand = {
|
|
|
313
347
|
// The refusals from `drainRuns` land here: a store that cannot claim,
|
|
314
348
|
// a lease that cannot mean what it says. Reported rather than
|
|
315
349
|
// swallowed into an empty pass that reads as "nothing was parked".
|
|
316
|
-
ctx.formatter.error({
|
|
350
|
+
ctx.formatter.error({
|
|
351
|
+
message: err instanceof Error ? err.message : String(err),
|
|
352
|
+
});
|
|
317
353
|
return 1;
|
|
318
354
|
}
|
|
319
355
|
finally {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"drain.js","sourceRoot":"","sources":["../../src/commands/drain.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"drain.js","sourceRoot":"","sources":["../../src/commands/drain.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { type Message } from '@namzu/sdk';
|
|
2
|
+
export type PriorMessagesResult = {
|
|
3
|
+
readonly ok: true;
|
|
4
|
+
readonly messages: readonly Message[];
|
|
5
|
+
} | {
|
|
6
|
+
readonly ok: false;
|
|
7
|
+
readonly error: string;
|
|
8
|
+
};
|
|
9
|
+
/** Parse the stateless stdin contract without dropping or inventing message fields. */
|
|
10
|
+
export declare function parsePriorMessages(raw: string): PriorMessagesResult;
|
|
11
|
+
//# sourceMappingURL=prior-messages.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prior-messages.d.ts","sourceRoot":"","sources":["../../src/commands/prior-messages.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,KAAK,OAAO,EAIZ,MAAM,YAAY,CAAA;AAEnB,MAAM,MAAM,mBAAmB,GAC5B;IAAE,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,SAAS,OAAO,EAAE,CAAA;CAAE,GAC5D;IAAE,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAA;AAuTjD,uFAAuF;AACvF,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,mBAAmB,CAoBnE"}
|