@agentclientprotocol/claude-agent-acp 0.100.1-preview.3 → 0.100.1-preview.5
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 +13 -2
- package/dist/acp-agent.d.ts.map +1 -1
- package/dist/acp-agent.js +87 -22
- package/dist/context-compaction-meta.d.ts +1 -1
- package/dist/context-compaction-meta.d.ts.map +1 -1
- package/dist/context-compaction.d.ts +3 -0
- package/dist/context-compaction.d.ts.map +1 -1
- package/dist/context-compaction.js +12 -2
- package/dist/elicitation.js +1 -1
- package/dist/idle-compaction.d.ts +82 -0
- package/dist/idle-compaction.d.ts.map +1 -0
- package/dist/idle-compaction.js +215 -0
- package/dist/mcp-command.d.ts.map +1 -1
- package/dist/mcp-command.js +5 -2
- package/dist/permissions/modes.d.ts +3 -1
- package/dist/permissions/modes.d.ts.map +1 -1
- package/dist/permissions/modes.js +4 -0
- package/dist/session-mode.d.ts +21 -5
- package/dist/session-mode.d.ts.map +1 -1
- package/dist/session-mode.js +45 -22
- package/dist/tools.d.ts.map +1 -1
- package/dist/tools.js +5 -2
- package/package.json +4 -4
package/dist/acp-agent.d.ts
CHANGED
|
@@ -19,6 +19,7 @@ import { type SessionFailureState } from "./session-failure-extension.js";
|
|
|
19
19
|
import { type ClaudeSubscriptionGuardState } from "./hide-claude-auth.js";
|
|
20
20
|
import { type FileChangeReportTurnState, type NativeFileChangeReporter } from "./file-change-audit.js";
|
|
21
21
|
import { ContextCompactionLifecycle } from "./context-compaction.js";
|
|
22
|
+
import { IdleCompaction } from "./idle-compaction.js";
|
|
22
23
|
import { TaskState } from "./tools.js";
|
|
23
24
|
import { ToolCallFieldTracker } from "./tool-calls/field-tracker.js";
|
|
24
25
|
import { ClientCapabilities as ToolCallClientCapabilities } from "./tool-calls/client-capabilities.js";
|
|
@@ -95,6 +96,10 @@ export type SteerResponse = {
|
|
|
95
96
|
outcome: "promptRequired";
|
|
96
97
|
reason: "noRunningTurn";
|
|
97
98
|
};
|
|
99
|
+
/** Who started a turn. `idleCompaction` is the adapter's own `/compact` (see
|
|
100
|
+
* `IdleCompaction`): it is not a user prompt, so it neither disarms idle
|
|
101
|
+
* compaction, asks for a title from its prompt, nor clears the published prompt suggestion. */
|
|
102
|
+
type TurnOrigin = "client" | "idleCompaction";
|
|
98
103
|
/** One in-flight turn, started by `startTurn()`. A persistent per-session
|
|
99
104
|
* consumer (see `runConsumer`) drains the SDK query stream for the whole
|
|
100
105
|
* session and settles each Turn when that turn's outcome is known, so
|
|
@@ -802,6 +807,8 @@ export type Session = {
|
|
|
802
807
|
/** The consumer's compaction lifecycle, exposed so the PostCompact hook can
|
|
803
808
|
* hand it the retained summary. */
|
|
804
809
|
contextCompaction?: ContextCompactionLifecycle;
|
|
810
|
+
/** Compacts the session shortly before its one-hour prompt cache expires. */
|
|
811
|
+
idleCompaction?: IdleCompaction;
|
|
805
812
|
/** Whether any top-level assistant text reached the client since the last
|
|
806
813
|
* stretch boundary. Set as a side effect of sending in the consumer's
|
|
807
814
|
* `sendUpdate`, never at an emission site; read at the terminal `result`
|
|
@@ -1363,14 +1370,14 @@ export declare class ClaudeAcpAgent {
|
|
|
1363
1370
|
* `promptToClaude` would drop it. v2 prompts reach `startTurn` through
|
|
1364
1371
|
* `v1PromptRequest`, which rejects these blocks itself.
|
|
1365
1372
|
*/
|
|
1366
|
-
prompt(params: PromptRequest): Promise<PromptResponse>;
|
|
1373
|
+
prompt(params: PromptRequest, origin?: TurnOrigin): Promise<PromptResponse>;
|
|
1367
1374
|
/**
|
|
1368
1375
|
* Starts a turn for a prompt. Resolves once the prompt is queued for Claude
|
|
1369
1376
|
* Code, and rejects only when the prompt is refused before that. From then
|
|
1370
1377
|
* on, `events` reports how the turn goes (see {@link TurnEvents}), possibly
|
|
1371
1378
|
* before this resolves.
|
|
1372
1379
|
*/
|
|
1373
|
-
startTurn(params: PromptRequest, events: TurnEvents): Promise<void>;
|
|
1380
|
+
startTurn(params: PromptRequest, events: TurnEvents, origin?: TurnOrigin): Promise<void>;
|
|
1374
1381
|
/** Connects Remote Control (again, if it is already on) or disconnects it. */
|
|
1375
1382
|
private runRemoteControlCommand;
|
|
1376
1383
|
/** `--hide-claude-auth` applies only to the CLI's own login. A provider
|
|
@@ -1664,6 +1671,10 @@ export declare class ClaudeAcpAgent {
|
|
|
1664
1671
|
* {@link withPendingUserInput}): the work is being stopped, and reports its
|
|
1665
1672
|
* end next. */
|
|
1666
1673
|
private syncAwaitingUser;
|
|
1674
|
+
/** Whether Claude is working in the session `sessionId`: an unsettled turn in
|
|
1675
|
+
* its queue, or foreground work that no turn owns, such as a cycle that
|
|
1676
|
+
* Claude Code started on its own. */
|
|
1677
|
+
private claudeIsWorking;
|
|
1667
1678
|
/** Sends the current title and `updatedAt` of the session `sessionId` as a
|
|
1668
1679
|
* `session_info_update` (see {@link SessionTitles.publishCurrent}). A
|
|
1669
1680
|
* failure is logged: the info is optional, so it does not fail a resume. */
|
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
|
@@ -26,7 +26,7 @@ import { readSubagentMessages, subagentHistory, subagentLaunchIds, subagentLaunc
|
|
|
26
26
|
import { RfdSubagentReplay, firstResponseModel, replaySubagentTerminalState, } from "./subagent-replay.js";
|
|
27
27
|
import { readResumedSession, readResumedTail, } from "./resumed-session.js";
|
|
28
28
|
import { SessionTiming } from "./session-timing.js";
|
|
29
|
-
import { ALLOW_BYPASS } from "./permissions/modes.js";
|
|
29
|
+
import { ALLOW_BYPASS, autoModeDisabled } from "./permissions/modes.js";
|
|
30
30
|
import { normalizeDurablePermissionChangeSet } from "./permissions/normalization.js";
|
|
31
31
|
import { buildClaudePermissionOptions } from "./permissions/options.js";
|
|
32
32
|
import { buildClaudePermissionPresentation, } from "./permissions/presentation.js";
|
|
@@ -36,6 +36,7 @@ import { activeUsageLimitMessage, airSessionFailureCapabilityMeta, assistantMess
|
|
|
36
36
|
import { billsClaudeSubscription, claudeLoginRequiredError, claudeSubscriptionNotSupportedError, holdsNonSubscriptionCredential, refuseClaudeSubscriptionTurn, shouldHideClaudeAuth, warnClaudeSubscriptionGuardDegraded, } from "./hide-claude-auth.js";
|
|
37
37
|
import { AGENT_FILE_CHANGE_REPORT_CAPABILITY, agentFileChangeReportMeta, createNativeFileChangeReporter, recordSubagentFileEdits, supportsAgentFileChangeReport, } from "./file-change-audit.js";
|
|
38
38
|
import { ContextCompactionLifecycle, clientSupportsCompactionUpdates, contextCompactionMetadataFromBoundary, isCompactSummaryMessage, } from "./context-compaction.js";
|
|
39
|
+
import { IdleCompaction } from "./idle-compaction.js";
|
|
39
40
|
import { clientSupportsNotices, MAX_NOTICE_TITLE_LENGTH, normalizeNoticeText, noticeOrTranscriptUpdate, sentenceCase, splitNoticeText, } from "./session-notices.js";
|
|
40
41
|
import { applyTaskCreate, applyTaskList, applyTaskUpdate, clearHookCallbacks, completeHookCallback, createPostToolUseHook, hasHookCallback, createTaskHook, parseTaskCreateOutput, parseTaskListOutput, parseTaskUpdateOutput, planEntries, registerHookCallback, changedTaskPlanEntries, forgetPublishedTaskPlan, unregisterHookCallback, } from "./tools.js";
|
|
41
42
|
import { previewPatchContent } from "./diff.js";
|
|
@@ -2132,7 +2133,7 @@ export class ClaudeAcpAgent {
|
|
|
2132
2133
|
* `promptToClaude` would drop it. v2 prompts reach `startTurn` through
|
|
2133
2134
|
* `v1PromptRequest`, which rejects these blocks itself.
|
|
2134
2135
|
*/
|
|
2135
|
-
async prompt(params) {
|
|
2136
|
+
async prompt(params, origin = "client") {
|
|
2136
2137
|
for (const block of params.prompt) {
|
|
2137
2138
|
if (!SUPPORTED_PROMPT_CONTENT_TYPES.includes(block.type)) {
|
|
2138
2139
|
throw RequestError.invalidParams({ type: block.type }, `Content blocks of type ${block.type} are not supported`);
|
|
@@ -2142,7 +2143,7 @@ export class ClaudeAcpAgent {
|
|
|
2142
2143
|
const outcome = new Promise((resolve, reject) => {
|
|
2143
2144
|
events = { inserted() { }, ended: resolve, failed: reject };
|
|
2144
2145
|
});
|
|
2145
|
-
await this.startTurn(params, events);
|
|
2146
|
+
await this.startTurn(params, events, origin);
|
|
2146
2147
|
return outcome;
|
|
2147
2148
|
}
|
|
2148
2149
|
/**
|
|
@@ -2151,7 +2152,12 @@ export class ClaudeAcpAgent {
|
|
|
2151
2152
|
* on, `events` reports how the turn goes (see {@link TurnEvents}), possibly
|
|
2152
2153
|
* before this resolves.
|
|
2153
2154
|
*/
|
|
2154
|
-
async startTurn(params, events) {
|
|
2155
|
+
async startTurn(params, events, origin = "client") {
|
|
2156
|
+
// Before the first await below: a timer that fires during those awaits
|
|
2157
|
+
// would queue `/compact` right behind this prompt. The idle compaction's
|
|
2158
|
+
// own turn comes from that timer, which is already cleared.
|
|
2159
|
+
if (origin === "client")
|
|
2160
|
+
this.sessions[params.sessionId]?.idleCompaction?.disarm("prompt");
|
|
2155
2161
|
const received = ++this.promptsReceived;
|
|
2156
2162
|
while (this.providerUpdate)
|
|
2157
2163
|
await this.providerUpdate;
|
|
@@ -2195,8 +2201,7 @@ export class ClaudeAcpAgent {
|
|
|
2195
2201
|
// around it. Refuse instead of interleaving. `foregroundWork` also covers
|
|
2196
2202
|
// a cycle that Claude Code started on its own, such as its follow-up
|
|
2197
2203
|
// after a background subagent finished, which is not in `turnQueue`.
|
|
2198
|
-
if (this.
|
|
2199
|
-
(session.turnQueue ?? []).some((turn) => !turn.settled)) {
|
|
2204
|
+
if (this.claudeIsWorking(params.sessionId, session)) {
|
|
2200
2205
|
throw RequestError.invalidRequest(undefined, "Remote Control can't be changed while Claude is working. Try again when the turn ends.");
|
|
2201
2206
|
}
|
|
2202
2207
|
if (session.remoteControlCommand) {
|
|
@@ -2243,18 +2248,22 @@ export class ClaudeAcpAgent {
|
|
|
2243
2248
|
const fileChangeReport = session.fileChangeReporter?.request(params._meta);
|
|
2244
2249
|
const localCommand = this.localCommandMarkdown(params);
|
|
2245
2250
|
const localCommandAbort = localCommand ? new AbortController() : undefined;
|
|
2246
|
-
|
|
2247
|
-
//
|
|
2248
|
-
|
|
2249
|
-
|
|
2250
|
-
|
|
2251
|
-
|
|
2252
|
-
|
|
2253
|
-
|
|
2254
|
-
|
|
2255
|
-
|
|
2256
|
-
|
|
2257
|
-
|
|
2251
|
+
// An idle compaction is not something the user sent: it must not title the
|
|
2252
|
+
// session `/compact` or spend the prediction the user is still looking at.
|
|
2253
|
+
if (origin === "client") {
|
|
2254
|
+
session.titles.onPrompt(params.prompt);
|
|
2255
|
+
// The prompt the previous turn predicted is spent: the user either sent it
|
|
2256
|
+
// or sent something else. Clearing it here keeps a turn that predicts
|
|
2257
|
+
// nothing (the CLI predicts none in plan mode, after an API error, or at
|
|
2258
|
+
// the usage limit) from leaving the stale prediction in the composer. A
|
|
2259
|
+
// session that holds no prediction needs no clear, and the prompt path
|
|
2260
|
+
// then keeps the ordering it has without this feature.
|
|
2261
|
+
if (session.lastPublishedPromptSuggestion != null) {
|
|
2262
|
+
await this.publishPromptSuggestion(params.sessionId, null);
|
|
2263
|
+
}
|
|
2264
|
+
else {
|
|
2265
|
+
session.promptSuggestionExpected = false;
|
|
2266
|
+
}
|
|
2258
2267
|
}
|
|
2259
2268
|
// A `/remote-control` command still in flight answers into the session's
|
|
2260
2269
|
// output; wait for its reply before this prompt's turn can begin. Nothing
|
|
@@ -2309,7 +2318,8 @@ export class ClaudeAcpAgent {
|
|
|
2309
2318
|
(session.sentUserUuids ??= new Set()).add(promptUuid);
|
|
2310
2319
|
session.input.push(userMessage);
|
|
2311
2320
|
this.ensureConsumer(session, params.sessionId);
|
|
2312
|
-
|
|
2321
|
+
if (origin === "client")
|
|
2322
|
+
session.titles.onPromptQueued(session, params.prompt);
|
|
2313
2323
|
// The prompt is queued, so its turn goes ahead even if the client misses
|
|
2314
2324
|
// the goal it sets; the turn's events report the outcome.
|
|
2315
2325
|
await this.publishGoalFromPrompt(params.sessionId, firstText, promptUuid).catch((error) => this.logger.error(`Session ${params.sessionId}: failed to publish the prompt's goal:`, error));
|
|
@@ -2729,6 +2739,7 @@ export class ClaudeAcpAgent {
|
|
|
2729
2739
|
// check: the interrupt can have the CLI finalizing the aborted cycle by the
|
|
2730
2740
|
// time the consumer next runs, and an unmarked result would settle the turn
|
|
2731
2741
|
// (see Turn.steeredEchoes).
|
|
2742
|
+
session.idleCompaction?.disarm("steer");
|
|
2732
2743
|
(turnInFlight.steeredEchoes ??= new Set()).add(steeredUuid);
|
|
2733
2744
|
(turnInFlight.steeredUuids ??= new Set()).add(steeredUuid);
|
|
2734
2745
|
// A turn already held for background subagents has a recorded outcome the
|
|
@@ -4257,6 +4268,7 @@ export class ClaudeAcpAgent {
|
|
|
4257
4268
|
await compaction.finish(message.uuid, "completed");
|
|
4258
4269
|
}
|
|
4259
4270
|
else if (message.compact_result === "failed") {
|
|
4271
|
+
session.idleCompaction?.noteCompactionFailed(message.compact_error);
|
|
4260
4272
|
await compaction.finish(message.uuid, "failed", {
|
|
4261
4273
|
...(message.compact_error ? { error: message.compact_error } : {}),
|
|
4262
4274
|
});
|
|
@@ -4280,7 +4292,11 @@ export class ClaudeAcpAgent {
|
|
|
4280
4292
|
// window.
|
|
4281
4293
|
//
|
|
4282
4294
|
const compactMetadata = message.compact_metadata;
|
|
4283
|
-
await compaction.finish(message.uuid, "completed", compactMetadata
|
|
4295
|
+
await compaction.finish(message.uuid, "completed", compactMetadata
|
|
4296
|
+
? contextCompactionMetadataFromBoundary(compactMetadata, {
|
|
4297
|
+
idleCompaction: session.idleCompaction?.isCompacting,
|
|
4298
|
+
})
|
|
4299
|
+
: {}, true);
|
|
4284
4300
|
const usedTokens = compactMetadata?.post_tokens ?? 0;
|
|
4285
4301
|
lastAssistantUsage = null;
|
|
4286
4302
|
lastAssistantTotalUsage = usedTokens;
|
|
@@ -4488,6 +4504,11 @@ export class ClaudeAcpAgent {
|
|
|
4488
4504
|
// generatable; see SessionTitles.onTurnEnd.
|
|
4489
4505
|
await session.titles.onTurnEnd(session);
|
|
4490
4506
|
}
|
|
4507
|
+
// After the settle block above: steered turns, held turns and
|
|
4508
|
+
// autonomous cycles count as work until it settles them, and no
|
|
4509
|
+
// further idle arrives to arm the timer.
|
|
4510
|
+
if (message.state === "idle")
|
|
4511
|
+
session.idleCompaction?.onIdle();
|
|
4491
4512
|
break;
|
|
4492
4513
|
}
|
|
4493
4514
|
case "memory_recall": {
|
|
@@ -4523,6 +4544,14 @@ export class ClaudeAcpAgent {
|
|
|
4523
4544
|
this.logger.error(`Session ${message.session_id}: failed to persist history: ${message.error}`);
|
|
4524
4545
|
break;
|
|
4525
4546
|
}
|
|
4547
|
+
case "session_writes_lost": {
|
|
4548
|
+
// A full disk (ENOSPC) or used-up quota (EDQUOT) kept the CLI
|
|
4549
|
+
// from saving transcript lines or ~/.claude.json. The CLI sends
|
|
4550
|
+
// it as it exits, after the last result, so no turn is open to
|
|
4551
|
+
// carry a session/update: log it like `mirror_error`.
|
|
4552
|
+
this.logger.error(`Session ${message.session_id}: Claude Code could not save ${message.lost.join(" and ")} (${message.error_code}); resuming may miss part of the conversation`);
|
|
4553
|
+
break;
|
|
4554
|
+
}
|
|
4526
4555
|
case "permission_denied": {
|
|
4527
4556
|
unregisterHookCallback(message.tool_use_id);
|
|
4528
4557
|
// A tool call was auto-denied (by a rule, the classifier,
|
|
@@ -5641,6 +5670,12 @@ export class ClaudeAcpAgent {
|
|
|
5641
5670
|
const model = message.event.message.model;
|
|
5642
5671
|
if (model && model !== "<synthetic>") {
|
|
5643
5672
|
lastAssistantModel = model;
|
|
5673
|
+
// `message_start` arrives with the first streamed token, close to
|
|
5674
|
+
// when the provider wrote the cache. The `assistant` message
|
|
5675
|
+
// below covers a response that was not streamed (the CLI's
|
|
5676
|
+
// non-streaming fallback); its shared id keeps the per-block
|
|
5677
|
+
// messages from moving the time.
|
|
5678
|
+
session.idleCompaction?.noteRequest(message.event.message.usage, message.event.message.id || undefined);
|
|
5644
5679
|
// Only upgrade from the heuristic default — once we have an
|
|
5645
5680
|
// authoritative window (cache-seeded at session creation or
|
|
5646
5681
|
// on a model switch, read from the resumed session on
|
|
@@ -5972,6 +6007,7 @@ export class ClaudeAcpAgent {
|
|
|
5972
6007
|
lastAssistantUsage = snapshotFromUsage(message.message.usage);
|
|
5973
6008
|
lastAssistantTotalUsage = totalTokens(lastAssistantUsage);
|
|
5974
6009
|
session.contextUsedTokens = lastAssistantTotalUsage;
|
|
6010
|
+
session.idleCompaction?.noteRequest(message.message.usage, message.message.id || undefined);
|
|
5975
6011
|
}
|
|
5976
6012
|
lastAssistantWasUsageLimit = isSyntheticUsageLimitMessage(message.message);
|
|
5977
6013
|
if (message.error || lastAssistantWasUsageLimit) {
|
|
@@ -6226,6 +6262,7 @@ export class ClaudeAcpAgent {
|
|
|
6226
6262
|
break;
|
|
6227
6263
|
}
|
|
6228
6264
|
case "rate_limit_event": {
|
|
6265
|
+
session.idleCompaction?.noteRateLimit(message.rate_limit_info);
|
|
6229
6266
|
if (lastAssistantTotalUsage !== null) {
|
|
6230
6267
|
await sendUpdate({
|
|
6231
6268
|
sessionId: params.sessionId,
|
|
@@ -6260,6 +6297,8 @@ export class ClaudeAcpAgent {
|
|
|
6260
6297
|
// The follow-up prompt was predicted from the transcript the reset
|
|
6261
6298
|
// dropped, so it no longer follows from anything.
|
|
6262
6299
|
await this.publishPromptSuggestion(params.sessionId, null);
|
|
6300
|
+
// The recorded request and TTL describe the dropped conversation.
|
|
6301
|
+
session.idleCompaction?.reset();
|
|
6263
6302
|
break;
|
|
6264
6303
|
}
|
|
6265
6304
|
case "tool_use_summary":
|
|
@@ -6460,6 +6499,7 @@ export class ClaudeAcpAgent {
|
|
|
6460
6499
|
return;
|
|
6461
6500
|
}
|
|
6462
6501
|
session.cancelled = true;
|
|
6502
|
+
session.idleCompaction?.disarm("cancel");
|
|
6463
6503
|
// Only prompts received before this cancel are cancelled. A prompt that
|
|
6464
6504
|
// arrives while the awaits below run is queued and runs after the cancel
|
|
6465
6505
|
// (ACP v2: a `session/prompt` received after `session/cancel` is not
|
|
@@ -6836,6 +6876,7 @@ export class ClaudeAcpAgent {
|
|
|
6836
6876
|
}
|
|
6837
6877
|
session.consumer = undefined;
|
|
6838
6878
|
session.contextCompaction = undefined;
|
|
6879
|
+
session.idleCompaction?.dispose();
|
|
6839
6880
|
session.settingsManager.dispose();
|
|
6840
6881
|
session.input.end();
|
|
6841
6882
|
session.query.close();
|
|
@@ -7603,6 +7644,12 @@ export class ClaudeAcpAgent {
|
|
|
7603
7644
|
else if (!withdrawnByCancel)
|
|
7604
7645
|
work.events.running();
|
|
7605
7646
|
}
|
|
7647
|
+
/** Whether Claude is working in the session `sessionId`: an unsettled turn in
|
|
7648
|
+
* its queue, or foreground work that no turn owns, such as a cycle that
|
|
7649
|
+
* Claude Code started on its own. */
|
|
7650
|
+
claudeIsWorking(sessionId, session) {
|
|
7651
|
+
return (this.foregroundWork.has(sessionId) || (session.turnQueue ?? []).some((turn) => !turn.settled));
|
|
7652
|
+
}
|
|
7606
7653
|
/** Sends the current title and `updatedAt` of the session `sessionId` as a
|
|
7607
7654
|
* `session_info_update` (see {@link SessionTitles.publishCurrent}). A
|
|
7608
7655
|
* failure is logged: the info is optional, so it does not fail a resume. */
|
|
@@ -8576,6 +8623,7 @@ export class ClaudeAcpAgent {
|
|
|
8576
8623
|
const newModelInfo = session.modelInfos.find((m) => m.value === value);
|
|
8577
8624
|
const modelChanged = session.models.currentModelId !== value;
|
|
8578
8625
|
if (modelChanged) {
|
|
8626
|
+
session.idleCompaction?.disarm("model change");
|
|
8579
8627
|
// Seed the new model's context window WITHOUT awaited IPC on the
|
|
8580
8628
|
// switch path: cached authoritative value if we've already learned it
|
|
8581
8629
|
// (from a prior turn's `result.modelUsage`), else the text heuristic,
|
|
@@ -9056,11 +9104,12 @@ export class ClaudeAcpAgent {
|
|
|
9056
9104
|
const allowBypass = ALLOW_BYPASS &&
|
|
9057
9105
|
settingsManager.getSettings().permissions?.disableBypassPermissionsMode !== "disable" &&
|
|
9058
9106
|
sessionMeta?.claudeCode?.options?.allowDangerouslySkipPermissions !== false;
|
|
9059
|
-
const
|
|
9107
|
+
const allowAuto = !autoModeDisabled(settingsManager.getSettings());
|
|
9108
|
+
const { mode: initialPermissionMode, builtInDefault: builtInPermissionMode } = resolveInitialPermissionMode({
|
|
9060
9109
|
explicit: creationOpts.permissionMode,
|
|
9061
9110
|
resumed: resumedPermissionMode,
|
|
9062
9111
|
defaultMode: settingsManager.getSettings().permissions?.defaultMode,
|
|
9063
|
-
}, this.logger, allowBypass);
|
|
9112
|
+
}, this.logger, { allowBypass, allowAuto });
|
|
9064
9113
|
const userProvidedOptions = sessionMeta?.claudeCode?.options;
|
|
9065
9114
|
const forwardSubagentText = this.forwardsSubagentText(params._meta);
|
|
9066
9115
|
// Configure thinking behavior from environment variables
|
|
@@ -9481,9 +9530,11 @@ export class ClaudeAcpAgent {
|
|
|
9481
9530
|
const { modes, autoModeFallbackWarningPending } = await this.sessionModes.initialize({
|
|
9482
9531
|
query: q,
|
|
9483
9532
|
requestedMode: initialPermissionMode,
|
|
9533
|
+
builtInDefault: builtInPermissionMode,
|
|
9484
9534
|
currentModelInfo,
|
|
9485
9535
|
currentModelId: models.currentModelId,
|
|
9486
9536
|
allowBypass,
|
|
9537
|
+
allowAuto,
|
|
9487
9538
|
});
|
|
9488
9539
|
timing.phase("modes");
|
|
9489
9540
|
const agents = await discoverCustomAgents(q);
|
|
@@ -9631,6 +9682,20 @@ export class ClaudeAcpAgent {
|
|
|
9631
9682
|
accountKind: fromAccountInfo(initializationResult.account, settingsManager.getApiKeyHelper(configuredSettingsObject))?.kind,
|
|
9632
9683
|
fileChangeReporter,
|
|
9633
9684
|
};
|
|
9685
|
+
const registered = this.sessions[sessionId];
|
|
9686
|
+
registered.idleCompaction = new IdleCompaction({
|
|
9687
|
+
// `openUserInputs` also covers permission requests: `requestPermission`
|
|
9688
|
+
// is wrapped in `withPendingUserInput`.
|
|
9689
|
+
isBusy: () => this.claudeIsWorking(sessionId, registered) ||
|
|
9690
|
+
(registered.openUserInputs?.size ?? 0) > 0,
|
|
9691
|
+
contextTokens: () => registered.contextUsedTokens,
|
|
9692
|
+
settings: () => registered.settingsManager.getSettings(),
|
|
9693
|
+
compact: () => this.prompt({ sessionId, prompt: [{ type: "text", text: "/compact" }] }, "idleCompaction"),
|
|
9694
|
+
// The logger has no debug level.
|
|
9695
|
+
log: (message) => this.logger.log(message),
|
|
9696
|
+
},
|
|
9697
|
+
// The CLI's own environment: process env, the client's and the provider's.
|
|
9698
|
+
{ env });
|
|
9634
9699
|
timing.phase("register");
|
|
9635
9700
|
this.backgroundWork.sync(sessionId, this.sessions[sessionId], this.foregroundState(sessionId));
|
|
9636
9701
|
this.refreshContextWindowInBackground(sessionId, this.sessions[sessionId]);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export declare const CONTEXT_COMPACTION_META_VERSION = 1;
|
|
2
|
-
export type ContextCompactionTrigger = "manual" | "automatic";
|
|
2
|
+
export type ContextCompactionTrigger = "manual" | "automatic" | "idle";
|
|
3
3
|
export interface ContextCompactionMetadata {
|
|
4
4
|
version: typeof CONTEXT_COMPACTION_META_VERSION;
|
|
5
5
|
trigger?: ContextCompactionTrigger;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-compaction-meta.d.ts","sourceRoot":"","sources":["../src/context-compaction-meta.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,+BAA+B,IAAI,CAAC;AAEjD,MAAM,MAAM,wBAAwB,GAAG,QAAQ,GAAG,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"context-compaction-meta.d.ts","sourceRoot":"","sources":["../src/context-compaction-meta.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,+BAA+B,IAAI,CAAC;AAEjD,MAAM,MAAM,wBAAwB,GAAG,QAAQ,GAAG,WAAW,GAAG,MAAM,CAAC;AAEvE,MAAM,WAAW,yBAAyB;IACxC,OAAO,EAAE,OAAO,+BAA+B,CAAC;IAChD,OAAO,CAAC,EAAE,wBAAwB,CAAC;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CACzC,QAAQ,GAAE,IAAI,CAAC,yBAAyB,EAAE,SAAS,CAAM,GACxD,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAKzB"}
|
|
@@ -125,11 +125,14 @@ export declare class ContextCompactionLifecycle {
|
|
|
125
125
|
private send;
|
|
126
126
|
private sendQuietly;
|
|
127
127
|
}
|
|
128
|
+
/** `idleCompaction` marks a `/compact` that the adapter sent itself (see `IdleCompaction`). */
|
|
128
129
|
export declare function contextCompactionMetadataFromBoundary(compactMetadata: {
|
|
129
130
|
trigger: "manual" | "auto";
|
|
130
131
|
pre_tokens: number;
|
|
131
132
|
post_tokens?: number;
|
|
132
133
|
duration_ms?: number;
|
|
134
|
+
}, { idleCompaction }?: {
|
|
135
|
+
idleCompaction?: boolean;
|
|
133
136
|
}): Omit<ContextCompactionMetadata, "version">;
|
|
134
137
|
export {};
|
|
135
138
|
//# sourceMappingURL=context-compaction.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-compaction.d.ts","sourceRoot":"","sources":["../src/context-compaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AAC5F,OAAO,EACL,yBAAyB,
|
|
1
|
+
{"version":3,"file":"context-compaction.d.ts","sourceRoot":"","sources":["../src/context-compaction.ts"],"names":[],"mappings":"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"}
|
|
@@ -327,9 +327,19 @@ export class ContextCompactionLifecycle {
|
|
|
327
327
|
function withoutError({ error: _error, ...facts }) {
|
|
328
328
|
return facts;
|
|
329
329
|
}
|
|
330
|
-
|
|
330
|
+
function compactionTrigger(cliTrigger, sentByAdapter) {
|
|
331
|
+
// The CLI's own automatic compaction stays automatic, even inside the adapter's /compact turn.
|
|
332
|
+
if (cliTrigger === "auto")
|
|
333
|
+
return "automatic";
|
|
334
|
+
// The CLI reports every /compact as manual; only the adapter knows it sent this one itself.
|
|
335
|
+
if (sentByAdapter)
|
|
336
|
+
return "idle";
|
|
337
|
+
return "manual";
|
|
338
|
+
}
|
|
339
|
+
/** `idleCompaction` marks a `/compact` that the adapter sent itself (see `IdleCompaction`). */
|
|
340
|
+
export function contextCompactionMetadataFromBoundary(compactMetadata, { idleCompaction = false } = {}) {
|
|
331
341
|
return {
|
|
332
|
-
trigger: compactMetadata.trigger
|
|
342
|
+
trigger: compactionTrigger(compactMetadata.trigger, idleCompaction),
|
|
333
343
|
preTokens: compactMetadata.pre_tokens,
|
|
334
344
|
...(compactMetadata.post_tokens !== undefined
|
|
335
345
|
? { postTokens: compactMetadata.post_tokens }
|
package/dist/elicitation.js
CHANGED
|
@@ -216,7 +216,7 @@ function joinMultiSelectAnswer(items) {
|
|
|
216
216
|
* can refuse the whole answer over it, so it is left out there.
|
|
217
217
|
*/
|
|
218
218
|
export function applyAskElicitationResponse(response, toolInput, questions, options = {}) {
|
|
219
|
-
// Typed against the output schema: as of SDK 0.3.
|
|
219
|
+
// Typed against the output schema: as of SDK 0.3.318 only it lists
|
|
220
220
|
// `unanswered`, though the tool reads the same annotations from its input.
|
|
221
221
|
const annotations = {};
|
|
222
222
|
const withAnnotations = (answers) => ({
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
export type PromptCacheTtl = "5m" | "1h";
|
|
2
|
+
export type IdleCompactionHost = {
|
|
3
|
+
/** Claude is working (`startTurn`'s check) or a permission request / user input is pending. */
|
|
4
|
+
isBusy(): boolean;
|
|
5
|
+
/** Context size after the last main-thread request, or undefined if unknown. */
|
|
6
|
+
contextTokens(): number | undefined;
|
|
7
|
+
/** Current merged Claude Code settings. */
|
|
8
|
+
settings(): {
|
|
9
|
+
idleCompaction?: boolean;
|
|
10
|
+
autoCompactEnabled?: boolean;
|
|
11
|
+
env?: Record<string, string | undefined>;
|
|
12
|
+
};
|
|
13
|
+
/** Runs `/compact` as an adapter-originated turn; settles with that turn. */
|
|
14
|
+
compact(): Promise<unknown>;
|
|
15
|
+
/** Debug-level log. */
|
|
16
|
+
log(message: string): void;
|
|
17
|
+
};
|
|
18
|
+
export type IdleCompactionOptions = {
|
|
19
|
+
env?: Record<string, string | undefined>;
|
|
20
|
+
setTimeout?: (callback: () => void, ms: number) => unknown;
|
|
21
|
+
};
|
|
22
|
+
/**
|
|
23
|
+
* Compacts a session shortly before its one-hour prompt cache expires, so the
|
|
24
|
+
* next prompt writes a short summary instead of the whole context. Claude Code
|
|
25
|
+
* has this feature but arms it only for "attended" sessions, which SDK sessions
|
|
26
|
+
* are not. One instance per session.
|
|
27
|
+
*/
|
|
28
|
+
export declare class IdleCompaction {
|
|
29
|
+
private readonly host;
|
|
30
|
+
private readonly env;
|
|
31
|
+
private readonly setTimer;
|
|
32
|
+
private ttl;
|
|
33
|
+
private lastRequestAt;
|
|
34
|
+
private lastMessageId;
|
|
35
|
+
/** Set when `/compact` was sent, cleared by the next request: a compaction that failed,
|
|
36
|
+
* or left the context large, would otherwise re-arm at once and loop until the user prompts. */
|
|
37
|
+
private compactedSinceLastRequest;
|
|
38
|
+
private timer;
|
|
39
|
+
private compacting;
|
|
40
|
+
private disposed;
|
|
41
|
+
private warnedInvalidDelay;
|
|
42
|
+
/** `status` of the last `rate_limit_event`; unknown until one arrives. */
|
|
43
|
+
private rateLimitStatus;
|
|
44
|
+
constructor(host: IdleCompactionHost, options?: IdleCompactionOptions);
|
|
45
|
+
/** Whether an idle compaction it started is still running. `acp-agent.ts` reports
|
|
46
|
+
* `trigger: "idle"` while it is true. A client's `/compact` queued behind is read
|
|
47
|
+
* only after the adapter's turn's `result`, which clears `compacting`; this relies
|
|
48
|
+
* on the CLI emitting that compaction's `compact_boundary` after the previous
|
|
49
|
+
* result, which nothing here enforces. */
|
|
50
|
+
get isCompacting(): boolean;
|
|
51
|
+
/** A main-thread response arrived. Records its time and cache TTL, and drops any armed timer.
|
|
52
|
+
* The provider writes the cache when the request starts, so the deadline is measured from the
|
|
53
|
+
* response's first sighting: the `message_start` stream event, or its first `assistant` message
|
|
54
|
+
* when it was not streamed. The CLI sends one `assistant` message per content block, and a
|
|
55
|
+
* 7-minute response would otherwise put the deadline 7 minutes after the cache was written.
|
|
56
|
+
* A later call with the same `messageId` only updates the TTL. */
|
|
57
|
+
noteRequest(usage: unknown, messageId?: string): void;
|
|
58
|
+
/** The session became idle. Arms the timer if every condition holds, else logs why not. */
|
|
59
|
+
onIdle(): void;
|
|
60
|
+
/** A `rate_limit_event` arrived (`SDKRateLimitInfo`). Anything but `allowed` skips compaction,
|
|
61
|
+
* as in Claude Code. This is account state, so `reset()` keeps it. */
|
|
62
|
+
noteRateLimit(info: unknown): void;
|
|
63
|
+
/** Claude Code reported its compaction as failed. Its turn still ends normally, so `compact()` does not reject. */
|
|
64
|
+
noteCompactionFailed(error: string | undefined): void;
|
|
65
|
+
/** The conversation was replaced (`/clear`): forgets the recorded request and TTL, and drops any armed timer. */
|
|
66
|
+
reset(): void;
|
|
67
|
+
/** Drops the armed timer, if any. `reason` is only logged. */
|
|
68
|
+
disarm(reason: string): void;
|
|
69
|
+
/** Disarms and ignores every later call. */
|
|
70
|
+
dispose(): void;
|
|
71
|
+
private fire;
|
|
72
|
+
/** Why no compaction should be scheduled right now, or undefined if all conditions hold. */
|
|
73
|
+
private skipReason;
|
|
74
|
+
private disabledBy;
|
|
75
|
+
/** The CLI applies the settings `env` block after the launch env, so it wins. */
|
|
76
|
+
private claudeCodeEnv;
|
|
77
|
+
/** `0` and invalid values fall back to 200,000, as in the CLI, which declares the variable
|
|
78
|
+
* with `min: 1` and computes `Math.max(100000, env ?? 200000)`. */
|
|
79
|
+
private minTokens;
|
|
80
|
+
private delayMs;
|
|
81
|
+
}
|
|
82
|
+
//# sourceMappingURL=idle-compaction.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"idle-compaction.d.ts","sourceRoot":"","sources":["../src/idle-compaction.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,cAAc,GAAG,IAAI,GAAG,IAAI,CAAC;AAEzC,MAAM,MAAM,kBAAkB,GAAG;IAC/B,+FAA+F;IAC/F,MAAM,IAAI,OAAO,CAAC;IAClB,gFAAgF;IAChF,aAAa,IAAI,MAAM,GAAG,SAAS,CAAC;IACpC,2CAA2C;IAC3C,QAAQ,IAAI;QACV,cAAc,CAAC,EAAE,OAAO,CAAC;QACzB,kBAAkB,CAAC,EAAE,OAAO,CAAC;QAC7B,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;KAC1C,CAAC;IACF,6EAA6E;IAC7E,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAC5B,uBAAuB;IACvB,GAAG,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;IACzC,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,IAAI,EAAE,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC;CAC5D,CAAC;AAiCF;;;;;GAKG;AACH,qBAAa,cAAc;IAiBvB,OAAO,CAAC,QAAQ,CAAC,IAAI;IAhBvB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAqC;IACzD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAgD;IACzE,OAAO,CAAC,GAAG,CAA6B;IACxC,OAAO,CAAC,aAAa,CAAqB;IAC1C,OAAO,CAAC,aAAa,CAAqB;IAC1C;qGACiG;IACjG,OAAO,CAAC,yBAAyB,CAAS;IAC1C,OAAO,CAAC,KAAK,CAAU;IACvB,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,kBAAkB,CAAS;IACnC,0EAA0E;IAC1E,OAAO,CAAC,eAAe,CAAqB;gBAGzB,IAAI,EAAE,kBAAkB,EACzC,OAAO,GAAE,qBAA0B;IAMrC;;;;+CAI2C;IAC3C,IAAI,YAAY,IAAI,OAAO,CAE1B;IAED;;;;;uEAKmE;IACnE,WAAW,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI;IAUrD,2FAA2F;IAC3F,MAAM,IAAI,IAAI;IAcd;2EACuE;IACvE,aAAa,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI;IAKlC,mHAAmH;IACnH,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI;IAKrD,iHAAiH;IACjH,KAAK,IAAI,IAAI;IAQb,8DAA8D;IAC9D,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAO5B,4CAA4C;IAC5C,OAAO,IAAI,IAAI;YAKD,IAAI;IAoBlB,4FAA4F;IAC5F,OAAO,CAAC,UAAU;IAsBlB,OAAO,CAAC,UAAU;IAUlB,iFAAiF;IACjF,OAAO,CAAC,aAAa;IAIrB;wEACoE;IACpE,OAAO,CAAC,SAAS;IAMjB,OAAO,CAAC,OAAO;CAYhB"}
|
|
@@ -0,0 +1,215 @@
|
|
|
1
|
+
/** The longest delay `setTimeout` takes; a longer one fires at once. */
|
|
2
|
+
const MAX_TIMER_MS = 2_147_483_647;
|
|
3
|
+
const HOUR_MS = 3_600_000;
|
|
4
|
+
const DEFAULT_MIN_TOKENS = 200_000;
|
|
5
|
+
const MIN_TOKENS_FLOOR = 100_000;
|
|
6
|
+
// 54 min for a 1h cache: leaves a margin for the gap between the provider
|
|
7
|
+
// writing the cache and the adapter receiving the response.
|
|
8
|
+
const DEFAULT_DELAY_MS = 0.9 * HOUR_MS;
|
|
9
|
+
// Node timers do not run while the machine sleeps, so one can fire hours after
|
|
10
|
+
// its deadline, on a cache that expired meanwhile. Same threshold as Claude Code.
|
|
11
|
+
const LAPSED_AFTER_MS = 60_000;
|
|
12
|
+
// The values Claude Code reads as "on" for env flags such as DISABLE_COMPACT
|
|
13
|
+
// (case-insensitive, trimmed).
|
|
14
|
+
const TRUTHY_ENV = new Set(["1", "true", "yes", "on"]);
|
|
15
|
+
function isTruthyEnv(value) {
|
|
16
|
+
return value !== undefined && TRUTHY_ENV.has(value.trim().toLowerCase());
|
|
17
|
+
}
|
|
18
|
+
function parseCacheTtl(usage) {
|
|
19
|
+
const creation = usage?.cache_creation;
|
|
20
|
+
if (typeof creation !== "object" || creation === null)
|
|
21
|
+
return undefined;
|
|
22
|
+
const { ephemeral_1h_input_tokens: hour, ephemeral_5m_input_tokens: fiveMin } = creation;
|
|
23
|
+
if (typeof hour === "number" && hour > 0)
|
|
24
|
+
return "1h";
|
|
25
|
+
if (typeof fiveMin === "number" && fiveMin > 0)
|
|
26
|
+
return "5m";
|
|
27
|
+
return undefined;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Compacts a session shortly before its one-hour prompt cache expires, so the
|
|
31
|
+
* next prompt writes a short summary instead of the whole context. Claude Code
|
|
32
|
+
* has this feature but arms it only for "attended" sessions, which SDK sessions
|
|
33
|
+
* are not. One instance per session.
|
|
34
|
+
*/
|
|
35
|
+
export class IdleCompaction {
|
|
36
|
+
host;
|
|
37
|
+
env;
|
|
38
|
+
setTimer;
|
|
39
|
+
ttl;
|
|
40
|
+
lastRequestAt;
|
|
41
|
+
lastMessageId;
|
|
42
|
+
/** Set when `/compact` was sent, cleared by the next request: a compaction that failed,
|
|
43
|
+
* or left the context large, would otherwise re-arm at once and loop until the user prompts. */
|
|
44
|
+
compactedSinceLastRequest = false;
|
|
45
|
+
timer;
|
|
46
|
+
compacting = false;
|
|
47
|
+
disposed = false;
|
|
48
|
+
warnedInvalidDelay = false;
|
|
49
|
+
/** `status` of the last `rate_limit_event`; unknown until one arrives. */
|
|
50
|
+
rateLimitStatus;
|
|
51
|
+
constructor(host, options = {}) {
|
|
52
|
+
this.host = host;
|
|
53
|
+
this.env = options.env ?? process.env;
|
|
54
|
+
this.setTimer = options.setTimeout ?? ((cb, ms) => setTimeout(cb, ms));
|
|
55
|
+
}
|
|
56
|
+
/** Whether an idle compaction it started is still running. `acp-agent.ts` reports
|
|
57
|
+
* `trigger: "idle"` while it is true. A client's `/compact` queued behind is read
|
|
58
|
+
* only after the adapter's turn's `result`, which clears `compacting`; this relies
|
|
59
|
+
* on the CLI emitting that compaction's `compact_boundary` after the previous
|
|
60
|
+
* result, which nothing here enforces. */
|
|
61
|
+
get isCompacting() {
|
|
62
|
+
return this.compacting;
|
|
63
|
+
}
|
|
64
|
+
/** A main-thread response arrived. Records its time and cache TTL, and drops any armed timer.
|
|
65
|
+
* The provider writes the cache when the request starts, so the deadline is measured from the
|
|
66
|
+
* response's first sighting: the `message_start` stream event, or its first `assistant` message
|
|
67
|
+
* when it was not streamed. The CLI sends one `assistant` message per content block, and a
|
|
68
|
+
* 7-minute response would otherwise put the deadline 7 minutes after the cache was written.
|
|
69
|
+
* A later call with the same `messageId` only updates the TTL. */
|
|
70
|
+
noteRequest(usage, messageId) {
|
|
71
|
+
if (this.disposed)
|
|
72
|
+
return;
|
|
73
|
+
this.ttl = parseCacheTtl(usage) ?? this.ttl;
|
|
74
|
+
if (messageId !== undefined && messageId === this.lastMessageId)
|
|
75
|
+
return;
|
|
76
|
+
this.lastMessageId = messageId;
|
|
77
|
+
this.lastRequestAt = Date.now();
|
|
78
|
+
this.compactedSinceLastRequest = false;
|
|
79
|
+
this.disarm("new request");
|
|
80
|
+
}
|
|
81
|
+
/** The session became idle. Arms the timer if every condition holds, else logs why not. */
|
|
82
|
+
onIdle() {
|
|
83
|
+
if (this.disposed)
|
|
84
|
+
return;
|
|
85
|
+
const skip = this.skipReason();
|
|
86
|
+
if (skip) {
|
|
87
|
+
this.host.log(`[idle-compaction] skip: ${skip}`);
|
|
88
|
+
return;
|
|
89
|
+
}
|
|
90
|
+
this.disarm("rearm");
|
|
91
|
+
const deadline = this.lastRequestAt + this.delayMs();
|
|
92
|
+
this.timer = this.setTimer(() => void this.fire(), Math.max(0, deadline - Date.now()));
|
|
93
|
+
this.timer?.unref?.();
|
|
94
|
+
this.host.log(`[idle-compaction] armed deadline=${new Date(deadline).toISOString()}`);
|
|
95
|
+
}
|
|
96
|
+
/** A `rate_limit_event` arrived (`SDKRateLimitInfo`). Anything but `allowed` skips compaction,
|
|
97
|
+
* as in Claude Code. This is account state, so `reset()` keeps it. */
|
|
98
|
+
noteRateLimit(info) {
|
|
99
|
+
const status = info?.status;
|
|
100
|
+
if (typeof status === "string")
|
|
101
|
+
this.rateLimitStatus = status;
|
|
102
|
+
}
|
|
103
|
+
/** Claude Code reported its compaction as failed. Its turn still ends normally, so `compact()` does not reject. */
|
|
104
|
+
noteCompactionFailed(error) {
|
|
105
|
+
if (!this.compacting)
|
|
106
|
+
return;
|
|
107
|
+
this.host.log(`[idle-compaction] compaction failed: ${error ?? "no reason given"}`);
|
|
108
|
+
}
|
|
109
|
+
/** The conversation was replaced (`/clear`): forgets the recorded request and TTL, and drops any armed timer. */
|
|
110
|
+
reset() {
|
|
111
|
+
this.ttl = undefined;
|
|
112
|
+
this.lastRequestAt = undefined;
|
|
113
|
+
this.lastMessageId = undefined;
|
|
114
|
+
this.compactedSinceLastRequest = false;
|
|
115
|
+
this.disarm("conversation reset");
|
|
116
|
+
}
|
|
117
|
+
/** Drops the armed timer, if any. `reason` is only logged. */
|
|
118
|
+
disarm(reason) {
|
|
119
|
+
if (this.timer === undefined)
|
|
120
|
+
return;
|
|
121
|
+
clearTimeout(this.timer);
|
|
122
|
+
this.timer = undefined;
|
|
123
|
+
this.host.log(`[idle-compaction] disarmed: ${reason}`);
|
|
124
|
+
}
|
|
125
|
+
/** Disarms and ignores every later call. */
|
|
126
|
+
dispose() {
|
|
127
|
+
this.disarm("disposed");
|
|
128
|
+
this.disposed = true;
|
|
129
|
+
}
|
|
130
|
+
async fire() {
|
|
131
|
+
this.timer = undefined;
|
|
132
|
+
if (this.disposed)
|
|
133
|
+
return;
|
|
134
|
+
const skip = this.skipReason();
|
|
135
|
+
if (skip) {
|
|
136
|
+
this.host.log(`[idle-compaction] skip at fire: ${skip}`);
|
|
137
|
+
return;
|
|
138
|
+
}
|
|
139
|
+
this.host.log("[idle-compaction] firing /compact");
|
|
140
|
+
this.compacting = true;
|
|
141
|
+
this.compactedSinceLastRequest = true;
|
|
142
|
+
try {
|
|
143
|
+
await this.host.compact();
|
|
144
|
+
}
|
|
145
|
+
catch (error) {
|
|
146
|
+
this.host.log(`[idle-compaction] compaction failed: ${error}`);
|
|
147
|
+
}
|
|
148
|
+
finally {
|
|
149
|
+
this.compacting = false;
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
/** Why no compaction should be scheduled right now, or undefined if all conditions hold. */
|
|
153
|
+
skipReason() {
|
|
154
|
+
if (this.compacting)
|
|
155
|
+
return "compaction already running";
|
|
156
|
+
const disabled = this.disabledBy();
|
|
157
|
+
if (disabled)
|
|
158
|
+
return `disabled by ${disabled}`;
|
|
159
|
+
if (this.lastRequestAt === undefined)
|
|
160
|
+
return "no request recorded in this process";
|
|
161
|
+
if (Date.now() > this.lastRequestAt + this.delayMs() + LAPSED_AFTER_MS) {
|
|
162
|
+
return "cache lapsed: more than 60 s past the deadline";
|
|
163
|
+
}
|
|
164
|
+
if (this.rateLimitStatus !== undefined && this.rateLimitStatus !== "allowed") {
|
|
165
|
+
return `rate limit status is ${this.rateLimitStatus}`;
|
|
166
|
+
}
|
|
167
|
+
if (this.compactedSinceLastRequest)
|
|
168
|
+
return "already compacted for this request";
|
|
169
|
+
if (this.ttl !== "1h")
|
|
170
|
+
return `cache TTL is ${this.ttl ?? "unknown"}, not 1h`;
|
|
171
|
+
const tokens = this.host.contextTokens();
|
|
172
|
+
const min = this.minTokens();
|
|
173
|
+
if (tokens === undefined || tokens < min) {
|
|
174
|
+
return `context ${tokens ?? "unknown"} tokens is below the ${min} minimum`;
|
|
175
|
+
}
|
|
176
|
+
if (this.host.isBusy())
|
|
177
|
+
return "session is busy";
|
|
178
|
+
return undefined;
|
|
179
|
+
}
|
|
180
|
+
disabledBy() {
|
|
181
|
+
const settings = this.host.settings();
|
|
182
|
+
if (settings.idleCompaction === false)
|
|
183
|
+
return "idleCompaction setting";
|
|
184
|
+
if (settings.autoCompactEnabled === false)
|
|
185
|
+
return "autoCompactEnabled setting";
|
|
186
|
+
for (const name of ["DISABLE_COMPACT", "DISABLE_AUTO_COMPACT"]) {
|
|
187
|
+
if (isTruthyEnv(this.claudeCodeEnv(name)))
|
|
188
|
+
return name;
|
|
189
|
+
}
|
|
190
|
+
return undefined;
|
|
191
|
+
}
|
|
192
|
+
/** The CLI applies the settings `env` block after the launch env, so it wins. */
|
|
193
|
+
claudeCodeEnv(name) {
|
|
194
|
+
return this.host.settings().env?.[name] ?? this.env[name];
|
|
195
|
+
}
|
|
196
|
+
/** `0` and invalid values fall back to 200,000, as in the CLI, which declares the variable
|
|
197
|
+
* with `min: 1` and computes `Math.max(100000, env ?? 200000)`. */
|
|
198
|
+
minTokens() {
|
|
199
|
+
const raw = this.claudeCodeEnv("CLAUDE_CODE_IDLE_COMPACT_MIN_TOKENS");
|
|
200
|
+
const parsed = raw !== undefined && /^\d+$/.test(raw.trim()) ? Number(raw.trim()) : 0;
|
|
201
|
+
return Math.max(MIN_TOKENS_FLOOR, parsed > 0 ? parsed : DEFAULT_MIN_TOKENS);
|
|
202
|
+
}
|
|
203
|
+
delayMs() {
|
|
204
|
+
const raw = this.env.CLAUDE_AGENT_ACP_IDLE_COMPACT_DELAY_MS;
|
|
205
|
+
if (raw === undefined)
|
|
206
|
+
return DEFAULT_DELAY_MS;
|
|
207
|
+
if (/^\d+$/.test(raw.trim()) && Number(raw.trim()) <= MAX_TIMER_MS)
|
|
208
|
+
return Number(raw.trim());
|
|
209
|
+
if (!this.warnedInvalidDelay) {
|
|
210
|
+
this.warnedInvalidDelay = true;
|
|
211
|
+
this.host.log(`[idle-compaction] ignoring invalid CLAUDE_AGENT_ACP_IDLE_COMPACT_DELAY_MS=${raw}`);
|
|
212
|
+
}
|
|
213
|
+
return DEFAULT_DELAY_MS;
|
|
214
|
+
}
|
|
215
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-command.d.ts","sourceRoot":"","sources":["../src/mcp-command.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAC1E,OAAO,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,MAAM,gCAAgC,CAAC;AAI7E;;2BAE2B;AAC3B,eAAO,MAAM,qBAAqB,EAAE,gBAInC,CAAC;AAQF;;6EAE6E;AAC7E,MAAM,MAAM,UAAU,GAClB;IAAE,MAAM,EAAE,QAAQ,CAAA;CAAE,GACpB;IAAE,MAAM,EAAE,WAAW,GAAG,QAAQ,GAAG,SAAS,CAAC;IAAC,GAAG,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAElF;;+DAE+D;AAC/D,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI,CAe/D;AAED;;0CAE0C;AAC1C,wBAAsB,mBAAmB,CACvC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,iBAAiB,CAAC,EACrC,MAAM,EAAE,WAAW,EACnB,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,GAClC,OAAO,CAAC,eAAe,EAAE,GAAG,IAAI,CAAC,CAkBnC;
|
|
1
|
+
{"version":3,"file":"mcp-command.d.ts","sourceRoot":"","sources":["../src/mcp-command.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAC1E,OAAO,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,MAAM,gCAAgC,CAAC;AAI7E;;2BAE2B;AAC3B,eAAO,MAAM,qBAAqB,EAAE,gBAInC,CAAC;AAQF;;6EAE6E;AAC7E,MAAM,MAAM,UAAU,GAClB;IAAE,MAAM,EAAE,QAAQ,CAAA;CAAE,GACpB;IAAE,MAAM,EAAE,WAAW,GAAG,QAAQ,GAAG,SAAS,CAAC;IAAC,GAAG,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAElF;;+DAE+D;AAC/D,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI,CAe/D;AAED;;0CAE0C;AAC1C,wBAAsB,mBAAmB,CACvC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,iBAAiB,CAAC,EACrC,MAAM,EAAE,WAAW,EACnB,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,GAClC,OAAO,CAAC,eAAe,EAAE,GAAG,IAAI,CAAC,CAkBnC;AA0ED;;;;kBAIkB;AAClB,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAiBnD;AA2DD;;8BAE8B;AAC9B,wBAAgB,eAAe,CAAC,QAAQ,EAAE,eAAe,EAAE,GAAG,MAAM,CA6BnE;AAED,8CAA8C;AAC9C,MAAM,MAAM,eAAe,GAAG,IAAI,CAChC,KAAK,EACL,iBAAiB,GAAG,oBAAoB,GAAG,iBAAiB,CAC7D,CAAC;AAEF;;kCAEkC;AAClC,MAAM,MAAM,iBAAiB,GAAG;IAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,WAAW,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC;AA4DnF;;;;;sDAKsD;AACtD,wBAAsB,aAAa,CACjC,KAAK,EAAE,eAAe,EACtB,OAAO,EAAE,UAAU,EACnB,cAAc,EAAE,MAAM,EACtB,MAAM,EAAE,WAAW,EACnB,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,GAClC,OAAO,CAAC,iBAAiB,CAAC,CAoD5B"}
|
package/dist/mcp-command.js
CHANGED
|
@@ -85,8 +85,11 @@ function needsReconnect(status) {
|
|
|
85
85
|
function codeSpan(text) {
|
|
86
86
|
const longestRun = Math.max(0, ...(text.match(/`+/g) ?? []).map((run) => run.length));
|
|
87
87
|
const fence = "`".repeat(longestRun + 1);
|
|
88
|
-
// CommonMark strips one space from each end of a span
|
|
89
|
-
|
|
88
|
+
// CommonMark strips one space from each end of a span that is not all spaces
|
|
89
|
+
// (line endings count as spaces), so a pad keeps the text unchanged. Plain
|
|
90
|
+
// string checks, not one regex: `^ .*[^ ].* $` backtracks quadratically.
|
|
91
|
+
const strippedByCommonMark = text.startsWith(" ") && text.endsWith(" ") && /[^ \r\n]/.test(text);
|
|
92
|
+
const pad = text.startsWith("`") || text.endsWith("`") || strippedByCommonMark ? " " : "";
|
|
90
93
|
return `${fence}${pad}${text}${pad}${fence}`;
|
|
91
94
|
}
|
|
92
95
|
function isErrorCode(segment) {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { PermissionMode } from "@anthropic-ai/claude-agent-sdk";
|
|
1
|
+
import type { PermissionMode, Settings } from "@anthropic-ai/claude-agent-sdk";
|
|
2
2
|
interface PermissionModeLogger {
|
|
3
3
|
error: (...args: unknown[]) => void;
|
|
4
4
|
}
|
|
@@ -6,5 +6,7 @@ export declare const ALLOW_BYPASS: boolean;
|
|
|
6
6
|
/** When `allowBypass` is false, `bypassPermissions` clamps to `default` so the SDK
|
|
7
7
|
* is never spawned in a mode it would reject. */
|
|
8
8
|
export declare function resolvePermissionMode(defaultMode?: unknown, logger?: PermissionModeLogger, allowBypass?: boolean): PermissionMode;
|
|
9
|
+
/** Claude Code reads `disableAutoMode` both at the top level and under `permissions`. */
|
|
10
|
+
export declare function autoModeDisabled(settings: Settings): boolean;
|
|
9
11
|
export {};
|
|
10
12
|
//# sourceMappingURL=modes.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"modes.d.ts","sourceRoot":"","sources":["../../src/permissions/modes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"modes.d.ts","sourceRoot":"","sources":["../../src/permissions/modes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAE/E,UAAU,oBAAoB;IAC5B,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;CACrC;AAID,eAAO,MAAM,YAAY,SAAuC,CAAC;AAiBjE;kDACkD;AAClD,wBAAgB,qBAAqB,CACnC,WAAW,CAAC,EAAE,OAAO,EACrB,MAAM,GAAE,oBAA8B,EACtC,WAAW,GAAE,OAAsB,GAClC,cAAc,CA4BhB;AAED,yFAAyF;AACzF,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAI5D"}
|
|
@@ -41,3 +41,7 @@ export function resolvePermissionMode(defaultMode, logger = console, allowBypass
|
|
|
41
41
|
}
|
|
42
42
|
return mapped;
|
|
43
43
|
}
|
|
44
|
+
/** Claude Code reads `disableAutoMode` both at the top level and under `permissions`. */
|
|
45
|
+
export function autoModeDisabled(settings) {
|
|
46
|
+
return (settings.disableAutoMode === "disable" || settings.permissions?.disableAutoMode === "disable");
|
|
47
|
+
}
|
package/dist/session-mode.d.ts
CHANGED
|
@@ -33,13 +33,20 @@ export type SessionModeManagerOptions<S extends SessionMode> = {
|
|
|
33
33
|
type ModeConfigSession = SessionMode & {
|
|
34
34
|
configOptions: SessionConfigOption[];
|
|
35
35
|
};
|
|
36
|
-
|
|
36
|
+
/** Which optional modes the session's mode catalog offers. */
|
|
37
|
+
export type ModeAvailability = {
|
|
38
|
+
/** When false, bypassPermissions is omitted from the mode catalog. */
|
|
39
|
+
allowBypass: boolean;
|
|
40
|
+
/** When false (`disableAutoMode: "disable"` in settings), auto is omitted. */
|
|
41
|
+
allowAuto: boolean;
|
|
42
|
+
};
|
|
43
|
+
type InitializeSessionModeParams = ModeAvailability & {
|
|
37
44
|
query: Pick<Query, "setPermissionMode">;
|
|
38
45
|
requestedMode: PermissionMode;
|
|
46
|
+
/** The mode is the built-in default: no request, transcript or setting chose it. */
|
|
47
|
+
builtInDefault?: boolean;
|
|
39
48
|
currentModelInfo?: ModelInfo;
|
|
40
49
|
currentModelId: string;
|
|
41
|
-
/** When false, bypassPermissions is omitted from the mode catalog. */
|
|
42
|
-
allowBypass: boolean;
|
|
43
50
|
};
|
|
44
51
|
/**
|
|
45
52
|
* The permission mode a new Claude query starts in.
|
|
@@ -48,6 +55,12 @@ type InitializeSessionModeParams = {
|
|
|
48
55
|
* user record of the transcript. If that mode is unknown or absent from the
|
|
49
56
|
* session's mode catalog, use an available `defaultMode` from settings, or
|
|
50
57
|
* `default` when that setting is unavailable too.
|
|
58
|
+
*
|
|
59
|
+
* With no `defaultMode` set, the session starts in `auto` when the catalog
|
|
60
|
+
* offers it and in `default` otherwise (`builtInDefault: true`), like an
|
|
61
|
+
* interactive Claude Code session. Claude Code also starts organizations with
|
|
62
|
+
* the HIPAA configuration in `default`; the SDK does not report that
|
|
63
|
+
* configuration, so those sessions start in `auto` here.
|
|
51
64
|
*/
|
|
52
65
|
export declare function resolveInitialPermissionMode(sources: {
|
|
53
66
|
explicit?: PermissionMode;
|
|
@@ -55,12 +68,15 @@ export declare function resolveInitialPermissionMode(sources: {
|
|
|
55
68
|
defaultMode?: unknown;
|
|
56
69
|
}, logger: {
|
|
57
70
|
error: (...args: unknown[]) => void;
|
|
58
|
-
},
|
|
71
|
+
}, availability: ModeAvailability): {
|
|
72
|
+
mode: PermissionMode;
|
|
73
|
+
builtInDefault: boolean;
|
|
74
|
+
};
|
|
59
75
|
/** Owns session-mode policy and the ACP/SDK synchronization it requires. */
|
|
60
76
|
export declare class SessionModeManager<S extends SessionMode> {
|
|
61
77
|
private readonly options;
|
|
62
78
|
constructor(options: SessionModeManagerOptions<S>);
|
|
63
|
-
initialize({ query, requestedMode, currentModelInfo, currentModelId, allowBypass, }: InitializeSessionModeParams): Promise<{
|
|
79
|
+
initialize({ query, requestedMode, builtInDefault, currentModelInfo, currentModelId, allowBypass, allowAuto, }: InitializeSessionModeParams): Promise<{
|
|
64
80
|
modes: SessionModeState;
|
|
65
81
|
autoModeFallbackWarningPending: boolean;
|
|
66
82
|
}>;
|
|
@@ -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,mCAAmC,CAAC;AAC3C,OAAO,KAAK,EACV,SAAS,EACT,cAAc,EACd,gBAAgB,EAChB,KAAK,EACN,MAAM,gCAAgC,CAAC;AAUxC,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;IACzC,6EAA6E;IAC7E,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,yBAAyB,CAAC,CAAC,SAAS,WAAW,IAAI;IAC7D,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,CAAC,GAAG,SAAS,CAAC;IAC7C,mBAAmB,EAAE,MAAM,CAAC;IAC5B,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACtF,aAAa,CAAC,MAAM,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1D;;oCAEgC;IAChC,eAAe,CAAC,IAAI,OAAO,CAAC;IAC5B,QAAQ,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;IACnC,2FAA2F;IAC3F,SAAS,CAAC,IAAI,OAAO,CAAC;CACvB,CAAC;AAEF,KAAK,iBAAiB,GAAG,WAAW,GAAG;IACrC,aAAa,EAAE,mBAAmB,EAAE,CAAC;CACtC,CAAC;AAEF,KAAK,2BAA2B,GAAG;
|
|
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
|
@@ -19,27 +19,40 @@ const AUTO_MODE_FALLBACK_NOTICE = {
|
|
|
19
19
|
* user record of the transcript. If that mode is unknown or absent from the
|
|
20
20
|
* session's mode catalog, use an available `defaultMode` from settings, or
|
|
21
21
|
* `default` when that setting is unavailable too.
|
|
22
|
+
*
|
|
23
|
+
* With no `defaultMode` set, the session starts in `auto` when the catalog
|
|
24
|
+
* offers it and in `default` otherwise (`builtInDefault: true`), like an
|
|
25
|
+
* interactive Claude Code session. Claude Code also starts organizations with
|
|
26
|
+
* the HIPAA configuration in `default`; the SDK does not report that
|
|
27
|
+
* configuration, so those sessions start in `auto` here.
|
|
22
28
|
*/
|
|
23
|
-
export function resolveInitialPermissionMode(sources, logger,
|
|
29
|
+
export function resolveInitialPermissionMode(sources, logger, availability) {
|
|
30
|
+
const { allowBypass } = availability;
|
|
31
|
+
const available = (mode) => buildAvailableModes(availability).some((entry) => entry.id === mode);
|
|
24
32
|
if (sources.explicit !== undefined) {
|
|
25
|
-
return
|
|
33
|
+
return {
|
|
34
|
+
mode: resolvePermissionMode(sources.explicit, logger, allowBypass),
|
|
35
|
+
builtInDefault: false,
|
|
36
|
+
};
|
|
26
37
|
}
|
|
27
38
|
if (sources.resumed !== undefined) {
|
|
28
39
|
let rejected = false;
|
|
29
40
|
const mode = resolvePermissionMode(sources.resumed, { error: () => (rejected = true) }, allowBypass);
|
|
30
|
-
if (!rejected &&
|
|
31
|
-
return mode;
|
|
41
|
+
if (!rejected && available(mode)) {
|
|
42
|
+
return { mode, builtInDefault: false };
|
|
32
43
|
}
|
|
33
44
|
logger.error(`Ignoring permission mode "${sources.resumed}" of the resumed transcript: ` +
|
|
34
45
|
`not available in this session.`);
|
|
35
46
|
}
|
|
47
|
+
if (sources.defaultMode === undefined) {
|
|
48
|
+
return { mode: available("auto") ? "auto" : "default", builtInDefault: true };
|
|
49
|
+
}
|
|
36
50
|
const configuredMode = resolvePermissionMode(sources.defaultMode, logger, allowBypass);
|
|
37
51
|
// A rejected transcript mode falls back only to a mode this session can offer.
|
|
38
|
-
if (sources.resumed !== undefined &&
|
|
39
|
-
|
|
40
|
-
return "default";
|
|
52
|
+
if (sources.resumed !== undefined && !available(configuredMode)) {
|
|
53
|
+
return { mode: "default", builtInDefault: false };
|
|
41
54
|
}
|
|
42
|
-
return configuredMode;
|
|
55
|
+
return { mode: configuredMode, builtInDefault: false };
|
|
43
56
|
}
|
|
44
57
|
/** Owns session-mode policy and the ACP/SDK synchronization it requires. */
|
|
45
58
|
export class SessionModeManager {
|
|
@@ -47,25 +60,33 @@ export class SessionModeManager {
|
|
|
47
60
|
constructor(options) {
|
|
48
61
|
this.options = options;
|
|
49
62
|
}
|
|
50
|
-
async initialize({ query, requestedMode, currentModelInfo, currentModelId, allowBypass, }) {
|
|
51
|
-
const availableModes = buildAvailableModes(allowBypass, this.options.airClient?.() ?? false);
|
|
63
|
+
async initialize({ query, requestedMode, builtInDefault = false, currentModelInfo, currentModelId, allowBypass, allowAuto, }) {
|
|
64
|
+
const availableModes = buildAvailableModes({ allowBypass, allowAuto }, this.options.airClient?.() ?? false);
|
|
52
65
|
let effectiveMode = requestedMode;
|
|
53
66
|
let autoModeFallbackWarningPending = false;
|
|
54
|
-
|
|
67
|
+
const autoUnsupported = effectiveMode === "auto" &&
|
|
55
68
|
currentModelInfo !== undefined &&
|
|
56
|
-
currentModelInfo.supportsAutoMode !== true
|
|
69
|
+
currentModelInfo.supportsAutoMode !== true;
|
|
70
|
+
if (!this.isAvailable(availableModes, effectiveMode)) {
|
|
71
|
+
this.options.logError(`permissions.defaultMode "${effectiveMode}" is not available in ` +
|
|
72
|
+
`this session; falling back to "default".`);
|
|
73
|
+
effectiveMode = "default";
|
|
74
|
+
await this.trySyncMode(query, effectiveMode, "Failed to sync clamped permissionMode to SDK:");
|
|
75
|
+
}
|
|
76
|
+
else if (autoUnsupported && builtInDefault) {
|
|
77
|
+
// Like Claude Code: a built-in Auto default the model can't serve starts
|
|
78
|
+
// in Manual, without a warning. Nobody chose Auto, so don't escalate to
|
|
79
|
+
// acceptEdits.
|
|
80
|
+
effectiveMode = "default";
|
|
81
|
+
await this.trySyncMode(query, effectiveMode, "Failed to sync clamped permissionMode to SDK:");
|
|
82
|
+
}
|
|
83
|
+
else if (autoUnsupported) {
|
|
57
84
|
this.options.logError(`permissions.defaultMode "auto" is not available for model ` +
|
|
58
85
|
`"${currentModelId}"; falling back to "${AUTO_MODE_FALLBACK}".`);
|
|
59
86
|
effectiveMode = AUTO_MODE_FALLBACK;
|
|
60
87
|
autoModeFallbackWarningPending = true;
|
|
61
88
|
await this.trySyncMode(query, effectiveMode, "Failed to sync clamped permissionMode to SDK:");
|
|
62
89
|
}
|
|
63
|
-
else if (!this.isAvailable(availableModes, effectiveMode)) {
|
|
64
|
-
this.options.logError(`permissions.defaultMode "${effectiveMode}" is not available in ` +
|
|
65
|
-
`this session; falling back to "default".`);
|
|
66
|
-
effectiveMode = "default";
|
|
67
|
-
await this.trySyncMode(query, effectiveMode, "Failed to sync clamped permissionMode to SDK:");
|
|
68
|
-
}
|
|
69
90
|
return {
|
|
70
91
|
modes: { currentModeId: effectiveMode, availableModes },
|
|
71
92
|
autoModeFallbackWarningPending,
|
|
@@ -240,7 +261,7 @@ export class SessionModeManager {
|
|
|
240
261
|
}
|
|
241
262
|
}
|
|
242
263
|
}
|
|
243
|
-
function buildAvailableModes(allowBypass, air = false) {
|
|
264
|
+
function buildAvailableModes({ allowBypass, allowAuto }, air = false) {
|
|
244
265
|
// Only AIR gets the mode kind.
|
|
245
266
|
const kind = (value) => {
|
|
246
267
|
const meta = airOnlyMeta(air, AIR_KIND_KEY, value);
|
|
@@ -265,13 +286,15 @@ function buildAvailableModes(allowBypass, air = false) {
|
|
|
265
286
|
description: "Create a plan before making changes",
|
|
266
287
|
...kind("plan"),
|
|
267
288
|
},
|
|
268
|
-
|
|
289
|
+
];
|
|
290
|
+
if (allowAuto) {
|
|
291
|
+
modes.push({
|
|
269
292
|
id: "auto",
|
|
270
293
|
name: "Auto",
|
|
271
294
|
description: "Claude handles permission decisions",
|
|
272
295
|
...kind("auto_review"),
|
|
273
|
-
}
|
|
274
|
-
|
|
296
|
+
});
|
|
297
|
+
}
|
|
275
298
|
if (allowBypass) {
|
|
276
299
|
modes.push({
|
|
277
300
|
id: "bypassPermissions",
|
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,KAAK,EACV,SAAS,EACT,eAAe,EACf,gBAAgB,EAChB,QAAQ,EACT,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAC9D,OAAO,KAAK,EACV,eAAe,EACf,gBAAgB,EAChB,cAAc,EACd,eAAe,EACf,gBAAgB,EACjB,MAAM,6CAA6C,CAAC;AAErD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAEpF,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAExE;;;;GAIG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,GAAG,EACZ,sBAAsB,GAAE,OAAe,EACvC,GAAG,CAAC,EAAE,MAAM,EACZ,iBAAiB,GAAE,OAAe,GACjC;IACD,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,QAAQ,CAAC;IACf,OAAO,EAAE,eAAe,EAAE,CAAC;IAC3B,SAAS,CAAC,EAAE,gBAAgB,EAAE,CAAC;CAChC,CAKA;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CACtC,UAAU,EAAE,eAAe,EAC3B,OAAO,EAAE,GAAG,GAAG,SAAS,EACxB,sBAAsB,GAAE,OAAe,EACvC,aAAa,CAAC,EAAE,OAAO,EACvB,yBAAyB,GAAE,OAAe,GACzC,cAAc,CAShB;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,SAAS,GAAG,aAAa,GAAG,WAAW,CAAC;IAChD,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,wBAAgB,WAAW,CAAC,KAAK,EAAE;IAAE,KAAK,EAAE,eAAe,EAAE,CAAA;CAAE,GAAG,SAAS,GAAG,SAAS,EAAE,CAMxF;AAED;;;;;;GAMG;AACH,MAAM,MAAM,SAAS,GAAG;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,SAAS,GAAG,aAAa,GAAG,WAAW,CAAC;IAChD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AACF,MAAM,MAAM,SAAS,GAAG,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;AAuD/C,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,gBAAgB,GAAG,SAAS,CAmBpF;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,cAAc,GAAG,SAAS,CA2EhF;AAED,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,OAAO,EAChB,cAAc,CAAC,EAAE,MAAM,GACtB,gBAAgB,GAAG,SAAS,CAwB9B;AAED,wBAAgB,eAAe,CAC7B,KAAK,EAAE,SAAS,EAChB,KAAK,EAAE,eAAe,GAAG,SAAS,EAClC,MAAM,EAAE,gBAAgB,GAAG,SAAS,GACnC,IAAI,
|
|
1
|
+
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}
|
package/dist/tools.js
CHANGED
|
@@ -178,11 +178,14 @@ export function applyTaskCreate(state, input, output) {
|
|
|
178
178
|
const taskId = output?.task?.id;
|
|
179
179
|
if (!taskId || !input)
|
|
180
180
|
return;
|
|
181
|
+
// The output holds the task as saved, which differs from the input when
|
|
182
|
+
// Claude Code corrects a malformed call or a PreToolUse hook changes it.
|
|
183
|
+
// `description` is in outputs since CLI 2.1.317.
|
|
181
184
|
state.set(taskId, {
|
|
182
|
-
subject: input.subject,
|
|
185
|
+
subject: output.task.subject ?? input.subject,
|
|
183
186
|
status: "pending",
|
|
184
187
|
activeForm: input.activeForm,
|
|
185
|
-
description: input.description,
|
|
188
|
+
description: output.task.description ?? input.description,
|
|
186
189
|
});
|
|
187
190
|
}
|
|
188
191
|
export function applyTaskUpdate(state, input) {
|
package/package.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"publishConfig": {
|
|
4
4
|
"access": "public"
|
|
5
5
|
},
|
|
6
|
-
"version": "0.100.1-preview.
|
|
6
|
+
"version": "0.100.1-preview.5",
|
|
7
7
|
"description": "An ACP-compatible coding agent powered by the Claude Agent SDK (TypeScript)",
|
|
8
8
|
"main": "dist/lib.js",
|
|
9
9
|
"types": "dist/lib.d.ts",
|
|
@@ -69,12 +69,12 @@
|
|
|
69
69
|
},
|
|
70
70
|
"dependencies": {
|
|
71
71
|
"@agentclientprotocol/sdk": "2.4.0",
|
|
72
|
-
"@anthropic-ai/claude-agent-sdk": "0.3.
|
|
72
|
+
"@anthropic-ai/claude-agent-sdk": "0.3.318",
|
|
73
73
|
"diff": "9.0.0",
|
|
74
74
|
"zod": "4.6.7"
|
|
75
75
|
},
|
|
76
76
|
"devDependencies": {
|
|
77
|
-
"@anthropic-ai/sdk": "1.
|
|
77
|
+
"@anthropic-ai/sdk": "1.4.0",
|
|
78
78
|
"@eslint/js": "10.0.1",
|
|
79
79
|
"@tsconfig/node22": "22.0.6",
|
|
80
80
|
"@types/node": "26.6.6",
|
|
@@ -87,6 +87,6 @@
|
|
|
87
87
|
"globals": "17.14.0",
|
|
88
88
|
"prettier": "3.9.10",
|
|
89
89
|
"typescript": "6.0.3",
|
|
90
|
-
"vitest": "5.0
|
|
90
|
+
"vitest": "5.1.0"
|
|
91
91
|
}
|
|
92
92
|
}
|