@koda-sl/baker-bridge 0.164.0 → 0.168.0-dev.d78500250
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +40 -19
- package/dist/hono/bridge-job.d.ts +17 -0
- package/dist/hono/bridge-job.d.ts.map +1 -1
- package/dist/hono/bridge-job.js +110 -19
- package/dist/hono/bridge-job.js.map +1 -1
- package/dist/hono/bridge-job.test.js +184 -13
- package/dist/hono/bridge-job.test.js.map +1 -1
- package/dist/hono/effort-route.d.ts +43 -0
- package/dist/hono/effort-route.d.ts.map +1 -0
- package/dist/hono/effort-route.js +36 -0
- package/dist/hono/effort-route.js.map +1 -0
- package/dist/hono/effort-route.test.d.ts +2 -0
- package/dist/hono/effort-route.test.d.ts.map +1 -0
- package/dist/hono/effort-route.test.js +54 -0
- package/dist/hono/effort-route.test.js.map +1 -0
- package/dist/hono/openrouter-session.d.ts +16 -13
- package/dist/hono/openrouter-session.d.ts.map +1 -1
- package/dist/hono/openrouter-session.js +16 -13
- package/dist/hono/openrouter-session.js.map +1 -1
- package/dist/hono/relay.d.ts +8 -0
- package/dist/hono/relay.d.ts.map +1 -1
- package/dist/hono/relay.js +2 -0
- package/dist/hono/relay.js.map +1 -1
- package/dist/hono/relay.test.js +24 -0
- package/dist/hono/relay.test.js.map +1 -1
- package/dist/hono/runtime-files.d.ts +1 -0
- package/dist/hono/runtime-files.d.ts.map +1 -1
- package/dist/hono/runtime-files.js +3 -0
- package/dist/hono/runtime-files.js.map +1 -1
- package/dist/hono/tool-result-ledger.d.ts +30 -0
- package/dist/hono/tool-result-ledger.d.ts.map +1 -0
- package/dist/hono/tool-result-ledger.js +63 -0
- package/dist/hono/tool-result-ledger.js.map +1 -0
- package/dist/hono/tool-result-ledger.test.d.ts +2 -0
- package/dist/hono/tool-result-ledger.test.d.ts.map +1 -0
- package/dist/hono/tool-result-ledger.test.js +61 -0
- package/dist/hono/tool-result-ledger.test.js.map +1 -0
- package/dist/hono/workspace-instructions.d.ts +43 -0
- package/dist/hono/workspace-instructions.d.ts.map +1 -0
- package/dist/hono/workspace-instructions.js +68 -0
- package/dist/hono/workspace-instructions.js.map +1 -0
- package/dist/hono/workspace-instructions.test.d.ts +2 -0
- package/dist/hono/workspace-instructions.test.d.ts.map +1 -0
- package/dist/hono/workspace-instructions.test.js +68 -0
- package/dist/hono/workspace-instructions.test.js.map +1 -0
- package/dist/review/digest.d.ts +13 -0
- package/dist/review/digest.d.ts.map +1 -1
- package/dist/review/digest.js +1 -1
- package/dist/review/digest.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -50,7 +50,7 @@ await server.start();
|
|
|
50
50
|
| `BAKER_CHAT_ID` | Present only when running inside a chat sandbox. When set, the bridge relocates Claude Code auto-memory into the cloned repo (`.claude/memory`) — see [Session journal](#session-journal-agent-memory) |
|
|
51
51
|
| `BAKER_ACTING_USER_ID` | Injected into the Agent SDK subprocess env per turn (when the turn's sender is known) so in-sandbox `baker` CLI calls can scope work to the acting user — e.g. `baker mcp add --scope user` |
|
|
52
52
|
| `CLAUDE_CODE_ENABLE_TASKS` | Set to `0` on every Agent SDK subprocess. Turns off the CLI's built-in task backlog and its `task_reminder` — see [Session surface](#session-surface) |
|
|
53
|
-
| `CLAUDE_CODE_MODEL_CAPABILITIES` | Set to
|
|
53
|
+
| `CLAUDE_CODE_MODEL_CAPABILITIES` | Set to `per_turn_effort` on every Agent SDK subprocess so the CLI restates the effort per message and a turn on another effort level keeps the prompt cache — see [Reasoning effort](#reasoning-effort) |
|
|
54
54
|
| `NO_COLOR` | Set to `1` on every Agent SDK subprocess so `baker --help` output carries no ANSI escapes — see [Session surface](#session-surface) |
|
|
55
55
|
| `BAKER_AGENT_MODEL` | Optional. Runs every turn in this runtime on the named model instead of the default, and is forwarded to subagents as `CLAUDE_CODE_SUBAGENT_MODEL`. Ignored unless it names a model with a known context window — see [Model selection](#model-selection) |
|
|
56
56
|
| `CLAUDE_CODE_SUBAGENT_MODEL`, `CLAUDE_CODE_SUBAGENT_MODEL_FORCE` | Set on the Agent SDK subprocess only when `BAKER_AGENT_MODEL` is set. Together they override the `model:` each subagent pins in its own frontmatter |
|
|
@@ -110,6 +110,9 @@ use, and each one costs context on every turn. The bridge trims them at the
|
|
|
110
110
|
disallowed — it is the subagent spawn the workspace's own agents ride — and
|
|
111
111
|
neither is `SendMessage`, which continues a subagent the session already ran;
|
|
112
112
|
the turn stays open until the continued subagent finishes.
|
|
113
|
+
- **Developer tools are disallowed** — `DesignSync`, `ReportFindings`,
|
|
114
|
+
`NotebookEdit`. None was called in 358 production chats, and each definition
|
|
115
|
+
rides every request whenever the CLI does not defer it.
|
|
113
116
|
|
|
114
117
|
To see what a session actually ends up with, read the tool list off its own
|
|
115
118
|
`init` message (`--output-format stream-json --verbose`) rather than this list:
|
|
@@ -121,6 +124,13 @@ the CLI gates some tools on the model, so the resolved set differs per model.
|
|
|
121
124
|
are never TTY-gated, so without it every help read spends ~5-10% of its tokens
|
|
122
125
|
on colour codes the model cannot see.
|
|
123
126
|
|
|
127
|
+
**The workspace's `CLAUDE.md` is sent as the system prompt**, minus its
|
|
128
|
+
`@COMPANY.md` import, which loads from `~/.baker/instructions/CLAUDE.md` as an
|
|
129
|
+
additional directory; the root file is excluded so it is not loaded twice. In
|
|
130
|
+
the system prompt the scaffold's text ends on a cache breakpoint, so every chat
|
|
131
|
+
reads one cached copy instead of writing its own ~24k tokens. A `CLAUDE.md`
|
|
132
|
+
without that exact block loads as before. See `workspace-instructions.ts`.
|
|
133
|
+
|
|
124
134
|
`Options.agents` is deliberately left unset: the workspace ships its own
|
|
125
135
|
subagents in `.claude/agents/`, discovered from disk via
|
|
126
136
|
`settingSources: ["project"]`, and setting the option risks replacing them.
|
|
@@ -164,17 +174,30 @@ Opus 5.5 it suppressed the short progress notes users read during long turns.
|
|
|
164
174
|
|
|
165
175
|
## Reasoning effort
|
|
166
176
|
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
177
|
+
Each turn's effort is decided by Jev before its first query (`effort-route.ts`):
|
|
178
|
+
`medium` — Opus 5.5's own default, sent explicitly — unless Jev clearly reads the
|
|
179
|
+
turn as small (a short answer, one lookup, one change the marketer spelled out),
|
|
180
|
+
which runs at `low`. Jev reads the message together with the agent's last reply,
|
|
181
|
+
because a short "sí, hazlo" approves whatever that reply proposed; plan mode, a
|
|
182
|
+
leading command, an unattended run and a turn with attachments keep `medium`
|
|
183
|
+
without asking, and so does a turn Jev does not answer (2 s timeout). It is asked
|
|
184
|
+
while the session boundary loads, so it adds no wait. The thresholds were read
|
|
185
|
+
off 648 production turns (small ≥ 0.75, complex ≤ 0.3: 3% of turns, median 698
|
|
186
|
+
output tokens); every decision is reported with the turn and kept on its
|
|
187
|
+
`thread.complete` activity row, so the band can be widened against what those
|
|
188
|
+
turns did. Effort governs thinking depth, preamble, and how many tool calls the
|
|
189
|
+
model makes; Anthropic's own cost index puts `low` ~12% under `medium` per task.
|
|
190
|
+
|
|
191
|
+
**A change of effort must go through the per-message form.** A top-level
|
|
192
|
+
effort that differs from the previous request re-writes the cached conversation
|
|
193
|
+
from its first tool exchange onward — on a session carrying hundreds of
|
|
194
|
+
thousands of tokens, far more than any per-turn tuning saves. The bridge sets
|
|
195
|
+
`CLAUDE_CODE_MODEL_CAPABILITIES=per_turn_effort`, so the CLI also restates the
|
|
196
|
+
effort on its mid-conversation `role: "system"` message (`output_config.effort`,
|
|
197
|
+
beta `per-turn-control`), which keeps the whole cache. Measured through the real
|
|
198
|
+
CLI on Bedrock, effort medium → low → medium across resumed turns: 3,580 tokens
|
|
199
|
+
re-written on the change without it, 106 with it. Prompt text is no substitute
|
|
200
|
+
for the effort parameter on Opus 5.5.
|
|
178
201
|
|
|
179
202
|
Subagents set their own `effort` (and `model`) in their markdown frontmatter and
|
|
180
203
|
do **not** inherit either from the main thread. The four scaffold-shared agents
|
|
@@ -240,13 +263,11 @@ The `session_id` pin still applies whenever an inherited `provider` drops the
|
|
|
240
263
|
`order`.
|
|
241
264
|
|
|
242
265
|
The preference only holds for a request Bedrock can serve, and OpenRouter drops
|
|
243
|
-
Bedrock from the route without an error when it can't.
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
`CLAUDE_CODE_MODEL_CAPABILITIES=-per_turn_effort` to stop that; the request-level
|
|
249
|
-
`effort` still applies. A request with a structured-output schema (the CLI's
|
|
266
|
+
Bedrock from the route without an error when it can't. The day Opus 5.5 shipped,
|
|
267
|
+
the CLI's per-message effort was such a request — 52 of ~4,600 Opus 5.5 requests
|
|
268
|
+
reached Bedrock — and the bridge switched it off. Since then Bedrock serves it
|
|
269
|
+
(verified 2026-10-30 with fallbacks off), so it is back on (see
|
|
270
|
+
[Reasoning effort](#reasoning-effort)). A request with a structured-output schema (the CLI's
|
|
250
271
|
short title request) is still served elsewhere, because Bedrock lacks structured
|
|
251
272
|
outputs on OpenRouter.
|
|
252
273
|
|
|
@@ -6,6 +6,7 @@ import { type AvatarCastingRequest, type AvatarCastingResult } from "./avatar-ca
|
|
|
6
6
|
import { type ConnectionInputRequest, type ConnectionInputResolution } from "./connection-input.ts";
|
|
7
7
|
import { type ContextUsage } from "./context-usage.ts";
|
|
8
8
|
import { type CredentialInputRequest, type CredentialInputResult } from "./credential-input.ts";
|
|
9
|
+
import { type EffortDecision } from "./effort-route.ts";
|
|
9
10
|
import { type FlowInputRequestInput, type FlowInputResolution, readRawFlowTree } from "./flow-input.ts";
|
|
10
11
|
import { type Judge } from "./jev.ts";
|
|
11
12
|
import { type MainSync } from "./main-sync.ts";
|
|
@@ -15,6 +16,7 @@ import { type DirtySessionReason } from "./session-continuity.ts";
|
|
|
15
16
|
import type { ClaudeSessionBoundary, InFlightTurnStore, LoadedSessionBoundary } from "./session-store.ts";
|
|
16
17
|
import { type UsageBaseline } from "./session-usage-baseline.ts";
|
|
17
18
|
import { type TagChangeInput, type TagChangeResolution } from "./tag-input.ts";
|
|
19
|
+
import { type ToolResultSize } from "./tool-result-ledger.ts";
|
|
18
20
|
import { type TurnEventRecorder } from "./turn-events.ts";
|
|
19
21
|
import { type TurnModelUsage } from "./turn-model-usage.ts";
|
|
20
22
|
import type { ChatAttachment, CurrentReference, DispatchHistorySnapshot, DispatchSender, PromptCredential, PublishStanding, ReviewTurn } from "./types.ts";
|
|
@@ -56,6 +58,8 @@ export type BridgeJobOutcome = {
|
|
|
56
58
|
costUsd: number;
|
|
57
59
|
model?: string;
|
|
58
60
|
modelUsage?: TurnModelUsage[];
|
|
61
|
+
toolResults?: ToolResultSize[];
|
|
62
|
+
effortDecision?: EffortDecision;
|
|
59
63
|
completeChat?: boolean;
|
|
60
64
|
/** The turn left the chat branch with no work of its own (see `main-sync.ts` `holdsNoWorkOfItsOwn`). */
|
|
61
65
|
workspaceUnchanged?: boolean;
|
|
@@ -67,11 +71,15 @@ export type BridgeJobOutcome = {
|
|
|
67
71
|
costUsd: number;
|
|
68
72
|
model?: string;
|
|
69
73
|
modelUsage?: TurnModelUsage[];
|
|
74
|
+
toolResults?: ToolResultSize[];
|
|
75
|
+
effortDecision?: EffortDecision;
|
|
70
76
|
} | {
|
|
71
77
|
kind: "errored";
|
|
72
78
|
costUsd: number;
|
|
73
79
|
model?: string;
|
|
74
80
|
modelUsage?: TurnModelUsage[];
|
|
81
|
+
toolResults?: ToolResultSize[];
|
|
82
|
+
effortDecision?: EffortDecision;
|
|
75
83
|
errors: string[];
|
|
76
84
|
};
|
|
77
85
|
/** An answer to a question card: the user's, or the recommended options Baker picked when nobody answered. */
|
|
@@ -314,6 +322,8 @@ type BridgeJobExecutorDependencies = {
|
|
|
314
322
|
readFlowTree?: (flowSlug: string) => ReturnType<typeof readRawFlowTree>;
|
|
315
323
|
/** The decision model the guards read the user's and the agent's words with (see `jev.ts`); injected by tests. */
|
|
316
324
|
judge?: Judge;
|
|
325
|
+
/** The same model, asked how hard a turn needs the agent to work (see `effort-route.ts`); injected by tests. */
|
|
326
|
+
effortJudge?: Judge;
|
|
317
327
|
};
|
|
318
328
|
export declare const REVIEW_DISALLOWED_TOOLS: string[];
|
|
319
329
|
/**
|
|
@@ -406,8 +416,15 @@ export declare class BridgeJobExecutor {
|
|
|
406
416
|
private readonly holdsNoWork?;
|
|
407
417
|
private readonly keepCliInStep?;
|
|
408
418
|
private readonly judge;
|
|
419
|
+
private readonly effortJudge;
|
|
409
420
|
constructor(dependencies: BridgeJobExecutorDependencies);
|
|
410
421
|
execute(job: BridgeJob, controls: BridgeJobControls): Promise<BridgeJobOutcome>;
|
|
422
|
+
/**
|
|
423
|
+
* How hard the agent works on this turn (see `effort-route.ts`); null for a
|
|
424
|
+
* Session review, which keeps the default. Never throws: an unanswered judge
|
|
425
|
+
* is the default level.
|
|
426
|
+
*/
|
|
427
|
+
private decideEffort;
|
|
411
428
|
private executeTurn;
|
|
412
429
|
/** The attempt to retry a failed first attempt with, when its failure is one a different start can fix. */
|
|
413
430
|
private fallbackAttempt;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bridge-job.d.ts","sourceRoot":"","sources":["../../src/hono/bridge-job.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"bridge-job.d.ts","sourceRoot":"","sources":["../../src/hono/bridge-job.ts"],"names":[],"mappings":"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"}
|
package/dist/hono/bridge-job.js
CHANGED
|
@@ -15,6 +15,7 @@ import { CONNECTION_INPUT_TOOL_NAME, CONNECTION_PLATFORMS, connectedButNotLoaded
|
|
|
15
15
|
import { messageContextTokens, pickContextWindow, streamEventContextUsage, turnContextUsage, } from "./context-usage.js";
|
|
16
16
|
import { CREDENTIAL_INPUT_TOOL_NAME, normalizeCredentialInputToolInput, } from "./credential-input.js";
|
|
17
17
|
import { credentialScrubHooks } from "./credential-scrub.js";
|
|
18
|
+
import { DEFAULT_TURN_EFFORT, decideTurnEffort } from "./effort-route.js";
|
|
18
19
|
import { agentStatedFlowMessage, FLOW_INPUT_TOOL_NAME, nodeTargetRefusals, normalizeFlowInputToolInput, readRawFlowTree, sanitizeFlowRequests, unknownFlowPrefillMessage, } from "./flow-input.js";
|
|
19
20
|
import { writesInventedLogo } from "./invented-logo.js";
|
|
20
21
|
import { jevJudge } from "./jev.js";
|
|
@@ -23,7 +24,7 @@ import { composioScopesToInvalidate, failedCustomServers, reportMcpInvalid, serv
|
|
|
23
24
|
import { agentModelOverride, autoCompactWindowForModel, betasForModel, contextWindowForModel, } from "./model-capabilities.js";
|
|
24
25
|
import { agentShellPrefixEnv, killFirstWrapper } from "./oom-priority.js";
|
|
25
26
|
import { anthropicCustomHeaders, runtimeOpenRouterTags } from "./openrouter-attribution.js";
|
|
26
|
-
import {
|
|
27
|
+
import { buildAgentExtraBody, EXTRA_BODY_ENV, MODEL_CAPABILITIES_ENV, PER_TURN_EFFORT_CAPABILITIES, } from "./openrouter-session.js";
|
|
27
28
|
import { credentialReminder, currentReferenceReminder, kickoffBriefReminder } from "./prompt-context.js";
|
|
28
29
|
import { publishLanguageReminder, publishRunReminder, publishStandingReminder } from "./publish-handoff.js";
|
|
29
30
|
import { bridgeRuntimeFiles } from "./runtime-files.js";
|
|
@@ -35,8 +36,10 @@ import { skillLanguageHooks } from "./skill-language.js";
|
|
|
35
36
|
import { BridgeSlashCommands, leadingSkillCommand, verbatimSlashCommand } from "./slash-commands.js";
|
|
36
37
|
import { createBakerUiServer, normalizeTagInputToolInput, sanitizeTagChanges, TAG_INPUT_TOOL_NAME, unknownPrefillMessage, } from "./tag-input.js";
|
|
37
38
|
import { blockingToolDelegated, toolRunAsCommand } from "./tool-in-shell.js";
|
|
39
|
+
import { ToolResultLedger } from "./tool-result-ledger.js";
|
|
38
40
|
import { recordTurnEvent } from "./turn-events.js";
|
|
39
41
|
import { addQueryModelUsage, queryModelUsage, turnModelUsageList } from "./turn-model-usage.js";
|
|
42
|
+
import { prepareSharedInstructions } from "./workspace-instructions.js";
|
|
40
43
|
import { settleWorkspaceAfterTasks } from "./workspace-settle.js";
|
|
41
44
|
export function parsePlanDecision(value) {
|
|
42
45
|
if (!value || typeof value !== "object") {
|
|
@@ -217,6 +220,13 @@ const BASE_DISALLOWED_TOOLS = [
|
|
|
217
220
|
// not asked to fund a research fleet. Ordinary fan-out is unaffected:
|
|
218
221
|
// `Task` stays, so the scaffold's subagents still run.
|
|
219
222
|
"Workflow",
|
|
223
|
+
// Developer tools: design-system sync, code-review findings, Jupyter edits.
|
|
224
|
+
// None was called once in 358 production chats (Oct 2026), and each
|
|
225
|
+
// definition rides every request whenever the CLI does not defer it —
|
|
226
|
+
// DesignSync's alone is ~9k characters.
|
|
227
|
+
"DesignSync",
|
|
228
|
+
"ReportFindings",
|
|
229
|
+
"NotebookEdit",
|
|
220
230
|
// NOT listed: `SendMessage`. It is how the model follows up with a
|
|
221
231
|
// subagent it already ran, and the CLI tells it to on every Agent result.
|
|
222
232
|
// The continued subagent runs in the background, but it announces itself
|
|
@@ -245,7 +255,7 @@ function disallowedToolsFor(job) {
|
|
|
245
255
|
function modelForJob(job, sessionModel) {
|
|
246
256
|
return job.review?.model ?? sessionModel;
|
|
247
257
|
}
|
|
248
|
-
export const REVIEW_DISALLOWED_TOOLS = ["Edit", "Write", "MultiEdit", "
|
|
258
|
+
export const REVIEW_DISALLOWED_TOOLS = ["Edit", "Write", "MultiEdit", "ExitPlanMode", "Skill"];
|
|
249
259
|
/**
|
|
250
260
|
* The findings contract, enforced by the SDK rather than parsed back out of
|
|
251
261
|
* prose. `structured_output` on the result message is what reaches Convex, and
|
|
@@ -432,6 +442,19 @@ function createBridgeJobState() {
|
|
|
432
442
|
detachedSession: false,
|
|
433
443
|
modelUsageTotals: new Map(),
|
|
434
444
|
queryModelUsage: new Map(),
|
|
445
|
+
toolResults: new ToolResultLedger(),
|
|
446
|
+
};
|
|
447
|
+
}
|
|
448
|
+
/** What a finished turn reports about its spend: per-model usage and per-tool result sizes. */
|
|
449
|
+
function turnUsage(state) {
|
|
450
|
+
const toolResults = state.toolResults.summary();
|
|
451
|
+
return {
|
|
452
|
+
modelUsage: turnModelUsageList(state.modelUsageTotals),
|
|
453
|
+
...(toolResults.length > 0 ? { toolResults } : {}),
|
|
454
|
+
// An unjudged turn is left off: no decision on the record means Jev never answered.
|
|
455
|
+
...(state.effortDecision && state.effortDecision.reason !== "unjudged"
|
|
456
|
+
? { effortDecision: state.effortDecision }
|
|
457
|
+
: {}),
|
|
435
458
|
};
|
|
436
459
|
}
|
|
437
460
|
function errorMessage(error) {
|
|
@@ -508,6 +531,21 @@ function hookSettingsForJob(job) {
|
|
|
508
531
|
}
|
|
509
532
|
return {};
|
|
510
533
|
}
|
|
534
|
+
/**
|
|
535
|
+
* Which instruction files a job loads as memory. A Session review loads none:
|
|
536
|
+
* its brief has it read the rulebook as the Session had it (`git show
|
|
537
|
+
* <sha>:CLAUDE.md`), since Publish may already have moved the working tree past
|
|
538
|
+
* it, and the auto-loaded copy is ~24k tokens of the marketer's instructions
|
|
539
|
+
* written cold and re-read on every review request. The client's agent loads
|
|
540
|
+
* the workspace's `CLAUDE.md` itself only when it could not be split into the
|
|
541
|
+
* shared system prompt (`prepareSharedInstructions`).
|
|
542
|
+
*/
|
|
543
|
+
function instructionSettingsForJob(job, sharedInstructions) {
|
|
544
|
+
if (job.review) {
|
|
545
|
+
return { claudeMdExcludes: ["**/CLAUDE.md"] };
|
|
546
|
+
}
|
|
547
|
+
return sharedInstructions ? { claudeMdExcludes: [join(bridgeRuntimeFiles.projectRoot(), "CLAUDE.md")] } : {};
|
|
548
|
+
}
|
|
511
549
|
// Carry a Runtime-wide model override down to the fan-out workers.
|
|
512
550
|
//
|
|
513
551
|
// The shared subagents pin themselves to Sonnet 5.5 in their own frontmatter (see
|
|
@@ -1169,6 +1207,7 @@ export class BridgeJobExecutor {
|
|
|
1169
1207
|
holdsNoWork;
|
|
1170
1208
|
keepCliInStep;
|
|
1171
1209
|
judge;
|
|
1210
|
+
effortJudge;
|
|
1172
1211
|
constructor(dependencies) {
|
|
1173
1212
|
this.sdk = dependencies.sdk;
|
|
1174
1213
|
this.relay = dependencies.relay;
|
|
@@ -1197,6 +1236,9 @@ export class BridgeJobExecutor {
|
|
|
1197
1236
|
this.judge =
|
|
1198
1237
|
dependencies.judge ??
|
|
1199
1238
|
jevJudge(process.env.OPENROUTER_API_KEY, runtimeOpenRouterTags(process.env, { service: "bridge", feature: "bridge.toolCallGuard" }));
|
|
1239
|
+
this.effortJudge =
|
|
1240
|
+
dependencies.effortJudge ??
|
|
1241
|
+
jevJudge(process.env.OPENROUTER_API_KEY, runtimeOpenRouterTags(process.env, { service: "bridge", feature: "bridge.effortRoute" }));
|
|
1200
1242
|
}
|
|
1201
1243
|
async execute(job, controls) {
|
|
1202
1244
|
try {
|
|
@@ -1208,6 +1250,26 @@ export class BridgeJobExecutor {
|
|
|
1208
1250
|
await this.inFlightTurns.clear(job.threadId, job.turnId).catch(() => undefined);
|
|
1209
1251
|
}
|
|
1210
1252
|
}
|
|
1253
|
+
/**
|
|
1254
|
+
* How hard the agent works on this turn (see `effort-route.ts`); null for a
|
|
1255
|
+
* Session review, which keeps the default. Never throws: an unanswered judge
|
|
1256
|
+
* is the default level.
|
|
1257
|
+
*/
|
|
1258
|
+
async decideEffort(job, request) {
|
|
1259
|
+
if (job.review) {
|
|
1260
|
+
return null;
|
|
1261
|
+
}
|
|
1262
|
+
const lastReply = (job.history?.entries ?? []).filter((entry) => entry.role === "assistant").at(-1);
|
|
1263
|
+
return await decideTurnEffort({
|
|
1264
|
+
message: job.prompt,
|
|
1265
|
+
previousReply: lastReply?.text ?? "",
|
|
1266
|
+
judge: this.effortJudge,
|
|
1267
|
+
planMode: job.planMode === true,
|
|
1268
|
+
leadingCommand: request.leadingCommand,
|
|
1269
|
+
unattended: job.unattended === true,
|
|
1270
|
+
hasAttachments: (job.attachments?.length ?? 0) > 0,
|
|
1271
|
+
}).catch(() => ({ effort: DEFAULT_TURN_EFFORT, reason: "unjudged" }));
|
|
1272
|
+
}
|
|
1211
1273
|
async executeTurn(job, controls) {
|
|
1212
1274
|
const state = createBridgeJobState();
|
|
1213
1275
|
let result = { costUsd: 0, attemptedRehydration: false };
|
|
@@ -1219,6 +1281,8 @@ export class BridgeJobExecutor {
|
|
|
1219
1281
|
if (!request?.prompt || !controls.isActive()) {
|
|
1220
1282
|
return { kind: "cancelled", costUsd: 0, model: state.model };
|
|
1221
1283
|
}
|
|
1284
|
+
// Asked while the boundary loads, so the answer (~0.3 s) costs the turn no time.
|
|
1285
|
+
const effortDecision = this.decideEffort(job, request);
|
|
1222
1286
|
const loaded = await this.loadTrustedBoundary(job, controls);
|
|
1223
1287
|
if (loaded?.kind !== "clean") {
|
|
1224
1288
|
request = await this.withContinuedAttachments(job, request);
|
|
@@ -1237,6 +1301,7 @@ export class BridgeJobExecutor {
|
|
|
1237
1301
|
state.detachedSession = attempt.detachedSession === true;
|
|
1238
1302
|
result.attemptedRehydration = attempt.attemptedRehydration;
|
|
1239
1303
|
this.recordAttemptContextSource(job, attempt);
|
|
1304
|
+
state.effortDecision = (await effortDecision) ?? undefined;
|
|
1240
1305
|
result = await this.runAttempt(job, controls, state, attempt);
|
|
1241
1306
|
return await this.finishSuccessfulAttempt(job, controls, state, result.costUsd);
|
|
1242
1307
|
}
|
|
@@ -1245,6 +1310,8 @@ export class BridgeJobExecutor {
|
|
|
1245
1310
|
if (repaired && controls.isActive()) {
|
|
1246
1311
|
const repairState = createBridgeJobState();
|
|
1247
1312
|
repairState.detachedSession = repaired.detachedSession === true;
|
|
1313
|
+
// The same turn, so the same level: a changed one would re-write the cache.
|
|
1314
|
+
repairState.effortDecision = state.effortDecision;
|
|
1248
1315
|
let repairResult = { costUsd: 0, attemptedRehydration: repaired.attemptedRehydration };
|
|
1249
1316
|
try {
|
|
1250
1317
|
repairResult = await this.runAttempt(job, controls, repairState, repaired);
|
|
@@ -1447,22 +1514,22 @@ export class BridgeJobExecutor {
|
|
|
1447
1514
|
return { costUsd, attemptedRehydration: attempt.attemptedRehydration };
|
|
1448
1515
|
}
|
|
1449
1516
|
async finishSuccessfulAttempt(job, controls, state, costUsd) {
|
|
1450
|
-
const
|
|
1517
|
+
const usage = turnUsage(state);
|
|
1451
1518
|
if (!controls.isActive()) {
|
|
1452
1519
|
await this.clearIfDirty(job, controls, state, "abort");
|
|
1453
|
-
return { kind: "cancelled", costUsd, model: state.model,
|
|
1520
|
+
return { kind: "cancelled", costUsd, model: state.model, ...usage };
|
|
1454
1521
|
}
|
|
1455
1522
|
// No boundary is handed back, so the refused exchange never becomes part of
|
|
1456
1523
|
// the conversation the next message resumes.
|
|
1457
1524
|
if (state.refusedWithoutFallback) {
|
|
1458
|
-
return { kind: "errored", costUsd, model: state.model,
|
|
1525
|
+
return { kind: "errored", costUsd, model: state.model, ...usage, errors: [MODEL_REFUSAL_MESSAGE] };
|
|
1459
1526
|
}
|
|
1460
1527
|
if (!state.postedAssistantEvent && state.turnText.length > 0) {
|
|
1461
1528
|
await this.postSyntheticAssistantEvent(job, state);
|
|
1462
1529
|
}
|
|
1463
1530
|
if (!controls.isActive()) {
|
|
1464
1531
|
await this.clearIfDirty(job, controls, state, "abort");
|
|
1465
|
-
return { kind: "cancelled", costUsd, model: state.model,
|
|
1532
|
+
return { kind: "cancelled", costUsd, model: state.model, ...usage };
|
|
1466
1533
|
}
|
|
1467
1534
|
// A detached turn (publish) ran in a session of its own. Handing that session
|
|
1468
1535
|
// back as the thread's boundary would make the next chat message resume a
|
|
@@ -1479,7 +1546,7 @@ export class BridgeJobExecutor {
|
|
|
1479
1546
|
kind: "completed",
|
|
1480
1547
|
costUsd,
|
|
1481
1548
|
model: state.model,
|
|
1482
|
-
|
|
1549
|
+
...usage,
|
|
1483
1550
|
...(workspaceUnchanged ? { workspaceUnchanged: true } : {}),
|
|
1484
1551
|
cleanBoundary,
|
|
1485
1552
|
...(state.structuredOutput === undefined ? {} : { structuredOutput: state.structuredOutput }),
|
|
@@ -1487,7 +1554,7 @@ export class BridgeJobExecutor {
|
|
|
1487
1554
|
}
|
|
1488
1555
|
errorOutcome(job, controls, state, result, error) {
|
|
1489
1556
|
const model = state.model;
|
|
1490
|
-
const
|
|
1557
|
+
const usage = turnUsage(state);
|
|
1491
1558
|
if (result.attemptedRehydration) {
|
|
1492
1559
|
void this.relay.contextSource({ threadId: job.threadId, turnId: job.turnId }, "rehydration_failed", {
|
|
1493
1560
|
historyEntryCount: job.history?.entries.length ?? 0,
|
|
@@ -1497,7 +1564,7 @@ export class BridgeJobExecutor {
|
|
|
1497
1564
|
});
|
|
1498
1565
|
}
|
|
1499
1566
|
if (!controls.isActive()) {
|
|
1500
|
-
return { kind: "cancelled", costUsd: result.costUsd, model,
|
|
1567
|
+
return { kind: "cancelled", costUsd: result.costUsd, model, ...usage };
|
|
1501
1568
|
}
|
|
1502
1569
|
const shown = userFacingTurnError(error);
|
|
1503
1570
|
if (shown !== errorMessage(error)) {
|
|
@@ -1507,7 +1574,7 @@ export class BridgeJobExecutor {
|
|
|
1507
1574
|
kind: "errored",
|
|
1508
1575
|
costUsd: result.costUsd,
|
|
1509
1576
|
model,
|
|
1510
|
-
|
|
1577
|
+
...usage,
|
|
1511
1578
|
errors: [shown],
|
|
1512
1579
|
};
|
|
1513
1580
|
}
|
|
@@ -1782,6 +1849,12 @@ export class BridgeJobExecutor {
|
|
|
1782
1849
|
await this.alignResumedTranscript(attempt);
|
|
1783
1850
|
const mcpServers = await this.resolveMcpServers(job);
|
|
1784
1851
|
const skills = await readSessionSkills(bridgeRuntimeFiles.projectRoot());
|
|
1852
|
+
const sharedInstructions = job.review
|
|
1853
|
+
? null
|
|
1854
|
+
: await prepareSharedInstructions({
|
|
1855
|
+
projectRoot: bridgeRuntimeFiles.projectRoot(),
|
|
1856
|
+
contextDir: bridgeRuntimeFiles.instructionsDir(),
|
|
1857
|
+
});
|
|
1785
1858
|
const autoCompactWindow = autoCompactWindowForModel(model);
|
|
1786
1859
|
const betas = betasForModel(model);
|
|
1787
1860
|
// No `outputStyle`: the built-in `Concise` style was pinned here against Opus 5's
|
|
@@ -1817,6 +1890,7 @@ export class BridgeJobExecutor {
|
|
|
1817
1890
|
}
|
|
1818
1891
|
: {}),
|
|
1819
1892
|
...hookSettingsForJob(job),
|
|
1893
|
+
...instructionSettingsForJob(job, sharedInstructions),
|
|
1820
1894
|
};
|
|
1821
1895
|
const agentTags = runtimeOpenRouterTags(process.env, {
|
|
1822
1896
|
service: "agent",
|
|
@@ -1836,15 +1910,29 @@ export class BridgeJobExecutor {
|
|
|
1836
1910
|
// more per level than Opus 5, so compare `low` on real Sessions before
|
|
1837
1911
|
// treating this as tuned.
|
|
1838
1912
|
//
|
|
1839
|
-
//
|
|
1840
|
-
//
|
|
1841
|
-
//
|
|
1842
|
-
//
|
|
1843
|
-
|
|
1844
|
-
// (see `BEDROCK_SERVABLE_CAPABILITIES`); prose is no substitute.
|
|
1845
|
-
effort: "medium",
|
|
1913
|
+
// A changed top-level effort alone re-writes the cached conversation from
|
|
1914
|
+
// its first tool exchange onward. It may differ between turns only because
|
|
1915
|
+
// the CLI also restates it per message (`PER_TURN_EFFORT_CAPABILITIES`),
|
|
1916
|
+
// which keeps the cache; prose is no substitute.
|
|
1917
|
+
effort: state.effortDecision?.effort ?? DEFAULT_TURN_EFFORT,
|
|
1846
1918
|
cwd: process.cwd(),
|
|
1847
1919
|
settingSources: ["project"],
|
|
1920
|
+
// The scaffold's CLAUDE.md, minus its `@COMPANY.md` import, as the system
|
|
1921
|
+
// prompt, so every chat reads one cached copy instead of writing its own;
|
|
1922
|
+
// the import loads from `instructionsDir` (see workspace-instructions.ts).
|
|
1923
|
+
...(sharedInstructions
|
|
1924
|
+
? {
|
|
1925
|
+
systemPrompt: {
|
|
1926
|
+
type: "preset",
|
|
1927
|
+
preset: "claude_code",
|
|
1928
|
+
append: sharedInstructions.shared,
|
|
1929
|
+
// Recorded once per conversation, so a scaffold sync mid-chat cannot
|
|
1930
|
+
// move the cached prefix under it; it lands at the next compaction.
|
|
1931
|
+
snapshot: true,
|
|
1932
|
+
},
|
|
1933
|
+
additionalDirectories: [bridgeRuntimeFiles.instructionsDir()],
|
|
1934
|
+
}
|
|
1935
|
+
: {}),
|
|
1848
1936
|
// `baker_ui` hosts in-process interactive dashboard tools (secure tag
|
|
1849
1937
|
// form). Always present; HTTP (Composio) servers merge alongside it.
|
|
1850
1938
|
mcpServers: { ...(mcpServers ?? {}), baker_ui: createBakerUiServer({ credentials: credentialsEnabled() }) },
|
|
@@ -1896,6 +1984,8 @@ export class BridgeJobExecutor {
|
|
|
1896
1984
|
// they are never TTY-gated, so every help read the agent does inside
|
|
1897
1985
|
// the sandbox pays ~5-10% of its tokens on colour codes it can't see.
|
|
1898
1986
|
NO_COLOR: "1",
|
|
1987
|
+
// Loads the `CLAUDE.md` in `instructionsDir`, which imports COMPANY.md.
|
|
1988
|
+
...(sharedInstructions ? { CLAUDE_CODE_ADDITIONAL_DIRECTORIES_CLAUDE_MD: "1" } : {}),
|
|
1899
1989
|
// Pin the conversation to one OpenRouter provider instance so the
|
|
1900
1990
|
// instance-scoped prompt cache is actually re-read across the turn's
|
|
1901
1991
|
// many tool-call requests. Merged into every model request body by the
|
|
@@ -1907,8 +1997,8 @@ export class BridgeJobExecutor {
|
|
|
1907
1997
|
ANTHROPIC_CUSTOM_HEADERS: [process.env.ANTHROPIC_CUSTOM_HEADERS, anthropicCustomHeaders(agentTags.headers)]
|
|
1908
1998
|
.filter(Boolean)
|
|
1909
1999
|
.join("\n"),
|
|
1910
|
-
//
|
|
1911
|
-
[MODEL_CAPABILITIES_ENV]:
|
|
2000
|
+
// Lets a turn change effort without losing the prompt cache; see openrouter-session.ts.
|
|
2001
|
+
[MODEL_CAPABILITIES_ENV]: PER_TURN_EFFORT_CAPABILITIES,
|
|
1912
2002
|
// The turn's message sender, so in-sandbox `baker` calls can scope to the acting user.
|
|
1913
2003
|
...(job.currentSender?.userId ? { BAKER_ACTING_USER_ID: job.currentSender.userId } : {}),
|
|
1914
2004
|
...subagentModelEnv(),
|
|
@@ -1986,6 +2076,7 @@ export class BridgeJobExecutor {
|
|
|
1986
2076
|
for await (const msg of query) {
|
|
1987
2077
|
stallDetector.observeMessage(msg);
|
|
1988
2078
|
turnEnd.observeMessage(msg);
|
|
2079
|
+
state.toolResults.observe(msg);
|
|
1989
2080
|
controls.setWorkInFlight?.(stallDetector.hasPendingToolUses() || turnEnd.hasInFlightWork());
|
|
1990
2081
|
try {
|
|
1991
2082
|
costUsd = await this.consumeSdkMessage(job, controls, state, msg, costUsd);
|