acpx 0.12.0 → 0.13.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.
Files changed (35) hide show
  1. package/README.md +11 -3
  2. package/dist/{cli-CxsS1XQp.js → cli-D52eGvxU.js} +5 -4
  3. package/dist/cli-D52eGvxU.js.map +1 -0
  4. package/dist/cli.d.ts +2 -3
  5. package/dist/cli.d.ts.map +1 -1
  6. package/dist/cli.js +84 -25
  7. package/dist/cli.js.map +1 -1
  8. package/dist/{client-DwNyFauq.d.ts → client-BeKvumq9.d.ts} +4 -3
  9. package/dist/client-BeKvumq9.d.ts.map +1 -0
  10. package/dist/{flags-Bjq_XQ4-.js → flags---9OR06b.js} +36 -9
  11. package/dist/flags---9OR06b.js.map +1 -0
  12. package/dist/{flows-Db_LZKu9.js → flows-CYfjwbn2.js} +14 -4
  13. package/dist/flows-CYfjwbn2.js.map +1 -0
  14. package/dist/flows.d.ts +6 -2
  15. package/dist/flows.d.ts.map +1 -1
  16. package/dist/flows.js +1 -1
  17. package/dist/{live-checkpoint-ClPCSdrW.js → live-checkpoint-CBecfnSH.js} +226 -20
  18. package/dist/live-checkpoint-CBecfnSH.js.map +1 -0
  19. package/dist/{output-CjdF5rHk.js → output-CzN8vLdE.js} +150 -18
  20. package/dist/output-CzN8vLdE.js.map +1 -0
  21. package/dist/runtime.d.ts +18 -14
  22. package/dist/runtime.d.ts.map +1 -1
  23. package/dist/runtime.js +34 -11
  24. package/dist/runtime.js.map +1 -1
  25. package/dist/{session-options-jkYbBxGE.d.ts → session-options-CTdZvr68.d.ts} +4 -2
  26. package/dist/session-options-CTdZvr68.d.ts.map +1 -0
  27. package/package.json +27 -27
  28. package/skills/acpx/SKILL.md +10 -7
  29. package/dist/cli-CxsS1XQp.js.map +0 -1
  30. package/dist/client-DwNyFauq.d.ts.map +0 -1
  31. package/dist/flags-Bjq_XQ4-.js.map +0 -1
  32. package/dist/flows-Db_LZKu9.js.map +0 -1
  33. package/dist/live-checkpoint-ClPCSdrW.js.map +0 -1
  34. package/dist/output-CjdF5rHk.js.map +0 -1
  35. package/dist/session-options-jkYbBxGE.d.ts.map +0 -1
package/dist/runtime.d.ts CHANGED
@@ -1,8 +1,7 @@
1
- import { a as AcpPermissionRequest, c as NonInteractivePermissionPolicy, f as SessionRecord, i as AcpPermissionDecision, l as PermissionMode, n as SystemPromptOption, s as McpServer$1, t as SessionAgentOptions } from "./session-options-jkYbBxGE.js";
2
- import { a as RequestedModelUnsupportedErrorCode, i as RequestedModelUnsupportedError, n as REQUESTED_MODEL_UNSUPPORTED_ERROR_CODE, o as RequestedModelUnsupportedReason, r as REQUESTED_MODEL_UNSUPPORTED_REASONS, s as isRequestedModelUnsupportedError, t as AcpClient } from "./client-DwNyFauq.js";
1
+ import { a as AcpPermissionRequest, c as NonInteractivePermissionPolicy, f as SessionRecord, i as AcpPermissionDecision, l as PermissionMode, n as SystemPromptOption, s as McpServer$1, t as SessionAgentOptions } from "./session-options-CTdZvr68.js";
2
+ import { a as RequestedModelUnsupportedErrorCode, i as RequestedModelUnsupportedError, n as REQUESTED_MODEL_UNSUPPORTED_ERROR_CODE, o as RequestedModelUnsupportedReason, r as REQUESTED_MODEL_UNSUPPORTED_REASONS, s as isRequestedModelUnsupportedError, t as AcpClient } from "./client-BeKvumq9.js";
3
3
  import fs from "node:fs";
4
4
  import { ToolCallContent, ToolCallLocation, ToolKind } from "@agentclientprotocol/sdk";
5
-
6
5
  //#region src/agent-registry.d.ts
7
6
  declare const DEFAULT_AGENT_NAME = "codex";
8
7
  //#endregion
@@ -91,7 +90,8 @@ type AcpRuntimeUsageBreakdown = {
91
90
  */
92
91
  type AcpRuntimeAvailableCommand = {
93
92
  name: string;
94
- description?: string; /** True/false when ACP advertised whether this command has an input schema. */
93
+ description?: string;
94
+ /** True/false when ACP advertised whether this command has an input schema. */
95
95
  hasInput?: boolean;
96
96
  };
97
97
  /**
@@ -100,8 +100,10 @@ type AcpRuntimeAvailableCommand = {
100
100
  * exposes them on the runtime contract.
101
101
  */
102
102
  type AcpRuntimeSessionUsage = {
103
- cumulative?: AcpRuntimeUsageBreakdown; /** Cumulative session cost when the agent reported it. */
104
- cost?: AcpRuntimeUsageCost; /** Keyed by user-message id, matching the persisted reducer state. */
103
+ cumulative?: AcpRuntimeUsageBreakdown;
104
+ /** Cumulative session cost when the agent reported it. */
105
+ cost?: AcpRuntimeUsageCost;
106
+ /** Keyed by user-message id, matching the persisted reducer state. */
105
107
  perRequest?: Record<string, AcpRuntimeUsageBreakdown>;
106
108
  };
107
109
  type AcpRuntimeStatus = {
@@ -109,7 +111,8 @@ type AcpRuntimeStatus = {
109
111
  acpxRecordId?: string;
110
112
  backendSessionId?: string;
111
113
  agentSessionId?: string;
112
- models?: AcpRuntimeSessionModels; /** Token usage and cost from the persisted session record. */
114
+ models?: AcpRuntimeSessionModels;
115
+ /** Token usage and cost from the persisted session record. */
113
116
  usage?: AcpRuntimeSessionUsage;
114
117
  /**
115
118
  * Commands the agent advertised via `available_commands_update`.
@@ -137,7 +140,8 @@ type AcpRuntimeEvent = {
137
140
  text: string;
138
141
  tag?: AcpSessionUpdateTag;
139
142
  used?: number;
140
- size?: number; /** Populated on `usage_update` events when the agent reported a cost. */
143
+ size?: number;
144
+ /** Populated on `usage_update` events when the agent reported a cost. */
141
145
  cost?: AcpRuntimeUsageCost;
142
146
  /**
143
147
  * Populated on `usage_update` events when the agent attached a
@@ -164,20 +168,20 @@ type AcpRuntimeEvent = {
164
168
  rawInput?: unknown;
165
169
  rawOutput?: unknown;
166
170
  content?: ToolCallContent[];
167
- }
171
+ } |
168
172
  /**
169
173
  * Compatibility terminal event emitted by runTurn(...). startTurn(...).events
170
174
  * does not emit terminal events; use AcpRuntimeTurn.result instead.
171
175
  */
172
- | {
176
+ {
173
177
  type: "done";
174
178
  stopReason?: string;
175
- }
179
+ } |
176
180
  /**
177
181
  * Compatibility failure event emitted by runTurn(...). startTurn(...).events
178
182
  * does not emit terminal events; use AcpRuntimeTurn.result instead.
179
183
  */
180
- | {
184
+ {
181
185
  type: "error";
182
186
  message: string;
183
187
  code?: string;
@@ -253,7 +257,7 @@ interface AcpSessionStore {
253
257
  save(record: AcpSessionRecord): Promise<void>;
254
258
  }
255
259
  interface AcpAgentRegistry {
256
- resolve(agentName: string): string;
260
+ resolve(agentName: string): string | string[];
257
261
  list(): string[];
258
262
  }
259
263
  type AcpRuntimeOptions = {
@@ -392,7 +396,7 @@ type AcpxRuntimeLike = AcpRuntime & {
392
396
  doctor(): Promise<AcpRuntimeDoctorReport>;
393
397
  };
394
398
  declare function createAgentRegistry(params?: {
395
- overrides?: Record<string, string>;
399
+ overrides?: Record<string, string | string[]>;
396
400
  }): AcpAgentRegistry;
397
401
  declare class AcpxRuntime implements AcpxRuntimeLike {
398
402
  private readonly options;
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.d.ts","names":[],"sources":["../src/agent-registry.ts","../src/runtime/public/contract.ts","../src/runtime/engine/manager.ts","../src/runtime/public/file-session-store.ts","../src/runtime/public/errors.ts","../src/runtime/public/shared.ts","../src/runtime/public/handle-state.ts","../src/runtime.ts"],"mappings":"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"}
1
+ {"version":3,"file":"runtime.d.ts","names":[],"sources":["../src/agent-registry.ts","../src/runtime/public/contract.ts","../src/runtime/engine/manager.ts","../src/runtime/public/file-session-store.ts","../src/runtime/public/errors.ts","../src/runtime/public/shared.ts","../src/runtime/public/handle-state.ts","../src/runtime.ts"],"mappings":"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"}
package/dist/runtime.js CHANGED
@@ -1,4 +1,4 @@
1
- import { A as REQUESTED_MODEL_UNSUPPORTED_ERROR_CODE, At as listBuiltInAgents, D as applyLifecycleSnapshotToRecord, E as applyConversation, F as modelStateFromConfigOptions, It as normalizeOutputError, Lt as extractAcpError, M as RequestedModelUnsupportedError, Mt as resolveAgentCommand, O as reconcileAgentSessionId, Ot as withTimeout, P as isRequestedModelUnsupportedError, Rt as isAcpResourceNotFoundError, S as advertisedModelState, T as sessionOptionsFromRecord, Z as assertPersistedKeyPolicy, _ as createSessionConversation, a as applyRequestedModelIfAdvertised, b as recordSessionUpdate, c as setCurrentModelId, d as setDesiredModelId, f as syncAdvertisedModelState, g as cloneSessionConversation, h as cloneSessionAcpxState, i as connectAndLoadSession, j as REQUESTED_MODEL_UNSUPPORTED_REASONS, k as AcpClient, kt as DEFAULT_AGENT_NAME, l as setDesiredConfigOption, m as applyConfigOptionsToState, n as runPromptTurn, o as currentModelIdFromSetModelResponse, ot as parseSessionRecord, p as applyConfigOptionsToRecord, r as withConnectedSession, s as clearDesiredConfigOption, st as serializeSessionRecordForDisk, t as LiveSessionCheckpoint, u as setDesiredModeId, ut as defaultSessionEventLog, v as recordClientOperation, w as persistSessionOptions, wt as textPrompt, x as trimConversationForRuntime, y as recordPromptSubmission } from "./live-checkpoint-ClPCSdrW.js";
1
+ import { $ as createAtomicWriteTempPath, A as REQUESTED_MODEL_UNSUPPORTED_ERROR_CODE, D as applyLifecycleSnapshotToRecord, Dt as textPrompt, E as applyConversation, F as modelStateFromConfigOptions, Ft as resolveAgentArgv, Ht as extractAcpError, I as normalizeAgentCommandInput, It as resolveAgentCommand, Lt as resolveCanonicalAgentName, M as RequestedModelUnsupportedError, Mt as DEFAULT_AGENT_NAME, Nt as listBuiltInAgents, O as reconcileAgentSessionId, P as isRequestedModelUnsupportedError, Pt as normalizeAgentName, S as advertisedModelState, T as sessionOptionsFromRecord, Ut as isAcpResourceNotFoundError, Vt as normalizeOutputError, _ as createSessionConversation, a as applyRequestedModelIfAdvertised, b as recordSessionUpdate, c as setCurrentModelId, d as setDesiredModelId, et as assertPersistedKeyPolicy, f as syncAdvertisedModelState, g as cloneSessionConversation, h as cloneSessionAcpxState, i as connectAndLoadSession, j as REQUESTED_MODEL_UNSUPPORTED_REASONS, jt as withTimeout, k as AcpClient, l as setDesiredConfigOption, lt as parseSessionRecord, m as applyConfigOptionsToState, n as runPromptTurn, o as currentModelIdFromSetModelResponse, p as applyConfigOptionsToRecord, pt as defaultSessionEventLog, r as withConnectedSession, s as clearDesiredConfigOption, t as LiveSessionCheckpoint, u as setDesiredModeId, ut as serializeSessionRecordForDisk, v as recordClientOperation, w as persistSessionOptions, x as trimConversationForRuntime, y as recordPromptSubmission } from "./live-checkpoint-CBecfnSH.js";
2
2
  import path from "node:path";
3
3
  import fs from "node:fs/promises";
4
4
  import { randomUUID } from "node:crypto";
@@ -561,6 +561,7 @@ function createInitialRecord(params) {
561
561
  acpSessionId: params.sessionId,
562
562
  agentSessionId: params.agentSessionId,
563
563
  agentCommand: params.agentCommand,
564
+ agentArgv: params.agentArgv,
564
565
  cwd: params.cwd,
565
566
  name: params.sessionName,
566
567
  createdAt: now,
@@ -822,7 +823,7 @@ var AcpRuntimeManager = class {
822
823
  }
823
824
  async ensureSession(input) {
824
825
  const cwd = path.resolve(input.cwd?.trim() || this.options.cwd);
825
- const agentCommand = this.options.agentRegistry.resolve(input.agent);
826
+ const { agentCommand, agentArgv } = normalizeAgentCommandInput(this.options.agentRegistry.resolve(input.agent));
826
827
  const existing = await this.options.sessionStore.load(input.sessionKey);
827
828
  if (input.mode === "persistent" && existing && shouldReuseExistingRecord(existing, {
828
829
  cwd,
@@ -837,6 +838,7 @@ var AcpRuntimeManager = class {
837
838
  }
838
839
  const client = this.createClient({
839
840
  agentCommand,
841
+ agentArgv,
840
842
  cwd,
841
843
  mcpServers: [...this.options.mcpServers ?? []],
842
844
  permissionMode: this.options.permissionMode,
@@ -853,6 +855,7 @@ var AcpRuntimeManager = class {
853
855
  input,
854
856
  client,
855
857
  agentCommand,
858
+ agentArgv,
856
859
  cwd,
857
860
  session
858
861
  });
@@ -863,12 +866,13 @@ var AcpRuntimeManager = class {
863
866
  }
864
867
  }
865
868
  async createAndSaveRuntimeRecord(params) {
866
- const { input, client, agentCommand, cwd, session } = params;
869
+ const { input, client, agentCommand, agentArgv, cwd, session } = params;
867
870
  const record = createInitialRecord({
868
871
  recordId: createRecordId(input.sessionKey, input.mode),
869
872
  sessionName: input.sessionKey,
870
873
  sessionId: session.sessionId,
871
874
  agentCommand,
875
+ agentArgv,
872
876
  cwd,
873
877
  agentSessionId: session.agentSessionId
874
878
  });
@@ -1029,6 +1033,7 @@ var AcpRuntimeManager = class {
1029
1033
  createTurnClient(record) {
1030
1034
  return this.createClient({
1031
1035
  agentCommand: record.agentCommand,
1036
+ agentArgv: record.agentArgv,
1032
1037
  cwd: record.cwd,
1033
1038
  mcpServers: [...this.options.mcpServers ?? []],
1034
1039
  permissionMode: this.options.permissionMode,
@@ -1316,6 +1321,7 @@ var AcpRuntimeManager = class {
1316
1321
  const pendingClient = await this.readPendingPersistentClient(record, { consume: true });
1317
1322
  const client = pendingClient ?? this.createClient({
1318
1323
  agentCommand: record.agentCommand,
1324
+ agentArgv: record.agentArgv,
1319
1325
  cwd: record.cwd,
1320
1326
  mcpServers: [...this.options.mcpServers ?? []],
1321
1327
  permissionMode: this.options.permissionMode,
@@ -1382,7 +1388,7 @@ var FileSessionStore = class {
1382
1388
  const persisted = serializeSessionRecordForDisk(record);
1383
1389
  assertPersistedKeyPolicy(persisted);
1384
1390
  const file = this.filePath(record.acpxRecordId);
1385
- const tempFile = `${file}.${process.pid}.${Date.now()}.tmp`;
1391
+ const tempFile = createAtomicWriteTempPath(file);
1386
1392
  const payload = JSON.stringify(persisted, null, 2);
1387
1393
  await fs.writeFile(tempFile, `${payload}\n`, "utf8");
1388
1394
  await fs.rename(tempFile, file);
@@ -1395,7 +1401,8 @@ function createFileSessionStore(options) {
1395
1401
  //#region src/runtime/public/handle-state.ts
1396
1402
  const ACPX_RUNTIME_HANDLE_PREFIX = "acpx:v2:";
1397
1403
  function encodeAcpxRuntimeHandleState(state) {
1398
- return `${ACPX_RUNTIME_HANDLE_PREFIX}${Buffer.from(JSON.stringify(state), "utf8").toString("base64url")}`;
1404
+ const payload = Buffer.from(JSON.stringify(state), "utf8").toString("base64url");
1405
+ return `${ACPX_RUNTIME_HANDLE_PREFIX}${payload}`;
1399
1406
  }
1400
1407
  function decodeAcpxRuntimeHandleState(runtimeSessionName) {
1401
1408
  const trimmed = runtimeSessionName.trim();
@@ -1463,7 +1470,7 @@ function normalizeRuntimeDetails(details) {
1463
1470
  }
1464
1471
  async function probeRuntime(options, deps = {}) {
1465
1472
  const agentName = options.probeAgent?.trim() || "codex";
1466
- const agentCommand = options.agentRegistry.resolve(agentName);
1473
+ const agentCommand = normalizeAgentCommandInput(options.agentRegistry.resolve(agentName));
1467
1474
  const client = createProbeClient(options, agentCommand, deps);
1468
1475
  try {
1469
1476
  await client.start();
@@ -1472,7 +1479,7 @@ async function probeRuntime(options, deps = {}) {
1472
1479
  message: "embedded ACP runtime ready",
1473
1480
  details: [
1474
1481
  `agent=${agentName}`,
1475
- `command=${agentCommand}`,
1482
+ `command=${agentCommand.agentCommand}`,
1476
1483
  `cwd=${options.cwd}`,
1477
1484
  ...client.initializeResult?.protocolVersion ? [`protocolVersion=${client.initializeResult.protocolVersion}`] : []
1478
1485
  ]
@@ -1483,7 +1490,7 @@ async function probeRuntime(options, deps = {}) {
1483
1490
  message: "embedded ACP runtime probe failed",
1484
1491
  details: [
1485
1492
  `agent=${agentName}`,
1486
- `command=${agentCommand}`,
1493
+ `command=${agentCommand.agentCommand}`,
1487
1494
  `cwd=${options.cwd}`,
1488
1495
  formatRuntimeDetail(error)
1489
1496
  ]
@@ -1494,7 +1501,7 @@ async function probeRuntime(options, deps = {}) {
1494
1501
  }
1495
1502
  function createProbeClient(options, agentCommand, deps) {
1496
1503
  const clientOptions = {
1497
- agentCommand,
1504
+ ...agentCommand,
1498
1505
  cwd: options.cwd,
1499
1506
  mcpServers: [...options.mcpServers ?? []],
1500
1507
  permissionMode: options.permissionMode,
@@ -1512,15 +1519,31 @@ const ACPX_CAPABILITIES = { controls: [
1512
1519
  "session/status"
1513
1520
  ] };
1514
1521
  function createAgentRegistry(params) {
1522
+ const overrides = normalizeRegistryOverrides(params?.overrides);
1515
1523
  return {
1516
1524
  resolve(agentName) {
1517
- return resolveAgentCommand(agentName, params?.overrides);
1525
+ const normalizedAgentName = normalizeAgentName(agentName);
1526
+ return overrides[normalizedAgentName] ?? overrides[resolveCanonicalAgentName(agentName)] ?? resolveAgentArgv(agentName) ?? resolveAgentCommand(agentName);
1518
1527
  },
1519
1528
  list() {
1520
- return listBuiltInAgents(params?.overrides);
1529
+ return listBuiltInAgents(overrides);
1521
1530
  }
1522
1531
  };
1523
1532
  }
1533
+ function normalizeRegistryOverrides(values) {
1534
+ const normalized = {};
1535
+ for (const [name, value] of Object.entries(values ?? {})) {
1536
+ const normalizedName = normalizeAgentName(name);
1537
+ if (!normalizedName) continue;
1538
+ const normalizedValue = normalizeRegistryOverride(value);
1539
+ if (normalizedValue) normalized[normalizedName] = normalizedValue;
1540
+ }
1541
+ return normalized;
1542
+ }
1543
+ function normalizeRegistryOverride(value) {
1544
+ if (typeof value === "string") return value.trim() || void 0;
1545
+ return value.length > 0 && value[0]?.length ? [...value] : void 0;
1546
+ }
1524
1547
  var AcpxRuntime = class {
1525
1548
  options;
1526
1549
  testOptions;