@agentex/agent 0.0.16 → 0.0.17
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 +49 -4
- package/dist/providers/claude/index.d.ts.map +1 -1
- package/dist/providers/claude/index.js +2 -0
- package/dist/providers/claude/index.js.map +1 -1
- package/dist/providers/claude/session.d.ts +20 -4
- package/dist/providers/claude/session.d.ts.map +1 -1
- package/dist/providers/claude/session.js +99 -27
- package/dist/providers/claude/session.js.map +1 -1
- package/dist/providers/codex/index.d.ts.map +1 -1
- package/dist/providers/codex/index.js +2 -0
- package/dist/providers/codex/index.js.map +1 -1
- package/dist/providers/codex/session.d.ts +6 -4
- package/dist/providers/codex/session.d.ts.map +1 -1
- package/dist/providers/codex/session.js +94 -55
- package/dist/providers/codex/session.js.map +1 -1
- package/dist/providers/cursor/index.d.ts.map +1 -1
- package/dist/providers/cursor/index.js +2 -0
- package/dist/providers/cursor/index.js.map +1 -1
- package/dist/providers/gemini/index.d.ts.map +1 -1
- package/dist/providers/gemini/index.js +2 -0
- package/dist/providers/gemini/index.js.map +1 -1
- package/dist/providers/openclaw/index.d.ts.map +1 -1
- package/dist/providers/openclaw/index.js +2 -0
- package/dist/providers/openclaw/index.js.map +1 -1
- package/dist/providers/opencode/index.d.ts.map +1 -1
- package/dist/providers/opencode/index.js +2 -0
- package/dist/providers/opencode/index.js.map +1 -1
- package/dist/providers/pi/index.d.ts.map +1 -1
- package/dist/providers/pi/index.js +2 -0
- package/dist/providers/pi/index.js.map +1 -1
- package/dist/providers/process/index.d.ts.map +1 -1
- package/dist/providers/process/index.js +2 -0
- package/dist/providers/process/index.js.map +1 -1
- package/dist/types.d.ts +80 -2
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/dist/utils/skill-commands.d.ts.map +1 -1
- package/dist/utils/skill-commands.js +4 -2
- package/dist/utils/skill-commands.js.map +1 -1
- package/package.json +2 -1
package/README.md
CHANGED
|
@@ -8,7 +8,7 @@ Programmatic execution of AI coding agents. Spawn and manage Claude Code, Codex,
|
|
|
8
8
|
npm install @agentex/agent
|
|
9
9
|
```
|
|
10
10
|
|
|
11
|
-
Node.js >= 18. Each provider requires its CLI to be installed and on `$PATH`.
|
|
11
|
+
Node.js >= 18. Each provider requires its CLI to be installed and on `$PATH`. The Codex session adapter additionally requires **codex-cli 0.130.0 or newer** (the `app-server` subcommand); older CLIs will fail with `unexpected argument '--json'`.
|
|
12
12
|
|
|
13
13
|
## Quick Start
|
|
14
14
|
|
|
@@ -55,7 +55,7 @@ console.log(result.raw); // the final provider-native event, verbatim (es
|
|
|
55
55
|
| `openclaw` | gateway HTTP | OpenClaw HTTP-gateway agent |
|
|
56
56
|
| `process` | any executable | Generic process executor (arbitrary binary) |
|
|
57
57
|
|
|
58
|
-
Provider capabilities (sessions, skills, workspaces, MCP, model discovery, quota probing, instructions) are declared on each module's `capabilities` field — check `provider.capabilities` to branch on what's supported. Skill-aware providers also report:
|
|
58
|
+
Provider capabilities (sessions, skills, workspaces, MCP, model discovery, quota probing, instructions, concurrent send, cancel queued messages) are declared on each module's `capabilities` field — check `provider.capabilities` to branch on what's supported. Skill-aware providers also report:
|
|
59
59
|
|
|
60
60
|
- `skillInventory` — `"provider-init"` for Claude's runtime inventory, `"local-discovery"` for Codex, or `"none"`.
|
|
61
61
|
- `skillInvocation` — `"native-slash"` for Claude, `"expanded-prompt"` for Codex, `"configured-only"`, or `"unsupported"`.
|
|
@@ -257,13 +257,58 @@ const session = await claude.createSession!({
|
|
|
257
257
|
},
|
|
258
258
|
});
|
|
259
259
|
|
|
260
|
-
const
|
|
260
|
+
const { uuid, result } = await session.send("List the API routes in src/");
|
|
261
|
+
const turnResult = await result; // resolves on the next TurnResult
|
|
261
262
|
const followUp = await session.send("Now add rate limiting to each one.");
|
|
263
|
+
await followUp.result;
|
|
262
264
|
|
|
263
265
|
await session.close();
|
|
264
266
|
```
|
|
265
267
|
|
|
266
|
-
`session.send()` returns a `
|
|
268
|
+
`session.send()` returns a `SendHandle` with a synchronously-available `uuid` and a `result: Promise<TurnResult>`. `TurnResult` carries `summary`, `usage`, `costUsd`, and a `status` of `completed | failed | max_turns | max_budget | aborted`. Handle elicitations (MCP forms), hook callbacks, and interrupts through the corresponding `SessionContext` callbacks.
|
|
269
|
+
|
|
270
|
+
### Concurrent send ("type while the agent is working")
|
|
271
|
+
|
|
272
|
+
For providers with `capabilities.concurrentSend = true` (Claude, Codex), `session.send()` is callable at any time — including while a previous turn is still running. The underlying CLI's own queue handles ordering: Claude drains queued messages mid-turn as `<system-reminder>` attachments on the next tool-result batch; Codex coalesces them into the active or next turn.
|
|
273
|
+
|
|
274
|
+
```typescript
|
|
275
|
+
// Fire a long-running turn.
|
|
276
|
+
const { uuid, result } = await session.send("Run the test suite and fix any failures.");
|
|
277
|
+
|
|
278
|
+
// User decides they want a tweak — no need to wait for the turn to finish.
|
|
279
|
+
await session.send("While you're at it, also add a CHANGELOG entry.");
|
|
280
|
+
|
|
281
|
+
// Both messages get processed in the same turn (Claude mid-turn drain) or
|
|
282
|
+
// adjacent turns (Codex). Both `result` Promises resolve when the turn ends —
|
|
283
|
+
// they may resolve to the *same* TurnResult if the CLI coalesces them.
|
|
284
|
+
await result;
|
|
285
|
+
```
|
|
286
|
+
|
|
287
|
+
When multiple sends are coalesced into one turn by the CLI, the `result` Promises returned by each `send()` resolve with the **same** `TurnResult` object — callers cannot assume 1:1 correspondence between `send()` calls and `TurnResult`s.
|
|
288
|
+
|
|
289
|
+
For providers with `concurrentSend = false`, calling `send()` while a turn is in progress throws. Check the capability flag to gate UI:
|
|
290
|
+
|
|
291
|
+
```typescript
|
|
292
|
+
if (provider.capabilities.concurrentSend) {
|
|
293
|
+
// Render the "type while working" textarea.
|
|
294
|
+
}
|
|
295
|
+
```
|
|
296
|
+
|
|
297
|
+
### Cancelling a queued message
|
|
298
|
+
|
|
299
|
+
For providers with `capabilities.cancelQueuedMessage = true` (Claude only), `session.cancel(uuid)` removes a message from the CLI's queue if it hasn't started processing yet.
|
|
300
|
+
|
|
301
|
+
```typescript
|
|
302
|
+
const { uuid } = await session.send("Refactor the auth middleware.");
|
|
303
|
+
// ...user changes their mind...
|
|
304
|
+
const { cancelled } = await session.cancel(uuid);
|
|
305
|
+
if (cancelled) console.log("Pulled the message before the agent started on it.");
|
|
306
|
+
else console.log("Too late — the agent already drained it.");
|
|
307
|
+
```
|
|
308
|
+
|
|
309
|
+
`cancel()` is always callable. For providers with `cancelQueuedMessage = false` (Codex, and any session-less provider), it returns `{ cancelled: false }` immediately. For Claude, it sends a `cancel_async_message` control_request to the CLI, which runs `dequeueAllMatching` against its internal queue and reports whether the message was found.
|
|
310
|
+
|
|
311
|
+
> **Race note.** Cancellation is best-effort. If the CLI drained the message mid-turn (Claude's `query.ts` between-tool-batches drain) before your `cancel()` request landed, you get `{ cancelled: false }` — and the message will be visible to the model as a `<system-reminder>`. The library does not unmount what the model has already seen.
|
|
267
312
|
|
|
268
313
|
## Plan Mode
|
|
269
314
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/claude/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAA2D,MAAM,gBAAgB,CAAC;AAmB9G,eAAO,MAAM,cAAc,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/claude/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAA2D,MAAM,gBAAgB,CAAC;AAmB9G,eAAO,MAAM,cAAc,EAAE,cAsB5B,CAAC;AAEF,OAAO,EACL,uBAAuB,EACvB,+BAA+B,EAC/B,oBAAoB,EACpB,oBAAoB,EACpB,mBAAmB,EACnB,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EACf,oBAAoB,GACrB,MAAM,iBAAiB,CAAC;AACzB,YAAY,EACV,8BAA8B,EAC9B,wBAAwB,EACxB,2BAA2B,EAC3B,qBAAqB,EACrB,2BAA2B,EAC3B,qBAAqB,EACrB,gBAAgB,GACjB,MAAM,iBAAiB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/providers/claude/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AACzE,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAEtD,KAAK,UAAU,UAAU,CAAC,GAAiB;IACzC,MAAM,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC9B,eAAe,CAAC,GAAG,CAAC,CAAC;IACrB,MAAM,IAAI,GAAG,UAAU,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;IACvC,OAAO;QACL,SAAS,EAAE,IAAI,CAAC,MAAM,KAAK,cAAc,IAAI,CAAC,CAAC,GAAG,CAAC,mBAAmB,CAAC;QACvE,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,MAAM,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;KACrD,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,cAAc,GAAmB;IAC5C,IAAI,EAAE,QAAQ;IACd,YAAY,EAAE;QACZ,QAAQ,EAAE,IAAI;QACd,cAAc,EAAE,KAAK;QACrB,YAAY,EAAE,IAAI;QAClB,GAAG,EAAE,IAAI;QACT,MAAM,EAAE,IAAI;QACZ,cAAc,EAAE,eAAe;QAC/B,eAAe,EAAE,cAAc;QAC/B,YAAY,EAAE,IAAI;QAClB,SAAS,EAAE,IAAI;QACf,QAAQ,EAAE,IAAI;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/providers/claude/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AACzE,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAEtD,KAAK,UAAU,UAAU,CAAC,GAAiB;IACzC,MAAM,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC9B,eAAe,CAAC,GAAG,CAAC,CAAC;IACrB,MAAM,IAAI,GAAG,UAAU,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;IACvC,OAAO;QACL,SAAS,EAAE,IAAI,CAAC,MAAM,KAAK,cAAc,IAAI,CAAC,CAAC,GAAG,CAAC,mBAAmB,CAAC;QACvE,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,MAAM,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;KACrD,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,cAAc,GAAmB;IAC5C,IAAI,EAAE,QAAQ;IACd,YAAY,EAAE;QACZ,QAAQ,EAAE,IAAI;QACd,cAAc,EAAE,KAAK;QACrB,YAAY,EAAE,IAAI;QAClB,GAAG,EAAE,IAAI;QACT,MAAM,EAAE,IAAI;QACZ,cAAc,EAAE,eAAe;QAC/B,eAAe,EAAE,cAAc;QAC/B,YAAY,EAAE,IAAI;QAClB,SAAS,EAAE,IAAI;QACf,QAAQ,EAAE,IAAI;QACd,cAAc,EAAE,IAAI;QACpB,mBAAmB,EAAE,IAAI;KAC1B;IACD,OAAO,EAAE,qBAAqB;IAC9B,aAAa,EAAE,CAAC,GAAmB,EAAyB,EAAE,CAAC,mBAAmB,CAAC,GAAG,CAAC;IACvF,WAAW,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,sBAAsB,CAAC,QAAQ,EAAE,GAAG,CAAC;IAC3D,YAAY,EAAE,kBAAkB;IAChC,UAAU;IACV,UAAU,EAAE,mBAAmB;CAChC,CAAC;AAEF,OAAO,EACL,uBAAuB,EACvB,+BAA+B,EAC/B,oBAAoB,EACpB,oBAAoB,EACpB,mBAAmB,EACnB,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EACf,oBAAoB,GACrB,MAAM,iBAAiB,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { ChildProcess } from "node:child_process";
|
|
2
|
-
import type { AgentSession, SessionContext, SessionState,
|
|
2
|
+
import type { AgentSession, CancelResult, SendHandle, SessionContext, SessionState, UserInputResponse } from "../../types.js";
|
|
3
3
|
/**
|
|
4
4
|
* Build the wire-shape control_response for a `can_use_tool` request.
|
|
5
5
|
*
|
|
@@ -30,14 +30,19 @@ export declare class ClaudeSessionImpl implements AgentSession {
|
|
|
30
30
|
private _sessionId;
|
|
31
31
|
private _lineBuffer;
|
|
32
32
|
private _stderrBuffer;
|
|
33
|
-
private
|
|
34
|
-
private _turnReject;
|
|
33
|
+
private _pendingResults;
|
|
35
34
|
/**
|
|
36
35
|
* Tracks request_ids for async callbacks (permission, elicitation, hooks)
|
|
37
36
|
* that are still in-flight. If the CLI sends a control_cancel_request for
|
|
38
37
|
* one of these, we remove it so the stale response is never sent back.
|
|
39
38
|
*/
|
|
40
39
|
private _pendingCallbacks;
|
|
40
|
+
/**
|
|
41
|
+
* Outgoing control_requests we sent to the CLI and are awaiting a
|
|
42
|
+
* control_response for, keyed by request_id. Currently only used by
|
|
43
|
+
* `cancel(uuid)` (interrupt remains fire-and-forget).
|
|
44
|
+
*/
|
|
45
|
+
private _pendingControlResponses;
|
|
41
46
|
/**
|
|
42
47
|
* Serial dispatch chain for `onEvent`. Each dispatched event appends a
|
|
43
48
|
* handler invocation; the chain enforces in-order delivery and lets
|
|
@@ -46,14 +51,25 @@ export declare class ClaudeSessionImpl implements AgentSession {
|
|
|
46
51
|
*/
|
|
47
52
|
private _eventChain;
|
|
48
53
|
constructor(proc: ChildProcess, ctx: SessionContext, skillsDir: string | null);
|
|
54
|
+
/** Reject every pending send() Promise and outgoing control_response. */
|
|
55
|
+
private rejectAllPending;
|
|
49
56
|
get sessionId(): string | null;
|
|
50
57
|
get state(): SessionState;
|
|
51
|
-
send(message: string): Promise<
|
|
58
|
+
send(message: string): Promise<SendHandle>;
|
|
59
|
+
cancel(uuid: string): Promise<CancelResult>;
|
|
52
60
|
interrupt(): Promise<void>;
|
|
53
61
|
close(): Promise<void>;
|
|
54
62
|
private handleStdout;
|
|
55
63
|
private handleLine;
|
|
56
64
|
private handleControlRequest;
|
|
65
|
+
/**
|
|
66
|
+
* Handle a `control_response` from the CLI — a reply to an outgoing
|
|
67
|
+
* `control_request` we sent (currently only `cancel_async_message`).
|
|
68
|
+
*
|
|
69
|
+
* Wire shape:
|
|
70
|
+
* {type:"control_response", response:{request_id, subtype:"success"|"error", response:{...} | error}}
|
|
71
|
+
*/
|
|
72
|
+
private handleControlResponse;
|
|
57
73
|
private handlePermissionRequest;
|
|
58
74
|
private handleElicitationRequest;
|
|
59
75
|
private handleHookCallback;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../../src/providers/claude/session.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGvD,OAAO,KAAK,EACV,YAAY,EACZ,cAAc,EACd,YAAY,
|
|
1
|
+
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../../src/providers/claude/session.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGvD,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,UAAU,EACV,cAAc,EACd,YAAY,EAGZ,iBAAiB,EAClB,MAAM,gBAAgB,CAAC;AAwCxB;;;;;;;;;;;GAWG;AACH,wBAAgB,uBAAuB,CACrC,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,IAAI,EAAE,iBAAiB,GAAG,IAAI,GAC7B,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAoBzB;AAMD;;;;;;GAMG;AACH,wBAAsB,mBAAmB,CAAC,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,YAAY,CAAC,CAuFpF;AAMD,wEAAwE;AACxE,qBAAa,iBAAkB,YAAW,YAAY;IA0ClD,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,SAAS;IA3C5B,OAAO,CAAC,MAAM,CAAwB;IACtC,OAAO,CAAC,UAAU,CAAuB;IACzC,OAAO,CAAC,WAAW,CAAM;IACzB,OAAO,CAAC,aAAa,CAAM;IAO3B,OAAO,CAAC,eAAe,CAGf;IAER;;;;OAIG;IACH,OAAO,CAAC,iBAAiB,CAAqB;IAE9C;;;;OAIG;IACH,OAAO,CAAC,wBAAwB,CAG3B;IAEL;;;;;OAKG;IACH,OAAO,CAAC,WAAW,CAAoC;gBAGpC,IAAI,EAAE,YAAY,EAClB,GAAG,EAAE,cAAc,EACnB,SAAS,EAAE,MAAM,GAAG,IAAI;IAgC3C,yEAAyE;IACzE,OAAO,CAAC,gBAAgB;IAOxB,IAAI,SAAS,IAAI,MAAM,GAAG,IAAI,CAA4B;IAC1D,IAAI,KAAK,IAAI,YAAY,CAAwB;IAM3C,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IA8B1C,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IA4B3C,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAe1B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAgC5B,OAAO,CAAC,YAAY;IAiBpB,OAAO,CAAC,UAAU;IA8ClB,OAAO,CAAC,oBAAoB;IAiC5B;;;;;;OAMG;IACH,OAAO,CAAC,qBAAqB;YAqBf,uBAAuB;YAqDvB,wBAAwB;YA4CxB,kBAAkB;IA+BhC,OAAO,CAAC,mBAAmB;IAY3B,OAAO,CAAC,wBAAwB;YAgBlB,YAAY;IAgG1B,OAAO,CAAC,mBAAmB;IAwB3B;;;;;OAKG;IACH,OAAO,CAAC,aAAa;CAQtB"}
|
|
@@ -177,15 +177,24 @@ export class ClaudeSessionImpl {
|
|
|
177
177
|
_sessionId = null;
|
|
178
178
|
_lineBuffer = "";
|
|
179
179
|
_stderrBuffer = "";
|
|
180
|
-
//
|
|
181
|
-
|
|
182
|
-
|
|
180
|
+
// Pending result-resolvers. With concurrent send, multiple in-flight send()
|
|
181
|
+
// Promises may share a single result event (when the CLI coalesces them
|
|
182
|
+
// into one turn) or get distinct results across turns. On each `result`
|
|
183
|
+
// event we drain the entire list — every pending Promise resolves with the
|
|
184
|
+
// same TurnResult. Subsequent sends queue against a fresh list.
|
|
185
|
+
_pendingResults = [];
|
|
183
186
|
/**
|
|
184
187
|
* Tracks request_ids for async callbacks (permission, elicitation, hooks)
|
|
185
188
|
* that are still in-flight. If the CLI sends a control_cancel_request for
|
|
186
189
|
* one of these, we remove it so the stale response is never sent back.
|
|
187
190
|
*/
|
|
188
191
|
_pendingCallbacks = new Set();
|
|
192
|
+
/**
|
|
193
|
+
* Outgoing control_requests we sent to the CLI and are awaiting a
|
|
194
|
+
* control_response for, keyed by request_id. Currently only used by
|
|
195
|
+
* `cancel(uuid)` (interrupt remains fire-and-forget).
|
|
196
|
+
*/
|
|
197
|
+
_pendingControlResponses = new Map();
|
|
189
198
|
/**
|
|
190
199
|
* Serial dispatch chain for `onEvent`. Each dispatched event appends a
|
|
191
200
|
* handler invocation; the chain enforces in-order delivery and lets
|
|
@@ -213,25 +222,26 @@ export class ClaudeSessionImpl {
|
|
|
213
222
|
proc.on("exit", (code, signal) => {
|
|
214
223
|
if (this._state !== "closed") {
|
|
215
224
|
this._state = "closed";
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
this._turnReject(new Error(`Claude process exited unexpectedly (code=${code}, signal=${signal})`));
|
|
219
|
-
this._turnResolve = null;
|
|
220
|
-
this._turnReject = null;
|
|
221
|
-
}
|
|
225
|
+
const err = new Error(`Claude process exited unexpectedly (code=${code}, signal=${signal})`);
|
|
226
|
+
this.rejectAllPending(err);
|
|
222
227
|
}
|
|
223
228
|
});
|
|
224
229
|
proc.on("error", (err) => {
|
|
225
230
|
if (this._state !== "closed") {
|
|
226
231
|
this._state = "closed";
|
|
227
|
-
|
|
228
|
-
this._turnReject(err);
|
|
229
|
-
this._turnResolve = null;
|
|
230
|
-
this._turnReject = null;
|
|
231
|
-
}
|
|
232
|
+
this.rejectAllPending(err);
|
|
232
233
|
}
|
|
233
234
|
});
|
|
234
235
|
}
|
|
236
|
+
/** Reject every pending send() Promise and outgoing control_response. */
|
|
237
|
+
rejectAllPending(err) {
|
|
238
|
+
const pending = this._pendingResults.splice(0);
|
|
239
|
+
for (const p of pending)
|
|
240
|
+
p.reject(err);
|
|
241
|
+
for (const [, p] of this._pendingControlResponses)
|
|
242
|
+
p.reject(err);
|
|
243
|
+
this._pendingControlResponses.clear();
|
|
244
|
+
}
|
|
235
245
|
get sessionId() { return this._sessionId; }
|
|
236
246
|
get state() { return this._state; }
|
|
237
247
|
// -------------------------------------------------------------------------
|
|
@@ -240,21 +250,52 @@ export class ClaudeSessionImpl {
|
|
|
240
250
|
async send(message) {
|
|
241
251
|
if (this._state === "closed")
|
|
242
252
|
throw new Error("Session is closed");
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
//
|
|
253
|
+
// No guard on _state — Claude's CLI accepts user messages mid-turn and
|
|
254
|
+
// queues them internally (drain via `cancel_async_message` if needed).
|
|
255
|
+
// Set state for observability if currently idle; mid-turn the active
|
|
256
|
+
// turn's state machine keeps driving it.
|
|
257
|
+
if (this._state === "idle")
|
|
258
|
+
this._state = "thinking";
|
|
259
|
+
const uuid = randomUUID();
|
|
260
|
+
// Write user message in stream-json format. `uuid` becomes the queue
|
|
261
|
+
// key the CLI uses for `cancel_async_message`.
|
|
247
262
|
const userMsg = ndjsonLine({
|
|
248
263
|
type: "user",
|
|
249
264
|
session_id: this._sessionId ?? "",
|
|
250
265
|
message: { role: "user", content: message },
|
|
251
266
|
parent_tool_use_id: null,
|
|
267
|
+
uuid,
|
|
268
|
+
});
|
|
269
|
+
const result = new Promise((resolve, reject) => {
|
|
270
|
+
this._pendingResults.push({ resolve, reject });
|
|
252
271
|
});
|
|
253
272
|
this.proc.stdin.write(userMsg);
|
|
254
|
-
return
|
|
255
|
-
|
|
256
|
-
|
|
273
|
+
return { uuid, result };
|
|
274
|
+
}
|
|
275
|
+
async cancel(uuid) {
|
|
276
|
+
if (this._state === "closed")
|
|
277
|
+
return { cancelled: false };
|
|
278
|
+
const requestId = randomUUID();
|
|
279
|
+
const responsePromise = new Promise((resolve, reject) => {
|
|
280
|
+
this._pendingControlResponses.set(requestId, { resolve, reject });
|
|
281
|
+
});
|
|
282
|
+
const cancelMsg = ndjsonLine({
|
|
283
|
+
type: "control_request",
|
|
284
|
+
request_id: requestId,
|
|
285
|
+
request: {
|
|
286
|
+
subtype: "cancel_async_message",
|
|
287
|
+
message_uuid: uuid,
|
|
288
|
+
},
|
|
257
289
|
});
|
|
290
|
+
this.proc.stdin.write(cancelMsg);
|
|
291
|
+
try {
|
|
292
|
+
const response = await responsePromise;
|
|
293
|
+
return { cancelled: response["cancelled"] === true };
|
|
294
|
+
}
|
|
295
|
+
catch {
|
|
296
|
+
// Process exited / error before response — treat as "not cancelled."
|
|
297
|
+
return { cancelled: false };
|
|
298
|
+
}
|
|
258
299
|
}
|
|
259
300
|
async interrupt() {
|
|
260
301
|
if (this._state === "idle" || this._state === "closed")
|
|
@@ -331,6 +372,12 @@ export class ClaudeSessionImpl {
|
|
|
331
372
|
this._pendingCallbacks.delete(cancelId);
|
|
332
373
|
return;
|
|
333
374
|
}
|
|
375
|
+
// Control response — CLI is responding to a control_request we sent
|
|
376
|
+
// (currently only `cancel_async_message`; `interrupt` is fire-and-forget).
|
|
377
|
+
if (type === "control_response") {
|
|
378
|
+
this.handleControlResponse(msg);
|
|
379
|
+
return;
|
|
380
|
+
}
|
|
334
381
|
// Result event — turn is complete. Forward to onEvent first (via
|
|
335
382
|
// handleStreamMessage / parseStreamLine) so the wire event flows through
|
|
336
383
|
// the same path as every other line; then resolve the TurnResult. The
|
|
@@ -374,6 +421,30 @@ export class ClaudeSessionImpl {
|
|
|
374
421
|
break;
|
|
375
422
|
}
|
|
376
423
|
}
|
|
424
|
+
/**
|
|
425
|
+
* Handle a `control_response` from the CLI — a reply to an outgoing
|
|
426
|
+
* `control_request` we sent (currently only `cancel_async_message`).
|
|
427
|
+
*
|
|
428
|
+
* Wire shape:
|
|
429
|
+
* {type:"control_response", response:{request_id, subtype:"success"|"error", response:{...} | error}}
|
|
430
|
+
*/
|
|
431
|
+
handleControlResponse(msg) {
|
|
432
|
+
const response = obj(msg, "response");
|
|
433
|
+
const requestId = str(response, "request_id");
|
|
434
|
+
if (!requestId)
|
|
435
|
+
return;
|
|
436
|
+
const pending = this._pendingControlResponses.get(requestId);
|
|
437
|
+
if (!pending)
|
|
438
|
+
return;
|
|
439
|
+
this._pendingControlResponses.delete(requestId);
|
|
440
|
+
const subtype = str(response, "subtype");
|
|
441
|
+
if (subtype === "error") {
|
|
442
|
+
const errMsg = str(response, "error") || "control_response error";
|
|
443
|
+
pending.reject(new Error(errMsg));
|
|
444
|
+
return;
|
|
445
|
+
}
|
|
446
|
+
pending.resolve(obj(response, "response"));
|
|
447
|
+
}
|
|
377
448
|
// -------------------------------------------------------------------------
|
|
378
449
|
// can_use_tool — permission requests
|
|
379
450
|
// -------------------------------------------------------------------------
|
|
@@ -585,12 +656,13 @@ export class ClaudeSessionImpl {
|
|
|
585
656
|
if (this._state === "closed")
|
|
586
657
|
return;
|
|
587
658
|
this._state = "idle";
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
659
|
+
// Drain ALL pending send() resolvers with this turn's result. Multiple
|
|
660
|
+
// concurrent sends coalesced by the CLI into one turn share the same
|
|
661
|
+
// TurnResult — documented in SendHandle JSDoc. Splice empties the list
|
|
662
|
+
// so subsequent sends queue against a fresh list for the next turn.
|
|
663
|
+
const pending = this._pendingResults.splice(0);
|
|
664
|
+
for (const p of pending)
|
|
665
|
+
p.resolve(result);
|
|
594
666
|
}
|
|
595
667
|
// -------------------------------------------------------------------------
|
|
596
668
|
// Stream event forwarding
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.js","sourceRoot":"","sources":["../../../src/providers/claude/session.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"session.js","sourceRoot":"","sources":["../../../src/providers/claude/session.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/codex/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAgC,MAAM,gBAAgB,CAAC;AAOnF,eAAO,MAAM,aAAa,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/codex/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAgC,MAAM,gBAAgB,CAAC;AAOnF,eAAO,MAAM,aAAa,EAAE,cAqB3B,CAAC;AAEF,OAAO,EACL,sBAAsB,EACtB,mBAAmB,EACnB,mBAAmB,EACnB,YAAY,EACZ,kBAAkB,EAClB,cAAc,EACd,gBAAgB,GACjB,MAAM,iBAAiB,CAAC;AACzB,YAAY,EACV,6BAA6B,EAC7B,uBAAuB,EACvB,0BAA0B,EAC1B,oBAAoB,EACpB,mBAAmB,EACnB,eAAe,GAChB,MAAM,iBAAiB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/providers/codex/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAErD,MAAM,CAAC,MAAM,aAAa,GAAmB;IAC3C,IAAI,EAAE,OAAO;IACb,YAAY,EAAE;QACZ,QAAQ,EAAE,IAAI;QACd,cAAc,EAAE,KAAK;QACrB,YAAY,EAAE,KAAK;QACnB,GAAG,EAAE,KAAK;QACV,MAAM,EAAE,IAAI;QACZ,cAAc,EAAE,iBAAiB;QACjC,eAAe,EAAE,iBAAiB;QAClC,YAAY,EAAE,IAAI;QAClB,SAAS,EAAE,IAAI;QACf,QAAQ,EAAE,IAAI;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/providers/codex/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAErD,MAAM,CAAC,MAAM,aAAa,GAAmB;IAC3C,IAAI,EAAE,OAAO;IACb,YAAY,EAAE;QACZ,QAAQ,EAAE,IAAI;QACd,cAAc,EAAE,KAAK;QACrB,YAAY,EAAE,KAAK;QACnB,GAAG,EAAE,KAAK;QACV,MAAM,EAAE,IAAI;QACZ,cAAc,EAAE,iBAAiB;QACjC,eAAe,EAAE,iBAAiB;QAClC,YAAY,EAAE,IAAI;QAClB,SAAS,EAAE,IAAI;QACf,QAAQ,EAAE,IAAI;QACd,cAAc,EAAE,IAAI;QACpB,mBAAmB,EAAE,KAAK;KAC3B;IACD,OAAO,EAAE,oBAAoB;IAC7B,aAAa,EAAE,CAAC,GAAmB,EAAyB,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC;IACtF,WAAW,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,sBAAsB,CAAC,OAAO,EAAE,GAAG,CAAC;IAC1D,YAAY,EAAE,iBAAiB;IAC/B,UAAU,EAAE,kBAAkB;CAC/B,CAAC;AAEF,OAAO,EACL,sBAAsB,EACtB,mBAAmB,EACnB,mBAAmB,EACnB,YAAY,EACZ,kBAAkB,EAClB,cAAc,EACd,gBAAgB,GACjB,MAAM,iBAAiB,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { ChildProcess } from "node:child_process";
|
|
2
|
-
import type { AgentSession, SessionContext, SessionState
|
|
2
|
+
import type { AgentSession, CancelResult, SendHandle, SessionContext, SessionState } from "../../types.js";
|
|
3
3
|
export declare function createCodexSession(ctx: SessionContext): Promise<AgentSession>;
|
|
4
4
|
/** @internal Exported for unit testing — not part of the public API. */
|
|
5
5
|
export declare class CodexSessionImpl implements AgentSession {
|
|
@@ -13,8 +13,7 @@ export declare class CodexSessionImpl implements AgentSession {
|
|
|
13
13
|
private _lineBuffer;
|
|
14
14
|
private _nextId;
|
|
15
15
|
private _pendingRpc;
|
|
16
|
-
private
|
|
17
|
-
private _turnReject;
|
|
16
|
+
private _pendingResults;
|
|
18
17
|
private _turnSummary;
|
|
19
18
|
private _turnUsage;
|
|
20
19
|
private _turnModel;
|
|
@@ -29,12 +28,15 @@ export declare class CodexSessionImpl implements AgentSession {
|
|
|
29
28
|
*/
|
|
30
29
|
private _eventChain;
|
|
31
30
|
constructor(proc: ChildProcess, ctx: SessionContext, cwd: string, model: string | null, instructions: string | null);
|
|
31
|
+
/** Reject every pending send() Promise and outgoing JSON-RPC call. */
|
|
32
|
+
private rejectAllPending;
|
|
32
33
|
get sessionId(): string | null;
|
|
33
34
|
get state(): SessionState;
|
|
34
35
|
private rpcRequest;
|
|
35
36
|
private rpcResponse;
|
|
36
37
|
handshake(): Promise<void>;
|
|
37
|
-
send(message: string): Promise<
|
|
38
|
+
send(message: string): Promise<SendHandle>;
|
|
39
|
+
cancel(_uuid: string): Promise<CancelResult>;
|
|
38
40
|
interrupt(): Promise<void>;
|
|
39
41
|
close(): Promise<void>;
|
|
40
42
|
private handleStdout;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../../src/providers/codex/session.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../../src/providers/codex/session.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGvD,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,UAAU,EACV,cAAc,EACd,YAAY,EAGb,MAAM,gBAAgB,CAAC;AA6FxB,wBAAsB,kBAAkB,CAAC,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,YAAY,CAAC,CAkEnF;AAMD,wEAAwE;AACxE,qBAAa,gBAAiB,YAAW,YAAY;IAwCjD,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,YAAY;IA3C/B,OAAO,CAAC,MAAM,CAAwB;IACtC,OAAO,CAAC,SAAS,CAAuB;IACxC,OAAO,CAAC,WAAW,CAAM;IACzB,OAAO,CAAC,OAAO,CAAK;IAGpB,OAAO,CAAC,WAAW,CAGd;IAOL,OAAO,CAAC,eAAe,CAGf;IAIR,OAAO,CAAC,YAAY,CAAuB;IAC3C,OAAO,CAAC,UAAU,CAA8D;IAChF,OAAO,CAAC,UAAU,CAAuB;IACzC,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,iBAAiB,CAAuB;IAChD,OAAO,CAAC,cAAc,CAAqB;IAE3C;;;;;OAKG;IACH,OAAO,CAAC,WAAW,CAAoC;gBAGpC,IAAI,EAAE,YAAY,EAClB,GAAG,EAAE,cAAc,EACnB,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,GAAG,IAAI,EACpB,YAAY,EAAE,MAAM,GAAG,IAAI;IA4B9C,sEAAsE;IACtE,OAAO,CAAC,gBAAgB;IAOxB,IAAI,SAAS,IAAI,MAAM,GAAG,IAAI,CAA2B;IACzD,IAAI,KAAK,IAAI,YAAY,CAAwB;IAMjD,OAAO,CAAC,UAAU;IAWlB,OAAO,CAAC,WAAW;IAQb,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAsB1B,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAsC1C,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAO5C,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAO1B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAyB5B,OAAO,CAAC,YAAY;IAgBpB,OAAO,CAAC,UAAU;IA0BlB,OAAO,CAAC,iBAAiB;IAgBzB,OAAO,CAAC,mBAAmB;YAYb,cAAc;IAgC5B,OAAO,CAAC,kBAAkB;IAyD1B,OAAO,CAAC,iBAAiB;IA4CzB,OAAO,CAAC,sBAAsB;IA0B9B,OAAO,CAAC,mBAAmB;IA2C3B,OAAO,CAAC,WAAW;YAwBL,iBAAiB;IAyC/B,OAAO,CAAC,eAAe;IASvB;;;;;OAKG;IACH,OAAO,CAAC,aAAa;CAOtB"}
|