@agentclientprotocol/claude-agent-acp 0.81.0 → 0.81.1-preview.10
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/dist/acp-agent.d.ts +29 -8
- package/dist/acp-agent.d.ts.map +1 -1
- package/dist/acp-agent.js +182 -49
- package/dist/index.js +5 -8
- package/dist/managed-policy.d.ts +19 -0
- package/dist/managed-policy.d.ts.map +1 -0
- package/dist/managed-policy.js +31 -0
- package/dist/permissions/options/shared.d.ts +2 -0
- package/dist/permissions/options/shared.d.ts.map +1 -1
- package/dist/permissions/options/tools.d.ts.map +1 -1
- package/dist/permissions/options/tools.js +33 -35
- package/dist/session-mode.d.ts +2 -0
- package/dist/session-mode.d.ts.map +1 -1
- package/dist/session-mode.js +7 -0
- package/dist/session-notices.d.ts +3 -2
- package/dist/session-notices.d.ts.map +1 -1
- package/dist/session-notices.js +8 -3
- package/dist/tools.d.ts.map +1 -1
- package/dist/tools.js +14 -1
- package/package.json +1 -1
package/dist/acp-agent.d.ts
CHANGED
|
@@ -202,16 +202,35 @@ type Turn = {
|
|
|
202
202
|
* indistinguishable from a turn's terminal one — and the steered message runs
|
|
203
203
|
* as a SECOND cycle. Settling at that result would answer `session/prompt`
|
|
204
204
|
* mid-work, so a steered turn's results only RECORD their outcome
|
|
205
|
-
* (`steeredSettle`)
|
|
206
|
-
*
|
|
205
|
+
* (`steeredSettle`) until one provably answers the steer.
|
|
206
|
+
*
|
|
207
|
+
* Two signals prove it. Exact: a result whose `user_message_uuids` names
|
|
208
|
+
* one of `steeredUuids` consumed the steered message, so once no echo is
|
|
209
|
+
* outstanding it is the turn's terminal result and the turn leaves the steer
|
|
210
|
+
* lane to settle there like any other (this also retires an echo the CLI
|
|
211
|
+
* never replayed). Fallback, for producers that don't stamp results: the
|
|
212
|
+
* SDK's `idle` after a result recorded since the last echo (see
|
|
213
|
+
* `steeredAwaitingResult`), the only signal spanning both cycles
|
|
214
|
+
* (CLI 2.1.220).
|
|
207
215
|
*
|
|
208
216
|
* A non-empty set at an idle means the steered cycle hasn't started — the CLI
|
|
209
217
|
* replays a message only when it picks it up, always after the interrupted
|
|
210
|
-
* cycle's result — so that idle is swallowed. Drained by the replay handler
|
|
218
|
+
* cycle's result — so that idle is swallowed. Drained by the replay handler
|
|
219
|
+
* and by stamped results.
|
|
211
220
|
*
|
|
212
|
-
* Residual: a message the CLI drops unreplayed
|
|
213
|
-
* `session/cancel` or the next prompt (both settle
|
|
221
|
+
* Residual: a message the CLI drops unreplayed, with no stamped result naming
|
|
222
|
+
* it, parks the turn until `session/cancel` or the next prompt (both settle
|
|
223
|
+
* it). */
|
|
214
224
|
steeredEchoes?: Set<string>;
|
|
225
|
+
/** Every steer this turn has taken, echoed or not: a stamped result naming one
|
|
226
|
+
* answers the steer even after its echo drained `steeredEchoes`. */
|
|
227
|
+
steeredUuids?: Set<string>;
|
|
228
|
+
/** Set when a steered echo drains and cleared when a result records
|
|
229
|
+
* `steeredSettle`. `steeredSettle` can already hold the interrupted cycle's
|
|
230
|
+
* outcome (or a held turn's, moved over by `steer()`) when the echo lands, so
|
|
231
|
+
* while this is set the recorded outcome predates the steered work and an
|
|
232
|
+
* idle must not settle on it. */
|
|
233
|
+
steeredAwaitingResult?: boolean;
|
|
215
234
|
/** What a steered turn settles with once its steered work has run: the outcome
|
|
216
235
|
* of its latest result, so its usage covers every cycle the turn ran. */
|
|
217
236
|
steeredSettle?: PromptResponse;
|
|
@@ -315,8 +334,8 @@ export type Session = {
|
|
|
315
334
|
* without ever reaching the model). */
|
|
316
335
|
queryClosed?: boolean;
|
|
317
336
|
cwd: string;
|
|
318
|
-
/** Serialized snapshot of session-defining params (cwd, mcpServers)
|
|
319
|
-
* detect when loadSession/resumeSession is called with changed values. */
|
|
337
|
+
/** Serialized snapshot of session-defining params (cwd, mcpServers, skills)
|
|
338
|
+
* used to detect when loadSession/resumeSession is called with changed values. */
|
|
320
339
|
sessionFingerprint: string;
|
|
321
340
|
/** Original ACP parameters used to recreate this query with a new provider. */
|
|
322
341
|
creationParams?: NewSessionRequest;
|
|
@@ -341,6 +360,8 @@ export type Session = {
|
|
|
341
360
|
* (see resumedFirstResultModelUsage). */
|
|
342
361
|
lastModelUsageReading?: ModelTokenTally;
|
|
343
362
|
modes: SessionModeState;
|
|
363
|
+
/** The mode the session left when it entered plan mode, if it is in plan. */
|
|
364
|
+
prePlanMode?: string;
|
|
344
365
|
models: SessionModelState;
|
|
345
366
|
modelInfos: ModelInfo[];
|
|
346
367
|
/** Prevents the model-specific Auto fallback from spamming the transcript. */
|
|
@@ -1031,7 +1052,7 @@ export declare class ClaudeAcpAgent {
|
|
|
1031
1052
|
*
|
|
1032
1053
|
* Pre-empting means ABORTING: the interrupted cycle emits a `result` of its
|
|
1033
1054
|
* own and the steered message runs as a second one, so the turn is marked
|
|
1034
|
-
* (`Turn.steeredEchoes`) to settle
|
|
1055
|
+
* (`Turn.steeredEchoes`) to settle only once a result answers the steer.
|
|
1035
1056
|
*
|
|
1036
1057
|
* When the session is idle, the opt-in path returns `promptRequired` WITHOUT
|
|
1037
1058
|
* calling `prompt()`, pushing SDK input, or mutating `turnQueue`: the content
|
package/dist/acp-agent.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"acp-agent.d.ts","sourceRoot":"","sources":["../src/acp-agent.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"acp-agent.d.ts","sourceRoot":"","sources":["../src/acp-agent.ts"],"names":[],"mappings":"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"}
|
package/dist/acp-agent.js
CHANGED
|
@@ -249,6 +249,23 @@ function isHeldOpen(turn) {
|
|
|
249
249
|
function isSteering(turn) {
|
|
250
250
|
return turn != null && turn.steeredEchoes !== undefined && !turn.settled;
|
|
251
251
|
}
|
|
252
|
+
/** Whether a steered turn's recorded outcome is its steered work's own: every
|
|
253
|
+
* steered message has been picked up and a result arrived after the last one
|
|
254
|
+
* (see Turn.steeredAwaitingResult), so the next idle can settle it. */
|
|
255
|
+
function isSteeredSettleReady(turn) {
|
|
256
|
+
return (isSteering(turn) &&
|
|
257
|
+
turn.steeredEchoes.size === 0 &&
|
|
258
|
+
turn.steeredSettle !== undefined &&
|
|
259
|
+
!turn.steeredAwaitingResult);
|
|
260
|
+
}
|
|
261
|
+
/** Take a turn out of the steer lane so its settlement follows the ordinary
|
|
262
|
+
* result/idle rules again. */
|
|
263
|
+
function leaveSteerLane(turn) {
|
|
264
|
+
turn.steeredEchoes = undefined;
|
|
265
|
+
turn.steeredUuids = undefined;
|
|
266
|
+
turn.steeredAwaitingResult = undefined;
|
|
267
|
+
turn.steeredSettle = undefined;
|
|
268
|
+
}
|
|
252
269
|
/** Disarm the force-cancel backstop (see Session.forceCancelTimer). Every
|
|
253
270
|
* path that settles the active turn must run this so a timer can never fire
|
|
254
271
|
* on an already-settled turn — and must leave the field undefined, or the
|
|
@@ -260,13 +277,25 @@ function disarmForceCancel(session) {
|
|
|
260
277
|
session.forceCancelTimer = undefined;
|
|
261
278
|
}
|
|
262
279
|
}
|
|
280
|
+
/** Normalize skills without changing their SDK semantics. Array order and
|
|
281
|
+
* duplicates do not affect the selected skill set, so neither should rebuild
|
|
282
|
+
* the underlying Query process. */
|
|
283
|
+
function normalizeSkills(skills) {
|
|
284
|
+
return Array.isArray(skills) ? [...new Set(skills)].sort() : skills;
|
|
285
|
+
}
|
|
263
286
|
/** Compute a stable fingerprint of the session-defining params so we can
|
|
264
287
|
* detect when a loadSession/resumeSession call requires tearing down and
|
|
265
|
-
* recreating the underlying Query process.
|
|
266
|
-
* so
|
|
288
|
+
* recreating the underlying Query process. MCP servers are sorted by name,
|
|
289
|
+
* and skills are normalized as a set, so ordering differences don't trigger
|
|
290
|
+
* unnecessary recreations. */
|
|
267
291
|
function computeSessionFingerprint(params) {
|
|
268
292
|
const servers = [...(params.mcpServers ?? [])].sort((a, b) => a.name.localeCompare(b.name));
|
|
269
|
-
|
|
293
|
+
const skills = normalizeSkills(params._meta?.claudeCode?.options?.skills);
|
|
294
|
+
return JSON.stringify({
|
|
295
|
+
cwd: params.cwd,
|
|
296
|
+
mcpServers: servers,
|
|
297
|
+
...(skills !== undefined && { skills }),
|
|
298
|
+
});
|
|
270
299
|
}
|
|
271
300
|
/** The JSON-RPC code ACP assigns to `authRequired`. Read from the SDK so it
|
|
272
301
|
* cannot drift from the errors this agent throws. */
|
|
@@ -274,6 +303,7 @@ const AUTH_REQUIRED_CODE = RequestError.authRequired().code;
|
|
|
274
303
|
const SUPPORTED_PROTOCOLS = ["anthropic", "bedrock", "vertex"];
|
|
275
304
|
const PROVIDER_ID = "main";
|
|
276
305
|
const DEFAULT_ANTHROPIC_BASE_URL = "https://api.anthropic.com";
|
|
306
|
+
const DEFAULT_VERTEX_BASE_URL = "https://aiplatform.googleapis.com";
|
|
277
307
|
const SUBAGENT_TRANSCRIPT_CAPABILITY = "subagent-transcript";
|
|
278
308
|
function supportsSubagentTranscript(capabilities) {
|
|
279
309
|
return capabilities?._meta?.[SUBAGENT_TRANSCRIPT_CAPABILITY] === true;
|
|
@@ -424,6 +454,16 @@ const SESSION_ENDED_MESSAGE = "The Claude Agent session has ended. Please start
|
|
|
424
454
|
// Slash commands that the SDK handles locally without replaying the user
|
|
425
455
|
// message and without invoking the model.
|
|
426
456
|
const LOCAL_ONLY_COMMANDS = new Set(["/context", "/heapdump", "/extra-usage"]);
|
|
457
|
+
// Commands whose marker-only transcript records are ACP/client-local UI noise,
|
|
458
|
+
// not model-visible user prompts. Marker-only custom slash skills are not in
|
|
459
|
+
// this list, so replay can reconstruct them from `<command-name>`/`<command-args>`.
|
|
460
|
+
const REPLAY_HIDDEN_COMMANDS = new Set([
|
|
461
|
+
...LOCAL_ONLY_COMMANDS,
|
|
462
|
+
"/compact",
|
|
463
|
+
"/model",
|
|
464
|
+
"/status",
|
|
465
|
+
"/usage",
|
|
466
|
+
]);
|
|
427
467
|
// The Claude SDK persists local slash command invocations (e.g. `/model`) and
|
|
428
468
|
// their output as user messages in the session transcript, wrapping the
|
|
429
469
|
// payload in these XML-like markers that the CLI uses for its own display.
|
|
@@ -474,6 +514,38 @@ function stripMarkerTags(text) {
|
|
|
474
514
|
}
|
|
475
515
|
return result + text.slice(copiedUpTo);
|
|
476
516
|
}
|
|
517
|
+
function markerTagText(text, tag) {
|
|
518
|
+
const open = `<${tag}>`;
|
|
519
|
+
const close = `</${tag}>`;
|
|
520
|
+
const start = text.indexOf(open);
|
|
521
|
+
if (start === -1)
|
|
522
|
+
return undefined;
|
|
523
|
+
const end = text.indexOf(close, start + open.length);
|
|
524
|
+
if (end === -1)
|
|
525
|
+
return undefined;
|
|
526
|
+
return text.slice(start + open.length, end);
|
|
527
|
+
}
|
|
528
|
+
function hasMarkerTag(text, tag) {
|
|
529
|
+
return markerTagText(text, tag) !== undefined;
|
|
530
|
+
}
|
|
531
|
+
function commandInvocationFromMarkerOnlyText(text) {
|
|
532
|
+
if (hasMarkerTag(text, "local-command-stdout") || hasMarkerTag(text, "local-command-stderr")) {
|
|
533
|
+
return null;
|
|
534
|
+
}
|
|
535
|
+
const commandName = markerTagText(text, "command-name")?.trim();
|
|
536
|
+
if (!commandName?.startsWith("/"))
|
|
537
|
+
return null;
|
|
538
|
+
if (REPLAY_HIDDEN_COMMANDS.has(commandName.split(" ", 1)[0]))
|
|
539
|
+
return null;
|
|
540
|
+
const commandArgs = markerTagText(text, "command-args")?.trim();
|
|
541
|
+
return commandArgs ? `${commandName} ${commandArgs}` : commandName;
|
|
542
|
+
}
|
|
543
|
+
function stripLocalCommandMetadataText(text) {
|
|
544
|
+
const stripped = stripMarkerTags(text);
|
|
545
|
+
if (stripped.trim() !== "")
|
|
546
|
+
return stripped;
|
|
547
|
+
return commandInvocationFromMarkerOnlyText(text);
|
|
548
|
+
}
|
|
477
549
|
/**
|
|
478
550
|
* Return user-message content with local-command and injected-context marker
|
|
479
551
|
* tags removed, or `null` if nothing meaningful remains (caller should skip
|
|
@@ -483,8 +555,7 @@ function stripMarkerTags(text) {
|
|
|
483
555
|
*/
|
|
484
556
|
export function stripLocalCommandMetadata(content) {
|
|
485
557
|
if (typeof content === "string") {
|
|
486
|
-
|
|
487
|
-
return stripped.trim() === "" ? null : stripped;
|
|
558
|
+
return stripLocalCommandMetadataText(content);
|
|
488
559
|
}
|
|
489
560
|
if (!Array.isArray(content))
|
|
490
561
|
return content;
|
|
@@ -496,8 +567,8 @@ export function stripLocalCommandMetadata(content) {
|
|
|
496
567
|
block.type === "text" &&
|
|
497
568
|
"text" in block &&
|
|
498
569
|
typeof block.text === "string") {
|
|
499
|
-
const stripped =
|
|
500
|
-
if (stripped
|
|
570
|
+
const stripped = stripLocalCommandMetadataText(block.text);
|
|
571
|
+
if (stripped === null)
|
|
501
572
|
continue;
|
|
502
573
|
kept.push({ ...block, text: stripped });
|
|
503
574
|
}
|
|
@@ -1334,7 +1405,7 @@ export class ClaudeAcpAgent {
|
|
|
1334
1405
|
if (process.env.CLAUDE_CODE_USE_VERTEX) {
|
|
1335
1406
|
return {
|
|
1336
1407
|
apiType: "vertex",
|
|
1337
|
-
baseUrl: process.env.ANTHROPIC_VERTEX_BASE_URL ??
|
|
1408
|
+
baseUrl: process.env.ANTHROPIC_VERTEX_BASE_URL ?? DEFAULT_VERTEX_BASE_URL,
|
|
1338
1409
|
headers: {},
|
|
1339
1410
|
};
|
|
1340
1411
|
}
|
|
@@ -1706,7 +1777,7 @@ export class ClaudeAcpAgent {
|
|
|
1706
1777
|
*
|
|
1707
1778
|
* Pre-empting means ABORTING: the interrupted cycle emits a `result` of its
|
|
1708
1779
|
* own and the steered message runs as a second one, so the turn is marked
|
|
1709
|
-
* (`Turn.steeredEchoes`) to settle
|
|
1780
|
+
* (`Turn.steeredEchoes`) to settle only once a result answers the steer.
|
|
1710
1781
|
*
|
|
1711
1782
|
* When the session is idle, the opt-in path returns `promptRequired` WITHOUT
|
|
1712
1783
|
* calling `prompt()`, pushing SDK input, or mutating `turnQueue`: the content
|
|
@@ -1771,6 +1842,7 @@ export class ClaudeAcpAgent {
|
|
|
1771
1842
|
// time the consumer next runs, and an unmarked result would settle the turn
|
|
1772
1843
|
// (see Turn.steeredEchoes).
|
|
1773
1844
|
(turnInFlight.steeredEchoes ??= new Set()).add(steeredUuid);
|
|
1845
|
+
(turnInFlight.steeredUuids ??= new Set()).add(steeredUuid);
|
|
1774
1846
|
// A turn already held for background subagents has a recorded outcome the
|
|
1775
1847
|
// steer supersedes: move it into the steer lane so one lane owns settlement.
|
|
1776
1848
|
// The idle handler re-applies the hold through the subagent gate.
|
|
@@ -2282,6 +2354,7 @@ export class ClaudeAcpAgent {
|
|
|
2282
2354
|
// so the last result and its usage win.
|
|
2283
2355
|
if (isSteering(session.activeTurn)) {
|
|
2284
2356
|
session.activeTurn.steeredSettle = outcome;
|
|
2357
|
+
session.activeTurn.steeredAwaitingResult = false;
|
|
2285
2358
|
return;
|
|
2286
2359
|
}
|
|
2287
2360
|
if (session.activeTurn &&
|
|
@@ -2812,10 +2885,9 @@ export class ClaudeAcpAgent {
|
|
|
2812
2885
|
// (verified live: user result → task_notification →
|
|
2813
2886
|
// followup result → ONE idle), so a held turn's own result
|
|
2814
2887
|
// leaves one unpaid unit per hold. Left in place, each unit
|
|
2815
|
-
// would absorb a later un-owed idle
|
|
2816
|
-
// detection
|
|
2817
|
-
//
|
|
2818
|
-
// hanging that prompt. Sweep it.
|
|
2888
|
+
// would absorb a later un-owed idle, masking an issue-#825
|
|
2889
|
+
// detection (the ready steer lane below also leaves debt
|
|
2890
|
+
// standing when it settles). Sweep it.
|
|
2819
2891
|
this.logger.log(`[claude-agent-acp] Session ${params.sessionId}: dropping ${session.owedTrailingIdles} unpaid trailing-idle debt at the running transition`);
|
|
2820
2892
|
session.owedTrailingIdles = 0;
|
|
2821
2893
|
}
|
|
@@ -2878,38 +2950,44 @@ export class ClaudeAcpAgent {
|
|
|
2878
2950
|
}
|
|
2879
2951
|
await settleDeferredIfDrained();
|
|
2880
2952
|
}
|
|
2953
|
+
else if (isSteeredSettleReady(session.activeTurn)) {
|
|
2954
|
+
// A steered turn whose steered work has produced its result
|
|
2955
|
+
// (see Turn.steeredEchoes) settles at the next idle — the
|
|
2956
|
+
// only signal spanning the interrupted and steered cycles
|
|
2957
|
+
// when results aren't stamped. AHEAD of owed-idle debt:
|
|
2958
|
+
// the outcome is final, so whichever idle this is settles
|
|
2959
|
+
// the turn correctly, while debt absorption could swallow
|
|
2960
|
+
// the only idle it gets — e.g. a steer that aborted an
|
|
2961
|
+
// autonomous followup, whose counted trailer collapses into
|
|
2962
|
+
// this one idle. The debt is left standing: a genuinely
|
|
2963
|
+
// separate trailer still absorbs the idle it belongs to,
|
|
2964
|
+
// and one that never comes is swept at the next `running`
|
|
2965
|
+
// transition.
|
|
2966
|
+
//
|
|
2967
|
+
// Via the subagent gate, not settleActive: a steered turn
|
|
2968
|
+
// can also have spawned background subagents, which own it
|
|
2969
|
+
// from here (settles now if none is live, holds otherwise).
|
|
2970
|
+
const steered = session.activeTurn;
|
|
2971
|
+
steered.deferredSettle = steered.steeredSettle;
|
|
2972
|
+
leaveSteerLane(steered);
|
|
2973
|
+
await settleDeferredIfDrained();
|
|
2974
|
+
}
|
|
2881
2975
|
else if (session.owedTrailingIdles > 0) {
|
|
2882
2976
|
// Absorb a settled turn's trailing idle. Also covers a
|
|
2883
2977
|
// cancel that landed between a turn's counted result and
|
|
2884
2978
|
// this lagged idle (no active turn to settle): the idle
|
|
2885
2979
|
// still belongs to that settled turn, and skipping the
|
|
2886
2980
|
// decrement would leak the debt permanently.
|
|
2887
|
-
// Deliberately BEFORE the steer lane below: an
|
|
2888
|
-
// belongs to an earlier turn, and
|
|
2889
|
-
//
|
|
2890
|
-
// steered cycle is still running. Steered results owe none.
|
|
2981
|
+
// Deliberately BEFORE the not-ready steer lane below: an
|
|
2982
|
+
// owed idle belongs to an earlier turn, and it must not be
|
|
2983
|
+
// left to reach the #825 fail. Steered results owe none.
|
|
2891
2984
|
session.owedTrailingIdles--;
|
|
2892
2985
|
}
|
|
2893
2986
|
else if (isSteering(session.activeTurn)) {
|
|
2894
|
-
// A steered turn
|
|
2895
|
-
// the
|
|
2896
|
-
//
|
|
2897
|
-
//
|
|
2898
|
-
// still ahead — swallow it, and never let it reach the #825
|
|
2899
|
-
// fail below, which would reject a prompt about to answer.
|
|
2900
|
-
//
|
|
2901
|
-
// Plain Turn so the fields can be cleared below; isSteering
|
|
2902
|
-
// narrows steeredEchoes to non-optional.
|
|
2903
|
-
const steered = session.activeTurn;
|
|
2904
|
-
if (steered.steeredEchoes?.size === 0 && steered.steeredSettle !== undefined) {
|
|
2905
|
-
// Via the subagent gate, not settleActive: a steered turn
|
|
2906
|
-
// can also have spawned background subagents, which own it
|
|
2907
|
-
// from here (settles now if none is live, holds otherwise).
|
|
2908
|
-
steered.deferredSettle = steered.steeredSettle;
|
|
2909
|
-
steered.steeredEchoes = undefined;
|
|
2910
|
-
steered.steeredSettle = undefined;
|
|
2911
|
-
await settleDeferredIfDrained();
|
|
2912
|
-
}
|
|
2987
|
+
// A steered turn whose answer is still ahead: an idle before
|
|
2988
|
+
// the steered echo, or before a result since it. Swallow it,
|
|
2989
|
+
// and never let it reach the #825 fail below, which would
|
|
2990
|
+
// reject a prompt about to answer.
|
|
2913
2991
|
}
|
|
2914
2992
|
else if (!session.cancelled &&
|
|
2915
2993
|
session.activeTurn &&
|
|
@@ -3098,7 +3176,7 @@ export class ClaudeAcpAgent {
|
|
|
3098
3176
|
...splitNoticeText(message.content, severity === "warning"
|
|
3099
3177
|
? "Claude reported a warning"
|
|
3100
3178
|
: "Claude reported a notice"),
|
|
3101
|
-
}, supportsNotices, transcriptText),
|
|
3179
|
+
}, supportsNotices, transcriptText, { claudeCode: { kind: "informational", level: message.level } }),
|
|
3102
3180
|
});
|
|
3103
3181
|
const noticedTurn = session.activeTurn ?? session.turnQueue?.[0];
|
|
3104
3182
|
if (supportsNotices && noticedTurn) {
|
|
@@ -3418,6 +3496,29 @@ export class ClaudeAcpAgent {
|
|
|
3418
3496
|
if (!isAutonomousResult) {
|
|
3419
3497
|
recordResultForOrphanCommands();
|
|
3420
3498
|
await ensureActiveTurn(message.user_message_uuid);
|
|
3499
|
+
// A result that names a steer consumed it (see
|
|
3500
|
+
// Turn.steeredEchoes), so the steered work is done: retire
|
|
3501
|
+
// its echo — the CLI may never have replayed it — and, with
|
|
3502
|
+
// no other steer outstanding, leave the steer lane so this
|
|
3503
|
+
// result settles the turn through the ordinary lanes below
|
|
3504
|
+
// and owes its trailing idle like any other. The interrupted
|
|
3505
|
+
// cycle's result names only the send it was answering, so it
|
|
3506
|
+
// stays on the steer lane. A cancelled turn's steers are
|
|
3507
|
+
// cancel()'s to account for.
|
|
3508
|
+
const steeredTurn = session.activeTurn;
|
|
3509
|
+
if (!session.cancelled && isSteering(steeredTurn)) {
|
|
3510
|
+
const consumed = message.user_message_uuids ??
|
|
3511
|
+
(message.user_message_uuid !== undefined ? [message.user_message_uuid] : []);
|
|
3512
|
+
let answersSteer = false;
|
|
3513
|
+
for (const uuid of consumed) {
|
|
3514
|
+
steeredTurn.steeredEchoes.delete(uuid);
|
|
3515
|
+
if (steeredTurn.steeredUuids?.has(uuid))
|
|
3516
|
+
answersSteer = true;
|
|
3517
|
+
}
|
|
3518
|
+
if (answersSteer && steeredTurn.steeredEchoes.size === 0) {
|
|
3519
|
+
leaveSteerLane(steeredTurn);
|
|
3520
|
+
}
|
|
3521
|
+
}
|
|
3421
3522
|
// Once the submitted goal command has produced its own result,
|
|
3422
3523
|
// no older runtime update can still precede it in the ordered
|
|
3423
3524
|
// SDK stream. Stop suppressing updates even when this runtime
|
|
@@ -3427,7 +3528,9 @@ export class ClaudeAcpAgent {
|
|
|
3427
3528
|
session.pendingGoalUpdate = undefined;
|
|
3428
3529
|
const goalCommandFailed = message.is_error ||
|
|
3429
3530
|
message.stop_reason === "refusal" ||
|
|
3430
|
-
("result" in message &&
|
|
3531
|
+
("result" in message &&
|
|
3532
|
+
message.is_error &&
|
|
3533
|
+
message.result.includes("Please run /login"));
|
|
3431
3534
|
if (goalCommandFailed) {
|
|
3432
3535
|
await this.publishGoal(params.sessionId, pendingGoalUpdate.previous ?? null);
|
|
3433
3536
|
}
|
|
@@ -3480,7 +3583,9 @@ export class ClaudeAcpAgent {
|
|
|
3480
3583
|
// Turn.steeredEchoes). One idle covers the whole interrupted +
|
|
3481
3584
|
// steered sequence and that idle settles the turn, so counting
|
|
3482
3585
|
// either result would leave a debt that swallows it. Autonomous
|
|
3483
|
-
// results inside a steered turn keep their own trailers
|
|
3586
|
+
// results inside a steered turn keep their own trailers, and so
|
|
3587
|
+
// does a result that named the steer: it took the turn out of the
|
|
3588
|
+
// steer lane above and settles at the result, not the idle.
|
|
3484
3589
|
const owesTrailingIdle = isAutonomousResult || !isSteering(session.activeTurn);
|
|
3485
3590
|
if (owesTrailingIdle &&
|
|
3486
3591
|
(isAutonomousResult || !session.cancelled || !session.activeTurn)) {
|
|
@@ -3741,7 +3846,7 @@ export class ClaudeAcpAgent {
|
|
|
3741
3846
|
}
|
|
3742
3847
|
switch (message.subtype) {
|
|
3743
3848
|
case "success": {
|
|
3744
|
-
if (message.result.includes("Please run /login")) {
|
|
3849
|
+
if (message.is_error && message.result.includes("Please run /login")) {
|
|
3745
3850
|
await failActiveWithSessionFailure("auth_required", RequestError.authRequired(), message.result);
|
|
3746
3851
|
break;
|
|
3747
3852
|
}
|
|
@@ -4103,8 +4208,11 @@ export class ClaudeAcpAgent {
|
|
|
4103
4208
|
// none), but it marks the steered cycle as running — how the idle
|
|
4104
4209
|
// lane tells "the answer is still ahead" from "the turn is over"
|
|
4105
4210
|
// (see Turn.steeredEchoes).
|
|
4106
|
-
|
|
4107
|
-
|
|
4211
|
+
// The outcome recorded so far predates the steered cycle, so the
|
|
4212
|
+
// idle lane waits for that cycle's own result.
|
|
4213
|
+
if (isSteering(session.activeTurn) &&
|
|
4214
|
+
session.activeTurn.steeredEchoes.delete(message.uuid)) {
|
|
4215
|
+
session.activeTurn.steeredAwaitingResult = true;
|
|
4108
4216
|
}
|
|
4109
4217
|
// Unrelated replay (e.g. the echo of an already-settled turn).
|
|
4110
4218
|
break;
|
|
@@ -5387,6 +5495,7 @@ export class ClaudeAcpAgent {
|
|
|
5387
5495
|
allowPersistentOptions: !noPersistentRule,
|
|
5388
5496
|
defaultToNo,
|
|
5389
5497
|
availableModes: this.sessionModes.availableModeIds(session.modes),
|
|
5498
|
+
prePlanMode: session.prePlanMode,
|
|
5390
5499
|
contextUsedPercent: session.contextUsedTokens === undefined || session.contextWindowSize <= 0
|
|
5391
5500
|
? undefined
|
|
5392
5501
|
: Math.max(0, Math.min(100, Math.round((session.contextUsedTokens / session.contextWindowSize) * 100))),
|
|
@@ -5405,6 +5514,20 @@ export class ClaudeAcpAgent {
|
|
|
5405
5514
|
if (autoFallback.fallbackApplied) {
|
|
5406
5515
|
await this.sessionModes.publishFallbackWarning(sessionId, session);
|
|
5407
5516
|
}
|
|
5517
|
+
if (toolName === "ExitPlanMode" && permissionResult.behavior === "allow") {
|
|
5518
|
+
const modeUpdate = permissionResult.updatedPermissions?.find((update) => update.type === "setMode" && update.destination === "session");
|
|
5519
|
+
if (modeUpdate?.type === "setMode") {
|
|
5520
|
+
try {
|
|
5521
|
+
await this.sessionModes.publishCurrent(sessionId, modeUpdate.mode);
|
|
5522
|
+
await this.updateConfigOption(sessionId, MODE_CONFIG_ID, modeUpdate.mode);
|
|
5523
|
+
}
|
|
5524
|
+
catch (error) {
|
|
5525
|
+
// The user already approved the plan; a failed notification must not
|
|
5526
|
+
// turn that approval into a failed permission request.
|
|
5527
|
+
this.logger.error("Failed to publish mode after plan approval:", error);
|
|
5528
|
+
}
|
|
5529
|
+
}
|
|
5530
|
+
}
|
|
5408
5531
|
const clearContextMode = decodedPermission.contextResetMode
|
|
5409
5532
|
? this.sessionModes.effectiveMode(session, decodedPermission.contextResetMode)
|
|
5410
5533
|
: undefined;
|
|
@@ -5842,8 +5965,9 @@ export class ClaudeAcpAgent {
|
|
|
5842
5965
|
};
|
|
5843
5966
|
}
|
|
5844
5967
|
// Session-defining params changed (e.g. cwd pointed at a git worktree,
|
|
5845
|
-
//
|
|
5846
|
-
// recreate it so the underlying Query process picks
|
|
5968
|
+
// MCP servers reconfigured, or the skill set changed). Tear down the
|
|
5969
|
+
// existing session and recreate it so the underlying Query process picks
|
|
5970
|
+
// up the new values.
|
|
5847
5971
|
await this.teardownSession(params.sessionId);
|
|
5848
5972
|
}
|
|
5849
5973
|
const resumedModelHint = resumedSession
|
|
@@ -5980,10 +6104,13 @@ export class ClaudeAcpAgent {
|
|
|
5980
6104
|
}
|
|
5981
6105
|
// Extract options from _meta if provided
|
|
5982
6106
|
const sessionMeta = params._meta;
|
|
5983
|
-
// Bypass is off for root outside a sandbox,
|
|
5984
|
-
//
|
|
5985
|
-
//
|
|
5986
|
-
|
|
6107
|
+
// Bypass is off for root outside a sandbox, when settings disable it (the
|
|
6108
|
+
// CLI refuses bypass then too), and hosts may opt a session out. Decided
|
|
6109
|
+
// once here: it gates the SDK flag, the spawn-time mode (the SDK rejects
|
|
6110
|
+
// bypassPermissions without the flag), and the mode catalog.
|
|
6111
|
+
const allowBypass = ALLOW_BYPASS &&
|
|
6112
|
+
settingsManager.getSettings().permissions?.disableBypassPermissionsMode !== "disable" &&
|
|
6113
|
+
sessionMeta?.claudeCode?.options?.allowDangerouslySkipPermissions !== false;
|
|
5987
6114
|
const initialPermissionMode = resolvePermissionMode(creationOpts.permissionMode ?? settingsManager.getSettings().permissions?.defaultMode, this.logger, allowBypass);
|
|
5988
6115
|
const userProvidedOptions = sessionMeta?.claudeCode?.options
|
|
5989
6116
|
? { ...sessionMeta.claudeCode.options }
|
|
@@ -6827,10 +6954,16 @@ function createEnvForProvider(config) {
|
|
|
6827
6954
|
if (config.apiType === "vertex") {
|
|
6828
6955
|
// `config.vertex` is guaranteed present for vertex by `unstable_setProvider`
|
|
6829
6956
|
// validation; fall back to empty strings defensively.
|
|
6957
|
+
// Leaving ANTHROPIC_VERTEX_BASE_URL empty for the default endpoint lets
|
|
6958
|
+
// Claude Code use its native Vertex endpoint/model resolution. Supplying
|
|
6959
|
+
// even the default host marks the session as a custom Vertex deployment and
|
|
6960
|
+
// can hide otherwise-valid models.
|
|
6830
6961
|
return {
|
|
6831
6962
|
...resetRouting,
|
|
6832
6963
|
CLAUDE_CODE_USE_VERTEX: "1",
|
|
6833
|
-
|
|
6964
|
+
...(config.baseUrl !== DEFAULT_VERTEX_BASE_URL
|
|
6965
|
+
? { ANTHROPIC_VERTEX_BASE_URL: config.baseUrl }
|
|
6966
|
+
: {}),
|
|
6834
6967
|
ANTHROPIC_VERTEX_PROJECT_ID: config.vertex?.projectId ?? "",
|
|
6835
6968
|
CLOUD_ML_REGION: config.vertex?.region ?? "",
|
|
6836
6969
|
ANTHROPIC_CUSTOM_HEADERS: customHeaders,
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import { resolveSettings } from "@anthropic-ai/claude-agent-sdk";
|
|
3
2
|
import { claudeCliPath, runAcp } from "./acp-agent.js";
|
|
3
|
+
import { applyManagedPolicyEnv } from "./managed-policy.js";
|
|
4
4
|
import packageJson from "../package.json" with { type: "json" };
|
|
5
5
|
import { appendFileSync, mkdirSync } from "node:fs";
|
|
6
6
|
import { join } from "node:path";
|
|
@@ -43,13 +43,10 @@ else if (process.argv.includes("--version") || process.argv.includes("-v")) {
|
|
|
43
43
|
}
|
|
44
44
|
else {
|
|
45
45
|
// Apply env vars from the managed-policy tier before any SDK call so the
|
|
46
|
-
// SDK subprocess inherits them.
|
|
47
|
-
//
|
|
48
|
-
//
|
|
49
|
-
|
|
50
|
-
for (const [key, value] of Object.entries(policy.effective.env ?? {})) {
|
|
51
|
-
process.env[key] = value;
|
|
52
|
-
}
|
|
46
|
+
// SDK subprocess inherits them. Reading the tier is best-effort: a transient
|
|
47
|
+
// failure leaves the agent running with no policy env instead of aborting
|
|
48
|
+
// module evaluation here, before any ACP traffic.
|
|
49
|
+
await applyManagedPolicyEnv();
|
|
53
50
|
// stdout is used to send messages to the client
|
|
54
51
|
// we redirect everything else to stderr to make sure it doesn't interfere with ACP
|
|
55
52
|
console.log = console.error;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { resolveSettings } from "@anthropic-ai/claude-agent-sdk";
|
|
2
|
+
/**
|
|
3
|
+
* Applies the managed-policy tier's env vars to `process.env` before any SDK
|
|
4
|
+
* call, so the SDK subprocess inherits them. Going through `resolveSettings`
|
|
5
|
+
* rather than a raw read of `managed-settings.json` also picks up MDM sources on
|
|
6
|
+
* macOS and `HKLM`/`HKCU` on Windows.
|
|
7
|
+
*
|
|
8
|
+
* Reading the tier is best-effort by nature: on a host with no MDM and no
|
|
9
|
+
* managed policy the result is empty and the agent behaves identically. So a
|
|
10
|
+
* transient failure to read it — `EINTR`, `EMFILE`, `EAGAIN` — must leave the
|
|
11
|
+
* agent running with no policy env rather than stop it from starting.
|
|
12
|
+
*
|
|
13
|
+
* That guard matters because the caller awaits this at module scope in an ESM
|
|
14
|
+
* entry point, where a rejection aborts module evaluation and the process exits
|
|
15
|
+
* before serving any ACP traffic. `SettingsManager.loadAllSettings` wraps the
|
|
16
|
+
* same SDK call for the same reason.
|
|
17
|
+
*/
|
|
18
|
+
export declare function applyManagedPolicyEnv(resolve?: typeof resolveSettings, env?: Record<string, string | undefined>): Promise<void>;
|
|
19
|
+
//# sourceMappingURL=managed-policy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"managed-policy.d.ts","sourceRoot":"","sources":["../src/managed-policy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAEjE;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,qBAAqB,CACzC,OAAO,GAAE,OAAO,eAAiC,EACjD,GAAG,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAe,GACpD,OAAO,CAAC,IAAI,CAAC,CAYf"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { resolveSettings } from "@anthropic-ai/claude-agent-sdk";
|
|
2
|
+
/**
|
|
3
|
+
* Applies the managed-policy tier's env vars to `process.env` before any SDK
|
|
4
|
+
* call, so the SDK subprocess inherits them. Going through `resolveSettings`
|
|
5
|
+
* rather than a raw read of `managed-settings.json` also picks up MDM sources on
|
|
6
|
+
* macOS and `HKLM`/`HKCU` on Windows.
|
|
7
|
+
*
|
|
8
|
+
* Reading the tier is best-effort by nature: on a host with no MDM and no
|
|
9
|
+
* managed policy the result is empty and the agent behaves identically. So a
|
|
10
|
+
* transient failure to read it — `EINTR`, `EMFILE`, `EAGAIN` — must leave the
|
|
11
|
+
* agent running with no policy env rather than stop it from starting.
|
|
12
|
+
*
|
|
13
|
+
* That guard matters because the caller awaits this at module scope in an ESM
|
|
14
|
+
* entry point, where a rejection aborts module evaluation and the process exits
|
|
15
|
+
* before serving any ACP traffic. `SettingsManager.loadAllSettings` wraps the
|
|
16
|
+
* same SDK call for the same reason.
|
|
17
|
+
*/
|
|
18
|
+
export async function applyManagedPolicyEnv(resolve = resolveSettings, env = process.env) {
|
|
19
|
+
let policy;
|
|
20
|
+
try {
|
|
21
|
+
policy = await resolve({ settingSources: [] });
|
|
22
|
+
}
|
|
23
|
+
catch (error) {
|
|
24
|
+
// stderr, so the ACP stream on stdout stays clean.
|
|
25
|
+
console.error("Failed to resolve managed policy settings:", error);
|
|
26
|
+
return;
|
|
27
|
+
}
|
|
28
|
+
for (const [key, value] of Object.entries(policy.effective.env ?? {})) {
|
|
29
|
+
env[key] = value;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
@@ -25,6 +25,8 @@ export interface PermissionOptionContext {
|
|
|
25
25
|
* approvable by a stray keystroke, so the decline option leads. */
|
|
26
26
|
defaultToNo?: boolean;
|
|
27
27
|
availableModes?: readonly string[];
|
|
28
|
+
/** The mode the session left when it entered plan mode. */
|
|
29
|
+
prePlanMode?: string;
|
|
28
30
|
contextUsedPercent?: number;
|
|
29
31
|
}
|
|
30
32
|
export declare function allowOnce(name?: string): PermissionOption;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../src/permissions/options/shared.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,qBAAqB,CAAC;AAEtE,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;CAavB,CAAC;AAEX,MAAM,WAAW,uBAAuB;IACtC,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,gBAAgB,CAAC,EAAE,0BAA0B,CAAC;IAC9C,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC;wEACoE;IACpE,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,cAAc,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,wBAAgB,SAAS,CAAC,IAAI,SAAQ,GAAG,gBAAgB,CAExD;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,CAE/D;AAED,wBAAgB,MAAM,CAAC,IAAI,SAAO,GAAG,gBAAgB,CAEpD;AAED,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,0BAA0B,GAAG,SAAS,EACjD,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,SAAS,SAAQ,EACjB,UAAU,SAAO,GAChB,gBAAgB,EAAE,CAKpB;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAE9D;AAED,wBAAgB,mBAAmB,CACjC,SAAS,EAAE,0BAA0B,GAAG,SAAS,EACjD,QAAQ,EAAE,MAAM,EAChB,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAkBT;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CACjC,SAAS,EAAE,0BAA0B,GAAG,SAAS,EACjD,QAAQ,EAAE,MAAM,GACf,OAAO,CAYT;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,SAAO,GAAG,gBAAgB,EAAE,CAEvF"}
|
|
1
|
+
{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../src/permissions/options/shared.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,qBAAqB,CAAC;AAEtE,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;CAavB,CAAC;AAEX,MAAM,WAAW,uBAAuB;IACtC,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,gBAAgB,CAAC,EAAE,0BAA0B,CAAC;IAC9C,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC;wEACoE;IACpE,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,cAAc,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,2DAA2D;IAC3D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,wBAAgB,SAAS,CAAC,IAAI,SAAQ,GAAG,gBAAgB,CAExD;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,CAE/D;AAED,wBAAgB,MAAM,CAAC,IAAI,SAAO,GAAG,gBAAgB,CAEpD;AAED,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,0BAA0B,GAAG,SAAS,EACjD,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,SAAS,SAAQ,EACjB,UAAU,SAAO,GAChB,gBAAgB,EAAE,CAKpB;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAE9D;AAED,wBAAgB,mBAAmB,CACjC,SAAS,EAAE,0BAA0B,GAAG,SAAS,EACjD,QAAQ,EAAE,MAAM,EAChB,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAkBT;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CACjC,SAAS,EAAE,0BAA0B,GAAG,SAAS,EACjD,QAAQ,EAAE,MAAM,GACf,OAAO,CAYT;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,SAAO,GAAG,gBAAgB,EAAE,CAEvF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../../src/permissions/options/tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAML,KAAK,uBAAuB,EAI7B,MAAM,aAAa,CAAC;AAErB,wBAAgB,8BAA8B,CAC5C,OAAO,EAAE,uBAAuB,GAC/B,gBAAgB,EAAE,CAapB;AAED,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,uBAAuB,GAAG,gBAAgB,EAAE,CAqBhG;AAED,wBAAgB,mCAAmC,IAAI,gBAAgB,EAAE,CAExE;AAED,wBAAgB,kCAAkC,CAChD,OAAO,EAAE,uBAAuB,GAC/B,gBAAgB,EAAE,
|
|
1
|
+
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../../src/permissions/options/tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAML,KAAK,uBAAuB,EAI7B,MAAM,aAAa,CAAC;AAErB,wBAAgB,8BAA8B,CAC5C,OAAO,EAAE,uBAAuB,GAC/B,gBAAgB,EAAE,CAapB;AAED,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,uBAAuB,GAAG,gBAAgB,EAAE,CAqBhG;AAED,wBAAgB,mCAAmC,IAAI,gBAAgB,EAAE,CAExE;AAED,wBAAgB,kCAAkC,CAChD,OAAO,EAAE,uBAAuB,GAC/B,gBAAgB,EAAE,CAiEpB;AAED,wBAAgB,oCAAoC,CAClD,OAAO,EAAE,uBAAuB,GAC/B,gBAAgB,EAAE,CAOpB;AAED,wBAAgB,8BAA8B,CAC5C,OAAO,EAAE,uBAAuB,GAC/B,gBAAgB,EAAE,CAiBpB;AAID,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAE9D;AAED,wBAAgB,oCAAoC,CAClD,OAAO,EAAE,uBAAuB,GAC/B,gBAAgB,EAAE,CAWpB"}
|
|
@@ -42,50 +42,48 @@ export function buildEnterPlanModePermissionOptions() {
|
|
|
42
42
|
export function buildExitPlanModePermissionOptions(context) {
|
|
43
43
|
const modes = new Set(context.availableModes);
|
|
44
44
|
const options = [];
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
45
|
+
// Claude Code offers bypass only when the user launched with it, so it can
|
|
46
|
+
// prefer bypass outright. The adapter advertises bypass by default, so Auto
|
|
47
|
+
// leads unless the session was in bypass before entering plan mode. Both stay
|
|
48
|
+
// selectable: they have different permission semantics.
|
|
49
|
+
const elevatedModes = (context.prePlanMode === "bypassPermissions"
|
|
50
|
+
? ["bypassPermissions", "auto"]
|
|
51
|
+
: ["auto", "bypassPermissions"]).filter((mode) => modes.has(mode));
|
|
52
|
+
const preferredMode = elevatedModes[0] ?? "acceptEdits";
|
|
50
53
|
if (plainString(context.input.plan)) {
|
|
51
54
|
const usage = context.contextUsedPercent === undefined ? "" : ` (${context.contextUsedPercent}% used)`;
|
|
52
|
-
|
|
53
|
-
|
|
55
|
+
options.push(preferredMode === "auto"
|
|
56
|
+
? {
|
|
54
57
|
optionId: PERMISSION_OPTION_ID.exitPlanClearAuto,
|
|
55
58
|
name: `Yes, clear context${usage} and use auto mode`,
|
|
56
59
|
kind: "allow_always",
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
60
|
+
}
|
|
61
|
+
: preferredMode === "bypassPermissions"
|
|
62
|
+
? {
|
|
63
|
+
optionId: PERMISSION_OPTION_ID.exitPlanClearBypass,
|
|
64
|
+
name: `Yes, clear context${usage} and bypass permissions`,
|
|
65
|
+
kind: "allow_always",
|
|
66
|
+
}
|
|
67
|
+
: {
|
|
68
|
+
optionId: PERMISSION_OPTION_ID.exitPlanClearAcceptEdits,
|
|
69
|
+
name: `Yes, clear context${usage} and auto-accept edits`,
|
|
70
|
+
kind: "allow_always",
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
for (const mode of elevatedModes) {
|
|
74
|
+
options.push(mode === "auto"
|
|
75
|
+
? {
|
|
76
|
+
optionId: PERMISSION_OPTION_ID.exitPlanAuto,
|
|
77
|
+
name: "Yes, and use auto mode",
|
|
63
78
|
kind: "allow_always",
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
optionId: PERMISSION_OPTION_ID.exitPlanClearAcceptEdits,
|
|
69
|
-
name: `Yes, clear context${usage} and auto-accept edits`,
|
|
79
|
+
}
|
|
80
|
+
: {
|
|
81
|
+
optionId: PERMISSION_OPTION_ID.exitPlanBypass,
|
|
82
|
+
name: "Yes, and bypass permissions",
|
|
70
83
|
kind: "allow_always",
|
|
71
84
|
});
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
if (elevatedMode === "auto") {
|
|
75
|
-
options.push({
|
|
76
|
-
optionId: PERMISSION_OPTION_ID.exitPlanAuto,
|
|
77
|
-
name: "Yes, and use auto mode",
|
|
78
|
-
kind: "allow_always",
|
|
79
|
-
});
|
|
80
|
-
}
|
|
81
|
-
else if (elevatedMode === "bypassPermissions") {
|
|
82
|
-
options.push({
|
|
83
|
-
optionId: PERMISSION_OPTION_ID.exitPlanBypass,
|
|
84
|
-
name: "Yes, and bypass permissions",
|
|
85
|
-
kind: "allow_always",
|
|
86
|
-
});
|
|
87
85
|
}
|
|
88
|
-
|
|
86
|
+
if (elevatedModes.length === 0) {
|
|
89
87
|
options.push({
|
|
90
88
|
optionId: PERMISSION_OPTION_ID.exitPlanAcceptEdits,
|
|
91
89
|
name: "Yes, auto-accept edits",
|
package/dist/session-mode.d.ts
CHANGED
|
@@ -14,6 +14,8 @@ export type SessionMode = {
|
|
|
14
14
|
autoModeFallbackWarningShown?: boolean;
|
|
15
15
|
/** Initial mode fallback is reported after session/new, on the first prompt. */
|
|
16
16
|
autoModeFallbackWarningPending?: boolean;
|
|
17
|
+
/** The mode the session left when it entered plan mode, if it is in plan. */
|
|
18
|
+
prePlanMode?: string;
|
|
17
19
|
};
|
|
18
20
|
export type SessionModeManagerOptions<S extends SessionMode> = {
|
|
19
21
|
getSession(sessionId: string): S | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-mode.d.ts","sourceRoot":"","sources":["../src/session-mode.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,EACxB,KAAK,qBAAqB,EAC1B,KAAK,sBAAsB,EAC5B,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EACV,SAAS,EACT,cAAc,EACd,gBAAgB,EAChB,KAAK,EACN,MAAM,gCAAgC,CAAC;AAQxC,eAAO,MAAM,cAAc,SAAS,CAAC;AACrC,eAAO,MAAM,kBAAkB,EAAE,cAA8B,CAAC;AAYhE,MAAM,MAAM,WAAW,GAAG;IACxB,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,mBAAmB,CAAC,CAAC;IACxC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,KAAK,EAAE,gBAAgB,CAAC;IACxB,MAAM,EAAE;QAAE,cAAc,EAAE,MAAM,CAAA;KAAE,CAAC;IACnC,UAAU,EAAE,SAAS,EAAE,CAAC;IACxB,8EAA8E;IAC9E,4BAA4B,CAAC,EAAE,OAAO,CAAC;IACvC,gFAAgF;IAChF,8BAA8B,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"session-mode.d.ts","sourceRoot":"","sources":["../src/session-mode.ts"],"names":[],"mappings":"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"}
|
package/dist/session-mode.js
CHANGED
|
@@ -57,6 +57,13 @@ export class SessionModeManager {
|
|
|
57
57
|
};
|
|
58
58
|
}
|
|
59
59
|
syncConfig(session, mode) {
|
|
60
|
+
const previousMode = session.modes.currentModeId;
|
|
61
|
+
if (mode !== "plan") {
|
|
62
|
+
session.prePlanMode = undefined;
|
|
63
|
+
}
|
|
64
|
+
else if (previousMode !== "plan") {
|
|
65
|
+
session.prePlanMode = previousMode;
|
|
66
|
+
}
|
|
60
67
|
session.modes = { ...session.modes, currentModeId: mode };
|
|
61
68
|
session.configOptions = session.configOptions.map((option) => option.id === MODE_CONFIG_ID && typeof option.currentValue === "string"
|
|
62
69
|
? { ...option, currentValue: mode }
|
|
@@ -21,8 +21,9 @@ export declare function noticeUpdate(notice: SessionNotice): SessionNotification
|
|
|
21
21
|
export declare function noticeTranscriptText(notice: SessionNotice): string;
|
|
22
22
|
/** The update to send for `notice`: a `notice` when the client can present
|
|
23
23
|
* one, else an agent message carrying `transcriptText` (by default the
|
|
24
|
-
* bold-label rendering of the notice)
|
|
25
|
-
|
|
24
|
+
* bold-label rendering of the notice) and `transcriptMeta`, so clients
|
|
25
|
+
* without the capability can still tell the line apart from Claude's reply. */
|
|
26
|
+
export declare function noticeOrTranscriptUpdate(notice: SessionNotice, supportsNotices: boolean, transcriptText?: string, transcriptMeta?: Record<string, unknown>): SessionNotification["update"];
|
|
26
27
|
/** Fragments that read on after a bold label stand alone as a notice
|
|
27
28
|
* description, so start them with a capital. */
|
|
28
29
|
export declare function sentenceCase(text: string): string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-notices.d.ts","sourceRoot":"","sources":["../src/session-notices.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAExF;;8DAE8D;AAC9D,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC;IACvC,oCAAoC;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,qCAAqC;IACrC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF;kEACkE;AAClE,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAE3C;;oEAEoE;AACpE,wBAAgB,qBAAqB,CAAC,YAAY,CAAC,EAAE,kBAAkB,GAAG,IAAI,GAAG,OAAO,CAGvF;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,aAAa,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAOjF;AAED,+EAA+E;AAC/E,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,aAAa,GAAG,MAAM,CAElE;AAED
|
|
1
|
+
{"version":3,"file":"session-notices.d.ts","sourceRoot":"","sources":["../src/session-notices.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAExF;;8DAE8D;AAC9D,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC;IACvC,oCAAoC;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,qCAAqC;IACrC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF;kEACkE;AAClE,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAE3C;;oEAEoE;AACpE,wBAAgB,qBAAqB,CAAC,YAAY,CAAC,EAAE,kBAAkB,GAAG,IAAI,GAAG,OAAO,CAGvF;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,aAAa,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAOjF;AAED,+EAA+E;AAC/E,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,aAAa,GAAG,MAAM,CAElE;AAED;;;gFAGgF;AAChF,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,aAAa,EACrB,eAAe,EAAE,OAAO,EACxB,cAAc,GAAE,MAAqC,EACrD,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACvC,mBAAmB,CAAC,QAAQ,CAAC,CAO/B;AAED;iDACiD;AACjD,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEjD;AAED;4EAC4E;AAC5E,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAExD;AAED;;4DAE4D;AAC5D,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAKpD;AAED;;0DAE0D;AAC1D,wBAAgB,eAAe,CAC7B,IAAI,EAAE,MAAM,EACZ,aAAa,EAAE,MAAM,GACpB,IAAI,CAAC,aAAa,EAAE,OAAO,GAAG,aAAa,CAAC,CAU9C"}
|
package/dist/session-notices.js
CHANGED
|
@@ -22,11 +22,16 @@ export function noticeTranscriptText(notice) {
|
|
|
22
22
|
}
|
|
23
23
|
/** The update to send for `notice`: a `notice` when the client can present
|
|
24
24
|
* one, else an agent message carrying `transcriptText` (by default the
|
|
25
|
-
* bold-label rendering of the notice)
|
|
26
|
-
|
|
25
|
+
* bold-label rendering of the notice) and `transcriptMeta`, so clients
|
|
26
|
+
* without the capability can still tell the line apart from Claude's reply. */
|
|
27
|
+
export function noticeOrTranscriptUpdate(notice, supportsNotices, transcriptText = noticeTranscriptText(notice), transcriptMeta) {
|
|
27
28
|
if (supportsNotices)
|
|
28
29
|
return noticeUpdate(notice);
|
|
29
|
-
return {
|
|
30
|
+
return {
|
|
31
|
+
sessionUpdate: "agent_message_chunk",
|
|
32
|
+
content: { type: "text", text: transcriptText },
|
|
33
|
+
...(transcriptMeta ? { _meta: transcriptMeta } : {}),
|
|
34
|
+
};
|
|
30
35
|
}
|
|
31
36
|
/** Fragments that read on after a bold label stand alone as a notice
|
|
32
37
|
* description, so start them with a capital. */
|
package/dist/tools.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,SAAS,EACT,eAAe,EACf,gBAAgB,EAChB,QAAQ,EACT,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAC9D,OAAO,EAaL,eAAe,EACf,gBAAgB,EAChB,cAAc,EACd,eAAe,EACf,gBAAgB,EAKjB,MAAM,6CAA6C,CAAC;AACrD,OAAO,EAIL,oBAAoB,EAEpB,6BAA6B,EAE9B,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAEL,yCAAyC,EAGzC,qCAAqC,EAGrC,kCAAkC,EAGlC,+CAA+C,EAI/C,wBAAwB,EACxB,kCAAkC,EAIlC,gCAAgC,EAEhC,iCAAiC,EAClC,MAAM,sCAAsC,CAAC;AA4B9C,UAAU,QAAQ;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,QAAQ,CAAC;IACf,OAAO,EAAE,eAAe,EAAE,CAAC;IAC3B,SAAS,CAAC,EAAE,gBAAgB,EAAE,CAAC;CAChC;AAED,UAAU,UAAU;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,eAAe,EAAE,CAAC;IAC5B,SAAS,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAC/B,KAAK,CAAC,EAAE;QACN,aAAa,CAAC,EAAE;YACd,WAAW,EAAE,MAAM,CAAC;SACrB,CAAC;QACF,eAAe,CAAC,EAAE;YAChB,WAAW,EAAE,MAAM,CAAC;YACpB,IAAI,EAAE,MAAM,CAAC;SACd,CAAC;QACF,qBAAqB,CAAC,EAAE;YACtB,WAAW,EAAE,MAAM,CAAC;YACpB,IAAI,EAAE,MAAM,CAAC;SACd,CAAC;QACF,aAAa,CAAC,EAAE;YACd,WAAW,EAAE,MAAM,CAAC;YACpB,SAAS,EAAE,MAAM,CAAC;YAClB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;SACvB,CAAC;KACH,CAAC;CACH;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAQpE;
|
|
1
|
+
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}
|
package/dist/tools.js
CHANGED
|
@@ -13,6 +13,19 @@ export function toDisplayPath(filePath, cwd) {
|
|
|
13
13
|
}
|
|
14
14
|
return filePath;
|
|
15
15
|
}
|
|
16
|
+
/** Read a Write tool_use input the way the CLI validates it. Since 2.1.280 the
|
|
17
|
+
* CLI accepts `path` for `file_path` and `file_text`/`file_content` for
|
|
18
|
+
* `content` when a model sends those spellings, but the streamed tool_use
|
|
19
|
+
* block still carries them raw — without this the call renders as
|
|
20
|
+
* "Preparing file…" with no diff while the write goes through. */
|
|
21
|
+
function normalizeWriteInput(input) {
|
|
22
|
+
if (!input || typeof input !== "object")
|
|
23
|
+
return undefined;
|
|
24
|
+
const raw = input;
|
|
25
|
+
const filePath = raw.file_path ?? (typeof raw.path === "string" ? raw.path : undefined);
|
|
26
|
+
const content = raw.content ?? raw.file_text ?? raw.file_content;
|
|
27
|
+
return { ...raw, file_path: filePath, content };
|
|
28
|
+
}
|
|
16
29
|
export function toolInfoFromToolUse(toolUse, supportsTerminalOutput = false, cwd) {
|
|
17
30
|
const name = toolUse.name;
|
|
18
31
|
switch (name) {
|
|
@@ -75,7 +88,7 @@ export function toolInfoFromToolUse(toolUse, supportsTerminalOutput = false, cwd
|
|
|
75
88
|
};
|
|
76
89
|
}
|
|
77
90
|
case "Write": {
|
|
78
|
-
const input = toolUse.input;
|
|
91
|
+
const input = normalizeWriteInput(toolUse.input);
|
|
79
92
|
let content = [];
|
|
80
93
|
if (input && input.file_path) {
|
|
81
94
|
content = [
|
package/package.json
CHANGED