@automatalabs/acp-agents 0.38.1 → 0.39.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 CHANGED
@@ -135,9 +135,11 @@ const runner = createAcpRunner({
135
135
 
136
136
  Use `runner.openSession(options)` when a host needs to hold one ACP session open across multiple prompt turns. It uses the same backend selection and session/new inputs as `run()` (`model` / `tier`, `mode`, sorted verbatim `configOptions`, absolute `cwd`, tool policy, `mcpServers`, `meta`, `runId`, Codex instruction overrides), but it spawns a **dedicated** agent process for that session instead of borrowing from the pool. A long-lived interactive session therefore never starves `run()` calls on the same backend, even with the default pool size of one.
137
137
 
138
- Prompt turns are explicit and serialized: call `prompt(content, { images?, promptMeta? })`, await the returned `{ stopReason, text }`, then send the next turn. A second `prompt()` while one is in flight rejects with a host-side error; queue turns in your host if you want queued UX. `text` is only the assistant text from that turn. Per-turn `images` use the same ACP image block path as `run()` and still degrade through capability negotiation when the agent does not advertise image prompts.
138
+ Prompt turns are explicit and serialized: call `prompt(content, { images?, promptMeta? })`, await the returned `{ stopReason, text, response }`, then send the next turn. `response` is the complete ACP `PromptResponse`, including arbitrary response `_meta`; `text` is only the assistant text from that turn. A terminal typed-session-failure response is intentionally converted into the existing thrown `WorkflowError`, so it does not produce an `InteractiveTurn`. A second `prompt()` while one is in flight rejects with a host-side error; queue turns in your host if you want queued UX. Per-turn `images` use the same ACP image block path as `run()` and still degrade through standard prompt-content capability negotiation when the agent does not advertise image prompts.
139
139
 
140
- While a `prompt()` is in flight, `steer(content, { images?, promptMeta? })` injects a follow-up through the vendor `_session/steering` extension and resolves to the agent-owned outcome: `"injected"`, `"startedNewTurn"`, or `"failed"`. It is not a second turn: it owns no output, usage, retry, or prompt settlement, and its output arrives on the original prompt's `session/update` stream. Idle callers must use `prompt()`; concurrent steering calls are left to the backend. Support is negotiated strictly from top-level `InitializeResponse._meta.steering.supported === true` (Claude, Codex, and pi advertise it; OpenCode rejects before any wire request). Optional outgoing request `_meta` remains independently handled by `gateCustomMeta()`.
140
+ While a `prompt()` is in flight, `steer(content, { images?, promptMeta? })` sends the vendor `_session/steering` request and returns its complete raw JSON response unchanged, including arbitrary `_meta` and unknown fields. It is not a second turn: it owns no output, usage, retry, response interpretation, or prompt settlement, and its output arrives on the original prompt's `session/update` stream. Idle callers still receive the active-prompt precondition error. For an active prompt, acp-agents does not parse an initialize capability or reject before the wire; a host that owns a steering policy must inspect raw `session.capabilities?.initializeMeta` itself. Concurrent steering calls are left to the backend.
141
+
142
+ Vendor metadata is transparent transport data. Caller `meta` / `promptMeta` keys are never deleted according to backend declarations or `agentCapabilities._meta`. The documented direct-collision winners are: on `session/new`, backend static `sessionMeta` is lowest precedence, caller `meta` wins over it, backend-computed protocol-critical session keys win over the caller, and the host `runId` stamp wins last; on `session/prompt`, backend-computed protocol-critical keys such as `outputSchema` win over caller `promptMeta`. Steering metadata has no backend-computed layer and reaches the wire unchanged. All unrelated keys, including arbitrary nested values, are preserved.
141
143
 
142
144
  `cancel()` sends ACP `session/cancel` for the active turn and applies the same five-second
143
145
  close/dispose escalation when the turn ignores it. `release()` is idempotent: it best-effort closes
@@ -260,7 +262,7 @@ advertised; inspect `reopen` rather than assuming every ACP agent persists state
260
262
 
261
263
  ## Listening in: live ACP events
262
264
 
263
- `AcpAgentRunner` is also a typed event bus — `runner.on(name, listener)` bubbles up the live ACP stream of every run (streaming text, tool calls, usage, permissions, elicitations). Event names are the ACP `sessionUpdate` discriminants (`agent_message_chunk`, `tool_call`, `usage_update`, …) plus the cross-cutting `session_update` (catch-all), `permission_pending`, `permission_request`, `elicitation_pending`, `elicitation_request`, `elicitation_complete`, `raw_message`, `steering`, `session_open` / `session_close`, and `backend_error`. Each payload carries a `{ sessionId, backendId, label?, runId?, callIndex? }` context envelope (a pooled runner multiplexes many runs at once). `steering` carries only `{ outcome }` after a resolved steering response, never prompt content or request metadata. `permission_pending` / `elicitation_pending` are resolver-only and carry `{ request }` before the host resolver is invoked; `permission_request` / `elicitation_request` fire exactly once with the final `{ request, outcome }` returned to the agent; `elicitation_complete` carries `{ notification }` for URL completions. `on()` / `once()` return an unsubscribe thunk; `off()` and `removeAllListeners()` round it out. Listeners are best-effort observers — a throwing listener never affects the run.
265
+ `AcpAgentRunner` is also a typed event bus — `runner.on(name, listener)` bubbles up the live ACP stream of every run (streaming text, tool calls, usage, permissions, elicitations). Event names are the ACP `sessionUpdate` discriminants (`agent_message_chunk`, `tool_call`, `usage_update`, …) plus the cross-cutting `session_update` (catch-all), `permission_pending`, `permission_request`, `elicitation_pending`, `elicitation_request`, `elicitation_complete`, `raw_message`, `steering`, `session_open` / `session_close`, and `backend_error`. Each payload carries a `{ sessionId, backendId, label?, runId?, callIndex?, initializeMeta? }` context envelope (a pooled runner multiplexes many runs at once). `steering` carries `{ response }` with the complete raw server response after a resolved request, never the request prompt content or request metadata. `permission_pending` / `elicitation_pending` are resolver-only and carry `{ request }` before the host resolver is invoked; `permission_request` / `elicitation_request` fire exactly once with the final `{ request, outcome }` returned to the agent; `elicitation_complete` carries `{ notification }` for URL completions. `on()` / `once()` return an unsubscribe thunk; `off()` and `removeAllListeners()` round it out. Listeners are best-effort observers — a throwing listener never affects the run.
264
266
 
265
267
  `AcpEventContext.callIndex` is the optional `RunOptions.callIndex` of the engine `agent()` call that
266
268
  opened the session. It is copied through session state and late-event tombstones onto session
@@ -291,18 +293,18 @@ From [`src/index.ts`](./src/index.ts):
291
293
  - **`AcpAgentRunner`** — the `AgentRunner` implementation; `run(prompt, options)`, `probeConfigOptions(spec?, options?)`, `openSession(options)`, `dispose()`, and `[Symbol.asyncDispose]()` for `await using`. `forceKill()` is a synchronous, best-effort emergency teardown for hosts only after a bounded graceful `dispose()` deadline; normal owners must await `dispose()`. The caller that constructs a runner owns its lifecycle.
292
294
  - **Auth/provider lifecycle methods** — `describeAuthMethods()`, `completeAuth()`, `runner.auth`, `authMethods()`, `authenticate()`, `listProviders()`, `setProvider()`, `disableProvider()`, and `logout()`; see [docs/api.md](../../docs/api.md) for capability gating and installed adapter support. A successful `setProvider()` records a durable routing intent (`ProviderStore`) replayed on every fresh connection's `initialize` — provider config is in-process agent state for e.g. codex-acp, so record → recycle → replay is what makes it stick across the pool.
293
295
  - **Session lifecycle methods** — `listSessions()`, `deleteSession()`, `loadSession()`, `resumeSession()`, and `forkSession()` for backends that advertise session persistence; see [docs/api.md](../../docs/api.md).
294
- - **`InteractiveSession` / `InteractiveSessionOptions` / `InteractiveTurn` / `SteeringOutcome`** — the held-open multi-turn session surface returned by `openSession()`; `InteractiveSession.steer()` is available only while its original `prompt()` is in flight.
296
+ - **`InteractiveSession` / `InteractiveSessionOptions` / `InteractiveTurn` / `SteeringResponse`** — the held-open multi-turn session surface returned by `openSession()`; `InteractiveSession.steer()` is available only while its original `prompt()` is in flight and returns the raw extension response.
295
297
  - **`ProbeConfigOptionsOptions` / `ProbedConfigOptions` / `SessionConfigOption`** — the no-prompt probe controls, routed result, and verbatim ACP advertised-option wire shape.
296
298
  - **`BUILTIN_BACKENDS` / `ThoughtLevelDomainSemantics`** — the built-in registry declares whether each backend's thought-level values are an `"ordered"` ladder (Claude, Codex, Pi) or an `"exact-set"` (OpenCode). `builtinThoughtLevelDomainSemantics(id)` performs an exact lookup; an absent row means a custom/unknown backend and must be handled as `"exact-set"`.
297
299
  - **`AcpRunnerOptions.onElicitation`** — runner-wide ACP elicitation responder; sessions can override with `InteractiveSessionOptions.onElicitation`.
298
300
  - **`selectBackend({ model, tier }, registry?)`** — deterministic first-segment routing; registered custom names take priority, then the four built-ins, otherwise the configured default.
299
301
  - **`ClaudeBackend` / `CodexBackend` / `OpenCodeBackend` / `PiBackend`** — the four built-in backend strategies (spawn config + per-backend schema/auth wiring). OpenCode is host-resolved rather than bundled; pi uses bundled `@automatalabs/pi-acp`.
300
- - **`CustomAcpBackend` / `resolveBackendRegistry` / `BACKENDS_ENV`** — the custom-backend registry: run **any** ACP agent as a named backend via `createAcpRunner({ backends: { name: { command, args?, env?, sessionMeta?, customCapabilities? } } })` or the `AGENTPRISM_BACKENDS` env var (JSON, same shape; the option wins per name; names may shadow built-ins). Custom backends carry a `schema` as turn-level `_meta.outputSchema` and read the result off the final message as JSON. `customCapabilities: { namespace, gatedKeys }` declares the agent's `agentCapabilities._meta` negotiation contract: once the agent advertises that namespace, each declared bare `_meta` key is sent only when its same-named flag is `true` (no declaration = never gated).
302
+ - **`CustomAcpBackend` / `resolveBackendRegistry` / `BACKENDS_ENV`** — the custom-backend registry: run **any** ACP agent as a named backend via `createAcpRunner({ backends: { name: { command, args?, env?, sessionMeta?, structuredOutputTool? } } })` or the `AGENTPRISM_BACKENDS` env var (JSON, same shape; the option wins per name; names may shadow built-ins). Custom backends carry a `schema` as turn-level `_meta.outputSchema` and read the result off the final message as JSON. No host-side vendor capability declaration is required.
301
303
  - **Auth contracts and lifecycle** — `AuthStore`, `BackendAuthMachine`, `buildAuthDescriptors`, the built-in auth profiles, and the `AuthContext` / `AuthResolution` / `AuthMethodDescriptor` / `AuthCapableRunner` types.
302
304
  - **`PermissionResolver`** — async human-in-the-loop permission resolution for runner-wide or interactive sessions.
303
305
  - **`clientCapabilitiesFor` + the `ClientHandlers` / `FsHandlers` / `TerminalHandlers` / `AcpSessionContext` types** — the client-side fs/terminal interposition surface (see above).
304
- - **`negotiateCapabilities` / `adaptPromptContent` / `gateCustomMeta` / `unsupportedMcpServer` + `NegotiatedCapabilities`** — the `initialize` capability-negotiation primitives; the negotiated record for a live connection is exposed on `PooledConnection.capabilities`.
305
- - **`AGENT_METHOD_COVERAGE` / `CLIENT_METHOD_COVERAGE` / `ACP_EXTENSION_SUPPORT_MATRIX`** — manifests classifying the installed ACP SDK method surface and built-in vendor extensions; steering remains separate from SDK `AGENT_METHODS` and is enforced by installed-dist and live probes.
306
+ - **`negotiateCapabilities` / `adaptPromptContent` / `unsupportedMcpServer` + `NegotiatedCapabilities`** — the standard ACP capability-negotiation primitives; the negotiated record for a live connection is exposed on `PooledConnection.capabilities`, with vendor initialize metadata retained only as raw `initializeMeta`.
307
+ - **`AGENT_METHOD_COVERAGE` / `CLIENT_METHOD_COVERAGE` / `ACP_EXTENSION_SUPPORT_MATRIX`** — manifests classifying the installed ACP SDK method surface and documenting built-in vendor-extension advertisements. The extension matrix is evidence for probes and never routes runtime behavior.
306
308
  - **`toJsonSchema(schema)` / `toStrictJsonSchema(schema)`** — turn a typebox schema into on-the-wire shapes: plain JSON Schema for Claude and the Pi/OpenCode injected HTTP MCP tool, and an OpenAI-strict-normalized schema for Codex `outputSchema`. Pi retains the common prompt/validated-last-text fallback.
307
309
 
308
310
  Also exported: `AcpAgentPool` / `resolvePoolSize` (including the same deadline-only `forceKill()` emergency path), `PooledConnection` / `SessionHandle`, `decidePermission`, `UsageAccumulator`, `resolveStructuredOutput` / `extractValidated` / `findJsonBlock` / `validateValue`, `errorText` / `mapThrownError`, and the event surface `TypedEventEmitter` / `AcpRunnerEventMap` / `AcpEventName` / `AcpEventListener` / `AcpEventContext` / `AcpSessionUpdate` (+ the per-event payload types, including `AcpPermissionPendingEvent`), plus their associated types.
@@ -312,7 +314,7 @@ Also exported: `AcpAgentPool` / `resolvePoolSize` (including the same deadline-o
312
314
  | Variable | Effect |
313
315
  | --- | --- |
314
316
  | `AGENTPRISM_DEFAULT_BACKEND` | Backend for specs whose first segment is not registered (`claude`, `codex`, `opencode`, `pi`, or a registered custom name; unknown values fall back to Claude). |
315
- | `AGENTPRISM_BACKENDS` | Custom ACP backends as JSON: `{"<name>": {"command": "…", "args": […], "env": {…}, "sessionMeta": {…}, "customCapabilities": {"namespace": "…", "gatedKeys": […]}}}`. |
317
+ | `AGENTPRISM_BACKENDS` | Custom ACP backends as JSON: `{"<name>": {"command": "…", "args": […], "env": {…}, "sessionMeta": {…}, "structuredOutputTool": true}}`. |
316
318
  | `AGENTPRISM_ACP_INIT_TIMEOUT_MS` | Deadline (default `60000`) for a backend's one-time ACP `initialize` handshake — a non-ACP command fails fast instead of hanging. |
317
319
  | `AGENTPRISM_ACP_POOL_SIZE` | Long-lived processes to keep per backend (default `1`). |
318
320
  | `AGENTPRISM_CLAUDE_ACP_CMD` / `AGENTPRISM_CLAUDE_ACP_ARGS` | Override the command (and args) used to spawn the Claude ACP server. |
@@ -45,19 +45,15 @@ export interface LoadedTurnEndedNotification {
45
45
  message: string;
46
46
  };
47
47
  }
48
- /** Every outcome an ACP steering agent can resolve with. */
49
- export type SteeringOutcome = "injected" | "startedNewTurn" | "failed";
50
- /** Exact `_session/steering` wire request. Optional `_meta` uses the same outgoing custom-meta
51
- * gate as other session requests, independently of the initialize steering advertisement. */
48
+ /** Exact `_session/steering` wire request. Extension metadata is transported transparently. */
52
49
  export interface SteeringRequest {
53
50
  sessionId: string;
54
51
  prompt: ContentBlock[];
55
52
  _meta?: Record<string, unknown>;
56
53
  }
57
- /** Exact `_session/steering` wire response. */
58
- export interface SteeringResponse {
59
- outcome: SteeringOutcome;
60
- }
54
+ /** Complete raw `_session/steering` wire response. The owning host validates its shape and fields,
55
+ * so even a malformed JSON value is returned unchanged for that layer to classify. */
56
+ export type SteeringResponse = unknown;
61
57
  /** Grace for a cancelled prompt/config lifecycle to settle before close + process quarantine. */
62
58
  export declare const CANCEL_NOT_HONORED_GRACE_MS = 5000;
63
59
  export declare const PI_CHILD_CLEANUP_DEADLINE_MS = 5000;
@@ -446,9 +442,6 @@ export declare class PooledConnection {
446
442
  /** The capabilities negotiated on this connection's one-time initialize handshake, or undefined
447
443
  * until it completes — derived-state-behind-a-getter, like `alive`/`activeSessions`. */
448
444
  get capabilities(): NegotiatedCapabilities | undefined;
449
- /** Drop the backend-declared bare `_meta` keys the connected agent did not advertise support
450
- * for (see gateCustomMeta). Applied to BOTH session/new and session/prompt `_meta`. */
451
- gateCustomMeta(meta: Record<string, unknown> | undefined): Record<string, unknown> | undefined;
452
445
  private assertSupportedMcpServers;
453
446
  private sessionRequestMeta;
454
447
  private assertLifecycleSupported;
@@ -547,18 +540,12 @@ export declare class PooledConnection {
547
540
  logout(request: LogoutRequest, label?: string): Promise<LogoutResponse | void>;
548
541
  /** session/prompt on this connection, raced against process death. */
549
542
  prompt(request: PromptRequest): Promise<PromptResponse>;
550
- /** Driven `_session/steering` extension request. The top-level initialize advertisement is
551
- * checked before any wire request. rawAgentRequest preserves the response object instead of
552
- * applying an SDK standard-method mapper, and its internal race surfaces process death. */
553
- steerSession(request: SteeringRequest, label?: string): Promise<SteeringResponse>;
554
- /** Driven `_session/loaded_turn/query` extension request (the re-attach
555
- * arm's authoritative founding-turn classification): asks whether the
556
- * loaded session's founding turn is still running at the backend, or
557
- * ended while the host was down. Strictly capability-gated on the
558
- * initialize `_meta.loadedTurn.supported === true` advertisement — a
559
- * backend without the extension rejects before any wire request (the
560
- * "same gate" the seam's degradation keys on). */
561
- queryLoadedTurn(sessionId: string, label?: string): Promise<LoadedTurnQueryResponse>;
543
+ /** Driven `_session/steering` extension request. Extension ownership belongs to the caller:
544
+ * this transport preserves the complete response and does not capability-gate the wire call. */
545
+ steerSession(request: SteeringRequest, _label?: string): Promise<SteeringResponse>;
546
+ /** Driven `_session/loaded_turn/query` request. The extension owner checks the raw initialize
547
+ * advertisement before invoking this transport. */
548
+ queryLoadedTurn(sessionId: string, _label?: string): Promise<LoadedTurnQueryResponse>;
562
549
  /** session/set_config_option on this connection, raced against process death. */
563
550
  setSessionConfigOption(request: SetSessionConfigOptionRequest): Promise<SetSessionConfigOptionResponse>;
564
551
  /** session/set_mode on this connection, raced against process death. */
@@ -668,10 +655,10 @@ export declare class SessionHandle implements StructuredSource {
668
655
  */
669
656
  private terminalTypedSessionFailure;
670
657
  private typedSessionFailureError;
671
- /** Inject content into the currently running prompt turn through the negotiated steering
672
- * extension. This deliberately owns no turn state: it does not begin/replace a turn, accumulate
673
- * output, record usage, or retry a late `startedNewTurn` outcome. */
674
- steer(content: string | ContentBlock[], promptMeta?: Record<string, unknown>): Promise<SteeringOutcome>;
658
+ /** Inject content into the currently running prompt turn through the steering extension.
659
+ * Extension advertisement and response interpretation belong to the host. This deliberately
660
+ * owns no turn state: it does not begin/replace a turn, accumulate output, or record usage. */
661
+ steer(content: string | ContentBlock[], promptMeta?: Record<string, unknown>): Promise<SteeringResponse>;
675
662
  /** StructuredSource — the latest turn's assistant text. */
676
663
  currentTurnText(): string;
677
664
  /** The latest turn's assistant text with the §5 chunk joiner: separate
@@ -735,12 +722,14 @@ export declare class SessionHandle implements StructuredSource {
735
722
  * the REPL broker's re-attach arm; additive passthrough to
736
723
  * `SessionState`. */
737
724
  subscribeLoadedTurnEnded(listener: () => void): () => void;
738
- /** Cancel the active turn. A backend that does not settle within the grace window is closed and
739
- * its pooled child is quarantined for recycle after sibling sessions drain. */
725
+ /** Request cancellation of the active turn. Resolves once the single ACP cancel notification
726
+ * has been attempted; the 5s settle-or-quarantine lifecycle continues in the background. */
740
727
  cancel(): Promise<void>;
741
728
  private cancelAfterAbort;
742
729
  private cancelTurn;
730
+ private beginTurnCancellation;
743
731
  private cancelAndEscalate;
732
+ private escalateAfterCancel;
744
733
  /** Let go of this session WITHOUT killing the pooled process; idempotent.
745
734
  * `keepOpen` skips the release-time best-effort `session/close` so an agent-persisted
746
735
  * session stays re-openable via session/load|resume (RunOptions.keepSession). */
@@ -1 +1 @@
1
- {"version":3,"file":"acp-client.d.ts","sourceRoot":"","sources":["../src/acp-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"acp-client.d.ts","sourceRoot":"","sources":["../src/acp-client.ts"],"names":[],"mappings":"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"}
@@ -25,7 +25,7 @@ import { readFileSync } from "node:fs";
25
25
  import { Readable, Writable } from "node:stream";
26
26
  import { AGENT_METHODS, client, CLIENT_METHODS, ndJsonStream, PROTOCOL_VERSION, RequestError, } from "@agentclientprotocol/sdk";
27
27
  import { META_KEYS, WorkflowError, WorkflowErrorCode, } from "@automatalabs/shared-types";
28
- import { adaptPromptContent, describeAuthProviderAdvertisement, describeLifecycleAdvertisement, gateCustomMeta, isSupportedProtocolVersion, negotiateCapabilities, unsupportedMcpServer, } from "./capabilities.js";
28
+ import { adaptPromptContent, describeAuthProviderAdvertisement, describeLifecycleAdvertisement, isSupportedProtocolVersion, negotiateCapabilities, unsupportedMcpServer, } from "./capabilities.js";
29
29
  import { emitSessionUpdate } from "./events.js";
30
30
  import { decidePermission, } from "./permissions.js";
31
31
  import { UsageAccumulator } from "./usage.js";
@@ -1024,10 +1024,10 @@ class MultiplexClient {
1024
1024
  }
1025
1025
  /** Emit one privacy-safe observation after a steering request resolves. Context comes from the
1026
1026
  * live session or its teardown tombstone; prompt content and request `_meta` never enter it. */
1027
- steeringResponse(sessionId, outcome) {
1027
+ steeringResponse(sessionId, response) {
1028
1028
  this.onEvent?.("steering", {
1029
1029
  ...this.contextFor(sessionId),
1030
- outcome,
1030
+ response,
1031
1031
  });
1032
1032
  }
1033
1033
  sessionIdForMcpConnection(connectionId) {
@@ -1091,8 +1091,8 @@ function assertSafeRawRequest(method) {
1091
1091
  if (!guidance)
1092
1092
  return;
1093
1093
  if (method === SESSION_STEERING_METHOD) {
1094
- throw new Error(`Raw ACP request "${method}" is guarded: ${guidance}. The named wrapper enforces the ` +
1095
- "initialize-response steering capability and emits the privacy-safe session steering event.");
1094
+ throw new Error(`Raw ACP request "${method}" is guarded: ${guidance}. The named wrapper preserves the complete ` +
1095
+ "extension response and emits the privacy-safe session steering event.");
1096
1096
  }
1097
1097
  throw new Error(`Raw ACP request "${method}" is guarded: ${guidance}. Sessions created, reopened, or forked ` +
1098
1098
  "outside the router are unregistered: session/update notifications do not fold into an " +
@@ -1123,12 +1123,6 @@ function lifecycleCapabilityError(backendId, method, capabilities, label) {
1123
1123
  : "initialize did not complete";
1124
1124
  return new WorkflowError(`ACP agent (${backendId}) does not advertise ${method}; advertised lifecycle capabilities: ${advertised}`, WorkflowErrorCode.SCRIPT_VALIDATION_ERROR, { recoverable: false, agentLabel: label });
1125
1125
  }
1126
- function steeringCapabilityError(backendId, capabilities, label) {
1127
- const advertised = capabilities === undefined
1128
- ? "initialize did not complete"
1129
- : "InitializeResponse._meta.steering.supported was not exactly true";
1130
- return new WorkflowError(`ACP agent (${backendId}) does not advertise ${SESSION_STEERING_METHOD}; ${advertised}`, WorkflowErrorCode.SCRIPT_VALIDATION_ERROR, { recoverable: false, agentLabel: label });
1131
- }
1132
1126
  /** Internal typed sentinel for the continuation path. It is deliberately thrown only after
1133
1127
  * initialize completes and before any session/load or session/resume wire request is sent. */
1134
1128
  export class ReattachCapabilityUnavailable extends Error {
@@ -1382,11 +1376,6 @@ export class PooledConnection {
1382
1376
  get capabilities() {
1383
1377
  return this.negotiated;
1384
1378
  }
1385
- /** Drop the backend-declared bare `_meta` keys the connected agent did not advertise support
1386
- * for (see gateCustomMeta). Applied to BOTH session/new and session/prompt `_meta`. */
1387
- gateCustomMeta(meta) {
1388
- return gateCustomMeta(meta, this.negotiated?.customMetaSupport, this.negotiated?.gatedKeys);
1389
- }
1390
1379
  assertSupportedMcpServers(opts) {
1391
1380
  const unsupported = this.negotiated
1392
1381
  ? unsupportedMcpServer(opts.mcpServers, this.negotiated.agent, {
@@ -1403,10 +1392,10 @@ export class PooledConnection {
1403
1392
  `${this.backendId} agent does not support`, WorkflowErrorCode.SCRIPT_VALIDATION_ERROR, { recoverable: false, agentLabel: opts.label });
1404
1393
  }
1405
1394
  sessionRequestMeta(opts) {
1406
- return this.gateCustomMeta(stampRunId(layerMeta(this.backend.sessionMetaDefaults?.(), opts.meta, this.backend.sessionMeta(opts.schema, {
1395
+ return stampRunId(layerMeta(this.backend.sessionMetaDefaults?.(), opts.meta, this.backend.sessionMeta(opts.schema, {
1407
1396
  baseInstructions: opts.baseInstructions,
1408
1397
  developerInstructions: opts.developerInstructions,
1409
- })), opts.runId));
1398
+ })), opts.runId);
1410
1399
  }
1411
1400
  assertLifecycleSupported(method, label) {
1412
1401
  const supported = method === AGENT_METHODS.session_load
@@ -1585,7 +1574,7 @@ export class PooledConnection {
1585
1574
  })),
1586
1575
  deadline,
1587
1576
  ]);
1588
- const negotiated = negotiateCapabilities(response, this.backend.customCapabilities);
1577
+ const negotiated = negotiateCapabilities(response);
1589
1578
  // Version negotiation: the agent replies with the version it chose (our requested version if
1590
1579
  // it supports it, else its own latest). If this client cannot speak it, the ACP spec says
1591
1580
  // CLOSE the connection and inform the user — kill the process (so the pool evicts it) and
@@ -1722,9 +1711,9 @@ export class PooledConnection {
1722
1711
  // session/new `_meta`, layered lowest-to-highest precedence: the backend's static
1723
1712
  // defaults (a custom registry entry's `sessionMeta`), then the generic user passthrough
1724
1713
  // (opts.meta), then the backend's protocol-critical `_meta` (Claude schema channel;
1725
- // Codex base/developer instructions), then the engine runId correlation stamp. The result
1726
- // is gated against the agent's advertised custom capabilities (a declared key the agent
1727
- // said it does not honor is dropped). When no layer survives, no `_meta` is sent.
1714
+ // Codex base/developer instructions), then the engine runId correlation stamp. Direct
1715
+ // collisions are won by the later backend/host-owned protocol-critical layer; every unrelated
1716
+ // caller key is transported unchanged. When no layer is present, no `_meta` is sent.
1728
1717
  const meta = this.sessionRequestMeta(opts);
1729
1718
  const request = {
1730
1719
  cwd: opts.cwd,
@@ -1921,31 +1910,18 @@ export class PooledConnection {
1921
1910
  prompt(request) {
1922
1911
  return this.race(this.connection.agent.request(AGENT_METHODS.session_prompt, request));
1923
1912
  }
1924
- /** Driven `_session/steering` extension request. The top-level initialize advertisement is
1925
- * checked before any wire request. rawAgentRequest preserves the response object instead of
1926
- * applying an SDK standard-method mapper, and its internal race surfaces process death. */
1927
- async steerSession(request, label) {
1913
+ /** Driven `_session/steering` extension request. Extension ownership belongs to the caller:
1914
+ * this transport preserves the complete response and does not capability-gate the wire call. */
1915
+ async steerSession(request, _label) {
1928
1916
  await this.ready;
1929
- if (this.negotiated?.supportsSteering !== true) {
1930
- throw steeringCapabilityError(this.backendId, this.negotiated, label);
1931
- }
1932
1917
  const response = await this.rawAgentRequest(SESSION_STEERING_METHOD, request);
1933
- this.client.steeringResponse(request.sessionId, response.outcome);
1918
+ this.client.steeringResponse(request.sessionId, response);
1934
1919
  return response;
1935
1920
  }
1936
- /** Driven `_session/loaded_turn/query` extension request (the re-attach
1937
- * arm's authoritative founding-turn classification): asks whether the
1938
- * loaded session's founding turn is still running at the backend, or
1939
- * ended while the host was down. Strictly capability-gated on the
1940
- * initialize `_meta.loadedTurn.supported === true` advertisement — a
1941
- * backend without the extension rejects before any wire request (the
1942
- * "same gate" the seam's degradation keys on). */
1943
- async queryLoadedTurn(sessionId, label) {
1921
+ /** Driven `_session/loaded_turn/query` request. The extension owner checks the raw initialize
1922
+ * advertisement before invoking this transport. */
1923
+ async queryLoadedTurn(sessionId, _label) {
1944
1924
  await this.ready;
1945
- if (this.negotiated?.supportsLoadedTurnTerminalState !== true) {
1946
- throw new WorkflowError(`ACP agent (${this.backendId}) does not advertise ${LOADED_TURN_QUERY_METHOD}; ` +
1947
- "InitializeResponse._meta.loadedTurn.supported was not exactly true", WorkflowErrorCode.SCRIPT_VALIDATION_ERROR, { recoverable: false, agentLabel: label });
1948
- }
1949
1925
  return this.rawAgentRequest(LOADED_TURN_QUERY_METHOD, {
1950
1926
  sessionId,
1951
1927
  });
@@ -2279,13 +2255,10 @@ export class SessionHandle {
2279
2255
  const prompt = typeof content === "string"
2280
2256
  ? content
2281
2257
  : adaptPromptContent(content, this.pooled.capabilities?.agent ?? {}, this.pooled.backendId);
2282
- // Gate the turn `_meta` against the agent's advertised custom capabilities: a declared
2283
- // turn-level key is dropped when the connected agent said it does not honor it.
2284
- const gatedMeta = this.pooled.gateCustomMeta(promptMeta);
2285
2258
  const request = {
2286
2259
  sessionId: this.sessionId,
2287
2260
  prompt: typeof prompt === "string" ? [{ type: "text", text: prompt }] : prompt,
2288
- ...(gatedMeta ? { _meta: gatedMeta } : {}),
2261
+ ...(promptMeta ? { _meta: promptMeta } : {}),
2289
2262
  };
2290
2263
  try {
2291
2264
  const response = await this.pooled.prompt(request);
@@ -2338,21 +2311,19 @@ export class SessionHandle {
2338
2311
  authMethods: this.pooled.capabilities?.authMethods,
2339
2312
  });
2340
2313
  }
2341
- /** Inject content into the currently running prompt turn through the negotiated steering
2342
- * extension. This deliberately owns no turn state: it does not begin/replace a turn, accumulate
2343
- * output, record usage, or retry a late `startedNewTurn` outcome. */
2314
+ /** Inject content into the currently running prompt turn through the steering extension.
2315
+ * Extension advertisement and response interpretation belong to the host. This deliberately
2316
+ * owns no turn state: it does not begin/replace a turn, accumulate output, or record usage. */
2344
2317
  async steer(content, promptMeta) {
2345
2318
  this.opts.signal?.throwIfAborted();
2346
2319
  const prompt = typeof content === "string"
2347
2320
  ? [{ type: "text", text: content }]
2348
2321
  : adaptPromptContent(content, this.pooled.capabilities?.agent ?? {}, this.pooled.backendId);
2349
- const gatedMeta = this.pooled.gateCustomMeta(promptMeta);
2350
- const response = await this.pooled.steerSession({
2322
+ return this.pooled.steerSession({
2351
2323
  sessionId: this.sessionId,
2352
2324
  prompt,
2353
- ...(gatedMeta ? { _meta: gatedMeta } : {}),
2325
+ ...(promptMeta ? { _meta: promptMeta } : {}),
2354
2326
  }, this.opts.label);
2355
- return response.outcome;
2356
2327
  }
2357
2328
  /** StructuredSource — the latest turn's assistant text. */
2358
2329
  currentTurnText() {
@@ -2427,15 +2398,16 @@ export class SessionHandle {
2427
2398
  subscribeLoadedTurnEnded(listener) {
2428
2399
  return this.state.subscribeLoadedTurnEnded(listener);
2429
2400
  }
2430
- /** Cancel the active turn. A backend that does not settle within the grace window is closed and
2431
- * its pooled child is quarantined for recycle after sibling sessions drain. */
2401
+ /** Request cancellation of the active turn. Resolves once the single ACP cancel notification
2402
+ * has been attempted; the 5s settle-or-quarantine lifecycle continues in the background. */
2432
2403
  async cancel() {
2433
2404
  const turn = this.activeTurn;
2434
2405
  if (!turn) {
2435
2406
  await this.pooled.cancelSession(this.sessionId);
2436
2407
  return;
2437
2408
  }
2438
- await this.cancelTurn(turn);
2409
+ this.beginTurnCancellation(turn);
2410
+ await turn.cancelRequested;
2439
2411
  }
2440
2412
  cancelAfterAbort() {
2441
2413
  const turn = this.activeTurn;
@@ -2445,11 +2417,21 @@ export class SessionHandle {
2445
2417
  return this.abortCancellation;
2446
2418
  }
2447
2419
  cancelTurn(turn) {
2448
- turn.cancellation ??= this.cancelAndEscalate(turn.ended);
2420
+ this.beginTurnCancellation(turn);
2449
2421
  return turn.cancellation;
2450
2422
  }
2423
+ beginTurnCancellation(turn) {
2424
+ turn.cancelRequested ??= this.pooled.cancelSession(this.sessionId);
2425
+ turn.cancellation ??= this.escalateAfterCancel(turn.cancelRequested, turn.ended);
2426
+ // Public interactive cancellation resolves at the request boundary; keep escalation observed.
2427
+ void turn.cancellation.catch(() => undefined);
2428
+ }
2451
2429
  async cancelAndEscalate(observedEnd) {
2452
- await this.pooled.cancelSession(this.sessionId);
2430
+ const requested = this.pooled.cancelSession(this.sessionId);
2431
+ return this.escalateAfterCancel(requested, observedEnd);
2432
+ }
2433
+ async escalateAfterCancel(requested, observedEnd) {
2434
+ await requested;
2453
2435
  if (await resolvesWithin(observedEnd, CANCEL_NOT_HONORED_GRACE_MS))
2454
2436
  return;
2455
2437
  this.pooled.quarantineAfterIgnoredCancel();
package/dist/backend.d.ts CHANGED
@@ -58,17 +58,9 @@ export interface Backend {
58
58
  * initialized agent strictly advertises HTTP MCP support. Native schema channels leave this
59
59
  * unset; custom ACP backends opt in unless their registry entry disables it. */
60
60
  readonly injectStructuredOutputTool?: boolean;
61
- /** The agentCapabilities._meta namespace this backend's agent advertises under, and the bare
62
- * `_meta` keys gated by same-named boolean flags in that block; undefined = this backend has
63
- * no custom-capability contract (its custom `_meta`, if any, is never gated). */
64
- readonly customCapabilities?: {
65
- readonly namespace: string;
66
- readonly gatedKeys: readonly string[];
67
- };
68
61
  /** OPTIONAL `initialize.clientCapabilities._meta` this backend adds: the namespaced vendor
69
- * extensions THIS CLIENT implements for that agent, so the agent may turn them on. The mirror
70
- * image of `customCapabilities` (which reads what the AGENT advertised). Backend-scoped on
71
- * purpose — advertising a capability to an agent that does not implement it is noise, and
62
+ * extensions THIS CLIENT implements for that agent, so the agent may turn them on. Backend-scoped
63
+ * on purpose advertising a capability to an agent that does not implement it is noise, and
72
64
  * advertising one this client does not consume would be a lie. Undefined for every backend that
73
65
  * negotiates no client-side extension, which keeps its handshake byte-identical.
74
66
  * Folded into the top-level `_meta` alongside the auth layer's own `terminal-auth` key; the two
@@ -95,7 +87,9 @@ export interface Backend {
95
87
  * keys win over the generic user passthrough. `inputs` carries optional per-session extras
96
88
  * (e.g. Codex base/developer instructions); a backend that has no use for them ignores it. */
97
89
  sessionMeta(schema: TSchema | undefined, inputs?: SessionMetaInputs): Record<string, unknown> | undefined;
98
- /** `_meta` for session/prompt (undefined when this backend carries the schema at session/new). */
90
+ /** Protocol-critical `_meta` for session/prompt (undefined when this backend carries the schema
91
+ * at session/new). These keys win direct collisions with caller prompt metadata; unrelated
92
+ * caller keys are transported unchanged. */
99
93
  promptMeta(schema: TSchema | undefined): Record<string, unknown> | undefined;
100
94
  /** Read this backend's native structured result for the latest turn (unvalidated), or undefined. */
101
95
  nativeStructured?(source: StructuredSource): unknown;
@@ -1 +1 @@
1
- {"version":3,"file":"backend.d.ts","sourceRoot":"","sources":["../src/backend.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"backend.d.ts","sourceRoot":"","sources":["../src/backend.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AAC5E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAE1D,iGAAiG;AACjG,YAAY,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D;sFACsF;AACtF,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC;AAE/B,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,GAAG,EAAE,MAAM,CAAC,UAAU,CAAC;CACxB;AAED,8FAA8F;AAC9F,MAAM,WAAW,gBAAgB;IAC/B,8FAA8F;IAC9F,eAAe,IAAI,MAAM,CAAC;IAC1B;;;4FAGwF;IACxF,gBAAgB,IAAI,MAAM,CAAC;IAC3B,uGAAuG;IACvG,mBAAmB,IAAI,OAAO,CAAC;CAChC;AAED;+EAC+E;AAC/E,MAAM,WAAW,iBAAiB;IAChC,yFAAyF;IACzF,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,sFAAsF;IACtF,qBAAqB,CAAC,EAAE,MAAM,CAAC;CAChC;AAED,8FAA8F;AAC9F,MAAM,WAAW,qBAAqB;IACpC,2EAA2E;IAC3E,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,gFAAgF;AAChF,MAAM,MAAM,2BAA2B,GAAG;IACxC,IAAI,EAAE,sBAAsB,CAAC;IAC7B,OAAO,EAAE,yBAAyB,CAAC;CACpC,CAAC;AAEF,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,EAAE,EAAE,SAAS,CAAC;IACvB;;;0EAGsE;IACtE,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B;;;;kGAI8F;IAC9F,QAAQ,CAAC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IACvC;;qFAEiF;IACjF,QAAQ,CAAC,0BAA0B,CAAC,EAAE,OAAO,CAAC;IAC9C;;;;;;;4CAOwC;IACxC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAClE;;;;6EAIyE;IACzE,QAAQ,CAAC,WAAW,CAAC,EAAE,WAAW,CAAC;IACnC;mGAC+F;IAC/F,qBAAqB,CAAC,CACpB,KAAK,EAAE,OAAO,EACd,QAAQ,CAAC,EAAE,qBAAqB,GAC/B,2BAA2B,GAAG,SAAS,CAAC;IAC3C,0DAA0D;IAC1D,WAAW,IAAI,WAAW,CAAC;IAC3B;;sEAEkE;IAClE,mBAAmB,CAAC,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;IAC5D;;;mGAG+F;IAC/F,WAAW,CAAC,MAAM,EAAE,OAAO,GAAG,SAAS,EAAE,MAAM,CAAC,EAAE,iBAAiB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;IAC1G;;iDAE6C;IAC7C,UAAU,CAAC,MAAM,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;IAC7E,oGAAoG;IACpG,gBAAgB,CAAC,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC;CACtD;AAED,6FAA6F;AAC7F,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,EAAE,CAE7D"}
@@ -7,10 +7,6 @@ export declare class CodexBackend implements Backend {
7
7
  readonly authProfile: AuthProfile;
8
8
  readonly id: "codex";
9
9
  constructor(authProfile?: AuthProfile);
10
- readonly customCapabilities: {
11
- readonly namespace: "@automatalabs/codex-acp";
12
- readonly gatedKeys: readonly string[];
13
- };
14
10
  /** Turn on codex-acp's negotiated typed-session-failures extension at `initialize` (see
15
11
  * typed-failures.ts). Truthful: SessionHandle consumes BOTH delivery channels the server opens
16
12
  * in response — the terminal failure on `PromptResponse._meta` and the asynchronous one on
@@ -1 +1 @@
1
- {"version":3,"file":"codex.d.ts","sourceRoot":"","sources":["../../src/backends/codex.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAEvC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,KAAK,EACV,OAAO,EACP,2BAA2B,EAC3B,qBAAqB,EACrB,iBAAiB,EACjB,WAAW,EACX,gBAAgB,EACjB,MAAM,eAAe,CAAC;AAWvB,6FAA6F;AAC7F,eAAO,MAAM,gBAAgB,EAAE,WAe9B,CAAC;AAEF,qBAAa,YAAa,YAAW,OAAO;IAG9B,QAAQ,CAAC,WAAW,EAAE,WAAW;IAF7C,QAAQ,CAAC,EAAE,EAAG,OAAO,CAAU;gBAEV,WAAW,GAAE,WAA8B;IAEhE,QAAQ,CAAC,kBAAkB;;;MAGhB;IAEX;;;qGAGiG;IACjG,QAAQ,CAAC,oBAAoB,oCAA2C;IAExE;;;;4EAIwE;IACxE,qBAAqB,CACnB,KAAK,EAAE,OAAO,EACd,QAAQ,CAAC,EAAE,qBAAqB,GAC/B,2BAA2B,GAAG,SAAS;IAW1C,WAAW,IAAI,WAAW;IAe1B,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,SAAS,EAAE,MAAM,CAAC,EAAE,iBAAiB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;IAY1G,UAAU,CAAC,MAAM,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;IAK5E,gBAAgB,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO;CAMpD;AAED,eAAO,MAAM,sBAAsB,yDAuBjC,CAAC"}
1
+ {"version":3,"file":"codex.d.ts","sourceRoot":"","sources":["../../src/backends/codex.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAEvC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,KAAK,EACV,OAAO,EACP,2BAA2B,EAC3B,qBAAqB,EACrB,iBAAiB,EACjB,WAAW,EACX,gBAAgB,EACjB,MAAM,eAAe,CAAC;AAUvB,6FAA6F;AAC7F,eAAO,MAAM,gBAAgB,EAAE,WAe9B,CAAC;AAEF,qBAAa,YAAa,YAAW,OAAO;IAG9B,QAAQ,CAAC,WAAW,EAAE,WAAW;IAF7C,QAAQ,CAAC,EAAE,EAAG,OAAO,CAAU;gBAEV,WAAW,GAAE,WAA8B;IAEhE;;;qGAGiG;IACjG,QAAQ,CAAC,oBAAoB,oCAA2C;IAExE;;;;4EAIwE;IACxE,qBAAqB,CACnB,KAAK,EAAE,OAAO,EACd,QAAQ,CAAC,EAAE,qBAAqB,GAC/B,2BAA2B,GAAG,SAAS;IAW1C,WAAW,IAAI,WAAW;IAe1B,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,SAAS,EAAE,MAAM,CAAC,EAAE,iBAAiB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;IAY1G,UAAU,CAAC,MAAM,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;IAK5E,gBAAgB,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO;CAMpD;AAED,eAAO,MAAM,sBAAsB,yDAuBjC,CAAC"}
@@ -9,9 +9,8 @@
9
9
  // extraction reads ONLY the turn's final assistant message off the normal agent-message stream —
10
10
  // a whole-turn scan would pick up a progress object instead of the result.
11
11
  import { createRequire } from "node:module";
12
- import { CODEX_CUSTOM_CAPABILITY_NAMESPACE, CODEX_META_KEYS, META_KEYS } from "@automatalabs/shared-types";
12
+ import { CODEX_META_KEYS, META_KEYS } from "@automatalabs/shared-types";
13
13
  import { splitArgs } from "../backend.js";
14
- import { GATED_CUSTOM_META_KEYS } from "../capabilities.js";
15
14
  import { BUILTIN_PROTOCOL_COVERAGE } from "../protocol-coverage.js";
16
15
  import { toStrictJsonSchema } from "../schema-strict.js";
17
16
  import { parseFinalJson } from "../structured-output.js";
@@ -42,10 +41,6 @@ export class CodexBackend {
42
41
  constructor(authProfile = codexAuthProfile) {
43
42
  this.authProfile = authProfile;
44
43
  }
45
- customCapabilities = {
46
- namespace: CODEX_CUSTOM_CAPABILITY_NAMESPACE,
47
- gatedKeys: GATED_CUSTOM_META_KEYS,
48
- };
49
44
  /** Turn on codex-acp's negotiated typed-session-failures extension at `initialize` (see
50
45
  * typed-failures.ts). Truthful: SessionHandle consumes BOTH delivery channels the server opens
51
46
  * in response — the terminal failure on `PromptResponse._meta` and the asynchronous one on
@@ -12,7 +12,6 @@ export declare class CustomAcpBackend implements Backend {
12
12
  * repair ladder can never converge on a contract the model was never shown. */
13
13
  readonly embedSchemaInPrompt = true;
14
14
  readonly injectStructuredOutputTool: boolean;
15
- readonly customCapabilities?: NonNullable<Backend["customCapabilities"]>;
16
15
  constructor(config: RegisteredBackend);
17
16
  spawnConfig(): SpawnConfig;
18
17
  sessionMetaDefaults(): Record<string, unknown> | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"custom.d.ts","sourceRoot":"","sources":["../../src/backends/custom.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAEvC,OAAO,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAC5E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAIxD,qBAAa,gBAAiB,YAAW,OAAO;IAYlC,OAAO,CAAC,QAAQ,CAAC,MAAM;IAXnC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB;mGAC+F;IAC/F,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB;;oFAEgF;IAChF,QAAQ,CAAC,mBAAmB,QAAQ;IACpC,QAAQ,CAAC,0BAA0B,EAAE,OAAO,CAAC;IAC7C,QAAQ,CAAC,kBAAkB,CAAC,EAAE,WAAW,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC;gBAE5C,MAAM,EAAE,iBAAiB;IAYtD,WAAW,IAAI,WAAW;IAS1B,mBAAmB,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;IAQ1D,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;IAM9E,UAAU,CAAC,MAAM,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;IAQ5E,gBAAgB,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO;CAKpD"}
1
+ {"version":3,"file":"custom.d.ts","sourceRoot":"","sources":["../../src/backends/custom.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAEvC,OAAO,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAC5E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAIxD,qBAAa,gBAAiB,YAAW,OAAO;IAWlC,OAAO,CAAC,QAAQ,CAAC,MAAM;IAVnC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB;mGAC+F;IAC/F,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB;;oFAEgF;IAChF,QAAQ,CAAC,mBAAmB,QAAQ;IACpC,QAAQ,CAAC,0BAA0B,EAAE,OAAO,CAAC;gBAEhB,MAAM,EAAE,iBAAiB;IAWtD,WAAW,IAAI,WAAW;IAS1B,mBAAmB,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;IAQ1D,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;IAM9E,UAAU,CAAC,MAAM,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;IAQ5E,gBAAgB,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO;CAKpD"}
@@ -28,13 +28,10 @@ export class CustomAcpBackend {
28
28
  * repair ladder can never converge on a contract the model was never shown. */
29
29
  embedSchemaInPrompt = true;
30
30
  injectStructuredOutputTool;
31
- customCapabilities;
32
31
  constructor(config) {
33
32
  this.config = config;
34
33
  this.id = config.name;
35
34
  this.injectStructuredOutputTool = config.structuredOutputTool ?? true;
36
- if (config.customCapabilities)
37
- this.customCapabilities = config.customCapabilities;
38
35
  const spawnIdentity = JSON.stringify({
39
36
  command: config.command,
40
37
  args: config.args ?? [],
@@ -23,7 +23,7 @@ const require = createRequire(import.meta.url);
23
23
  * not real for the opencode built-in despite it advertising `loadSession: true`). The stable
24
24
  * root keeps every spawned server's persisted sessions reachable by later processes — pool
25
25
  * recycles within one daemon AND daemon restarts — so the restore path's re-attach arm and the
26
- * lazy followUp re-attach both work. It lives OUTSIDE the user's real opencode data dir (a
26
+ * lazy session/load re-attachment both work. It lives OUTSIDE the user's real opencode data dir (a
27
27
  * sibling `agentprism/opencode` tree under the same data home), so the daemon's instances
28
28
  * never contend with the user's own interactive TUI for the sqlite store; the contention
29
29
  * protection that motivated the original isolation is retained for exactly that overlap. The