maestro-agent-sdk 0.1.20 → 0.1.22
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 +62 -0
- package/dist/core/agent.d.ts +16 -1
- package/dist/core/agent.d.ts.map +1 -1
- package/dist/core/agent.js +5 -1
- package/dist/core/agent.js.map +1 -1
- package/dist/mcp/pool.d.ts +10 -1
- package/dist/mcp/pool.d.ts.map +1 -1
- package/dist/mcp/pool.js +10 -2
- package/dist/mcp/pool.js.map +1 -1
- package/dist/memory/reminder.d.ts +16 -0
- package/dist/memory/reminder.d.ts.map +1 -1
- package/dist/memory/reminder.js +14 -0
- package/dist/memory/reminder.js.map +1 -1
- package/dist/platform/version.d.ts +1 -1
- package/dist/platform/version.js +1 -1
- package/dist/provider.d.ts.map +1 -1
- package/dist/provider.js +62 -2
- package/dist/provider.js.map +1 -1
- package/dist/registry.d.ts +66 -0
- package/dist/registry.d.ts.map +1 -1
- package/dist/registry.js +77 -1
- package/dist/registry.js.map +1 -1
- package/dist/session-store.d.ts +16 -0
- package/dist/session-store.d.ts.map +1 -1
- package/dist/session-store.js +16 -0
- package/dist/session-store.js.map +1 -1
- package/dist/sub-agent/runner.d.ts.map +1 -1
- package/dist/sub-agent/runner.js +22 -6
- package/dist/sub-agent/runner.js.map +1 -1
- package/dist/tools/builtin/tool_search.d.ts +69 -0
- package/dist/tools/builtin/tool_search.d.ts.map +1 -0
- package/dist/tools/builtin/tool_search.js +190 -0
- package/dist/tools/builtin/tool_search.js.map +1 -0
- package/dist/tools/registry.d.ts +106 -1
- package/dist/tools/registry.d.ts.map +1 -1
- package/dist/tools/registry.js +144 -2
- package/dist/tools/registry.js.map +1 -1
- package/dist/types.d.ts +53 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/registry.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { unlinkSync } from "node:fs";
|
|
2
|
-
import { MODEL_DEEPSEEK_V4_FLASH, MODEL_DEEPSEEK_V4_PRO, MODEL_SONNET } from "./platform/config.js";
|
|
2
|
+
import { MODEL_DEEPSEEK_V4_FLASH, MODEL_DEEPSEEK_V4_PRO, MODEL_OPUS, MODEL_SONNET, } from "./platform/config.js";
|
|
3
3
|
import { logger } from "./platform/logger.js";
|
|
4
4
|
import { maestroSessionPath, writeMaestroRollout } from "./session-store.js";
|
|
5
5
|
import { readConversation } from "./storage/conversations.js";
|
|
@@ -28,6 +28,82 @@ const ALIAS_MAP = {
|
|
|
28
28
|
const VALID_ALIASES = new Set(Object.keys(ALIAS_MAP));
|
|
29
29
|
const VALID_FULL_IDS = new Set(Object.values(ALIAS_MAP));
|
|
30
30
|
const VALID_EFFORTS = new Set(MAESTRO_EFFORT_VALUES);
|
|
31
|
+
/**
|
|
32
|
+
* Per-model default `max_tokens` ceiling — the value the SDK ships to the
|
|
33
|
+
* provider when the caller doesn't pin `AgentQueryOptions.maxTokens` itself.
|
|
34
|
+
*
|
|
35
|
+
* v0.1.21+ replaces the previous flat 4096 fallback (which silently truncated
|
|
36
|
+
* any output > 4K — see the v0.1.20 ↔ v0.1.21 changelog for the bug it caused
|
|
37
|
+
* in long-form report generation). The new defaults are picked per-model
|
|
38
|
+
* rather than blanket because the providers diverge sharply:
|
|
39
|
+
*
|
|
40
|
+
* - **Claude** (Anthropic) caps native output at 64K (sonnet/haiku) or 128K
|
|
41
|
+
* (opus 4.7). These are realistic ceilings for actual long-form work, so
|
|
42
|
+
* the default IS the native cap — matches `@anthropic-ai/claude-agent-sdk`
|
|
43
|
+
* behavior where caller omitting `maxTokens` gets the per-model native
|
|
44
|
+
* max from the SDK's model catalog.
|
|
45
|
+
*
|
|
46
|
+
* - **DeepSeek V4** caps native output at 384K (both pro and flash). That's
|
|
47
|
+
* ~290k English words in one shot — far beyond any practical single-turn
|
|
48
|
+
* use case. Defaulting to native here would mean a single runaway turn
|
|
49
|
+
* could rack up serious cost and 30-minute+ wall time before the loop
|
|
50
|
+
* even notices. We pin a smaller default per variant:
|
|
51
|
+
* - `deepseek-v4-pro` → 65_536 (matches the Claude Sonnet / Haiku
|
|
52
|
+
* 64K reference point so a topic
|
|
53
|
+
* switching providers sees the same
|
|
54
|
+
* default ceiling)
|
|
55
|
+
* - `deepseek-v4-flash` → 32_768 (latency-tier — flash users prefer
|
|
56
|
+
* snappier responses; long outputs
|
|
57
|
+
* should escalate to pro)
|
|
58
|
+
* Callers that genuinely need the full 384K still get it via the
|
|
59
|
+
* `AgentQueryOptions.maxTokens` override — the catalog is a default,
|
|
60
|
+
* not a hard ceiling.
|
|
61
|
+
*
|
|
62
|
+
* - **Unknown model ids** fall back to `DEFAULT_MAX_OUTPUT_TOKENS` (32_768)
|
|
63
|
+
* via `getNativeMaxOutputTokens`. The fallback is sized to "comfortably
|
|
64
|
+
* covers most long-form outputs" — picking 4096 like v0.1.20 reintroduces
|
|
65
|
+
* the original silent-truncation bug for any new model the caller hasn't
|
|
66
|
+
* registered yet, so we err on the generous side. Callers running an
|
|
67
|
+
* unknown model who want to clamp output should set `maxTokens` explicitly.
|
|
68
|
+
*
|
|
69
|
+
* The catalog is read at exactly one site — `AIAgent`'s constructor in
|
|
70
|
+
* `src/core/agent.ts` — via the `getNativeMaxOutputTokens(model)` helper.
|
|
71
|
+
* Adding a new model: extend this table and the corresponding alias entry.
|
|
72
|
+
*/
|
|
73
|
+
export const MODEL_MAX_OUTPUT_TOKENS = {
|
|
74
|
+
// Anthropic — native caps. Source: platform.claude.com/docs/en/about-claude/models/overview
|
|
75
|
+
[MODEL_SONNET]: 64_000, // claude-sonnet-4-6
|
|
76
|
+
[MODEL_OPUS]: 128_000, // claude-opus-4-7
|
|
77
|
+
"claude-haiku-4-5": 64_000,
|
|
78
|
+
// DeepSeek V4 — conservative defaults below the 384K native cap (see docstring).
|
|
79
|
+
[MODEL_DEEPSEEK_V4_PRO]: 65_536,
|
|
80
|
+
[MODEL_DEEPSEEK_V4_FLASH]: 32_768,
|
|
81
|
+
};
|
|
82
|
+
/**
|
|
83
|
+
* Default `max_tokens` for an unknown model id. Sized generously (32_768)
|
|
84
|
+
* because the previous 4096 fallback silently truncated long outputs on every
|
|
85
|
+
* known model — picking that low again for unknowns would re-introduce the
|
|
86
|
+
* same class of bug for any model the catalog hasn't been updated for yet.
|
|
87
|
+
*
|
|
88
|
+
* Hosts that want to clamp an unknown model can pass `maxTokens` explicitly
|
|
89
|
+
* on `AgentQueryOptions`; the catalog is a default, not a hard ceiling.
|
|
90
|
+
*/
|
|
91
|
+
export const DEFAULT_MAX_OUTPUT_TOKENS = 32_768;
|
|
92
|
+
/**
|
|
93
|
+
* Resolve the per-API-call `max_tokens` default for a given resolved model id.
|
|
94
|
+
*
|
|
95
|
+
* Returns the catalog entry when the model is registered, or
|
|
96
|
+
* `DEFAULT_MAX_OUTPUT_TOKENS` (32_768) otherwise. Pure helper — no side
|
|
97
|
+
* effects, safe to call on every loop iteration.
|
|
98
|
+
*
|
|
99
|
+
* Used by `AIAgent` to compute its `maxTokens` default when the caller
|
|
100
|
+
* doesn't pin one via `AgentQueryOptions.maxTokens`. Exposed so hosts can
|
|
101
|
+
* surface the same number in their UI (e.g. "this run will cap at 64K
|
|
102
|
+
* output tokens") without duplicating the table.
|
|
103
|
+
*/
|
|
104
|
+
export function getNativeMaxOutputTokens(model) {
|
|
105
|
+
return MODEL_MAX_OUTPUT_TOKENS[model] ?? DEFAULT_MAX_OUTPUT_TOKENS;
|
|
106
|
+
}
|
|
31
107
|
export const maestroRegistry = {
|
|
32
108
|
kind: "maestro",
|
|
33
109
|
defaultModel: "deepseek-pro",
|
package/dist/registry.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErC,OAAO,
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"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"}
|
package/dist/session-store.d.ts
CHANGED
|
@@ -96,6 +96,19 @@ export interface MaestroSessionMeta {
|
|
|
96
96
|
* endpoint, exclusive). Combined with `parentSessionId` it tells the
|
|
97
97
|
* host exactly where the branch point was. */
|
|
98
98
|
forkedAtMessageIndex?: number;
|
|
99
|
+
/**
|
|
100
|
+
* v0.1.22+: names of deferred tools the model has promoted to active via
|
|
101
|
+
* `ToolSearch` within this session. Persisted so a subsequent resume can
|
|
102
|
+
* rehydrate the active set immediately — without this the model would
|
|
103
|
+
* have to ToolSearch the same tools again every turn-1 of every resume,
|
|
104
|
+
* burning an iteration for state the SDK already knows.
|
|
105
|
+
*
|
|
106
|
+
* Names that are no longer registered as deferred at restore time (host
|
|
107
|
+
* disabled the MCP server, renamed a tool) are silently dropped by
|
|
108
|
+
* `ToolRegistry.restoreActive`. Omitted from the meta header when empty
|
|
109
|
+
* to keep the line short for callers that don't use `enableToolSearch`.
|
|
110
|
+
*/
|
|
111
|
+
activeDeferredTools?: string[];
|
|
99
112
|
}
|
|
100
113
|
/**
|
|
101
114
|
* Load the persisted ProviderMessage[] for a sessionId, or `null` if no
|
|
@@ -133,6 +146,9 @@ export interface SaveSessionMetaInput {
|
|
|
133
146
|
parentSessionId?: string;
|
|
134
147
|
/** v0.1.18+: see `MaestroSessionMeta.forkedAtMessageIndex`. */
|
|
135
148
|
forkedAtMessageIndex?: number;
|
|
149
|
+
/** v0.1.22+: see `MaestroSessionMeta.activeDeferredTools`. Passed by
|
|
150
|
+
* `maestroProvider` on every save when `enableToolSearch` is on. */
|
|
151
|
+
activeDeferredTools?: string[];
|
|
136
152
|
}
|
|
137
153
|
/**
|
|
138
154
|
* Overwrite (or create) the persisted session file with the provided
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-store.d.ts","sourceRoot":"","sources":["../src/session-store.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AAKH,OAAO,EAEL,KAAK,QAAQ,EAGd,MAAM,yBAAyB,CAAC;AAKjC,OAAO,KAAK,EAAwB,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAE9E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAGjE;;;;;;;;;;;GAWG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,CAE3C;AAED,4DAA4D;AAC5D,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAE5D;AAED;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,kBAAkB;IACjC,sEAAsE;IACtE,OAAO,EAAE,CAAC,CAAC;IACX,+DAA+D;IAC/D,GAAG,EAAE,MAAM,CAAC;IACZ,mGAAmG;IACnG,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;+DAC2D;IAC3D,SAAS,EAAE,MAAM,CAAC;IAClB,+EAA+E;IAC/E,UAAU,EAAE,MAAM,CAAC;IACnB;;;8EAG0E;IAC1E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;0EAGsE;IACtE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;oEACgE;IAChE,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC;;;gCAG4B;IAC5B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;mDAE+C;IAC/C,oBAAoB,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"session-store.d.ts","sourceRoot":"","sources":["../src/session-store.ts"],"names":[],"mappings":"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"}
|
package/dist/session-store.js
CHANGED
|
@@ -175,6 +175,22 @@ function buildMeta(sessionId, input) {
|
|
|
175
175
|
const forkedAt = input.forkedAtMessageIndex ?? existing?.forkedAtMessageIndex;
|
|
176
176
|
if (forkedAt !== undefined)
|
|
177
177
|
meta.forkedAtMessageIndex = forkedAt;
|
|
178
|
+
// v0.1.22+: persist the ToolSearch-activated set ONLY when the caller
|
|
179
|
+
// explicitly passes it. Without the explicit branch a save that omits
|
|
180
|
+
// `activeDeferredTools` would silently inherit the previous value
|
|
181
|
+
// even if the live registry had nothing active — that's wrong because
|
|
182
|
+
// the active set is loop-owned state (no MCP servers / no flag → no
|
|
183
|
+
// active tools should be persisted). When the caller passes `[]` we
|
|
184
|
+
// drop the field entirely so the next resume sees a clean slate;
|
|
185
|
+
// when they pass a populated array we record it.
|
|
186
|
+
if (input.activeDeferredTools !== undefined) {
|
|
187
|
+
if (input.activeDeferredTools.length > 0) {
|
|
188
|
+
meta.activeDeferredTools = [...input.activeDeferredTools];
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
else if (existing?.activeDeferredTools && existing.activeDeferredTools.length > 0) {
|
|
192
|
+
meta.activeDeferredTools = existing.activeDeferredTools;
|
|
193
|
+
}
|
|
178
194
|
return meta;
|
|
179
195
|
}
|
|
180
196
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-store.js","sourceRoot":"","sources":["../src/session-store.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"session-store.js","sourceRoot":"","sources":["../src/session-store.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACtF,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EACL,cAAc,EAEd,eAAe,EACf,gBAAgB,GACjB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAEzD,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAE9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE1D;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,kBAAkB;IAChC,OAAO,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;AACpC,CAAC;AAED,4DAA4D;AAC5D,MAAM,UAAU,kBAAkB,CAAC,SAAiB;IAClD,OAAO,IAAI,CAAC,kBAAkB,EAAE,EAAE,GAAG,SAAS,QAAQ,CAAC,CAAC;AAC1D,CAAC;AA+DD,gFAAgF;AAChF,MAAM,QAAQ,GAAG,OAAO,CAAC;AAEzB,8EAA8E;AAC9E,SAAS,UAAU,CAAC,KAAc;IAChC,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACtD,MAAM,GAAG,GAAG,KAAgC,CAAC;IAC7C,MAAM,CAAC,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAC;IACxB,OAAO,OAAO,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAK,CAA6B,CAAC,OAAO,KAAK,CAAC,CAAC;AAC7F,CAAC;AAED,oEAAoE;AACpE,SAAS,YAAY,CAAC,IAAY;IAChC,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,kBAAkB,CAAC,SAAiB;IAClD,MAAM,IAAI,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;IAC3C,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IACnC,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACvC,MAAM,KAAK,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACrD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QAClC,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACrC,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3C,MAAM,GAAG,GAAsB,EAAE,CAAC;QAClC,KAAK,IAAI,CAAC,GAAG,QAAQ,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC7C,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YACtC,IAAI,MAAM,KAAK,IAAI;gBAAE,GAAG,CAAC,IAAI,CAAC,MAAyB,CAAC,CAAC;QAC3D,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,IAAI,CACT,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,EACxB,+DAA+D,CAChE,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,sBAAsB,CAAC,SAAiB;IACtD,MAAM,IAAI,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;IAC3C,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IACnC,IAAI,CAAC;QACH,wEAAwE;QACxE,yEAAyE;QACzE,yEAAyE;QACzE,MAAM,GAAG,GAAG,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACvC,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAClC,MAAM,SAAS,GAAG,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;QAC7D,MAAM,MAAM,GAAG,YAAY,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;QAC9C,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;YAAE,OAAO,IAAI,CAAC;QACrC,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC1B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,2CAA2C,CAAC,CAAC;QACnF,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAwBD;;;;;;GAMG;AACH,SAAS,SAAS,CAAC,SAAiB,EAAE,KAA2B;IAC/D,MAAM,QAAQ,GAAG,sBAAsB,CAAC,SAAS,CAAC,CAAC;IACnD,MAAM,IAAI,GAAuB;QAC/B,OAAO,EAAE,CAAC;QACV,GAAG,EAAE,KAAK,CAAC,GAAG,IAAI,QAAQ,EAAE,GAAG,IAAI,EAAE;QACrC,SAAS,EAAE,QAAQ,EAAE,SAAS,IAAI,KAAK,CAAC,SAAS,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QAC7E,UAAU,EAAE,mBAAmB;KAChC,CAAC;IACF,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,IAAI,QAAQ,EAAE,MAAM,CAAC;IAChD,IAAI,MAAM,KAAK,SAAS;QAAE,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IAC/C,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,IAAI,QAAQ,EAAE,SAAS,CAAC;IACzD,IAAI,SAAS,KAAK,SAAS;QAAE,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IACxD,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,IAAI,QAAQ,EAAE,QAAQ,CAAC;IACtD,IAAI,QAAQ,KAAK,SAAS;QAAE,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IACrD,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,IAAI,QAAQ,EAAE,QAAQ,CAAC;IACtD,IAAI,QAAQ,KAAK,SAAS;QAAE,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IACrD,MAAM,eAAe,GAAG,KAAK,CAAC,eAAe,IAAI,QAAQ,EAAE,eAAe,CAAC;IAC3E,IAAI,eAAe,KAAK,SAAS;QAAE,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;IAC1E,MAAM,QAAQ,GAAG,KAAK,CAAC,oBAAoB,IAAI,QAAQ,EAAE,oBAAoB,CAAC;IAC9E,IAAI,QAAQ,KAAK,SAAS;QAAE,IAAI,CAAC,oBAAoB,GAAG,QAAQ,CAAC;IACjE,sEAAsE;IACtE,sEAAsE;IACtE,kEAAkE;IAClE,sEAAsE;IACtE,oEAAoE;IACpE,oEAAoE;IACpE,iEAAiE;IACjE,iDAAiD;IACjD,IAAI,KAAK,CAAC,mBAAmB,KAAK,SAAS,EAAE,CAAC;QAC5C,IAAI,KAAK,CAAC,mBAAmB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzC,IAAI,CAAC,mBAAmB,GAAG,CAAC,GAAG,KAAK,CAAC,mBAAmB,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;SAAM,IAAI,QAAQ,EAAE,mBAAmB,IAAI,QAAQ,CAAC,mBAAmB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpF,IAAI,CAAC,mBAAmB,GAAG,QAAQ,CAAC,mBAAmB,CAAC;IAC1D,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,kBAAkB,CAChC,SAAiB,EACjB,QAA2B,EAC3B,IAA2B;IAE3B,cAAc,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;IACvC,MAAM,QAAQ,GAAG,sBAAsB,CAAC,SAAS,CAAC,CAAC;IACnD,uEAAuE;IACvE,wEAAwE;IACxE,mEAAmE;IACnE,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QACvB,cAAc,CAAC,kBAAkB,CAAC,SAAS,CAAC,EAAE,QAAQ,CAAC,CAAC;QACxD,OAAO;IACT,CAAC;IACD,MAAM,KAAK,GAAG,SAAS,CAAC,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;IAC/C,MAAM,KAAK,GAAc,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,EAAE,GAAG,QAAQ,CAAC,CAAC;IAC9D,cAAc,CAAC,kBAAkB,CAAC,SAAS,CAAC,EAAE,KAAK,CAAC,CAAC;AACvD,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAAC,SAAiB;IACpD,IAAI,CAAC;QACH,UAAU,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAAC;IAC5C,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IAAK,CAA2B,EAAE,IAAI,KAAK,QAAQ,EAAE,CAAC;YACpD,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,kDAAkD,CAAC,CAAC;YACvF,uEAAuE;YACvE,oBAAoB,CAAC,SAAS,CAAC,CAAC;YAChC,aAAa,CAAC,SAAS,CAAC,CAAC;YACzB,MAAM,CAAC,CAAC;QACV,CAAC;IACH,CAAC;IACD,oBAAoB,CAAC,SAAS,CAAC,CAAC;IAChC,0EAA0E;IAC1E,mEAAmE;IACnE,aAAa,CAAC,SAAS,CAAC,CAAC;AAC3B,CAAC;AAyCD;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,aAAa,CAAC,IAA0B;IACtD,IAAI,IAAI,CAAC,YAAY,GAAG,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,iDAAiD,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;IACxF,CAAC;IACD,MAAM,cAAc,GAAG,kBAAkB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAChE,IAAI,cAAc,KAAK,IAAI,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CAAC,4CAA4C,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC;IACtF,CAAC;IACD,IAAI,IAAI,CAAC,YAAY,GAAG,cAAc,CAAC,MAAM,EAAE,CAAC;QAC9C,MAAM,IAAI,KAAK,CACb,+BAA+B,IAAI,CAAC,YAAY,0BAA0B,cAAc,CAAC,MAAM,EAAE,CAClG,CAAC;IACJ,CAAC;IACD,MAAM,UAAU,GAAG,sBAAsB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAChE,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,IAAI,UAAU,EAAE,CAAC;IACvD,cAAc,CAAC,cAAc,EAAE,YAAY,CAAC,CAAC;IAC7C,IAAI,YAAY,KAAK,IAAI,CAAC,eAAe,EAAE,CAAC;QAC1C,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;IAClF,CAAC;IACD,iEAAiE;IACjE,8DAA8D;IAC9D,MAAM,MAAM,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;IAC1D,MAAM,OAAO,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAEzC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,UAAU,EAAE,GAAG,IAAI,EAAE,CAAC;IAC9C,eAAe,CAAC,GAAG,CAAC,CAAC;IACrB,MAAM,SAAS,GAAyB;QACtC,GAAG;QACH,eAAe,EAAE,IAAI,CAAC,eAAe;QACrC,oBAAoB,EAAE,OAAO,CAAC,MAAM;KACrC,CAAC;IACF,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,UAAU,EAAE,MAAM,CAAC;IACjD,IAAI,MAAM,KAAK,SAAS;QAAE,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC;IACpD,IAAI,UAAU,EAAE,SAAS,KAAK,SAAS;QAAE,SAAS,CAAC,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC;IACpF,IAAI,UAAU,EAAE,QAAQ,KAAK,SAAS;QAAE,SAAS,CAAC,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC;IACjF,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QAChC,SAAS,CAAC,QAAQ,GAAG,EAAE,GAAG,CAAC,UAAU,EAAE,QAAQ,IAAI,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;IAC7E,CAAC;SAAM,IAAI,UAAU,EAAE,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC9C,SAAS,CAAC,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC;IAC3C,CAAC;IACD,MAAM,IAAI,GAAG,SAAS,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;IAChD,MAAM,IAAI,GAAG,kBAAkB,CAAC,YAAY,CAAC,CAAC;IAC9C,cAAc,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC;IACzD,MAAM,CAAC,IAAI,CACT;QACE,eAAe,EAAE,IAAI,CAAC,eAAe;QACrC,YAAY;QACZ,cAAc,EAAE,IAAI,CAAC,YAAY;QACjC,YAAY,EAAE,OAAO,CAAC,MAAM;KAC7B,EACD,+BAA+B,CAChC,CAAC;IACF,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,WAAW,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC;AACzF,CAAC;AAED;;;;;;;;;GASG;AACH,SAAS,eAAe,CAAC,KAAiB;IACxC,MAAM,GAAG,GAAsB,EAAE,CAAC;IAClC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;QACnD,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;IAC/D,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAwBD;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAA2B;IAC7D,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,UAAU,EAAE,CAAC;IACjD,cAAc,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;IACvC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC1B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,gBAAgB,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;IACjE,MAAM,QAAQ,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;IACxC,MAAM,IAAI,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;IAC3C,MAAM,SAAS,GAAyB,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IAC1D,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS;QAAE,SAAS,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;IAC9D,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS;QAAE,SAAS,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;IACpE,MAAM,IAAI,GAAG,SAAS,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IAC7C,cAAc,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC;IAC1D,MAAM,CAAC,IAAI,CACT,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,EAAE,EACxC,+CAA+C,CAChD,CAAC;IACF,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;AAC1C,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAAc;IAChD,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACtD,MAAM,GAAG,GAAG,KAAgC,CAAC;IAC7C,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,IAAI,GAAG,CAAC,IAAI,KAAK,WAAW;QAAE,OAAO,KAAK,CAAC;IAClE,IAAI,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IACjD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;QAAE,OAAO,KAAK,CAAC;IAC9C,OAAO,GAAG,CAAC,OAAO,CAAC,KAAK,CACtB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,OAAQ,CAA0B,CAAC,IAAI,KAAK,QAAQ,CAC1F,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,gBAAgB,CAAC,QAA2B;IAC1D,IAAI,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC;IAC1B,OAAO,GAAG,GAAG,CAAC,EAAE,CAAC;QACf,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;QAC/B,0DAA0D;QAC1D,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC7D,GAAG,EAAE,CAAC;YACN,SAAS;QACX,CAAC;QACD,mEAAmE;QACnE,oEAAoE;QACpE,kCAAkC;QAClC,EAAE;QACF,qEAAqE;QACrE,uEAAuE;QACvE,qEAAqE;QACrE,gEAAgE;QAChE,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YAC7D,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAE,CAA0B,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC;YAC7F,IAAI,UAAU,EAAE,CAAC;gBACf,GAAG,EAAE,CAAC;gBACN,SAAS;YACX,CAAC;QACH,CAAC;QACD,oEAAoE;QACpE,oEAAoE;QACpE,8BAA8B;QAC9B,MAAM;IACR,CAAC;IACD,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;AAChC,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAEvE;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,2BAA2B,CAAC,WAAmB,8BAA8B;IAI3F,MAAM,GAAG,GAAG,kBAAkB,EAAE,CAAC;IACjC,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,IAAI,OAAiB,CAAC;IACtB,IAAI,CAAC;QACH,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,yEAAyE;QACzE,sBAAsB;QACtB,IAAK,CAA2B,EAAE,IAAI,KAAK,QAAQ,EAAE,CAAC;YACpD,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;QACpC,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,6CAA6C,CAAC,CAAC;QAC5E,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;IACpC,CAAC;IACD,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,CAAC;IACrC,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;QAC3B,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;YAAE,SAAS;QACvC,OAAO,EAAE,CAAC;QACV,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAC7B,wEAAwE;QACxE,oEAAoE;QACpE,uEAAuE;QACvE,gBAAgB;QAChB,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAClD,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC5B,IAAI,IAAI,CAAC,OAAO,IAAI,MAAM;gBAAE,SAAS;YACrC,UAAU,CAAC,IAAI,CAAC,CAAC;YACjB,OAAO,EAAE,CAAC;YACV,oBAAoB,CAAC,SAAS,CAAC,CAAC;YAChC,2EAA2E;YAC3E,aAAa,CAAC,SAAS,CAAC,CAAC;QAC3B,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAK,CAA2B,EAAE,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACpD,MAAM,CAAC,IAAI,CACT,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,EAChB,kEAAkE,CACnE,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,oDAAoD;gBACpD,oBAAoB,CAAC,SAAS,CAAC,CAAC;gBAChC,aAAa,CAAC,SAAS,CAAC,CAAC;YAC3B,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;AAC9B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../src/sub-agent/runner.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../src/sub-agent/runner.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,gBAAgB,EAAE,KAAK,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAYpE,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAEvD;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,SAAS,GAAG,MAAM,CAAC;AAE1D,MAAM,WAAW,kBAAkB;IACjC,YAAY,EAAE,YAAY,CAAC;IAC3B;mBACe;IACf,MAAM,EAAE,MAAM,CAAC;IACf;2DACuD;IACvD,eAAe,EAAE,MAAM,CAAC;IACxB;4DACwD;IACxD,kBAAkB,EAAE,MAAM,CAAC;IAC3B,iEAAiE;IACjE,WAAW,EAAE,MAAM,CAAC;IACpB;yDACqD;IACrD,YAAY,CAAC,EAAE,WAAW,CAAC;IAC3B;+CAC2C;IAC3C,iBAAiB,CAAC,EAAE,WAAW,CAAC;IAChC,0DAA0D;IAC1D,MAAM,EAAE,UAAU,EAAE,CAAC;CACtB;AAED,MAAM,WAAW,iBAAiB;IAChC;4CACwC;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,kEAAkE;IAClE,KAAK,EAAE,UAAU,CAAC;IAClB;yEACqE;IACrE,YAAY,EAAE,MAAM,CAAC;IACrB,+DAA+D;IAC/D,OAAO,EAAE,OAAO,CAAC;CAClB;AA+GD;;;;;;;;;;;GAWG;AACH,wBAAsB,WAAW,CAAC,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CA+GtF;AAED;6CAC6C;AAC7C,OAAO,EAAE,gBAAgB,EAAE,CAAC"}
|
package/dist/sub-agent/runner.js
CHANGED
|
@@ -9,6 +9,7 @@ import { buildSystemReminder } from "../memory/reminder.js";
|
|
|
9
9
|
import { logger } from "../platform/logger.js";
|
|
10
10
|
import { providerForModel } from "../provider.js";
|
|
11
11
|
import { effortToThinkingBudget } from "../providers/anthropic.js";
|
|
12
|
+
import { getNativeMaxOutputTokens } from "../registry.js";
|
|
12
13
|
import { deleteMaestroSession } from "../session-store.js";
|
|
13
14
|
import { loadSkillsCached } from "../skills/loader.js";
|
|
14
15
|
import { createBashTool } from "../tools/builtin/bash.js";
|
|
@@ -22,17 +23,32 @@ import { webFetchTool } from "../tools/builtin/web_fetch.js";
|
|
|
22
23
|
import { createWriteTool } from "../tools/builtin/write.js";
|
|
23
24
|
import { getFileStateTracker } from "../tools/file-state.js";
|
|
24
25
|
import { ToolRegistry } from "../tools/registry.js";
|
|
25
|
-
/**
|
|
26
|
-
*
|
|
27
|
-
*
|
|
28
|
-
|
|
26
|
+
/**
|
|
27
|
+
* Hard cap on the sub-agent's per-API-call max output tokens.
|
|
28
|
+
*
|
|
29
|
+
* Resolution order (v0.1.21+):
|
|
30
|
+
* 1. `MAESTRO_SUBAGENT_MAX_TOKENS` env var — operator escape hatch for
|
|
31
|
+
* a globally-larger or globally-smaller cap without touching code.
|
|
32
|
+
* Parsed as a positive integer; non-numeric or non-positive values
|
|
33
|
+
* are ignored.
|
|
34
|
+
* 2. `getNativeMaxOutputTokens(parentModel)` — the registry catalog
|
|
35
|
+
* default (sonnet=64K, opus=128K, deepseek-pro=32K, deepseek-flash=16K,
|
|
36
|
+
* unknown=32K). Matches the parent's default in `AIAgent`.
|
|
37
|
+
*
|
|
38
|
+
* The previous v0.1.20 implementation returned 4096 when the env var was
|
|
39
|
+
* unset, which silently truncated long delegated reports the same way the
|
|
40
|
+
* top-level loop did. Switching to the catalog mirrors the parent's
|
|
41
|
+
* v0.1.21 default so a sub-agent never has a lower output ceiling than
|
|
42
|
+
* its parent simply because it didn't read the env var.
|
|
43
|
+
*/
|
|
44
|
+
function resolveMaxTokens(parentModel) {
|
|
29
45
|
const env = process.env.MAESTRO_SUBAGENT_MAX_TOKENS;
|
|
30
46
|
if (env) {
|
|
31
47
|
const n = Number.parseInt(env, 10);
|
|
32
48
|
if (Number.isFinite(n) && n > 0)
|
|
33
49
|
return n;
|
|
34
50
|
}
|
|
35
|
-
return
|
|
51
|
+
return getNativeMaxOutputTokens(parentModel);
|
|
36
52
|
}
|
|
37
53
|
/** Where the sub-agent overlay prompts live on disk. Co-located with the
|
|
38
54
|
* other prompt resources under `src/prompts/`. Resolved via `fileURLToPath`
|
|
@@ -133,7 +149,7 @@ export async function runSubAgent(opts) {
|
|
|
133
149
|
const tools = buildToolRegistry(opts.subagentType, subSessionId, opts.skills, opts.parentAbortSignal);
|
|
134
150
|
const overlay = loadOverlay(opts.subagentType);
|
|
135
151
|
const systemPrompt = `${opts.parentSystemPrompt}\n\n${overlay}`;
|
|
136
|
-
const maxTokens = resolveMaxTokens();
|
|
152
|
+
const maxTokens = resolveMaxTokens(opts.parentModel);
|
|
137
153
|
const thinkingBudget = opts.parentEffort ? effortToThinkingBudget(opts.parentEffort) : undefined;
|
|
138
154
|
// Sub-agent's user message follows the parent contract: prompt + own
|
|
139
155
|
// system reminder. The reminder reflects the SUB-SESSION's state
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/sub-agent/runner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAE/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAmB,MAAM,iBAAiB,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAkEhD
|
|
1
|
+
{"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/sub-agent/runner.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import type { ToolHandler, ToolRegistry } from "../../tools/registry.js";
|
|
2
|
+
/**
|
|
3
|
+
* ToolSearch — claude-SDK-style deferred-tool activation.
|
|
4
|
+
*
|
|
5
|
+
* v0.1.22+ ships maestro with a two-tier tool surface:
|
|
6
|
+
*
|
|
7
|
+
* - **Always-loaded tools** — built-ins like Read/Write/Bash/Grep ride
|
|
8
|
+
* every wire body unconditionally. Their schemas live in the prompt
|
|
9
|
+
* cache prefix and the model can call them at any time.
|
|
10
|
+
*
|
|
11
|
+
* - **Deferred tools** — typically MCP tools registered via the pool
|
|
12
|
+
* (auto-defer when `AgentQueryOptions.enableToolSearch` is set).
|
|
13
|
+
* They show up in the system-reminder as `name + 60-char summary`
|
|
14
|
+
* but their full JSON Schema is NOT shipped on the wire. The model
|
|
15
|
+
* learns they exist from the catalog but can't call them yet.
|
|
16
|
+
*
|
|
17
|
+
* `ToolSearch` is the bridge: the model invokes it with either an exact
|
|
18
|
+
* name list ("select:Foo,Bar") or a keyword query, the registry promotes
|
|
19
|
+
* the matched deferred tools to active, and from the NEXT turn onward
|
|
20
|
+
* their schemas ride the wire — the model can call them like any other
|
|
21
|
+
* tool.
|
|
22
|
+
*
|
|
23
|
+
* ## Why both modes exist
|
|
24
|
+
*
|
|
25
|
+
* - **`select:` mode** — used when the model already knows the exact
|
|
26
|
+
* tool name from the catalog (one line per tool name in the reminder).
|
|
27
|
+
* Deterministic: each comma-separated name is looked up verbatim;
|
|
28
|
+
* no fuzzy matching that could promote the wrong tool.
|
|
29
|
+
*
|
|
30
|
+
* - **Keyword mode** — used when the model knows what it wants to do
|
|
31
|
+
* ("upload a file to Google Drive") but doesn't remember the exact
|
|
32
|
+
* tool name. Substring-matches the query against both name and
|
|
33
|
+
* description, case-insensitive, returns the top N by relevance.
|
|
34
|
+
*
|
|
35
|
+
* Two modes also map to two distinct claude-SDK behaviors documented in
|
|
36
|
+
* the ToolSearch system reminders shipped in Claude Code conversations —
|
|
37
|
+
* keeping behavioral parity means a model trained on those transcripts
|
|
38
|
+
* uses the right mode without prompting tricks.
|
|
39
|
+
*
|
|
40
|
+
* ## Response shape
|
|
41
|
+
*
|
|
42
|
+
* Returns a plain-text response listing each requested name and one of:
|
|
43
|
+
*
|
|
44
|
+
* - `OK` — promoted from deferred → active. Schema follows so the model
|
|
45
|
+
* can call it next turn even without re-reading the catalog. The
|
|
46
|
+
* surrounding format mirrors claude-SDK's `<functions>{...}</functions>`
|
|
47
|
+
* wrapper so model parsing instincts trained on Claude Code transcripts
|
|
48
|
+
* transfer cleanly.
|
|
49
|
+
* - `ALREADY_ACTIVE` — was already promoted earlier this session. No-op,
|
|
50
|
+
* model can call directly.
|
|
51
|
+
* - `NOT_FOUND` — name not registered as deferred (or not registered at
|
|
52
|
+
* all). Doesn't error the call — model retries with a different name
|
|
53
|
+
* or keyword.
|
|
54
|
+
*
|
|
55
|
+
* Plain text instead of JSON is deliberate: the schema dump itself is
|
|
56
|
+
* already JSON-flavored and wrapping it in another JSON layer just adds
|
|
57
|
+
* escaping noise the model has to parse through.
|
|
58
|
+
*
|
|
59
|
+
* ## Always-loaded
|
|
60
|
+
*
|
|
61
|
+
* ToolSearch itself is never deferred — it has to be available for the
|
|
62
|
+
* model to discover anything else. Registered as a plain `tools.register(t)`
|
|
63
|
+
* in `provider.ts` whenever `enableToolSearch` is true.
|
|
64
|
+
*/
|
|
65
|
+
export declare const TOOL_SEARCH_NAME: "ToolSearch";
|
|
66
|
+
export declare function createToolSearchTool(opts: {
|
|
67
|
+
registry: ToolRegistry;
|
|
68
|
+
}): ToolHandler;
|
|
69
|
+
//# sourceMappingURL=tool_search.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tool_search.d.ts","sourceRoot":"","sources":["../../../src/tools/builtin/tool_search.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAElE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8DG;AACH,eAAO,MAAM,gBAAgB,EAAG,YAAqB,CAAC;AAYtD,wBAAgB,oBAAoB,CAAC,IAAI,EAAE;IAAE,QAAQ,EAAE,YAAY,CAAA;CAAE,GAAG,WAAW,CAsFlF"}
|
|
@@ -0,0 +1,190 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ToolSearch — claude-SDK-style deferred-tool activation.
|
|
3
|
+
*
|
|
4
|
+
* v0.1.22+ ships maestro with a two-tier tool surface:
|
|
5
|
+
*
|
|
6
|
+
* - **Always-loaded tools** — built-ins like Read/Write/Bash/Grep ride
|
|
7
|
+
* every wire body unconditionally. Their schemas live in the prompt
|
|
8
|
+
* cache prefix and the model can call them at any time.
|
|
9
|
+
*
|
|
10
|
+
* - **Deferred tools** — typically MCP tools registered via the pool
|
|
11
|
+
* (auto-defer when `AgentQueryOptions.enableToolSearch` is set).
|
|
12
|
+
* They show up in the system-reminder as `name + 60-char summary`
|
|
13
|
+
* but their full JSON Schema is NOT shipped on the wire. The model
|
|
14
|
+
* learns they exist from the catalog but can't call them yet.
|
|
15
|
+
*
|
|
16
|
+
* `ToolSearch` is the bridge: the model invokes it with either an exact
|
|
17
|
+
* name list ("select:Foo,Bar") or a keyword query, the registry promotes
|
|
18
|
+
* the matched deferred tools to active, and from the NEXT turn onward
|
|
19
|
+
* their schemas ride the wire — the model can call them like any other
|
|
20
|
+
* tool.
|
|
21
|
+
*
|
|
22
|
+
* ## Why both modes exist
|
|
23
|
+
*
|
|
24
|
+
* - **`select:` mode** — used when the model already knows the exact
|
|
25
|
+
* tool name from the catalog (one line per tool name in the reminder).
|
|
26
|
+
* Deterministic: each comma-separated name is looked up verbatim;
|
|
27
|
+
* no fuzzy matching that could promote the wrong tool.
|
|
28
|
+
*
|
|
29
|
+
* - **Keyword mode** — used when the model knows what it wants to do
|
|
30
|
+
* ("upload a file to Google Drive") but doesn't remember the exact
|
|
31
|
+
* tool name. Substring-matches the query against both name and
|
|
32
|
+
* description, case-insensitive, returns the top N by relevance.
|
|
33
|
+
*
|
|
34
|
+
* Two modes also map to two distinct claude-SDK behaviors documented in
|
|
35
|
+
* the ToolSearch system reminders shipped in Claude Code conversations —
|
|
36
|
+
* keeping behavioral parity means a model trained on those transcripts
|
|
37
|
+
* uses the right mode without prompting tricks.
|
|
38
|
+
*
|
|
39
|
+
* ## Response shape
|
|
40
|
+
*
|
|
41
|
+
* Returns a plain-text response listing each requested name and one of:
|
|
42
|
+
*
|
|
43
|
+
* - `OK` — promoted from deferred → active. Schema follows so the model
|
|
44
|
+
* can call it next turn even without re-reading the catalog. The
|
|
45
|
+
* surrounding format mirrors claude-SDK's `<functions>{...}</functions>`
|
|
46
|
+
* wrapper so model parsing instincts trained on Claude Code transcripts
|
|
47
|
+
* transfer cleanly.
|
|
48
|
+
* - `ALREADY_ACTIVE` — was already promoted earlier this session. No-op,
|
|
49
|
+
* model can call directly.
|
|
50
|
+
* - `NOT_FOUND` — name not registered as deferred (or not registered at
|
|
51
|
+
* all). Doesn't error the call — model retries with a different name
|
|
52
|
+
* or keyword.
|
|
53
|
+
*
|
|
54
|
+
* Plain text instead of JSON is deliberate: the schema dump itself is
|
|
55
|
+
* already JSON-flavored and wrapping it in another JSON layer just adds
|
|
56
|
+
* escaping noise the model has to parse through.
|
|
57
|
+
*
|
|
58
|
+
* ## Always-loaded
|
|
59
|
+
*
|
|
60
|
+
* ToolSearch itself is never deferred — it has to be available for the
|
|
61
|
+
* model to discover anything else. Registered as a plain `tools.register(t)`
|
|
62
|
+
* in `provider.ts` whenever `enableToolSearch` is true.
|
|
63
|
+
*/
|
|
64
|
+
export const TOOL_SEARCH_NAME = "ToolSearch";
|
|
65
|
+
/**
|
|
66
|
+
* Bound the keyword-mode result size. 5 matches the system-reminder's
|
|
67
|
+
* catalog density: pulling more than ~5 tools into active per turn defeats
|
|
68
|
+
* the budget-tightening purpose of deferral. Callers can raise via
|
|
69
|
+
* `max_results` input if they really want more, capped at 25 (above which
|
|
70
|
+
* the result text gets unwieldy for the model to parse).
|
|
71
|
+
*/
|
|
72
|
+
const DEFAULT_MAX_RESULTS = 5;
|
|
73
|
+
const MAX_MAX_RESULTS = 25;
|
|
74
|
+
export function createToolSearchTool(opts) {
|
|
75
|
+
const { registry } = opts;
|
|
76
|
+
return {
|
|
77
|
+
parallelSafe: true,
|
|
78
|
+
schema: {
|
|
79
|
+
name: TOOL_SEARCH_NAME,
|
|
80
|
+
description: "Activate one or more deferred tools so you can call them on subsequent turns. " +
|
|
81
|
+
"Deferred tools are listed by name+summary in the system-reminder; their full " +
|
|
82
|
+
"schema is only sent on the wire after you ToolSearch for them. " +
|
|
83
|
+
"Two query forms: 'select:Name1,Name2,...' for exact name selection (use this " +
|
|
84
|
+
"when you already know the tool name from the catalog), or any other string " +
|
|
85
|
+
"treated as a keyword search across deferred tool names + descriptions. " +
|
|
86
|
+
"Returns one OK/ALREADY_ACTIVE/NOT_FOUND line per requested name plus the " +
|
|
87
|
+
"activated tool schemas so you can call them immediately on the next turn. " +
|
|
88
|
+
"ToolSearch is always available — you do not need to activate it.",
|
|
89
|
+
input_schema: {
|
|
90
|
+
type: "object",
|
|
91
|
+
properties: {
|
|
92
|
+
query: {
|
|
93
|
+
type: "string",
|
|
94
|
+
description: "Either 'select:Name1,Name2,...' for exact selection or a keyword query.",
|
|
95
|
+
},
|
|
96
|
+
max_results: {
|
|
97
|
+
type: "number",
|
|
98
|
+
description: "Maximum number of matches returned in keyword mode. Default 5, max 25. " +
|
|
99
|
+
"Ignored in 'select:' mode (every named tool is processed).",
|
|
100
|
+
},
|
|
101
|
+
},
|
|
102
|
+
required: ["query"],
|
|
103
|
+
},
|
|
104
|
+
},
|
|
105
|
+
async execute(input) {
|
|
106
|
+
const queryRaw = typeof input.query === "string" ? input.query : "";
|
|
107
|
+
const query = queryRaw.trim();
|
|
108
|
+
if (query.length === 0) {
|
|
109
|
+
return JSON.stringify({ error: "ToolSearch: query is required and must be non-empty" });
|
|
110
|
+
}
|
|
111
|
+
const rawMax = typeof input.max_results === "number" ? input.max_results : DEFAULT_MAX_RESULTS;
|
|
112
|
+
const maxResults = Math.max(1, Math.min(MAX_MAX_RESULTS, Math.floor(rawMax)));
|
|
113
|
+
if (query.startsWith("select:")) {
|
|
114
|
+
const names = query
|
|
115
|
+
.slice("select:".length)
|
|
116
|
+
.split(",")
|
|
117
|
+
.map((s) => s.trim())
|
|
118
|
+
.filter((s) => s.length > 0);
|
|
119
|
+
if (names.length === 0) {
|
|
120
|
+
return JSON.stringify({
|
|
121
|
+
error: "ToolSearch: 'select:' query must list at least one comma-separated name",
|
|
122
|
+
});
|
|
123
|
+
}
|
|
124
|
+
return renderActivationResult(registry, names);
|
|
125
|
+
}
|
|
126
|
+
// Keyword mode: substring-match the query against deferred tool name +
|
|
127
|
+
// description (case-insensitive). Score = name match (higher weight) +
|
|
128
|
+
// description match. Stable sort: ties resolve by registration order
|
|
129
|
+
// (catalog order) so the response is deterministic.
|
|
130
|
+
const catalog = registry.deferredCatalog();
|
|
131
|
+
const lowered = query.toLowerCase();
|
|
132
|
+
const scored = [];
|
|
133
|
+
catalog.forEach((entry, idx) => {
|
|
134
|
+
const nameMatch = entry.name.toLowerCase().includes(lowered);
|
|
135
|
+
const descMatch = entry.summary.toLowerCase().includes(lowered);
|
|
136
|
+
if (!nameMatch && !descMatch)
|
|
137
|
+
return;
|
|
138
|
+
// Name match weighted 2x because that's the field the model
|
|
139
|
+
// referenced when it typed the keyword (descriptions are
|
|
140
|
+
// surfaced for ambiguous cases).
|
|
141
|
+
const score = (nameMatch ? 2 : 0) + (descMatch ? 1 : 0);
|
|
142
|
+
scored.push({ name: entry.name, score, order: idx });
|
|
143
|
+
});
|
|
144
|
+
scored.sort((a, b) => b.score - a.score || a.order - b.order);
|
|
145
|
+
const picked = scored.slice(0, maxResults).map((s) => s.name);
|
|
146
|
+
if (picked.length === 0) {
|
|
147
|
+
return (`ToolSearch: no deferred tools match keyword "${query}". ` +
|
|
148
|
+
`Try 'select:ExactName' from the deferred-catalog section of the system-reminder, ` +
|
|
149
|
+
`or refine the keyword.`);
|
|
150
|
+
}
|
|
151
|
+
return renderActivationResult(registry, picked);
|
|
152
|
+
},
|
|
153
|
+
};
|
|
154
|
+
}
|
|
155
|
+
/**
|
|
156
|
+
* Run a list of requested names through the registry's activation surface
|
|
157
|
+
* and render the per-name status + activated schemas as a model-friendly
|
|
158
|
+
* text block.
|
|
159
|
+
*
|
|
160
|
+
* The schemas are emitted in claude-SDK's `<functions>{...}</functions>`
|
|
161
|
+
* wrapper because that's the format the model's pretrained Claude Code
|
|
162
|
+
* transcripts use when ToolSearch surfaces a new tool — keeping the same
|
|
163
|
+
* envelope means the model recognizes the activation pattern without us
|
|
164
|
+
* having to reinvent another shape.
|
|
165
|
+
*/
|
|
166
|
+
function renderActivationResult(registry, names) {
|
|
167
|
+
const statusLines = [];
|
|
168
|
+
const schemaBlocks = [];
|
|
169
|
+
for (const name of names) {
|
|
170
|
+
const schema = registry.schemaFor(name);
|
|
171
|
+
if (!schema) {
|
|
172
|
+
statusLines.push(`- ${name}: NOT_FOUND`);
|
|
173
|
+
continue;
|
|
174
|
+
}
|
|
175
|
+
const promoted = registry.markActive(name);
|
|
176
|
+
if (promoted) {
|
|
177
|
+
statusLines.push(`- ${name}: OK`);
|
|
178
|
+
schemaBlocks.push(`<function>${JSON.stringify(schema)}</function>`);
|
|
179
|
+
}
|
|
180
|
+
else {
|
|
181
|
+
statusLines.push(`- ${name}: ALREADY_ACTIVE`);
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
const head = statusLines.join("\n");
|
|
185
|
+
if (schemaBlocks.length === 0) {
|
|
186
|
+
return `${head}\n\n(no schemas attached — every requested name was already active or not found)`;
|
|
187
|
+
}
|
|
188
|
+
return `${head}\n\n<functions>\n${schemaBlocks.join("\n")}\n</functions>`;
|
|
189
|
+
}
|
|
190
|
+
//# sourceMappingURL=tool_search.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tool_search.js","sourceRoot":"","sources":["../../../src/tools/builtin/tool_search.ts"],"names":[],"mappings":"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"}
|