@xenosystem/acp-core 0.2.0 → 0.2.2
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-process.d.ts +107 -2
- package/dist/agent-process.d.ts.map +1 -1
- package/dist/agent-process.js +317 -0
- package/dist/agent-process.js.map +1 -1
- package/dist/session.d.ts.map +1 -1
- package/dist/session.js +14 -0
- package/dist/session.js.map +1 -1
- package/dist/types.d.ts +46 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +2 -1
- package/dist/types.js.map +1 -1
- package/package.json +12 -25
package/dist/agent-process.d.ts
CHANGED
|
@@ -5,8 +5,10 @@
|
|
|
5
5
|
* XENO Hub. The official ACP SDK owns JSON-RPC framing and validation; embedders provide
|
|
6
6
|
* permission and extension handlers without reimplementing the protocol.
|
|
7
7
|
*/
|
|
8
|
-
import type { ClientCapabilities, ContentBlock, InitializeRequest, InitializeResponse, McpServer, PromptResponse, RequestPermissionRequest, RequestPermissionResponse, SessionNotification } from "@agentclientprotocol/sdk";
|
|
9
|
-
import type
|
|
8
|
+
import type { ClientCapabilities, ContentBlock, InitializeRequest, InitializeResponse, ListSessionsRequest, ListSessionsResponse, McpServer, PromptResponse, RequestPermissionRequest, RequestPermissionResponse, SessionNotification } from "@agentclientprotocol/sdk";
|
|
9
|
+
import { type AgentDef, type AgentResumeSessionOptions, type AgentStatus } from "./types.js";
|
|
10
|
+
export type { AgentResumeSessionOptions } from "./types.js";
|
|
11
|
+
export { XENO_SESSION_RESUME_META_KEY } from "./types.js";
|
|
10
12
|
import { Session } from "./session.js";
|
|
11
13
|
import type { Logger } from "./logger.js";
|
|
12
14
|
export interface AgentProcessOptions {
|
|
@@ -82,12 +84,115 @@ export declare class AgentProcess {
|
|
|
82
84
|
private handleExit;
|
|
83
85
|
/** Create a fresh ACP session. Operator-supplied workspaces are never deleted by core. */
|
|
84
86
|
createSession(overrideOrOptions?: string | AgentSessionOptions): Promise<Session>;
|
|
87
|
+
/**
|
|
88
|
+
* Resume an existing ACP session.
|
|
89
|
+
*
|
|
90
|
+
* - If the agent advertises official `sessionCapabilities.resume`, calls the official SDK `resumeSession` operation.
|
|
91
|
+
* - If official resume is absent, falls back to compatibility `newSession` ONLY when validated bounded
|
|
92
|
+
* `_meta["xeno.dev/session-resume"]` metadata is explicitly supplied.
|
|
93
|
+
* - Fails closed if neither official capability nor valid compatibility metadata is present.
|
|
94
|
+
*/
|
|
95
|
+
resumeSession(sessionIdOrOptions: string | AgentResumeSessionOptions, maybeOptions?: AgentResumeSessionOptions): Promise<Session>;
|
|
96
|
+
/**
|
|
97
|
+
* List existing sessions from the agent via official ACP `session/list`.
|
|
98
|
+
* Only available when the agent advertises `sessionCapabilities.list`.
|
|
99
|
+
*/
|
|
100
|
+
listSessions(params?: ListSessionsRequest): Promise<ListSessionsResponse>;
|
|
85
101
|
/** Drive a prompt without closing the ACP session, for stateful embedding hosts. */
|
|
86
102
|
promptSession(session: Session, prompt: ContentBlock[], options?: AgentPromptOptions): Promise<PromptResponse>;
|
|
87
103
|
cancelSession(sessionId: string): Promise<void>;
|
|
88
104
|
/** Drive an ephemeral prompt and close its event queue/workspace. */
|
|
89
105
|
runPrompt(session: Session, prompt: ContentBlock[], signal?: AbortSignal): Promise<void>;
|
|
90
106
|
dispose(): Promise<void>;
|
|
107
|
+
/**
|
|
108
|
+
* Does the agent advertise official ACP `session/resume` support?
|
|
109
|
+
* Read from `agentCapabilities.sessionCapabilities.resume` at `initialize`.
|
|
110
|
+
*/
|
|
111
|
+
supportsOfficialResume(): boolean;
|
|
112
|
+
/**
|
|
113
|
+
* Does the agent advertise official ACP `session/list` support?
|
|
114
|
+
* Read from `agentCapabilities.sessionCapabilities.list` at `initialize`.
|
|
115
|
+
*/
|
|
116
|
+
supportsListSessions(): boolean;
|
|
117
|
+
/**
|
|
118
|
+
* Does the agent advertise mid-turn correction? Read from what it said at `initialize`.
|
|
119
|
+
*
|
|
120
|
+
* ⚠️ Checked BEFORE sending, so a provider that cannot steer is refused with a reason that
|
|
121
|
+
* names it — rather than a JSON-RPC "method not found", which names nothing an operator can act
|
|
122
|
+
* on.
|
|
123
|
+
*/
|
|
124
|
+
supportsSteer(): boolean;
|
|
125
|
+
/**
|
|
126
|
+
* Does the agent accept content pushed into its context WITHOUT it being a turn?
|
|
127
|
+
* (XENO SPAWN §2.2 pin-forward, `xeno/context.inject`.)
|
|
128
|
+
*
|
|
129
|
+
* ⚠️ Checked BEFORE sending, same as `supportsSteer` — an agent that cannot take injected
|
|
130
|
+
* context is refused with a reason that names it, rather than a JSON-RPC "method not found"
|
|
131
|
+
* that names nothing an operator can act on.
|
|
132
|
+
*/
|
|
133
|
+
supportsContextInject(): boolean;
|
|
134
|
+
/**
|
|
135
|
+
* One reader for the whole `_meta["xeno.dev"]` capability family.
|
|
136
|
+
*
|
|
137
|
+
* 🔴 The steer check was written inline. A second inline copy for injection would be a second
|
|
138
|
+
* place for the namespace key and the shape guards to drift, and the drift would be SILENT —
|
|
139
|
+
* a mistyped key reads as "the agent does not support it", which is indistinguishable from the
|
|
140
|
+
* truth for every agent that genuinely does not.
|
|
141
|
+
*/
|
|
142
|
+
private xenoCapability;
|
|
143
|
+
/**
|
|
144
|
+
* The ONE place this client reaches the vendor SDK's private connection.
|
|
145
|
+
*
|
|
146
|
+
* 🔴 The `steer` docblock already claimed this was done "DELIBERATELY AND IN ONE PLACE", and a
|
|
147
|
+
* second inline copy for injection would have made that comment false while looking harmless.
|
|
148
|
+
* `ClientSideConnection` exposes only typed standard methods; its internal `Connection` — which
|
|
149
|
+
* does have a generic `sendRequest` — is private, and that is the only route an extension method
|
|
150
|
+
* has through this client.
|
|
151
|
+
*
|
|
152
|
+
* ⚠️ Reaching into a private field breaks silently on a dependency upgrade, so
|
|
153
|
+
* `tests/core/steerEscapeHatch.test.ts` asserts the hatch still exists on the INSTALLED SDK.
|
|
154
|
+
* Every extension method now shares that single guard rather than each needing its own.
|
|
155
|
+
*/
|
|
156
|
+
private extensionHatch;
|
|
157
|
+
/**
|
|
158
|
+
* Deliver a correction into a RUNNING prompt (ADE §5.5, `session/steer`).
|
|
159
|
+
*
|
|
160
|
+
* 🔴 REACHES A PRIVATE FIELD, DELIBERATELY AND IN ONE PLACE. The vendor SDK's
|
|
161
|
+
* `ClientSideConnection` exposes only typed standard methods; its internal `Connection` — which
|
|
162
|
+
* does have a generic `sendRequest` — is private. That is the only route for an extension method
|
|
163
|
+
* through this client.
|
|
164
|
+
*
|
|
165
|
+
* ⚠️ Reaching into a private field breaks silently on a dependency upgrade, so
|
|
166
|
+
* `tests/core/steerEscapeHatch.test.ts` asserts the hatch still exists on the INSTALLED SDK. An
|
|
167
|
+
* upgrade that removes it fails loudly, instead of being discovered by an operator whose
|
|
168
|
+
* intervention did nothing.
|
|
169
|
+
*/
|
|
170
|
+
steer(sessionId: string, instruction: string): Promise<{
|
|
171
|
+
accepted: boolean;
|
|
172
|
+
reason?: string;
|
|
173
|
+
}>;
|
|
174
|
+
/**
|
|
175
|
+
* Push content back into a session's context WITHOUT it being a turn
|
|
176
|
+
* (XENO SPAWN §2.2 pin-forward, `xeno/context.inject`).
|
|
177
|
+
*
|
|
178
|
+
* 🔴 THIS IS NOT `session/prompt`, AND THE DIFFERENCE IS THE FEATURE. §2.2 makes every canvas
|
|
179
|
+
* node addressable so any node can re-enter any agent's context on demand — the canvas becoming
|
|
180
|
+
* the memory the agents are missing. Sending the node as a prompt instead makes the agent ANSWER
|
|
181
|
+
* it: a pinned design decision arrives as a user message, draws a reply nobody asked for, and
|
|
182
|
+
* puts a turn on the timeline the user did not intend.
|
|
183
|
+
*
|
|
184
|
+
* ⚠️ Refusals are RESULTS, never thrown. A caller that believes a node was pinned when it was
|
|
185
|
+
* not will reason about what the agent knows using a graph edge that does not exist — and §3
|
|
186
|
+
* makes that graph a RECORD, so the wrong answer propagates.
|
|
187
|
+
*/
|
|
188
|
+
injectContext(sessionId: string, content: string, options?: {
|
|
189
|
+
label?: string;
|
|
190
|
+
sourceNodeId?: string;
|
|
191
|
+
}): Promise<{
|
|
192
|
+
accepted: boolean;
|
|
193
|
+
reason?: string;
|
|
194
|
+
messageId?: string;
|
|
195
|
+
}>;
|
|
91
196
|
private supportsAdditionalDirectories;
|
|
92
197
|
private observeStdout;
|
|
93
198
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-process.d.ts","sourceRoot":"","sources":["../src/agent-process.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH,OAAO,KAAK,EACV,kBAAkB,EAClB,YAAY,EACZ,iBAAiB,EACjB,kBAAkB,EAClB,SAAS,EACT,cAAc,EACd,wBAAwB,EACxB,yBAAyB,
|
|
1
|
+
{"version":3,"file":"agent-process.d.ts","sourceRoot":"","sources":["../src/agent-process.ts"],"names":[],"mappings":"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"}
|
package/dist/agent-process.js
CHANGED
|
@@ -8,6 +8,8 @@
|
|
|
8
8
|
import { spawn } from "node:child_process";
|
|
9
9
|
import { Readable, Writable } from "node:stream";
|
|
10
10
|
import * as acp from "@agentclientprotocol/sdk";
|
|
11
|
+
import { XENO_SESSION_RESUME_META_KEY, } from "./types.js";
|
|
12
|
+
export { XENO_SESSION_RESUME_META_KEY } from "./types.js";
|
|
11
13
|
import { Session } from "./session.js";
|
|
12
14
|
import { createClientHandler } from "./capabilities.js";
|
|
13
15
|
import { createWorkspace } from "./workspace.js";
|
|
@@ -232,6 +234,116 @@ export class AgentProcess {
|
|
|
232
234
|
this.sessions.set(response.sessionId, session);
|
|
233
235
|
return session;
|
|
234
236
|
}
|
|
237
|
+
/**
|
|
238
|
+
* Resume an existing ACP session.
|
|
239
|
+
*
|
|
240
|
+
* - If the agent advertises official `sessionCapabilities.resume`, calls the official SDK `resumeSession` operation.
|
|
241
|
+
* - If official resume is absent, falls back to compatibility `newSession` ONLY when validated bounded
|
|
242
|
+
* `_meta["xeno.dev/session-resume"]` metadata is explicitly supplied.
|
|
243
|
+
* - Fails closed if neither official capability nor valid compatibility metadata is present.
|
|
244
|
+
*/
|
|
245
|
+
async resumeSession(sessionIdOrOptions, maybeOptions) {
|
|
246
|
+
await this.ensureReady();
|
|
247
|
+
if (!this.conn)
|
|
248
|
+
throw new Error(`agent ${this.def.id} is not ready`);
|
|
249
|
+
let sessionId;
|
|
250
|
+
let options;
|
|
251
|
+
if (typeof sessionIdOrOptions === "string") {
|
|
252
|
+
sessionId = sessionIdOrOptions.trim();
|
|
253
|
+
options = maybeOptions ?? {};
|
|
254
|
+
}
|
|
255
|
+
else if (sessionIdOrOptions && typeof sessionIdOrOptions === "object") {
|
|
256
|
+
options = sessionIdOrOptions;
|
|
257
|
+
sessionId = typeof options.sessionId === "string" ? options.sessionId.trim() : "";
|
|
258
|
+
}
|
|
259
|
+
else {
|
|
260
|
+
throw new Error("sessionId is required to resume a session");
|
|
261
|
+
}
|
|
262
|
+
if (!sessionId) {
|
|
263
|
+
throw new Error("sessionId is required to resume a session");
|
|
264
|
+
}
|
|
265
|
+
const workspace = createWorkspace(this.workspaceRoot, this.def.id, `s-${Date.now().toString(36)}-${Math.floor(performance.now())}`, {
|
|
266
|
+
keep: this.keepWorkspaces,
|
|
267
|
+
...(options.workspace ? { override: options.workspace } : {}),
|
|
268
|
+
});
|
|
269
|
+
if (this.supportsOfficialResume()) {
|
|
270
|
+
try {
|
|
271
|
+
await this.conn.resumeSession({
|
|
272
|
+
sessionId,
|
|
273
|
+
cwd: workspace.dir,
|
|
274
|
+
mcpServers: options.mcpServers ?? [],
|
|
275
|
+
...(options.additionalDirectories?.length && this.supportsAdditionalDirectories()
|
|
276
|
+
? { additionalDirectories: [...new Set(options.additionalDirectories)] }
|
|
277
|
+
: {}),
|
|
278
|
+
...(options._meta ? { _meta: options._meta } : {}),
|
|
279
|
+
});
|
|
280
|
+
}
|
|
281
|
+
catch (err) {
|
|
282
|
+
workspace.cleanup();
|
|
283
|
+
const message = err.message ?? String(err);
|
|
284
|
+
if (/auth/i.test(message)) {
|
|
285
|
+
this.state = "needs-auth";
|
|
286
|
+
this.lastError = message;
|
|
287
|
+
throw err;
|
|
288
|
+
}
|
|
289
|
+
throw err;
|
|
290
|
+
}
|
|
291
|
+
const session = new Session(sessionId, workspace);
|
|
292
|
+
this.sessions.set(sessionId, session);
|
|
293
|
+
return session;
|
|
294
|
+
}
|
|
295
|
+
// Compatibility resume path: official resume is not advertised.
|
|
296
|
+
// Must fail closed unless valid bounded compatibility metadata was explicitly supplied.
|
|
297
|
+
const validatedCompat = validateSessionResumeMetadata(options._meta, this.def.id);
|
|
298
|
+
if (!validatedCompat) {
|
|
299
|
+
workspace.cleanup();
|
|
300
|
+
throw new Error(`Agent '${this.def.id}' does not advertise official ACP session resume and no valid compatibility metadata ('${XENO_SESSION_RESUME_META_KEY}') was provided.`);
|
|
301
|
+
}
|
|
302
|
+
let response;
|
|
303
|
+
try {
|
|
304
|
+
response = await this.conn.newSession({
|
|
305
|
+
cwd: workspace.dir,
|
|
306
|
+
mcpServers: options.mcpServers ?? [],
|
|
307
|
+
...(options.additionalDirectories?.length && this.supportsAdditionalDirectories()
|
|
308
|
+
? { additionalDirectories: [...new Set(options.additionalDirectories)] }
|
|
309
|
+
: {}),
|
|
310
|
+
_meta: {
|
|
311
|
+
...(options._meta ?? {}),
|
|
312
|
+
[XENO_SESSION_RESUME_META_KEY]: {
|
|
313
|
+
schemaVersion: 1,
|
|
314
|
+
providerId: validatedCompat.providerId,
|
|
315
|
+
nativeSessionId: validatedCompat.nativeSessionId,
|
|
316
|
+
},
|
|
317
|
+
},
|
|
318
|
+
});
|
|
319
|
+
}
|
|
320
|
+
catch (err) {
|
|
321
|
+
workspace.cleanup();
|
|
322
|
+
const message = err.message ?? String(err);
|
|
323
|
+
if (/auth/i.test(message)) {
|
|
324
|
+
this.state = "needs-auth";
|
|
325
|
+
this.lastError = message;
|
|
326
|
+
throw err;
|
|
327
|
+
}
|
|
328
|
+
throw err;
|
|
329
|
+
}
|
|
330
|
+
const session = new Session(response.sessionId, workspace);
|
|
331
|
+
this.sessions.set(response.sessionId, session);
|
|
332
|
+
return session;
|
|
333
|
+
}
|
|
334
|
+
/**
|
|
335
|
+
* List existing sessions from the agent via official ACP `session/list`.
|
|
336
|
+
* Only available when the agent advertises `sessionCapabilities.list`.
|
|
337
|
+
*/
|
|
338
|
+
async listSessions(params = {}) {
|
|
339
|
+
await this.ensureReady();
|
|
340
|
+
if (!this.conn)
|
|
341
|
+
throw new Error(`agent ${this.def.id} is not ready`);
|
|
342
|
+
if (!this.supportsListSessions()) {
|
|
343
|
+
throw new Error(`The '${this.def.id}' agent does not support listing sessions.`);
|
|
344
|
+
}
|
|
345
|
+
return await this.conn.listSessions(params);
|
|
346
|
+
}
|
|
235
347
|
/** Drive a prompt without closing the ACP session, for stateful embedding hosts. */
|
|
236
348
|
async promptSession(session, prompt, options = {}) {
|
|
237
349
|
if (!this.conn)
|
|
@@ -348,6 +460,189 @@ export class AgentProcess {
|
|
|
348
460
|
this.child = undefined;
|
|
349
461
|
this.state = "stopped";
|
|
350
462
|
}
|
|
463
|
+
/**
|
|
464
|
+
* Does the agent advertise official ACP `session/resume` support?
|
|
465
|
+
* Read from `agentCapabilities.sessionCapabilities.resume` at `initialize`.
|
|
466
|
+
*/
|
|
467
|
+
supportsOfficialResume() {
|
|
468
|
+
const capabilities = this.initialization?.agentCapabilities;
|
|
469
|
+
const sessionCapabilities = capabilities?.sessionCapabilities;
|
|
470
|
+
if (!sessionCapabilities || typeof sessionCapabilities !== "object" || Array.isArray(sessionCapabilities))
|
|
471
|
+
return false;
|
|
472
|
+
const resume = sessionCapabilities.resume;
|
|
473
|
+
return !!resume && typeof resume === "object" && !Array.isArray(resume);
|
|
474
|
+
}
|
|
475
|
+
/**
|
|
476
|
+
* Does the agent advertise official ACP `session/list` support?
|
|
477
|
+
* Read from `agentCapabilities.sessionCapabilities.list` at `initialize`.
|
|
478
|
+
*/
|
|
479
|
+
supportsListSessions() {
|
|
480
|
+
const capabilities = this.initialization?.agentCapabilities;
|
|
481
|
+
const sessionCapabilities = capabilities?.sessionCapabilities;
|
|
482
|
+
if (!sessionCapabilities || typeof sessionCapabilities !== "object" || Array.isArray(sessionCapabilities))
|
|
483
|
+
return false;
|
|
484
|
+
const list = sessionCapabilities.list;
|
|
485
|
+
return !!list && typeof list === "object" && !Array.isArray(list);
|
|
486
|
+
}
|
|
487
|
+
/**
|
|
488
|
+
* Does the agent advertise mid-turn correction? Read from what it said at `initialize`.
|
|
489
|
+
*
|
|
490
|
+
* ⚠️ Checked BEFORE sending, so a provider that cannot steer is refused with a reason that
|
|
491
|
+
* names it — rather than a JSON-RPC "method not found", which names nothing an operator can act
|
|
492
|
+
* on.
|
|
493
|
+
*/
|
|
494
|
+
supportsSteer() {
|
|
495
|
+
return this.xenoCapability("steer");
|
|
496
|
+
}
|
|
497
|
+
/**
|
|
498
|
+
* Does the agent accept content pushed into its context WITHOUT it being a turn?
|
|
499
|
+
* (XENO SPAWN §2.2 pin-forward, `xeno/context.inject`.)
|
|
500
|
+
*
|
|
501
|
+
* ⚠️ Checked BEFORE sending, same as `supportsSteer` — an agent that cannot take injected
|
|
502
|
+
* context is refused with a reason that names it, rather than a JSON-RPC "method not found"
|
|
503
|
+
* that names nothing an operator can act on.
|
|
504
|
+
*/
|
|
505
|
+
supportsContextInject() {
|
|
506
|
+
return this.xenoCapability("contextInject");
|
|
507
|
+
}
|
|
508
|
+
/**
|
|
509
|
+
* One reader for the whole `_meta["xeno.dev"]` capability family.
|
|
510
|
+
*
|
|
511
|
+
* 🔴 The steer check was written inline. A second inline copy for injection would be a second
|
|
512
|
+
* place for the namespace key and the shape guards to drift, and the drift would be SILENT —
|
|
513
|
+
* a mistyped key reads as "the agent does not support it", which is indistinguishable from the
|
|
514
|
+
* truth for every agent that genuinely does not.
|
|
515
|
+
*/
|
|
516
|
+
xenoCapability(name) {
|
|
517
|
+
const capabilities = this.initialization?.agentCapabilities;
|
|
518
|
+
const meta = capabilities?._meta;
|
|
519
|
+
if (!meta || typeof meta !== "object" || Array.isArray(meta))
|
|
520
|
+
return false;
|
|
521
|
+
const xeno = meta["xeno.dev"];
|
|
522
|
+
if (!xeno || typeof xeno !== "object" || Array.isArray(xeno))
|
|
523
|
+
return false;
|
|
524
|
+
return xeno[name] === true;
|
|
525
|
+
}
|
|
526
|
+
/**
|
|
527
|
+
* The ONE place this client reaches the vendor SDK's private connection.
|
|
528
|
+
*
|
|
529
|
+
* 🔴 The `steer` docblock already claimed this was done "DELIBERATELY AND IN ONE PLACE", and a
|
|
530
|
+
* second inline copy for injection would have made that comment false while looking harmless.
|
|
531
|
+
* `ClientSideConnection` exposes only typed standard methods; its internal `Connection` — which
|
|
532
|
+
* does have a generic `sendRequest` — is private, and that is the only route an extension method
|
|
533
|
+
* has through this client.
|
|
534
|
+
*
|
|
535
|
+
* ⚠️ Reaching into a private field breaks silently on a dependency upgrade, so
|
|
536
|
+
* `tests/core/steerEscapeHatch.test.ts` asserts the hatch still exists on the INSTALLED SDK.
|
|
537
|
+
* Every extension method now shares that single guard rather than each needing its own.
|
|
538
|
+
*/
|
|
539
|
+
extensionHatch() {
|
|
540
|
+
const hatch = this.conn.connection;
|
|
541
|
+
return typeof hatch?.sendRequest === "function"
|
|
542
|
+
? hatch.sendRequest.bind(hatch)
|
|
543
|
+
: undefined;
|
|
544
|
+
}
|
|
545
|
+
/**
|
|
546
|
+
* Deliver a correction into a RUNNING prompt (ADE §5.5, `session/steer`).
|
|
547
|
+
*
|
|
548
|
+
* 🔴 REACHES A PRIVATE FIELD, DELIBERATELY AND IN ONE PLACE. The vendor SDK's
|
|
549
|
+
* `ClientSideConnection` exposes only typed standard methods; its internal `Connection` — which
|
|
550
|
+
* does have a generic `sendRequest` — is private. That is the only route for an extension method
|
|
551
|
+
* through this client.
|
|
552
|
+
*
|
|
553
|
+
* ⚠️ Reaching into a private field breaks silently on a dependency upgrade, so
|
|
554
|
+
* `tests/core/steerEscapeHatch.test.ts` asserts the hatch still exists on the INSTALLED SDK. An
|
|
555
|
+
* upgrade that removes it fails loudly, instead of being discovered by an operator whose
|
|
556
|
+
* intervention did nothing.
|
|
557
|
+
*/
|
|
558
|
+
async steer(sessionId, instruction) {
|
|
559
|
+
if (!this.conn)
|
|
560
|
+
return { accepted: false, reason: `agent ${this.def.id} is not ready` };
|
|
561
|
+
if (!instruction.trim())
|
|
562
|
+
return { accepted: false, reason: "The instruction is empty." };
|
|
563
|
+
if (!this.supportsSteer()) {
|
|
564
|
+
return {
|
|
565
|
+
accepted: false,
|
|
566
|
+
reason: `The '${this.def.id}' agent does not accept a correction mid-turn.`,
|
|
567
|
+
};
|
|
568
|
+
}
|
|
569
|
+
const sendRequest = this.extensionHatch();
|
|
570
|
+
if (!sendRequest) {
|
|
571
|
+
// The SDK changed shape. Say so precisely: this is a dependency problem, not an agent one,
|
|
572
|
+
// and an operator reading "the agent refused" would debug the wrong system entirely.
|
|
573
|
+
return {
|
|
574
|
+
accepted: false,
|
|
575
|
+
reason: "This ACP client cannot send extension methods: the SDK no longer exposes a generic request path.",
|
|
576
|
+
};
|
|
577
|
+
}
|
|
578
|
+
try {
|
|
579
|
+
const result = await sendRequest("session/steer", { sessionId, instruction });
|
|
580
|
+
const accepted = result?.accepted === true;
|
|
581
|
+
const reason = result?.reason;
|
|
582
|
+
return accepted
|
|
583
|
+
? { accepted: true }
|
|
584
|
+
: { accepted: false, ...(typeof reason === "string" ? { reason } : {}) };
|
|
585
|
+
}
|
|
586
|
+
catch (error) {
|
|
587
|
+
return {
|
|
588
|
+
accepted: false,
|
|
589
|
+
reason: error instanceof Error ? error.message : "The agent refused the correction.",
|
|
590
|
+
};
|
|
591
|
+
}
|
|
592
|
+
}
|
|
593
|
+
/**
|
|
594
|
+
* Push content back into a session's context WITHOUT it being a turn
|
|
595
|
+
* (XENO SPAWN §2.2 pin-forward, `xeno/context.inject`).
|
|
596
|
+
*
|
|
597
|
+
* 🔴 THIS IS NOT `session/prompt`, AND THE DIFFERENCE IS THE FEATURE. §2.2 makes every canvas
|
|
598
|
+
* node addressable so any node can re-enter any agent's context on demand — the canvas becoming
|
|
599
|
+
* the memory the agents are missing. Sending the node as a prompt instead makes the agent ANSWER
|
|
600
|
+
* it: a pinned design decision arrives as a user message, draws a reply nobody asked for, and
|
|
601
|
+
* puts a turn on the timeline the user did not intend.
|
|
602
|
+
*
|
|
603
|
+
* ⚠️ Refusals are RESULTS, never thrown. A caller that believes a node was pinned when it was
|
|
604
|
+
* not will reason about what the agent knows using a graph edge that does not exist — and §3
|
|
605
|
+
* makes that graph a RECORD, so the wrong answer propagates.
|
|
606
|
+
*/
|
|
607
|
+
async injectContext(sessionId, content, options = {}) {
|
|
608
|
+
if (!this.conn)
|
|
609
|
+
return { accepted: false, reason: `agent ${this.def.id} is not ready` };
|
|
610
|
+
if (!content.trim())
|
|
611
|
+
return { accepted: false, reason: "The content is empty." };
|
|
612
|
+
if (!this.supportsContextInject()) {
|
|
613
|
+
return {
|
|
614
|
+
accepted: false,
|
|
615
|
+
reason: `The '${this.def.id}' agent does not accept injected context.`,
|
|
616
|
+
};
|
|
617
|
+
}
|
|
618
|
+
const sendRequest = this.extensionHatch();
|
|
619
|
+
if (!sendRequest) {
|
|
620
|
+
return {
|
|
621
|
+
accepted: false,
|
|
622
|
+
reason: "This ACP client cannot send extension methods: the SDK no longer exposes a generic request path.",
|
|
623
|
+
};
|
|
624
|
+
}
|
|
625
|
+
try {
|
|
626
|
+
const result = await sendRequest("xeno/context.inject", {
|
|
627
|
+
sessionId,
|
|
628
|
+
content,
|
|
629
|
+
...(options.label === undefined ? {} : { label: options.label }),
|
|
630
|
+
...(options.sourceNodeId === undefined ? {} : { sourceNodeId: options.sourceNodeId }),
|
|
631
|
+
});
|
|
632
|
+
const accepted = result?.accepted === true;
|
|
633
|
+
const reason = result?.reason;
|
|
634
|
+
const messageId = result?.messageId;
|
|
635
|
+
return accepted
|
|
636
|
+
? { accepted: true, ...(typeof messageId === "string" ? { messageId } : {}) }
|
|
637
|
+
: { accepted: false, ...(typeof reason === "string" ? { reason } : {}) };
|
|
638
|
+
}
|
|
639
|
+
catch (error) {
|
|
640
|
+
return {
|
|
641
|
+
accepted: false,
|
|
642
|
+
reason: error instanceof Error ? error.message : "The agent refused the injection.",
|
|
643
|
+
};
|
|
644
|
+
}
|
|
645
|
+
}
|
|
351
646
|
supportsAdditionalDirectories() {
|
|
352
647
|
const capabilities = this.initialization?.agentCapabilities;
|
|
353
648
|
const sessionCapabilities = capabilities?.sessionCapabilities;
|
|
@@ -388,4 +683,26 @@ function withTimeout(promise, milliseconds, message, onTimeout) {
|
|
|
388
683
|
});
|
|
389
684
|
});
|
|
390
685
|
}
|
|
686
|
+
function validateSessionResumeMetadata(meta, expectedProviderId) {
|
|
687
|
+
if (!meta || typeof meta !== "object" || Array.isArray(meta))
|
|
688
|
+
return undefined;
|
|
689
|
+
const value = meta[XENO_SESSION_RESUME_META_KEY];
|
|
690
|
+
if (!value || typeof value !== "object" || Array.isArray(value))
|
|
691
|
+
return undefined;
|
|
692
|
+
const record = value;
|
|
693
|
+
if (record.schemaVersion !== 1)
|
|
694
|
+
return undefined;
|
|
695
|
+
if (typeof record.providerId !== "string" || record.providerId !== expectedProviderId)
|
|
696
|
+
return undefined;
|
|
697
|
+
if (typeof record.nativeSessionId !== "string"
|
|
698
|
+
|| record.nativeSessionId.length === 0
|
|
699
|
+
|| record.nativeSessionId.length > 256
|
|
700
|
+
|| !/^[A-Za-z0-9][A-Za-z0-9._:-]*$/.test(record.nativeSessionId))
|
|
701
|
+
return undefined;
|
|
702
|
+
return {
|
|
703
|
+
schemaVersion: 1,
|
|
704
|
+
providerId: record.providerId,
|
|
705
|
+
nativeSessionId: record.nativeSessionId,
|
|
706
|
+
};
|
|
707
|
+
}
|
|
391
708
|
//# sourceMappingURL=agent-process.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-process.js","sourceRoot":"","sources":["../src/agent-process.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"agent-process.js","sourceRoot":"","sources":["../src/agent-process.ts"],"names":[],"mappings":"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"}
|
package/dist/session.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC1E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAyChD,iFAAiF;AACjF,wBAAgB,cAAc,CAAC,MAAM,EAAE,aAAa,GAAG,QAAQ,EAAE,
|
|
1
|
+
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC1E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAyChD,iFAAiF;AACjF,wBAAgB,cAAc,CAAC,MAAM,EAAE,aAAa,GAAG,QAAQ,EAAE,CAyDhE;AAED,qBAAa,OAAO;IAClB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;IAC9B,OAAO,CAAC,KAAK,CAA8B;IAC3C,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,gBAAgB,CAAC,CAAkC;gBAE/C,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,gBAAgB,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI;IAMhG,yEAAyE;IACzE,QAAQ,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI;IAKrC,gFAAgF;IAChF,mBAAmB,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,GAAG,IAAI;IAIpE,qDAAqD;IACrD,IAAI,CAAC,KAAK,EAAE,QAAQ,GAAG,IAAI;IAI3B,2DAA2D;IAC3D,GAAG,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;IAOjC,0CAA0C;IAC1C,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAO3B,0DAA0D;IAC1D,MAAM,IAAI,qBAAqB,CAAC,QAAQ,CAAC;CAG1C"}
|
package/dist/session.js
CHANGED
|
@@ -93,6 +93,20 @@ export function updateToEvents(update) {
|
|
|
93
93
|
})),
|
|
94
94
|
},
|
|
95
95
|
];
|
|
96
|
+
case "usage_update": {
|
|
97
|
+
// The two operands XENO SPAWN needs, and the only ACP update that carries a DENOMINATOR.
|
|
98
|
+
// Falling through to `raw` left them reachable only by hand-parsing a blob with guessed key
|
|
99
|
+
// names, which is precisely the cost a structured event stream exists to remove.
|
|
100
|
+
const used = update.used;
|
|
101
|
+
const size = update.size;
|
|
102
|
+
// A zero or negative window is not a window. Emitting it would hand a consumer a division by
|
|
103
|
+
// zero dressed up as data; `raw` keeps the fact without asserting a reading.
|
|
104
|
+
if (typeof used !== "number" || !Number.isFinite(used) || used < 0)
|
|
105
|
+
return [{ type: "raw", update }];
|
|
106
|
+
if (typeof size !== "number" || !Number.isFinite(size) || size <= 0)
|
|
107
|
+
return [{ type: "raw", update }];
|
|
108
|
+
return [{ type: "context", usedTokens: used, windowTokens: size }];
|
|
109
|
+
}
|
|
96
110
|
default:
|
|
97
111
|
return [{ type: "raw", update }];
|
|
98
112
|
}
|
package/dist/session.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.js","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"session.js","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -49,6 +49,27 @@ export type AcpEvent = {
|
|
|
49
49
|
inputTokens?: number;
|
|
50
50
|
outputTokens?: number;
|
|
51
51
|
totalTokens?: number;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* How full the agent’s context is RIGHT NOW, as the agent itself reports it.
|
|
55
|
+
*
|
|
56
|
+
* 🔴 Distinct from `usage`, and the difference is the whole point. ACP documents
|
|
57
|
+
* `Usage.inputTokens` as "Total input tokens across all turns" and `totalTokens` as "Sum of all
|
|
58
|
+
* token types across session" — cumulative billing counters. Dividing either by a context window
|
|
59
|
+
* gives a percentage that only ever rises, crosses the compaction boundary on a nearly empty
|
|
60
|
+
* context, and can never fall, so it hides the compaction it would exist to anticipate.
|
|
61
|
+
*
|
|
62
|
+
* `usage_update` carries the two numbers that actually answer the question: `used` (tokens
|
|
63
|
+
* currently in context) over `size` (the context window). `usedTokens` CAN fall — that is what a
|
|
64
|
+
* compaction looks like from outside.
|
|
65
|
+
*
|
|
66
|
+
* ⚠️ Marked UNSTABLE/@experimental in ACP 0.24.0, and an agent may never send it. Absence
|
|
67
|
+
* means "this agent does not report it", never "the context is empty".
|
|
68
|
+
*/
|
|
69
|
+
| {
|
|
70
|
+
type: "context";
|
|
71
|
+
usedTokens: number;
|
|
72
|
+
windowTokens: number;
|
|
52
73
|
} | {
|
|
53
74
|
type: "raw";
|
|
54
75
|
update: unknown;
|
|
@@ -158,4 +179,29 @@ export interface AgentStatus {
|
|
|
158
179
|
pid?: number;
|
|
159
180
|
lastError?: string;
|
|
160
181
|
}
|
|
182
|
+
/** Metadata key for backward-compatible bounded session resume. */
|
|
183
|
+
export declare const XENO_SESSION_RESUME_META_KEY = "xeno.dev/session-resume";
|
|
184
|
+
/**
|
|
185
|
+
* Validated backward-compatibility session resume metadata structure.
|
|
186
|
+
* Used when the remote agent does not advertise official `session/resume`.
|
|
187
|
+
*/
|
|
188
|
+
export interface XenoSessionResumeMetadata {
|
|
189
|
+
schemaVersion: 1;
|
|
190
|
+
providerId: string;
|
|
191
|
+
nativeSessionId: string;
|
|
192
|
+
}
|
|
193
|
+
/** Options for resuming an ACP session via AgentProcess. */
|
|
194
|
+
export interface AgentResumeSessionOptions {
|
|
195
|
+
sessionId?: string;
|
|
196
|
+
workspace?: string;
|
|
197
|
+
mcpServers?: import("@agentclientprotocol/sdk").McpServer[];
|
|
198
|
+
additionalDirectories?: string[];
|
|
199
|
+
_meta?: Record<string, unknown>;
|
|
200
|
+
}
|
|
201
|
+
/** Options for listing ACP sessions via AgentProcess. */
|
|
202
|
+
export interface AgentListSessionsOptions {
|
|
203
|
+
cursor?: string | null;
|
|
204
|
+
cwd?: string | null;
|
|
205
|
+
_meta?: Record<string, unknown>;
|
|
206
|
+
}
|
|
161
207
|
//# sourceMappingURL=types.d.ts.map
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/types.js
CHANGED
|
@@ -5,5 +5,6 @@
|
|
|
5
5
|
* in-process consumers (and the HTTP server) build on. Nothing here knows about
|
|
6
6
|
* HTTP or the OpenAI schema.
|
|
7
7
|
*/
|
|
8
|
-
|
|
8
|
+
/** Metadata key for backward-compatible bounded session resume. */
|
|
9
|
+
export const XENO_SESSION_RESUME_META_KEY = "xeno.dev/session-resume";
|
|
9
10
|
//# sourceMappingURL=types.js.map
|
package/dist/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG"}
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAqKH,mEAAmE;AACnE,MAAM,CAAC,MAAM,4BAA4B,GAAG,yBAAyB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@xenosystem/acp-core",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.2",
|
|
4
4
|
"description": "Embeddable ACP-client engine: supervise ACP agents and stream structured events. The framework-free core of xeno-acp.",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"type": "module",
|
|
@@ -16,33 +16,25 @@
|
|
|
16
16
|
"import": "./dist/agent-version-policy.js"
|
|
17
17
|
}
|
|
18
18
|
},
|
|
19
|
-
"files": [
|
|
20
|
-
"dist",
|
|
21
|
-
"README.md",
|
|
22
|
-
"LICENSE",
|
|
23
|
-
"NOTICE"
|
|
24
|
-
],
|
|
19
|
+
"files": ["dist", "README.md", "LICENSE", "NOTICE"],
|
|
25
20
|
"engines": {
|
|
26
21
|
"node": ">=20"
|
|
27
22
|
},
|
|
28
|
-
"
|
|
29
|
-
"
|
|
30
|
-
"
|
|
31
|
-
"
|
|
32
|
-
"
|
|
33
|
-
|
|
23
|
+
"scripts": {
|
|
24
|
+
"build": "tsc -p tsconfig.json",
|
|
25
|
+
"typecheck": "tsc -p tsconfig.json --noEmit",
|
|
26
|
+
"prepack": "pnpm run build",
|
|
27
|
+
"clean": "rimraf dist *.tsbuildinfo"
|
|
28
|
+
},
|
|
29
|
+
"keywords": ["acp", "agent-client-protocol", "ai-agent", "xeno"],
|
|
34
30
|
"homepage": "https://xenostudio.ai/product/acp",
|
|
35
31
|
"repository": {
|
|
36
32
|
"type": "git",
|
|
37
33
|
"url": "git+https://github.com/XENO-CORPORATION/xeno-acp.git",
|
|
38
34
|
"directory": "packages/core"
|
|
39
35
|
},
|
|
40
|
-
"bugs": {
|
|
41
|
-
|
|
42
|
-
},
|
|
43
|
-
"publishConfig": {
|
|
44
|
-
"access": "public"
|
|
45
|
-
},
|
|
36
|
+
"bugs": { "url": "https://github.com/XENO-CORPORATION/xeno-acp/issues" },
|
|
37
|
+
"publishConfig": { "access": "public" },
|
|
46
38
|
"dependencies": {
|
|
47
39
|
"@agentclientprotocol/sdk": "0.24.0",
|
|
48
40
|
"strip-json-comments": "^5.0.1"
|
|
@@ -50,10 +42,5 @@
|
|
|
50
42
|
"devDependencies": {
|
|
51
43
|
"@types/node": "^22.9.0",
|
|
52
44
|
"typescript": "^5.6.3"
|
|
53
|
-
},
|
|
54
|
-
"scripts": {
|
|
55
|
-
"build": "tsc -p tsconfig.json",
|
|
56
|
-
"typecheck": "tsc -p tsconfig.json --noEmit",
|
|
57
|
-
"clean": "rimraf dist *.tsbuildinfo"
|
|
58
45
|
}
|
|
59
|
-
}
|
|
46
|
+
}
|