@agentex/agent 0.0.22 → 0.0.24
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 +58 -0
- package/dist/goals/controller.d.ts +106 -0
- package/dist/goals/controller.d.ts.map +1 -0
- package/dist/goals/controller.js +375 -0
- package/dist/goals/controller.js.map +1 -0
- package/dist/goals/index.d.ts +6 -0
- package/dist/goals/index.d.ts.map +1 -0
- package/dist/goals/index.js +4 -0
- package/dist/goals/index.js.map +1 -0
- package/dist/goals/normalize.d.ts +72 -0
- package/dist/goals/normalize.d.ts.map +1 -0
- package/dist/goals/normalize.js +138 -0
- package/dist/goals/normalize.js.map +1 -0
- package/dist/goals/sentinel.d.ts +39 -0
- package/dist/goals/sentinel.d.ts.map +1 -0
- package/dist/goals/sentinel.js +77 -0
- package/dist/goals/sentinel.js.map +1 -0
- package/dist/index.d.ts +5 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/providers/acp/session.d.ts.map +1 -1
- package/dist/providers/acp/session.js +25 -0
- package/dist/providers/acp/session.js.map +1 -1
- package/dist/providers/claude/execute.d.ts.map +1 -1
- package/dist/providers/claude/execute.js +17 -2
- package/dist/providers/claude/execute.js.map +1 -1
- package/dist/providers/claude/index.d.ts.map +1 -1
- package/dist/providers/claude/index.js +2 -1
- package/dist/providers/claude/index.js.map +1 -1
- package/dist/providers/claude/parse.d.ts.map +1 -1
- package/dist/providers/claude/parse.js +25 -0
- package/dist/providers/claude/parse.js.map +1 -1
- package/dist/providers/claude/session.d.ts +36 -1
- package/dist/providers/claude/session.d.ts.map +1 -1
- package/dist/providers/claude/session.js +197 -2
- package/dist/providers/claude/session.js.map +1 -1
- package/dist/providers/codex/execute.d.ts.map +1 -1
- package/dist/providers/codex/execute.js +17 -3
- package/dist/providers/codex/execute.js.map +1 -1
- package/dist/providers/codex/index.d.ts.map +1 -1
- package/dist/providers/codex/index.js +2 -1
- package/dist/providers/codex/index.js.map +1 -1
- package/dist/providers/codex/parse.d.ts.map +1 -1
- package/dist/providers/codex/parse.js +74 -3
- package/dist/providers/codex/parse.js.map +1 -1
- package/dist/providers/codex/session.d.ts +30 -1
- package/dist/providers/codex/session.d.ts.map +1 -1
- package/dist/providers/codex/session.js +175 -6
- package/dist/providers/codex/session.js.map +1 -1
- package/dist/providers/opencode/http-session.d.ts.map +1 -1
- package/dist/providers/opencode/http-session.js +25 -0
- package/dist/providers/opencode/http-session.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/pi/session.d.ts +8 -1
- package/dist/providers/pi/session.d.ts.map +1 -1
- package/dist/providers/pi/session.js +28 -2
- package/dist/providers/pi/session.js.map +1 -1
- package/dist/types.d.ts +249 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/dist/utils/endpoint.d.ts +38 -0
- package/dist/utils/endpoint.d.ts.map +1 -0
- package/dist/utils/endpoint.js +151 -0
- package/dist/utils/endpoint.js.map +1 -0
- package/dist/utils/env.d.ts.map +1 -1
- package/dist/utils/env.js +5 -1
- package/dist/utils/env.js.map +1 -1
- package/package.json +1 -1
|
@@ -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;
|
|
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,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACzE,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;QACzB,QAAQ,EAAE,IAAI;QACd,KAAK,EAAE,KAAK;QACZ,KAAK,EAAE,oBAAoB;KAC5B;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 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../../../src/providers/claude/parse.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAElB,UAAU,EACV,aAAa,EACb,WAAW,EACZ,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../../../src/providers/claude/parse.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { normalizeClaudeGoalAttachment } from "../../goals/normalize.js";
|
|
1
2
|
const PROVIDER_TYPE = "claude";
|
|
2
3
|
/** Shell command users run outside an interactive Claude session to
|
|
3
4
|
* re-authenticate. Surfaced on `auth_required` events. The in-CLI slash
|
|
@@ -52,6 +53,21 @@ function baseFieldsFromEvent(event, messageId) {
|
|
|
52
53
|
raw: event,
|
|
53
54
|
};
|
|
54
55
|
}
|
|
56
|
+
/** Build a normalized `goal_status` event from Claude goal fields + envelope. */
|
|
57
|
+
function goalEventFromFields(fields, event) {
|
|
58
|
+
const ev = {
|
|
59
|
+
type: "goal_status",
|
|
60
|
+
objective: fields.objective,
|
|
61
|
+
status: fields.status,
|
|
62
|
+
met: fields.met,
|
|
63
|
+
enforced: fields.enforced,
|
|
64
|
+
source: fields.source,
|
|
65
|
+
...baseFieldsFromEvent(event, null),
|
|
66
|
+
};
|
|
67
|
+
if (fields.blockedReason !== undefined)
|
|
68
|
+
ev.blockedReason = fields.blockedReason;
|
|
69
|
+
return ev;
|
|
70
|
+
}
|
|
55
71
|
function rateLimitFromEvent(event) {
|
|
56
72
|
const info = parseObject(event["rate_limit_info"]);
|
|
57
73
|
if (Object.keys(info).length === 0)
|
|
@@ -344,6 +360,15 @@ export function parseStreamLine(line, partial) {
|
|
|
344
360
|
...baseFieldsFromEvent(event, null),
|
|
345
361
|
}];
|
|
346
362
|
}
|
|
363
|
+
// `/goal` writes a `goal_status` attachment recording the sentinel's view of
|
|
364
|
+
// the goal (`{type:"goal_status", met, sentinel, condition}`). It appears as a
|
|
365
|
+
// top-level `attachment` line in both the live stream and the on-disk
|
|
366
|
+
// transcript. Non-goal attachments fall through to the forward-compat sink.
|
|
367
|
+
if (type === "attachment") {
|
|
368
|
+
const fields = normalizeClaudeGoalAttachment(parseObject(event["attachment"]));
|
|
369
|
+
if (fields)
|
|
370
|
+
return [goalEventFromFields(fields, event)];
|
|
371
|
+
}
|
|
347
372
|
if (type === "assistant") {
|
|
348
373
|
const message = parseObject(event["message"]);
|
|
349
374
|
// Claude emits a "synthetic" assistant message (model === "<synthetic>")
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parse.js","sourceRoot":"","sources":["../../../src/providers/claude/parse.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"parse.js","sourceRoot":"","sources":["../../../src/providers/claude/parse.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { ChildProcess } from "node:child_process";
|
|
2
|
-
import type { AgentSession, CancelResult, SendHandle, SendOptions, SessionContext, SessionState, StopTaskResult, UserInputResponse } from "../../types.js";
|
|
2
|
+
import type { AgentSession, CancelResult, ClearGoalResult, GoalCapability, GoalOptions, GoalState, SendHandle, SendOptions, SessionContext, SessionState, SetGoalResult, StopTaskResult, UserInputResponse } from "../../types.js";
|
|
3
3
|
/**
|
|
4
4
|
* Build the wire-shape control_response for a `can_use_tool` request.
|
|
5
5
|
*
|
|
@@ -22,6 +22,15 @@ export declare function buildPermissionResponse(toolUseId: string, input: Record
|
|
|
22
22
|
*/
|
|
23
23
|
export declare function createClaudeSession(ctx: SessionContext): Promise<AgentSession>;
|
|
24
24
|
/** @internal Exported for unit testing — not part of the public API. */
|
|
25
|
+
/**
|
|
26
|
+
* Claude enforces goals natively via a Stop-hook + fast-model sentinel (the
|
|
27
|
+
* `/goal` command). Binary met/not-met, self-clearing on completion.
|
|
28
|
+
*
|
|
29
|
+
* `statuses` describes the NATIVE producible set. A Claude session that falls to
|
|
30
|
+
* the emulation engine (a custom `sentinel`, or `enforce:"emulate"`) can also
|
|
31
|
+
* produce `blocked` (`blockedReason:"max_iterations"`) — see GoalController.
|
|
32
|
+
*/
|
|
33
|
+
export declare const claudeGoalCapability: GoalCapability;
|
|
25
34
|
export declare class ClaudeSessionImpl implements AgentSession {
|
|
26
35
|
private readonly proc;
|
|
27
36
|
private readonly ctx;
|
|
@@ -62,6 +71,14 @@ export declare class ClaudeSessionImpl implements AgentSession {
|
|
|
62
71
|
* requests stay synchronous and are not gated on this chain.
|
|
63
72
|
*/
|
|
64
73
|
private _eventChain;
|
|
74
|
+
/** Session-scoped goal engine (native `/goal` passthrough + emulation fallback). */
|
|
75
|
+
private readonly _goals;
|
|
76
|
+
/** Resolved transcript path (shared by the goal poller + sentinel context). */
|
|
77
|
+
private _transcriptPath;
|
|
78
|
+
private _transcriptResolving;
|
|
79
|
+
/** Tail state for observing native goal_status (transcript-only, not on stdout). */
|
|
80
|
+
private _goalScanOffset;
|
|
81
|
+
private _goalPoll;
|
|
65
82
|
constructor(proc: ChildProcess, ctx: SessionContext, skillsDir: string | null, mcpConfigPath?: string | null);
|
|
66
83
|
/** Reject every pending send() Promise and outgoing control_response. */
|
|
67
84
|
private rejectAllPending;
|
|
@@ -83,6 +100,11 @@ export declare class ClaudeSessionImpl implements AgentSession {
|
|
|
83
100
|
private settleEarly;
|
|
84
101
|
cancel(uuid: string): Promise<CancelResult>;
|
|
85
102
|
stopTask(taskId: string): Promise<StopTaskResult>;
|
|
103
|
+
setGoal(objective: string, options?: GoalOptions): Promise<SetGoalResult>;
|
|
104
|
+
clearGoal(options?: {
|
|
105
|
+
reason?: "cleared" | "blocked";
|
|
106
|
+
}): Promise<ClearGoalResult>;
|
|
107
|
+
getGoal(): GoalState | null;
|
|
86
108
|
interrupt(): Promise<void>;
|
|
87
109
|
drain(): Promise<void>;
|
|
88
110
|
close(): Promise<void>;
|
|
@@ -111,5 +133,18 @@ export declare class ClaudeSessionImpl implements AgentSession {
|
|
|
111
133
|
* throwing handler does not break delivery of subsequent events.
|
|
112
134
|
*/
|
|
113
135
|
private dispatchEvent;
|
|
136
|
+
private startGoalObservation;
|
|
137
|
+
private stopGoalObservation;
|
|
138
|
+
private scanGoalTranscript;
|
|
139
|
+
/** Resolve + cache the on-disk transcript path for this session. */
|
|
140
|
+
private resolveTranscriptPath;
|
|
141
|
+
/** Sync accessor for the sentinel context; kicks off a lazy resolve. */
|
|
142
|
+
private peekTranscriptPath;
|
|
143
|
+
/**
|
|
144
|
+
* On resume, restore an unmet native goal from the transcript so getGoal()
|
|
145
|
+
* reflects it and observation continues (Claude persists an unmet goal across
|
|
146
|
+
* --resume; an achieved/cleared one is not restored).
|
|
147
|
+
*/
|
|
148
|
+
hydrateGoalFromTranscript(sessionId: string): Promise<void>;
|
|
114
149
|
}
|
|
115
150
|
//# sourceMappingURL=session.d.ts.map
|
|
@@ -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,YAAY,EACZ,UAAU,EACV,WAAW,EACX,cAAc,EACd,YAAY,EACZ,cAAc,EAGd,iBAAiB,EAClB,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../../src/providers/claude/session.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import { spawn } from "node:child_process";
|
|
2
2
|
import { randomUUID } from "node:crypto";
|
|
3
|
+
import { GoalController, latestGoalFromEvents, isTerminalGoalStatus } from "../../goals/index.js";
|
|
4
|
+
import { claudeTranscriptOps } from "./transcript.js";
|
|
3
5
|
import { findBinary } from "../../utils/binary.js";
|
|
4
6
|
import { buildEnv, ensurePathInEnv } from "../../utils/env.js";
|
|
7
|
+
import { translateEndpoint } from "../../utils/endpoint.js";
|
|
5
8
|
import { buildSkillsDir, cleanupSkillsDir } from "../../utils/skills.js";
|
|
6
9
|
import { claudeFeatureArgs, cleanupMcpConfig, stageMcpConfig } from "./mcp.js";
|
|
7
10
|
import { createToolNameTracker } from "../../utils/tool-names.js";
|
|
@@ -88,6 +91,12 @@ export async function createClaudeSession(ctx) {
|
|
|
88
91
|
// Build env
|
|
89
92
|
const env = buildEnv(ctx.env);
|
|
90
93
|
ensurePathInEnv(env);
|
|
94
|
+
// Custom endpoint (BYOK / gateway / alt model) — env-only for claude. `unset`
|
|
95
|
+
// clears ambient Anthropic creds that would otherwise leak to a custom baseUrl.
|
|
96
|
+
const endpointTx = translateEndpoint("claude", config.endpoint);
|
|
97
|
+
Object.assign(env, endpointTx.env);
|
|
98
|
+
for (const key of endpointTx.unset)
|
|
99
|
+
delete env[key];
|
|
91
100
|
// Build skills dir (if any)
|
|
92
101
|
let skillsDir = null;
|
|
93
102
|
if (config.skillDirs && config.skillDirs.length > 0) {
|
|
@@ -113,10 +122,12 @@ export async function createClaudeSession(ctx) {
|
|
|
113
122
|
];
|
|
114
123
|
// Resume existing session
|
|
115
124
|
const sessionParams = ctx.sessionParams ?? null;
|
|
125
|
+
let resumeId = null;
|
|
116
126
|
if (sessionParams) {
|
|
117
127
|
const id = sessionParams["sessionId"] ?? sessionParams["session_id"];
|
|
118
128
|
if (id && typeof id === "string") {
|
|
119
129
|
args.push("--resume", id);
|
|
130
|
+
resumeId = id;
|
|
120
131
|
}
|
|
121
132
|
}
|
|
122
133
|
// planMode and skipPermissions are mutually exclusive — planMode wins.
|
|
@@ -165,6 +176,10 @@ export async function createClaudeSession(ctx) {
|
|
|
165
176
|
throw new Error("Failed to open stdio on Claude process");
|
|
166
177
|
}
|
|
167
178
|
const session = new ClaudeSessionImpl(proc, ctx, skillsDir, mcpConfigPath);
|
|
179
|
+
// On resume, restore an unmet native goal from the transcript (best-effort,
|
|
180
|
+
// non-blocking so session creation isn't delayed by a transcript read).
|
|
181
|
+
if (resumeId)
|
|
182
|
+
void session.hydrateGoalFromTranscript(resumeId);
|
|
168
183
|
// Wire up AbortSignal to close the session
|
|
169
184
|
if (ctx.signal) {
|
|
170
185
|
if (ctx.signal.aborted) {
|
|
@@ -180,6 +195,21 @@ export async function createClaudeSession(ctx) {
|
|
|
180
195
|
// Implementation
|
|
181
196
|
// ---------------------------------------------------------------------------
|
|
182
197
|
/** @internal Exported for unit testing — not part of the public API. */
|
|
198
|
+
/**
|
|
199
|
+
* Claude enforces goals natively via a Stop-hook + fast-model sentinel (the
|
|
200
|
+
* `/goal` command). Binary met/not-met, self-clearing on completion.
|
|
201
|
+
*
|
|
202
|
+
* `statuses` describes the NATIVE producible set. A Claude session that falls to
|
|
203
|
+
* the emulation engine (a custom `sentinel`, or `enforce:"emulate"`) can also
|
|
204
|
+
* produce `blocked` (`blockedReason:"max_iterations"`) — see GoalController.
|
|
205
|
+
*/
|
|
206
|
+
export const claudeGoalCapability = {
|
|
207
|
+
mechanism: "sentinel",
|
|
208
|
+
enforced: true,
|
|
209
|
+
statuses: ["active", "met", "cleared"],
|
|
210
|
+
clears: "both",
|
|
211
|
+
telemetry: false,
|
|
212
|
+
};
|
|
183
213
|
export class ClaudeSessionImpl {
|
|
184
214
|
proc;
|
|
185
215
|
ctx;
|
|
@@ -225,11 +255,44 @@ export class ClaudeSessionImpl {
|
|
|
225
255
|
* requests stay synchronous and are not gated on this chain.
|
|
226
256
|
*/
|
|
227
257
|
_eventChain = Promise.resolve();
|
|
258
|
+
/** Session-scoped goal engine (native `/goal` passthrough + emulation fallback). */
|
|
259
|
+
_goals;
|
|
260
|
+
/** Resolved transcript path (shared by the goal poller + sentinel context). */
|
|
261
|
+
_transcriptPath = null;
|
|
262
|
+
_transcriptResolving = false;
|
|
263
|
+
/** Tail state for observing native goal_status (transcript-only, not on stdout). */
|
|
264
|
+
_goalScanOffset = 0;
|
|
265
|
+
_goalPoll = null;
|
|
228
266
|
constructor(proc, ctx, skillsDir, mcpConfigPath = null) {
|
|
229
267
|
this.proc = proc;
|
|
230
268
|
this.ctx = ctx;
|
|
231
269
|
this.skillsDir = skillsDir;
|
|
232
270
|
this.mcpConfigPath = mcpConfigPath;
|
|
271
|
+
this._goals = new GoalController({
|
|
272
|
+
providerType: "claude",
|
|
273
|
+
capability: claudeGoalCapability,
|
|
274
|
+
getSessionId: () => this._sessionId,
|
|
275
|
+
send: (m) => this.send(m),
|
|
276
|
+
dispatch: (event) => this.dispatchEvent(event),
|
|
277
|
+
// Best-effort transcript path for custom sentinels that read history.
|
|
278
|
+
// Triggers a lazy async resolve; returns null until it's cached.
|
|
279
|
+
getTranscriptPath: () => this.peekTranscriptPath(),
|
|
280
|
+
// Native arm: `/goal <objective>` arms the CLI's Stop-hook sentinel.
|
|
281
|
+
// Verified against CC 2.1.191: this DOES arm over stream-json stdin, the
|
|
282
|
+
// Haiku sentinel runs, and goal_status attachments are written — but only
|
|
283
|
+
// to the on-disk transcript, NOT the live stdout stream. So we tail the
|
|
284
|
+
// transcript to observe the transitions (startGoalObservation). The
|
|
285
|
+
// objective is whitespace-collapsed for the single-line slash command;
|
|
286
|
+
// the controller keeps the original for state.
|
|
287
|
+
armNative: async (objective) => {
|
|
288
|
+
await this.send(`/goal ${objective.replace(/\s+/g, " ").trim()}`);
|
|
289
|
+
this.startGoalObservation();
|
|
290
|
+
return true;
|
|
291
|
+
},
|
|
292
|
+
clearNative: async () => {
|
|
293
|
+
await this.send("/goal clear");
|
|
294
|
+
},
|
|
295
|
+
});
|
|
233
296
|
// Wire up stdout line-by-line parsing
|
|
234
297
|
proc.stdout.setEncoding("utf-8");
|
|
235
298
|
proc.stdout.on("data", (chunk) => this.handleStdout(chunk));
|
|
@@ -427,9 +490,19 @@ export class ClaudeSessionImpl {
|
|
|
427
490
|
return { stopped: false };
|
|
428
491
|
}
|
|
429
492
|
}
|
|
493
|
+
setGoal(objective, options) {
|
|
494
|
+
return this._goals.setGoal(objective, options);
|
|
495
|
+
}
|
|
496
|
+
clearGoal(options) {
|
|
497
|
+
return this._goals.clearGoal(options);
|
|
498
|
+
}
|
|
499
|
+
getGoal() {
|
|
500
|
+
return this._goals.getGoal();
|
|
501
|
+
}
|
|
430
502
|
async interrupt() {
|
|
431
503
|
if (this._state === "idle" || this._state === "closed")
|
|
432
504
|
return;
|
|
505
|
+
this._goals.notifyInterrupted(); // don't let an emulated goal auto-continue
|
|
433
506
|
// Send interrupt control request
|
|
434
507
|
const requestId = randomUUID();
|
|
435
508
|
const interruptMsg = ndjsonLine({
|
|
@@ -459,6 +532,10 @@ export class ClaudeSessionImpl {
|
|
|
459
532
|
if (this._state === "closed")
|
|
460
533
|
return;
|
|
461
534
|
this._state = "closed";
|
|
535
|
+
// Final transcript scan so a goal_status (e.g. `met`) written since the last
|
|
536
|
+
// ~800ms poll isn't lost on a fast close. No-op when no goal is observed.
|
|
537
|
+
await this.scanGoalTranscript().catch(() => { });
|
|
538
|
+
this.stopGoalObservation();
|
|
462
539
|
// Close stdin to signal the process to exit
|
|
463
540
|
this.proc.stdin.end();
|
|
464
541
|
// Give it a moment to exit gracefully, then force kill. The grace window is
|
|
@@ -817,6 +894,8 @@ export class ClaudeSessionImpl {
|
|
|
817
894
|
p.cleanup?.();
|
|
818
895
|
p.resolve(result);
|
|
819
896
|
}
|
|
897
|
+
// Advance any emulated goal loop now that the turn has fully settled.
|
|
898
|
+
void this._goals.onTurnSettled(result);
|
|
820
899
|
}
|
|
821
900
|
// -------------------------------------------------------------------------
|
|
822
901
|
// Stream event forwarding
|
|
@@ -837,8 +916,10 @@ export class ClaudeSessionImpl {
|
|
|
837
916
|
else if (type === "tool_result") {
|
|
838
917
|
this._state = "thinking";
|
|
839
918
|
}
|
|
840
|
-
//
|
|
841
|
-
|
|
919
|
+
// Parse + dispatch when there's an onEvent subscriber OR an active goal to
|
|
920
|
+
// observe, so native goal_status transitions update getGoal() even with no
|
|
921
|
+
// handler. dispatchEvent observes unconditionally and gates delivery on cb.
|
|
922
|
+
if (this.ctx.onEvent || this._goals.isTracking()) {
|
|
842
923
|
for (const event of parseStreamLine(rawLine, this._partialCtx)) {
|
|
843
924
|
this.dispatchEvent(event);
|
|
844
925
|
}
|
|
@@ -851,6 +932,9 @@ export class ClaudeSessionImpl {
|
|
|
851
932
|
* throwing handler does not break delivery of subsequent events.
|
|
852
933
|
*/
|
|
853
934
|
dispatchEvent(event) {
|
|
935
|
+
// Let the goal engine track native goal_status transitions even when no
|
|
936
|
+
// onEvent handler is attached (keeps getGoal() accurate).
|
|
937
|
+
this._goals.observe(event);
|
|
854
938
|
const cb = this.ctx.onEvent;
|
|
855
939
|
if (!cb)
|
|
856
940
|
return;
|
|
@@ -864,5 +948,116 @@ export class ClaudeSessionImpl {
|
|
|
864
948
|
catch { /* swallow */ }
|
|
865
949
|
});
|
|
866
950
|
}
|
|
951
|
+
// -------------------------------------------------------------------------
|
|
952
|
+
// Native goal observation
|
|
953
|
+
//
|
|
954
|
+
// Claude's `/goal` writes `goal_status` attachments to the on-disk transcript
|
|
955
|
+
// but NOT to the live stdout stream we parse, so the controller can't observe
|
|
956
|
+
// native transitions from events. While a native goal is active we tail the
|
|
957
|
+
// transcript and feed any `goal_status` lines through the normal dispatch
|
|
958
|
+
// (which runs `_goals.observe` + delivers to onEvent). Self-stops once the
|
|
959
|
+
// goal reaches a terminal state; also stopped on close().
|
|
960
|
+
// -------------------------------------------------------------------------
|
|
961
|
+
startGoalObservation() {
|
|
962
|
+
if (this._goalPoll)
|
|
963
|
+
return;
|
|
964
|
+
// NB: do NOT reset _goalScanOffset here. It persists across goals so a second
|
|
965
|
+
// goal in the same session doesn't replay the first goal's historical
|
|
966
|
+
// goal_status lines. It starts at 0 (fresh session) and advances as we read.
|
|
967
|
+
const tick = () => { void this.scanGoalTranscript().catch(() => { }); };
|
|
968
|
+
this._goalPoll = setInterval(tick, 800);
|
|
969
|
+
if (typeof this._goalPoll.unref === "function")
|
|
970
|
+
this._goalPoll.unref();
|
|
971
|
+
// Defer the first scan: `armNative` calls this BEFORE the controller has
|
|
972
|
+
// recorded its optimistic `active` state, so a synchronous scan would see
|
|
973
|
+
// `isTracking() === false` and immediately stop the poller.
|
|
974
|
+
setTimeout(tick, 0);
|
|
975
|
+
}
|
|
976
|
+
stopGoalObservation() {
|
|
977
|
+
if (this._goalPoll) {
|
|
978
|
+
clearInterval(this._goalPoll);
|
|
979
|
+
this._goalPoll = null;
|
|
980
|
+
}
|
|
981
|
+
}
|
|
982
|
+
async scanGoalTranscript() {
|
|
983
|
+
if (!this._goalPoll)
|
|
984
|
+
return; // observation already stopped
|
|
985
|
+
// Stop once the goal is terminal (or was never really native).
|
|
986
|
+
if (!this._goals.isTracking()) {
|
|
987
|
+
this.stopGoalObservation();
|
|
988
|
+
return;
|
|
989
|
+
}
|
|
990
|
+
const filePath = await this.resolveTranscriptPath();
|
|
991
|
+
if (!filePath)
|
|
992
|
+
return;
|
|
993
|
+
for await (const { event, offset } of claudeTranscriptOps.read({
|
|
994
|
+
filePath,
|
|
995
|
+
fromOffset: this._goalScanOffset,
|
|
996
|
+
})) {
|
|
997
|
+
this._goalScanOffset = offset;
|
|
998
|
+
if (event.type === "goal_status")
|
|
999
|
+
this.dispatchEvent(event);
|
|
1000
|
+
}
|
|
1001
|
+
}
|
|
1002
|
+
/** Resolve + cache the on-disk transcript path for this session. */
|
|
1003
|
+
async resolveTranscriptPath() {
|
|
1004
|
+
if (this._transcriptPath)
|
|
1005
|
+
return this._transcriptPath;
|
|
1006
|
+
const sessionId = this._sessionId;
|
|
1007
|
+
if (!sessionId || this._transcriptResolving)
|
|
1008
|
+
return null;
|
|
1009
|
+
this._transcriptResolving = true;
|
|
1010
|
+
try {
|
|
1011
|
+
const found = await claudeTranscriptOps.find({
|
|
1012
|
+
sessionId,
|
|
1013
|
+
cwd: this.ctx.cwd ?? process.cwd(),
|
|
1014
|
+
});
|
|
1015
|
+
if (found)
|
|
1016
|
+
this._transcriptPath = found.filePath;
|
|
1017
|
+
}
|
|
1018
|
+
catch { /* best effort */ }
|
|
1019
|
+
finally {
|
|
1020
|
+
this._transcriptResolving = false;
|
|
1021
|
+
}
|
|
1022
|
+
return this._transcriptPath;
|
|
1023
|
+
}
|
|
1024
|
+
/** Sync accessor for the sentinel context; kicks off a lazy resolve. */
|
|
1025
|
+
peekTranscriptPath() {
|
|
1026
|
+
if (!this._transcriptPath && this._sessionId)
|
|
1027
|
+
void this.resolveTranscriptPath();
|
|
1028
|
+
return this._transcriptPath;
|
|
1029
|
+
}
|
|
1030
|
+
/**
|
|
1031
|
+
* On resume, restore an unmet native goal from the transcript so getGoal()
|
|
1032
|
+
* reflects it and observation continues (Claude persists an unmet goal across
|
|
1033
|
+
* --resume; an achieved/cleared one is not restored).
|
|
1034
|
+
*/
|
|
1035
|
+
async hydrateGoalFromTranscript(sessionId) {
|
|
1036
|
+
try {
|
|
1037
|
+
const found = await claudeTranscriptOps.find({
|
|
1038
|
+
sessionId,
|
|
1039
|
+
cwd: this.ctx.cwd ?? process.cwd(),
|
|
1040
|
+
});
|
|
1041
|
+
if (!found)
|
|
1042
|
+
return;
|
|
1043
|
+
this._transcriptPath = found.filePath;
|
|
1044
|
+
const events = [];
|
|
1045
|
+
let endOffset = 0;
|
|
1046
|
+
for await (const { event, offset } of claudeTranscriptOps.read({ filePath: found.filePath })) {
|
|
1047
|
+
endOffset = offset;
|
|
1048
|
+
if (event.type === "goal_status")
|
|
1049
|
+
events.push(event);
|
|
1050
|
+
}
|
|
1051
|
+
const last = latestGoalFromEvents(events);
|
|
1052
|
+
if (last && !isTerminalGoalStatus(last.status)) {
|
|
1053
|
+
// Start observing from the END of the historical transcript so the poller
|
|
1054
|
+
// surfaces only post-resume transitions (we already hydrated the state).
|
|
1055
|
+
this._goalScanOffset = endOffset;
|
|
1056
|
+
this._goals.hydrate(last);
|
|
1057
|
+
this.startGoalObservation();
|
|
1058
|
+
}
|
|
1059
|
+
}
|
|
1060
|
+
catch { /* best effort */ }
|
|
1061
|
+
}
|
|
867
1062
|
}
|
|
868
1063
|
//# sourceMappingURL=session.js.map
|