acpx 0.17.1 → 0.18.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 (36) hide show
  1. package/dist/{agent-registry-evUoJINz.js → agent-registry-DdKB-zia.js} +16 -17
  2. package/dist/{agent-registry-evUoJINz.js.map → agent-registry-DdKB-zia.js.map} +1 -1
  3. package/dist/agent-registry.d.ts.map +1 -1
  4. package/dist/agent-registry.js +1 -1
  5. package/dist/{cli-B2ycKzaO.js → cli-8mVHeUXh.js} +5 -5
  6. package/dist/{cli-B2ycKzaO.js.map → cli-8mVHeUXh.js.map} +1 -1
  7. package/dist/cli.js +122 -94
  8. package/dist/cli.js.map +1 -1
  9. package/dist/{client-CkbBoSGd.d.ts → client-DeNKZZcu.d.ts} +14 -12
  10. package/dist/client-DeNKZZcu.d.ts.map +1 -0
  11. package/dist/{flows-xGyhmoHO.js → flows-WOQNzCMC.js} +5 -5
  12. package/dist/{flows-xGyhmoHO.js.map → flows-WOQNzCMC.js.map} +1 -1
  13. package/dist/flows.d.ts +1 -1
  14. package/dist/flows.js +1 -1
  15. package/dist/{invocation-options-eZEBh4vd.js → invocation-options-B6d7TI-y.js} +7 -6
  16. package/dist/{invocation-options-eZEBh4vd.js.map → invocation-options-B6d7TI-y.js.map} +1 -1
  17. package/dist/{ipc-D2rstexT.js → ipc-BJrvfNXr.js} +305 -88
  18. package/dist/ipc-BJrvfNXr.js.map +1 -0
  19. package/dist/{output-D2xL6wdp.js → output-CL18YmsG.js} +9 -6
  20. package/dist/output-CL18YmsG.js.map +1 -0
  21. package/dist/{queue-owner-runtime-Dgv3e2Tp.js → queue-owner-runtime-Cr0dWJuL.js} +952 -433
  22. package/dist/queue-owner-runtime-Cr0dWJuL.js.map +1 -0
  23. package/dist/runtime.d.ts +39 -3
  24. package/dist/runtime.d.ts.map +1 -1
  25. package/dist/runtime.js +272 -154
  26. package/dist/runtime.js.map +1 -1
  27. package/dist/{session-watch-CTe9Bnbc.js → session-watch-B8Q_TsGf.js} +4 -4
  28. package/dist/{session-watch-CTe9Bnbc.js.map → session-watch-B8Q_TsGf.js.map} +1 -1
  29. package/dist/{watch-DxuXEc8n.js → watch-Dp73ph8h.js} +2 -2
  30. package/dist/{watch-DxuXEc8n.js.map → watch-Dp73ph8h.js.map} +1 -1
  31. package/package.json +1 -1
  32. package/skills/acpx/SKILL.md +26 -7
  33. package/dist/client-CkbBoSGd.d.ts.map +0 -1
  34. package/dist/ipc-D2rstexT.js.map +0 -1
  35. package/dist/output-D2xL6wdp.js.map +0 -1
  36. package/dist/queue-owner-runtime-Dgv3e2Tp.js.map +0 -1
@@ -22,7 +22,10 @@ type RequestedModelUnsupportedReason = (typeof REQUESTED_MODEL_UNSUPPORTED_REASO
22
22
  declare class RequestedModelUnsupportedError extends Error {
23
23
  readonly code: "ACP_MODEL_UNSUPPORTED";
24
24
  readonly reason: RequestedModelUnsupportedReason;
25
- constructor(message: string, reason: RequestedModelUnsupportedReason);
25
+ readonly ambiguous?: true;
26
+ constructor(message: string, reason: RequestedModelUnsupportedReason, details?: {
27
+ ambiguous?: true;
28
+ });
26
29
  }
27
30
  declare function isRequestedModelUnsupportedError(value: unknown): value is RequestedModelUnsupportedError;
28
31
  //#endregion
@@ -49,7 +52,6 @@ type SessionLoadResult = {
49
52
  };
50
53
  type SessionResumeResult = SessionLoadResult;
51
54
  type AgentDisconnectReason = "process_exit" | "process_close" | "pipe_close" | "connection_close";
52
- type ModelControlOverride = Pick<SessionModelState, "configId"> & Partial<Pick<SessionModelState, "availableModels">>;
53
55
  type AgentExitInfo = {
54
56
  exitCode: number | null;
55
57
  signal: NodeJS.Signals | null;
@@ -91,8 +93,6 @@ declare class AcpClient {
91
93
  private lastKnownPid?;
92
94
  private readonly promptPermissionFailures;
93
95
  private readonly pendingConnectionRequests;
94
- private readonly modelConfigIds;
95
- private readonly legacyModelSessionIds;
96
96
  constructor(options: AcpClientOptions);
97
97
  get initializeResult(): InitializeResponse | undefined;
98
98
  getAgentPid(): number | undefined;
@@ -119,7 +119,7 @@ declare class AcpClient {
119
119
  hasReusableSession(sessionId: string): boolean;
120
120
  hasActivePrompt(sessionId?: string): boolean;
121
121
  hasUnresolvedPrompt(): boolean;
122
- endPromptElicitation(sessionId: string): void;
122
+ private abortSessionRequests;
123
123
  start(): Promise<void>;
124
124
  private resolveAgentLaunchPlan;
125
125
  private logAgentLaunch;
@@ -147,14 +147,12 @@ declare class AcpClient {
147
147
  private returnPromptResponseOrPermissionFailure;
148
148
  private throwPromptPermissionFailureIfPresent;
149
149
  setSessionMode(sessionId: string, modeId: string, authority?: AcpControlAuthority): Promise<void>;
150
- setSessionConfigOption(sessionId: string, configId: string, value: string, authority?: AcpControlAuthority): Promise<SetSessionConfigOptionResponse>;
151
- setSessionModel(sessionId: string, modelId: string, controlOverride?: ModelControlOverride, authority?: AcpControlAuthority): Promise<SetSessionConfigOptionResponse | undefined>;
150
+ setSessionConfigOption(sessionId: string, configId: string, value: string, models: SessionModelState | undefined, authority?: AcpControlAuthority): Promise<SetSessionConfigOptionResponse>;
151
+ setSessionModel(sessionId: string, modelId: string, models: SessionModelState | undefined, authority?: AcpControlAuthority): Promise<SetSessionConfigOptionResponse | undefined>;
152
+ private resolveSessionModelId;
152
153
  private setSessionModelThroughConfig;
153
154
  private setSessionModelThroughLegacyMethod;
154
155
  private throwSessionModelError;
155
- private resolveModelControl;
156
- private rememberSessionModels;
157
- private updateRememberedSessionModels;
158
156
  cancel(sessionId: string): Promise<void>;
159
157
  closeSession(sessionId: string): Promise<void>;
160
158
  listSessions(params?: ListSessionsRequest): Promise<ListSessionsResponse>;
@@ -182,11 +180,14 @@ declare class AcpClient {
182
180
  private isGrokBuildAcpCommand;
183
181
  private authenticateIfRequired;
184
182
  private handlePermissionRequest;
183
+ private finishPermissionRequest;
184
+ private hasPermissionOwner;
185
185
  private handleElicitationRequest;
186
186
  private resolveElicitationOwner;
187
187
  private resolveElicitationScope;
188
188
  private isElicitationSessionCancelling;
189
- private resolvePermissionOwner;
189
+ private captureDelegatedRequestOwner;
190
+ private isDelegatedRequestActive;
190
191
  private tryHandlePermissionRequestWithHost;
191
192
  private hostPermissionDecisionResponse;
192
193
  private hostPermissionErrorResponse;
@@ -206,6 +207,7 @@ declare class AcpClient {
206
207
  private handleReadTextFile;
207
208
  private handleWriteTextFile;
208
209
  private handleCreateTerminal;
210
+ private runDelegatedOperation;
209
211
  private cancellationSignalForSession;
210
212
  private takePermissionAbortController;
211
213
  private recordPermissionDecision;
@@ -219,4 +221,4 @@ declare class AcpClient {
219
221
  }
220
222
  //#endregion
221
223
  export { RequestedModelUnsupportedErrorCode as a, AcpControlAuthority as c, RequestedModelUnsupportedError as i, REQUESTED_MODEL_UNSUPPORTED_ERROR_CODE as n, RequestedModelUnsupportedReason as o, REQUESTED_MODEL_UNSUPPORTED_REASONS as r, isRequestedModelUnsupportedError as s, AcpClient as t };
222
- //# sourceMappingURL=client-CkbBoSGd.d.ts.map
224
+ //# sourceMappingURL=client-DeNKZZcu.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client-DeNKZZcu.d.ts","names":[],"sources":["../src/async-control.ts","../src/acp/model-support.ts","../src/acp/client.ts"],"mappings":";;;KAcY;EACV,SAAS;EACT;;;;KCbU;EACV;EACA;EACA,iBAAiB;IACf;IACA;;;cAaS;KAED,4CAA4C;cAE3C;KAKD,0CAA0C;cAEzC,uCAAuC;WACzC;WACA,QAAQ;WACR;EAGP,YAAA,iBACA,QAAQ,iCACR;IAAY;;;iBAoBA,iCACd,iBACC,SAAS;;;KCmJP;EACH;EACA;EACA;;KAGU;EACV;EACA;EACA,gBAAgB;EAChB,SAAS;EACT;EACA;;KAGU;EACV;EACA,gBAAgB;EAChB,SAAS;EACT;EACA;;KAGU,sBAAsB;KA8B7B;KAqFO;EACV;EACA,QAAQ,OAAO;EACf;EACA,QAAQ;EACR;;KAGU;EACV;EACA;EACA;EACA,WAAW;;cA0CA;UACH;UACA;UACA;mBACS;mBACA;UACT;UACA;UACA;mBAQS;mBAMA;mBACA;UACT;UACA;UACA;UACA;UACA;UACA;mBACS;mBACA;mBACA;UACT;UAEA;UACA;UACA;UACA;mBACS;mBACA;EAEL,YAAA,SAAS;MAmCjB,oBAAoB;EAIxB;EAIA,sBAAsB;EAItB,6BAA6B;EAW7B;EAIA;EAIA;EAIA;EAIA,iBACE,UAAU,KACR;EAWJ;EAIA,qBAAqB;IACnB,iBAAiB;IACjB,4BAA4B;IAC5B,mBAAmB;IACnB;IACA;IACA;IACA;;UAuBM;UASA;UAcA;EASR,mBAAmB;EAInB,gBAAgB;EAUhB;UAIQ;EAWF,SAAS;UAwFD;UA6BN;UAiBM;UAcA;UAsDA;UAmBN;UAgEM;UAwBA;UAoBA;UA4BN;EAgBF,cAAc,eAAyB,QAAQ;EA8C/C,YAAY,mBAAmB,eAAyB,QAAQ;EAKhE,uBACJ,mBACA,cACA,UAAS,qBACR,QAAQ;EAgCL,cAAc,mBAAmB,eAAyB,QAAQ;UAiBhE;UAWA;EAKF,OACJ,mBACA,QAAQ,sBACR,yBAAyB,sBACzB,gBAAgB,uBAChB,sBAAsB,sBACtB,YAAY,sBACX,QAAQ;UA+CH;UAsBA;UAaA;UAUA;UAcA;UAwBA;UAYA;UAQA;EAOF,eACJ,mBACA,gBACA,YAAY,sBACX;EAaG,uBACJ,mBACA,kBACA,eACA,QAAQ,+BACR,YAAY,sBACX,QAAQ;EAsBL,gBACJ,mBACA,iBACA,QAAQ,+BACR,YAAY,sBACX,QAAQ;UAmBH;UAUM;UAoBA;UAqBN;EAoBF,OAAO,oBAAoB;EA8B3B,aAAa,oBAAoB;EAcjC,aAAa,SAAQ,sBAA2B,QAAQ;EAOxD,6BAA6B;EAS7B,mBAAmB,kBAAiB,QAAQ;EAyC5C,SAAS;UA0DD;UAaN;UAIA;UAIM;UAON;UAWM;UAgCN;UAYM;UAyBN;UAkBA;UAOA;UAOA;UAcA;UASA;UAqEM;UA0BN;UA2CA;UAQA;UAUA;UAcM;UA6BA;UAiCN;UAUA;UAQM;UAuCN;UAuBA;UAqBA;UAIA;UAwBA;UASM;UA8BN;UAoBA;UAiBM;UAwBN;UAqBA;UAQA;UAQA;UA+BA;UAmBA;UAyBA;UAKA;UAwBA;UASA;UAUM;UAqDN;UAYM;UAmBA;UASA;UASA;UAoBN;UASA;UAMA;UAaA;UAWM;UAkBA;EAgCR,0BAA0B;IAC9B;IACA;MACE"}
@@ -1,7 +1,7 @@
1
- import { t as createOutputFormatter } from "./output-D2xL6wdp.js";
2
- import { C as textPrompt, Dt as SESSION_RECORD_SCHEMA, F as resolveSessionRecord, S as promptToDisplayText, Tt as PERMISSION_MODES, ct as defaultSessionEventLog, mt as writePrivateJsonFile, pt as writePrivateFile } from "./ipc-D2rstexT.js";
3
- import { B as recordClientOperation, H as recordSessionUpdate, L as cloneSessionAcpxState, V as recordPromptSubmission, _ as cancelSessionPrompt, at as withInterrupt, i as runOnce, m as createSessionWithClient, nt as InterruptedError, o as sendSessionDirect, ot as withTimeout, rt as TimeoutError, z as createSessionConversation } from "./queue-owner-runtime-Dgv3e2Tp.js";
4
- import { M as runTimedExecFile } from "./agent-registry-evUoJINz.js";
1
+ import { t as createOutputFormatter } from "./output-CL18YmsG.js";
2
+ import { C as promptToDisplayText, Dt as PERMISSION_MODES, I as resolveSessionRecord, ht as writePrivateJsonFile, kt as SESSION_RECORD_SCHEMA, lt as defaultSessionEventLog, mt as writePrivateFile, w as textPrompt } from "./ipc-BJrvfNXr.js";
3
+ import { B as cloneSessionAcpxState, G as recordSessionUpdate, H as createSessionConversation, U as recordClientOperation, W as recordPromptSubmission, _ as cancelSessionPrompt, at as InterruptedError, ct as withInterrupt, i as runOnce, lt as withTimeout, m as createSessionWithClient, o as sendSessionDirect, ot as TimeoutError } from "./queue-owner-runtime-Cr0dWJuL.js";
4
+ import { M as runTimedExecFile } from "./agent-registry-DdKB-zia.js";
5
5
  import path from "node:path";
6
6
  import { spawn } from "node:child_process";
7
7
  import fs from "node:fs/promises";
@@ -2229,4 +2229,4 @@ function formatDecisionPrompt(question, choices, field) {
2229
2229
  //#endregion
2230
2230
  export { parseStrictJsonObject as a, validateFlowDefinition as c, checkpoint as d, compute as f, isDefinedFlow as h, parseJsonObject as i, acp as l, shell as m, decisionEdge as n, FlowRunner as o, defineFlow as p, extractJsonObject as r, flowRunsBaseDir as s, decision as t, action as u };
2231
2231
 
2232
- //# sourceMappingURL=flows-xGyhmoHO.js.map
2232
+ //# sourceMappingURL=flows-WOQNzCMC.js.map