@cat-factory/agents 0.78.0 → 0.80.0

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.
Files changed (38) hide show
  1. package/dist/agents/kinds/capabilities.d.ts +76 -0
  2. package/dist/agents/kinds/capabilities.d.ts.map +1 -0
  3. package/dist/agents/kinds/capabilities.js +77 -0
  4. package/dist/agents/kinds/capabilities.js.map +1 -0
  5. package/dist/agents/kinds/registry.d.ts +72 -1
  6. package/dist/agents/kinds/registry.d.ts.map +1 -1
  7. package/dist/agents/kinds/registry.js +94 -0
  8. package/dist/agents/kinds/registry.js.map +1 -1
  9. package/dist/agents/kinds/skill.js +1 -1
  10. package/dist/agents/kinds/skill.js.map +1 -1
  11. package/dist/agents/prompts/capabilities.d.ts +21 -0
  12. package/dist/agents/prompts/capabilities.d.ts.map +1 -0
  13. package/dist/agents/prompts/capabilities.js +55 -0
  14. package/dist/agents/prompts/capabilities.js.map +1 -0
  15. package/dist/index.d.ts +3 -1
  16. package/dist/index.d.ts.map +1 -1
  17. package/dist/index.js +7 -1
  18. package/dist/index.js.map +1 -1
  19. package/dist/providers/cache.d.ts +37 -7
  20. package/dist/providers/cache.d.ts.map +1 -1
  21. package/dist/providers/cache.js +56 -22
  22. package/dist/providers/cache.js.map +1 -1
  23. package/dist/providers/cli-inline.d.ts +9 -0
  24. package/dist/providers/cli-inline.d.ts.map +1 -1
  25. package/dist/providers/cli-inline.js +12 -2
  26. package/dist/providers/cli-inline.js.map +1 -1
  27. package/dist/providers/index.d.ts +1 -1
  28. package/dist/providers/index.d.ts.map +1 -1
  29. package/dist/providers/index.js +1 -1
  30. package/dist/providers/index.js.map +1 -1
  31. package/dist/providers/instrumented.d.ts.map +1 -1
  32. package/dist/providers/instrumented.js +29 -7
  33. package/dist/providers/instrumented.js.map +1 -1
  34. package/dist/skillLibrary/SkillRunResolver.d.ts +3 -3
  35. package/dist/skillLibrary/SkillRunResolver.d.ts.map +1 -1
  36. package/dist/skillLibrary/SkillRunResolver.js +1 -0
  37. package/dist/skillLibrary/SkillRunResolver.js.map +1 -1
  38. package/package.json +5 -5
@@ -0,0 +1,76 @@
1
+ import type { McpServerDefinition, ResolvedSkill } from '@cat-factory/kernel';
2
+ /**
3
+ * A skill shipped IN CODE by a deployment's agent package and registered on the
4
+ * `AgentKindRegistry`. Structurally the content of a `SKILL.md` — the same payload the
5
+ * repo-synced catalog produces — so it reaches the harness through the identical path with
6
+ * nothing downstream branching on origin.
7
+ *
8
+ * The point of a bundled skill is that a custom agent kind can carry its own procedural playbook
9
+ * with no skill library configured, no repo sync, and no GitHub connection: a deployment that
10
+ * installs the package gets the skill.
11
+ */
12
+ export interface BundledSkillDefinition {
13
+ /** Stable id, referenced from a kind's `skills` and reported on the run. */
14
+ id: string;
15
+ /** The skill name — becomes the native CLI skill directory name and its frontmatter `name`. */
16
+ name: string;
17
+ /** One-line description (the frontmatter `description` the CLI matches against). */
18
+ description: string;
19
+ /** The procedural instructions — the `SKILL.md` body. */
20
+ instructions: string;
21
+ /** Optional resource files, materialised alongside the skill. */
22
+ resources?: {
23
+ relPath: string;
24
+ content: string;
25
+ }[];
26
+ }
27
+ /** A skill an agent kind applies: a registered bundled id, an inline bundled skill, or a catalog ref. */
28
+ export type AgentKindSkillRef = string | BundledSkillDefinition | {
29
+ /**
30
+ * An account-tier repo-synced skill id (`src:<sourceId>:<dirName>`, ADR 0024). Resolved
31
+ * through the engine's `skillResolver`, so it needs the skill library to be configured.
32
+ */
33
+ catalogSkillId: string;
34
+ /**
35
+ * When true, a skill that cannot be resolved (library unconfigured, skill removed or its
36
+ * source unlinked) is SKIPPED with a note instead of failing the dispatch. Defaults to
37
+ * false: a kind that declares a skill by id is declaring it is required to do the work,
38
+ * and running it without the skill produces work nobody asked for.
39
+ */
40
+ optional?: boolean;
41
+ };
42
+ /** A tool server an agent kind may call: a registered server id, or an inline definition. */
43
+ export type AgentKindToolRef = string | McpServerDefinition;
44
+ /** A kind's skill declaration, normalised into the two shapes the engine resolves separately. */
45
+ export interface NormalizedSkillRefs {
46
+ /** Bundled skills, already complete — nothing to resolve. */
47
+ bundled: BundledSkillDefinition[];
48
+ /** Catalog references the engine resolves through `skillResolver`. */
49
+ catalog: {
50
+ skillId: string;
51
+ optional: boolean;
52
+ }[];
53
+ }
54
+ /**
55
+ * Normalise an agent kind's `skills` declaration, resolving each registered id against `lookup`.
56
+ * An id with no registration is returned in `unknown` rather than thrown on, so the caller
57
+ * decides the severity — boot validation reports it as a startup error (the loud, early place),
58
+ * while a dispatch drops it rather than failing a run over a registry typo it cannot fix.
59
+ *
60
+ * Pure, so the precedence and dedup are unit-testable without a registry or a run.
61
+ */
62
+ export declare function normalizeSkillRefs(refs: readonly AgentKindSkillRef[] | undefined, lookup: (id: string) => BundledSkillDefinition | undefined): NormalizedSkillRefs & {
63
+ unknown: string[];
64
+ };
65
+ /**
66
+ * Normalise an agent kind's `toolServers` declaration, resolving each registered id against
67
+ * `lookup`. Unknown ids are reported (never thrown) for the same reason as {@link normalizeSkillRefs};
68
+ * duplicates collapse by server id, so assigning a server a kind already declares is idempotent.
69
+ */
70
+ export declare function normalizeToolRefs(refs: readonly AgentKindToolRef[] | undefined, lookup: (id: string) => McpServerDefinition | undefined): {
71
+ servers: McpServerDefinition[];
72
+ unknown: string[];
73
+ };
74
+ /** Project a bundled skill definition into the resolved shape the engine puts on the run context. */
75
+ export declare function bundledSkillToResolved(definition: BundledSkillDefinition): ResolvedSkill;
76
+ //# sourceMappingURL=capabilities.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"capabilities.d.ts","sourceRoot":"","sources":["../../../src/agents/kinds/capabilities.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAc7E;;;;;;;;;GASG;AACH,MAAM,WAAW,sBAAsB;IACrC,4EAA4E;IAC5E,EAAE,EAAE,MAAM,CAAA;IACV,+FAA+F;IAC/F,IAAI,EAAE,MAAM,CAAA;IACZ,oFAAoF;IACpF,WAAW,EAAE,MAAM,CAAA;IACnB,yDAAyD;IACzD,YAAY,EAAE,MAAM,CAAA;IACpB,iEAAiE;IACjE,SAAS,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;CACnD;AAED,yGAAyG;AACzG,MAAM,MAAM,iBAAiB,GACzB,MAAM,GACN,sBAAsB,GACtB;IACE;;;OAGG;IACH,cAAc,EAAE,MAAM,CAAA;IACtB;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB,CAAA;AAEL,6FAA6F;AAC7F,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,mBAAmB,CAAA;AAE3D,iGAAiG;AACjG,MAAM,WAAW,mBAAmB;IAClC,6DAA6D;IAC7D,OAAO,EAAE,sBAAsB,EAAE,CAAA;IACjC,sEAAsE;IACtE,OAAO,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,OAAO,CAAA;KAAE,EAAE,CAAA;CAClD;AASD;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,SAAS,iBAAiB,EAAE,GAAG,SAAS,EAC9C,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,sBAAsB,GAAG,SAAS,GACzD,mBAAmB,GAAG;IAAE,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,CAsB7C;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,SAAS,gBAAgB,EAAE,GAAG,SAAS,EAC7C,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,mBAAmB,GAAG,SAAS,GACtD;IAAE,OAAO,EAAE,mBAAmB,EAAE,CAAC;IAAC,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,CAevD;AAED,qGAAqG;AACrG,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,sBAAsB,GAAG,aAAa,CAexF"}
@@ -0,0 +1,77 @@
1
+ /** Whether a skill ref names a repo-synced catalog skill. */
2
+ function isCatalogRef(ref) {
3
+ return typeof ref === 'object' && 'catalogSkillId' in ref;
4
+ }
5
+ /**
6
+ * Normalise an agent kind's `skills` declaration, resolving each registered id against `lookup`.
7
+ * An id with no registration is returned in `unknown` rather than thrown on, so the caller
8
+ * decides the severity — boot validation reports it as a startup error (the loud, early place),
9
+ * while a dispatch drops it rather than failing a run over a registry typo it cannot fix.
10
+ *
11
+ * Pure, so the precedence and dedup are unit-testable without a registry or a run.
12
+ */
13
+ export function normalizeSkillRefs(refs, lookup) {
14
+ const bundled = [];
15
+ const catalog = [];
16
+ const unknown = [];
17
+ const seen = new Set();
18
+ for (const ref of refs ?? []) {
19
+ if (isCatalogRef(ref)) {
20
+ if (seen.has(ref.catalogSkillId))
21
+ continue;
22
+ seen.add(ref.catalogSkillId);
23
+ catalog.push({ skillId: ref.catalogSkillId, optional: ref.optional === true });
24
+ continue;
25
+ }
26
+ const definition = typeof ref === 'string' ? lookup(ref) : ref;
27
+ if (!definition) {
28
+ unknown.push(ref);
29
+ continue;
30
+ }
31
+ if (seen.has(definition.id))
32
+ continue;
33
+ seen.add(definition.id);
34
+ bundled.push(definition);
35
+ }
36
+ return { bundled, catalog, unknown };
37
+ }
38
+ /**
39
+ * Normalise an agent kind's `toolServers` declaration, resolving each registered id against
40
+ * `lookup`. Unknown ids are reported (never thrown) for the same reason as {@link normalizeSkillRefs};
41
+ * duplicates collapse by server id, so assigning a server a kind already declares is idempotent.
42
+ */
43
+ export function normalizeToolRefs(refs, lookup) {
44
+ const servers = [];
45
+ const unknown = [];
46
+ const seen = new Set();
47
+ for (const ref of refs ?? []) {
48
+ const definition = typeof ref === 'string' ? lookup(ref) : ref;
49
+ if (!definition) {
50
+ unknown.push(ref);
51
+ continue;
52
+ }
53
+ if (seen.has(definition.id))
54
+ continue;
55
+ seen.add(definition.id);
56
+ servers.push(definition);
57
+ }
58
+ return { servers, unknown };
59
+ }
60
+ /** Project a bundled skill definition into the resolved shape the engine puts on the run context. */
61
+ export function bundledSkillToResolved(definition) {
62
+ return {
63
+ skillId: definition.id,
64
+ origin: 'bundled',
65
+ name: definition.name,
66
+ description: definition.description,
67
+ instructions: definition.instructions,
68
+ // A bundled resource is already in memory, so it always carries its body — the
69
+ // "reference by repo path" degradation only exists for a catalog fetch that failed.
70
+ resources: (definition.resources ?? []).map((r) => ({
71
+ path: r.relPath,
72
+ relPath: r.relPath,
73
+ body: r.content,
74
+ })),
75
+ };
76
+ }
77
+ //# sourceMappingURL=capabilities.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"capabilities.js","sourceRoot":"","sources":["../../../src/agents/kinds/capabilities.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,6 @@
1
- import type { AgentConfigDescriptor, AgentKind, AgentRunContext, AgentStepSpec, RepoOp } from '@cat-factory/kernel';
1
+ import type { AgentConfigDescriptor, AgentKind, AgentRunContext, AgentStepSpec, McpServerDefinition, RepoOp } from '@cat-factory/kernel';
2
+ import type { AgentKindSkillRef, AgentKindToolRef, BundledSkillDefinition } from './capabilities.js';
3
+ import { normalizeSkillRefs, normalizeToolRefs } from './capabilities.js';
2
4
  import type { AgentPresentation } from '@cat-factory/contracts';
3
5
  import type { AgentTrait, AgentTraitDefinition } from './traits.js';
4
6
  import type { AgentTuning } from './tuning.js';
@@ -113,6 +115,30 @@ export interface AgentKindDefinition {
113
115
  * container. Omitted ⇒ no post-op.
114
116
  */
115
117
  postOps?: RepoOp[];
118
+ /**
119
+ * Skills this kind applies on every run — its procedural playbooks. Each ref is a bundled
120
+ * skill registered on this registry (by id), an inline bundled skill (shipped with the kind),
121
+ * or a `{ catalogSkillId }` reference to an account-tier repo-synced skill. The engine resolves
122
+ * them at dispatch onto `AgentRunContext.skills`, and the container executor installs them
123
+ * harness-aware — natively for claude-code, into `.cat-context/skill/` for Pi/codex.
124
+ *
125
+ * Distinct from the built-in `skill` KIND, which runs ONE skill picked per step
126
+ * (`stepOptions.skillId`): this is a kind saying "my work is always done this way". A step
127
+ * that picks a skill on a kind that also declares some runs both (deduplicated by id).
128
+ * Omitted ⇒ the kind applies no skills of its own.
129
+ */
130
+ skills?: AgentKindSkillRef[];
131
+ /**
132
+ * Tool servers (MCP) this kind may call — a registered server id or an inline
133
+ * {@link McpServerDefinition}. The engine resolves them at dispatch onto
134
+ * `AgentRunContext.toolServers`, the executor threads their configuration (and any resolved
135
+ * credentials) into the job body, and the harness wires them into the agent CLI.
136
+ *
137
+ * A server the running harness cannot serve (Pi has no MCP client) or whose required
138
+ * credential does not resolve is DROPPED and stated in the prompt, never silently missing.
139
+ * Omitted ⇒ the kind gets the harness's built-in tools only.
140
+ */
141
+ toolServers?: AgentKindToolRef[];
116
142
  /**
117
143
  * Frontend display metadata (label / icon / colour / category / result view). The
118
144
  * server serialises this into the workspace snapshot so a registered kind becomes a
@@ -136,6 +162,10 @@ export declare class AgentKindRegistry {
136
162
  private readonly registry;
137
163
  private readonly traitDefinitions;
138
164
  private readonly assignedTraits;
165
+ private readonly bundledSkills;
166
+ private readonly toolServerDefinitions;
167
+ private readonly assignedSkills;
168
+ private readonly assignedToolServers;
139
169
  constructor();
140
170
  /** Register a custom agent kind. A later registration of the same id replaces the earlier one. */
141
171
  register(definition: AgentKindDefinition): void;
@@ -205,6 +235,47 @@ export declare class AgentKindRegistry {
205
235
  assignTraits(kind: AgentKind, traits: Iterable<AgentTrait>): void;
206
236
  /** The extra traits assigned to a kind (empty when none). Unioned into `traitsFor`. */
207
237
  assignedTraitsFor(kind: AgentKind): ReadonlySet<AgentTrait>;
238
+ /**
239
+ * Register a bundled skill — a `SKILL.md` payload the deployment ships in code — so any number
240
+ * of kinds can reference it by id. A later registration of the same id replaces the earlier one.
241
+ */
242
+ registerSkill(definition: BundledSkillDefinition): void;
243
+ /** Register several bundled skills at once. */
244
+ registerSkills(definitions: Iterable<BundledSkillDefinition>): void;
245
+ /** A registered bundled skill, or undefined when the id is unknown. */
246
+ bundledSkill(id: string): BundledSkillDefinition | undefined;
247
+ /**
248
+ * Register a tool server (MCP) so any number of kinds can reference it by id. A later
249
+ * registration of the same id replaces the earlier one — which is also how a deployment
250
+ * REPOINTS a server an installed package registered (e.g. at its own internal endpoint)
251
+ * without forking the package.
252
+ */
253
+ registerToolServer(definition: McpServerDefinition): void;
254
+ /** Register several tool servers at once. */
255
+ registerToolServers(definitions: Iterable<McpServerDefinition>): void;
256
+ /** A registered tool server, or undefined when the id is unknown. */
257
+ toolServerDefinition(id: string): McpServerDefinition | undefined;
258
+ /**
259
+ * Give an EXISTING kind extra skills — additive, so a deployment attaches its house playbook to
260
+ * a built-in kind (`coder`, `pr-reviewer`) without redefining it. Deduplicated with the kind's
261
+ * own declarations at resolution time.
262
+ */
263
+ assignSkills(kind: AgentKind, refs: Iterable<AgentKindSkillRef>): void;
264
+ /** Give an EXISTING kind extra tool servers — the {@link assignSkills} analogue. */
265
+ assignToolServers(kind: AgentKind, refs: Iterable<AgentKindToolRef>): void;
266
+ /**
267
+ * Every skill declared for a kind — its own `skills` plus any assigned to it — normalised into
268
+ * the bundled/catalog split the engine resolves, with unknown registered ids reported rather
269
+ * than thrown on (boot validation turns those into a startup error; a dispatch drops them).
270
+ * A kind's OWN declarations come first, so it controls the order its playbooks are applied in.
271
+ */
272
+ skillsFor(kind: AgentKind): ReturnType<typeof normalizeSkillRefs>;
273
+ /**
274
+ * Every tool server declared for a kind — its own `toolServers` plus any assigned to it —
275
+ * resolved to definitions and deduplicated by server id. Unknown registered ids are reported,
276
+ * not thrown on (see {@link skillsFor}).
277
+ */
278
+ toolServersFor(kind: AgentKind): ReturnType<typeof normalizeToolRefs>;
208
279
  }
209
280
  /**
210
281
  * A fresh registry pre-loaded with the built-in agent kinds. This is the single place the
@@ -1 +1 @@
1
- {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/agents/kinds/registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/agents/kinds/registry.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { normalizeSkillRefs, normalizeToolRefs } from './capabilities.js';
1
2
  import { STANDARD_TRAIT_DEFINITIONS } from './traits.js';
2
3
  import { registerBugInvestigatorAgent } from './bug-investigator.js';
3
4
  import { registerForkProposerAgent } from './fork-proposer.js';
@@ -46,6 +47,17 @@ export class AgentKindRegistry {
46
47
  // Distinct from a kind's STANDARD_AGENT_TRAITS and a registered kind's own `traits`: this
47
48
  // seam adds traits to a kind WITHOUT redefining its prompt. Unioned in `traitsFor`.
48
49
  assignedTraits = new Map();
50
+ // CAPABILITY definitions shared across kinds: bundled skills (id → the SKILL.md payload the
51
+ // deployment ships in code) and tool servers (id → the MCP server definition). They live here
52
+ // for the same reason traits do — a skill and a tool server are capabilities OF agent kinds,
53
+ // so the whole vocabulary stays on one injectable seam rather than two parallel module `Map`s.
54
+ bundledSkills = new Map();
55
+ toolServerDefinitions = new Map();
56
+ // Capability ASSIGNMENTS to EXISTING kinds — the skills/tool-servers analogue of
57
+ // `assignedTraits`. This is how a deployment gives a BUILT-IN kind (`coder`, `pr-reviewer`)
58
+ // its house playbook or its issue-tracker MCP server without redefining the kind's prompt.
59
+ assignedSkills = new Map();
60
+ assignedToolServers = new Map();
49
61
  constructor() {
50
62
  for (const definition of STANDARD_TRAIT_DEFINITIONS) {
51
63
  this.traitDefinitions.set(definition.id, definition);
@@ -179,9 +191,91 @@ export class AgentKindRegistry {
179
191
  assignedTraitsFor(kind) {
180
192
  return this.assignedTraits.get(kind) ?? EMPTY_TRAIT_SET;
181
193
  }
194
+ /**
195
+ * Register a bundled skill — a `SKILL.md` payload the deployment ships in code — so any number
196
+ * of kinds can reference it by id. A later registration of the same id replaces the earlier one.
197
+ */
198
+ registerSkill(definition) {
199
+ this.bundledSkills.set(definition.id, definition);
200
+ }
201
+ /** Register several bundled skills at once. */
202
+ registerSkills(definitions) {
203
+ for (const definition of definitions)
204
+ this.registerSkill(definition);
205
+ }
206
+ /** A registered bundled skill, or undefined when the id is unknown. */
207
+ bundledSkill(id) {
208
+ return this.bundledSkills.get(id);
209
+ }
210
+ /**
211
+ * Register a tool server (MCP) so any number of kinds can reference it by id. A later
212
+ * registration of the same id replaces the earlier one — which is also how a deployment
213
+ * REPOINTS a server an installed package registered (e.g. at its own internal endpoint)
214
+ * without forking the package.
215
+ */
216
+ registerToolServer(definition) {
217
+ this.toolServerDefinitions.set(definition.id, definition);
218
+ }
219
+ /** Register several tool servers at once. */
220
+ registerToolServers(definitions) {
221
+ for (const definition of definitions)
222
+ this.registerToolServer(definition);
223
+ }
224
+ /** A registered tool server, or undefined when the id is unknown. */
225
+ toolServerDefinition(id) {
226
+ return this.toolServerDefinitions.get(id);
227
+ }
228
+ /**
229
+ * Give an EXISTING kind extra skills — additive, so a deployment attaches its house playbook to
230
+ * a built-in kind (`coder`, `pr-reviewer`) without redefining it. Deduplicated with the kind's
231
+ * own declarations at resolution time.
232
+ */
233
+ assignSkills(kind, refs) {
234
+ this.assignedSkills.set(kind, [...(this.assignedSkills.get(kind) ?? []), ...refs]);
235
+ }
236
+ /** Give an EXISTING kind extra tool servers — the {@link assignSkills} analogue. */
237
+ assignToolServers(kind, refs) {
238
+ this.assignedToolServers.set(kind, [...(this.assignedToolServers.get(kind) ?? []), ...refs]);
239
+ }
240
+ /**
241
+ * Every skill declared for a kind — its own `skills` plus any assigned to it — normalised into
242
+ * the bundled/catalog split the engine resolves, with unknown registered ids reported rather
243
+ * than thrown on (boot validation turns those into a startup error; a dispatch drops them).
244
+ * A kind's OWN declarations come first, so it controls the order its playbooks are applied in.
245
+ */
246
+ skillsFor(kind) {
247
+ const own = this.registry.get(kind)?.skills ?? [];
248
+ const assigned = this.assignedSkills.get(kind) ?? [];
249
+ if (own.length === 0 && assigned.length === 0)
250
+ return EMPTY_SKILL_REFS;
251
+ return normalizeSkillRefs([...own, ...assigned], (id) => this.bundledSkills.get(id));
252
+ }
253
+ /**
254
+ * Every tool server declared for a kind — its own `toolServers` plus any assigned to it —
255
+ * resolved to definitions and deduplicated by server id. Unknown registered ids are reported,
256
+ * not thrown on (see {@link skillsFor}).
257
+ */
258
+ toolServersFor(kind) {
259
+ const own = this.registry.get(kind)?.toolServers ?? [];
260
+ const assigned = this.assignedToolServers.get(kind) ?? [];
261
+ if (own.length === 0 && assigned.length === 0)
262
+ return EMPTY_TOOL_REFS;
263
+ return normalizeToolRefs([...own, ...assigned], (id) => this.toolServerDefinitions.get(id));
264
+ }
182
265
  }
183
266
  /** Shared empty set so `assignedTraitsFor` allocates nothing on the common no-assignment path. */
184
267
  const EMPTY_TRAIT_SET = new Set();
268
+ // Shared empty results so the no-capability path (every built-in kind, on every dispatch)
269
+ // allocates nothing. Frozen because they are handed to callers.
270
+ const EMPTY_SKILL_REFS = Object.freeze({
271
+ bundled: Object.freeze([]),
272
+ catalog: Object.freeze([]),
273
+ unknown: Object.freeze([]),
274
+ });
275
+ const EMPTY_TOOL_REFS = Object.freeze({
276
+ servers: Object.freeze([]),
277
+ unknown: Object.freeze([]),
278
+ });
185
279
  /**
186
280
  * A fresh registry pre-loaded with the built-in agent kinds. This is the single place the
187
281
  * built-ins are installed — there is no module-load side effect — so every app (and every
@@ -1 +1 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../src/agents/kinds/registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../src/agents/kinds/registry.ts"],"names":[],"mappings":"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"}
@@ -48,7 +48,7 @@ const SKILL_SYSTEM_PROMPT = [
48
48
  function skillUserPrompt(context) {
49
49
  const lines = [
50
50
  `Pipeline: ${context.pipelineName}`,
51
- ...(context.skill ? [`Skill: ${context.skill.name}`] : []),
51
+ ...(context.skills?.length ? [`Skills: ${context.skills.map((s) => s.name).join(', ')}`] : []),
52
52
  `Task: ${context.block.title}`,
53
53
  `Brief: ${context.block.description?.trim() || '(none provided — infer the scope from the title and the skill)'}`,
54
54
  ];
@@ -1 +1 @@
1
- {"version":3,"file":"skill.js","sourceRoot":"","sources":["../../../src/agents/kinds/skill.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"skill.js","sourceRoot":"","sources":["../../../src/agents/kinds/skill.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAC9C,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAA;AAC5E,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AACvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAE7D,8EAA8E;AAC9E,4FAA4F;AAC5F,+FAA+F;AAC/F,0FAA0F;AAC1F,6FAA6F;AAC7F,iGAAiG;AACjG,4FAA4F;AAC5F,qFAAqF;AACrF,8FAA8F;AAC9F,2FAA2F;AAC3F,0EAA0E;AAC1E,EAAE;AACF,+FAA+F;AAC/F,6FAA6F;AAC7F,8FAA8F;AAC9F,mEAAmE;AACnE,EAAE;AACF,oFAAoF;AACpF,8FAA8F;AAC9F,gGAAgG;AAChG,iGAAiG;AACjG,kGAAkG;AAClG,8FAA8F;AAC9F,+FAA+F;AAC/F,8DAA8D;AAC9D,8EAA8E;AAE9E,MAAM,CAAC,MAAM,gBAAgB,GAAG,OAAO,CAAA;AAEvC,MAAM,mBAAmB,GAAG;IAC1B,wFAAwF;IACxF,wFAAwF;IACxF,2FAA2F;IAC3F,0FAA0F;IAC1F,6FAA6F;IAC7F,iEAAiE;IACjE,EAAE;IACF,+FAA+F;IAC/F,+FAA+F;IAC/F,2BAA2B;IAC3B,EAAE;IACF,0BAA0B;IAC1B,EAAE;IACF,gBAAgB;CACjB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AAEZ,SAAS,eAAe,CAAC,OAAwB;IAC/C,MAAM,KAAK,GAAG;QACZ,aAAa,OAAO,CAAC,YAAY,EAAE;QACnC,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9F,SAAS,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE;QAC9B,UAAU,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,gEAAgE,EAAE;KAClH,CAAA;IACD,MAAM,MAAM,GAAG,oBAAoB,CAAC,OAAO,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAA;IACpE,IAAI,MAAM;QAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IAC9B,IAAI,OAAO,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC;QAChC,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,2EAA2E,CAAC,CAAA;QAC3F,KAAK,MAAM,CAAC,IAAI,OAAO,CAAC,YAAY;YAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC,CAAA;IACxF,CAAC;IACD,KAAK,CAAC,IAAI,CACR,EAAE,EACF,wFAAwF,EACxF,6FAA6F,EAC7F,WAAW,CACZ,CAAA;IACD,OAAO,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACzC,CAAC;AAED,yEAAyE;AACzE,MAAM,CAAC,MAAM,iBAAiB,GAA0B;IACtD;QACE,IAAI,EAAE,gBAAgB;QACtB,YAAY,EAAE,mBAAmB;QACjC,UAAU,EAAE,eAAe;QAC3B,gGAAgG;QAChG,MAAM,EAAE,CAAC,gBAAgB,CAAC;QAC1B,KAAK,EAAE;YACL,OAAO,EAAE,kBAAkB;YAC3B,KAAK,EAAE,EAAE,MAAM,EAAE,YAAY,EAAE;YAC/B,kBAAkB,EAAE,IAAI;SACzB;QACD,YAAY,EAAE;YACZ,KAAK,EAAE,OAAO;YACd,IAAI,EAAE,0BAA0B;YAChC,KAAK,EAAE,SAAS;YAChB,WAAW,EACT,+IAA+I;YACjJ,QAAQ,EAAE,OAAO;SAClB;KACF;CACF,CAAA;AAED;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAAC,QAA2B;IAC5D,QAAQ,CAAC,WAAW,CAAC,iBAAiB,CAAC,CAAA;AACzC,CAAC"}
@@ -0,0 +1,21 @@
1
+ import type { AgentRunContext } from '@cat-factory/kernel';
2
+ /**
3
+ * Render the TOOL SERVERS (MCP) section for a dispatch — the extra tools an agent kind declared
4
+ * and the platform actually wired into this run's CLI, plus the ones it could not.
5
+ *
6
+ * Two halves, both load-bearing:
7
+ *
8
+ * - **Available.** A tool an agent was handed but not told about is a tool it does not use, so
9
+ * each server carries its registered `guidance` ("what this is for") and, when the definition
10
+ * restricted them, the exact tool names. The names use the CLI's `mcp__<server>__<tool>`
11
+ * convention so what the prompt says matches what the agent sees in its tool list.
12
+ * - **Unavailable.** A declared server the running harness cannot serve, or whose credential did
13
+ * not resolve, is STATED. Silence would leave the agent to discover the gap mid-run — after it
14
+ * has planned around a tool that was never there — which is exactly the failure the section
15
+ * exists to prevent.
16
+ *
17
+ * Empty string when the kind declared no tool servers (every built-in run), so the prompt is
18
+ * byte-for-byte unchanged for them.
19
+ */
20
+ export declare function toolServersSection(context: AgentRunContext): string;
21
+ //# sourceMappingURL=capabilities.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"capabilities.d.ts","sourceRoot":"","sources":["../../../src/agents/prompts/capabilities.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAE1D;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,eAAe,GAAG,MAAM,CA+BnE"}
@@ -0,0 +1,55 @@
1
+ /**
2
+ * Render the TOOL SERVERS (MCP) section for a dispatch — the extra tools an agent kind declared
3
+ * and the platform actually wired into this run's CLI, plus the ones it could not.
4
+ *
5
+ * Two halves, both load-bearing:
6
+ *
7
+ * - **Available.** A tool an agent was handed but not told about is a tool it does not use, so
8
+ * each server carries its registered `guidance` ("what this is for") and, when the definition
9
+ * restricted them, the exact tool names. The names use the CLI's `mcp__<server>__<tool>`
10
+ * convention so what the prompt says matches what the agent sees in its tool list.
11
+ * - **Unavailable.** A declared server the running harness cannot serve, or whose credential did
12
+ * not resolve, is STATED. Silence would leave the agent to discover the gap mid-run — after it
13
+ * has planned around a tool that was never there — which is exactly the failure the section
14
+ * exists to prevent.
15
+ *
16
+ * Empty string when the kind declared no tool servers (every built-in run), so the prompt is
17
+ * byte-for-byte unchanged for them.
18
+ */
19
+ export function toolServersSection(context) {
20
+ const available = context.toolServers ?? [];
21
+ const unavailable = context.unavailableToolServers ?? [];
22
+ if (!available.length && !unavailable.length)
23
+ return '';
24
+ const lines = ['', '## Tool servers'];
25
+ if (available.length) {
26
+ lines.push('', 'Beyond your built-in tools, these MCP tool servers are connected for this run. Prefer them', 'over guessing or over shelling out when the job matches what they do:');
27
+ for (const server of available) {
28
+ const where = server.transport === 'stdio' ? 'runs in your sandbox' : 'remote service';
29
+ lines.push(`- **${server.label}** (\`${server.id}\`, ${where})`);
30
+ if (server.guidance)
31
+ lines.push(` ${server.guidance}`);
32
+ if (server.tools?.length) {
33
+ lines.push(` Tools: ${server.tools.map((t) => `\`mcp__${server.id}__${t}\``).join(', ')}`);
34
+ }
35
+ }
36
+ }
37
+ if (unavailable.length) {
38
+ lines.push('', 'These tool servers are NOT available on this run — do not plan around them, and say so in', 'your report if their absence changed what you could verify:');
39
+ for (const server of unavailable) {
40
+ lines.push(`- ${server.label} (${UNAVAILABLE_REASONS[server.reason]})`);
41
+ }
42
+ }
43
+ return lines.join('\n');
44
+ }
45
+ /**
46
+ * Why a declared tool server did not make it into the run, phrased for the AGENT rather than an
47
+ * operator: it needs to know the tool is absent and that trying harder will not produce it, not
48
+ * how the deployment is configured. Keyed off the closed reason union, so a new reason fails the
49
+ * typecheck here rather than rendering as a blank parenthetical.
50
+ */
51
+ const UNAVAILABLE_REASONS = {
52
+ harness_unsupported: 'not supported by the agent runtime this run uses',
53
+ missing_secret: 'its credential is not configured for this deployment',
54
+ };
55
+ //# sourceMappingURL=capabilities.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"capabilities.js","sourceRoot":"","sources":["../../../src/agents/prompts/capabilities.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAwB;IACzD,MAAM,SAAS,GAAG,OAAO,CAAC,WAAW,IAAI,EAAE,CAAA;IAC3C,MAAM,WAAW,GAAG,OAAO,CAAC,sBAAsB,IAAI,EAAE,CAAA;IACxD,IAAI,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM;QAAE,OAAO,EAAE,CAAA;IACvD,MAAM,KAAK,GAAa,CAAC,EAAE,EAAE,iBAAiB,CAAC,CAAA;IAC/C,IAAI,SAAS,CAAC,MAAM,EAAE,CAAC;QACrB,KAAK,CAAC,IAAI,CACR,EAAE,EACF,4FAA4F,EAC5F,uEAAuE,CACxE,CAAA;QACD,KAAK,MAAM,MAAM,IAAI,SAAS,EAAE,CAAC;YAC/B,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,KAAK,OAAO,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,gBAAgB,CAAA;YACtF,KAAK,CAAC,IAAI,CAAC,OAAO,MAAM,CAAC,KAAK,SAAS,MAAM,CAAC,EAAE,OAAO,KAAK,GAAG,CAAC,CAAA;YAChE,IAAI,MAAM,CAAC,QAAQ;gBAAE,KAAK,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAA;YACvD,IAAI,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC;gBACzB,KAAK,CAAC,IAAI,CAAC,YAAY,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,MAAM,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YAC7F,CAAC;QACH,CAAC;IACH,CAAC;IACD,IAAI,WAAW,CAAC,MAAM,EAAE,CAAC;QACvB,KAAK,CAAC,IAAI,CACR,EAAE,EACF,2FAA2F,EAC3F,6DAA6D,CAC9D,CAAA;QACD,KAAK,MAAM,MAAM,IAAI,WAAW,EAAE,CAAC;YACjC,KAAK,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC,KAAK,KAAK,mBAAmB,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;QACzE,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACzB,CAAC;AAED;;;;;GAKG;AACH,MAAM,mBAAmB,GAGrB;IACF,mBAAmB,EAAE,kDAAkD;IACvE,cAAc,EAAE,sDAAsD;CACvE,CAAA"}
package/dist/index.d.ts CHANGED
@@ -4,6 +4,7 @@ export { type AgentModelConfig, type AgentRouting, type StepModelResolvers, type
4
4
  export { systemPromptFor, userPromptFor } from './agents/catalog.js';
5
5
  export { TASK_ESTIMATOR_AGENT_KIND } from './agents/prompts/roles.js';
6
6
  export { type AgentKindDefinition, AgentKindRegistry, defaultAgentKindRegistry, } from './agents/kinds/registry.js';
7
+ export { type AgentKindSkillRef, type AgentKindToolRef, type BundledSkillDefinition, type NormalizedSkillRefs, bundledSkillToResolved, normalizeSkillRefs, normalizeToolRefs, } from './agents/kinds/capabilities.js';
7
8
  export { isInlineModelStep, REQUIREMENTS_REVIEW_AGENT_KIND, CLARITY_REVIEW_AGENT_KIND, REQUIREMENTS_BRAINSTORM_AGENT_KIND, ARCHITECTURE_BRAINSTORM_AGENT_KIND, } from './agents/kinds/step-surface.js';
8
9
  export { type StructuredOutput, type StructuredOutputOptions, defineStructuredOutput, } from './agents/kinds/structured-output.js';
9
10
  export { type AgentTrait, type AgentTraitDefinition, CODE_AWARE_TRAIT, DOC_AWARE_TRAIT, SPEC_AWARE_TRAIT, BINARY_STORAGE_TRAIT, INTERVIEW_GATE_TRAIT, BRIEF_STANDARDS_TRAIT, SPEC_AWARE_GUIDANCE, STANDARD_AGENT_TRAITS, traitsFor, hasTrait, traitGuidanceFor, standardsVerbosityFor, } from './agents/kinds/traits.js';
@@ -17,6 +18,7 @@ export { type VersionedPrompt, type PromptId, PROMPT_VERSIONS, promptVersion, pr
17
18
  export { KAIZEN_SYSTEM_PROMPT } from './agents/prompts/kaizen.js';
18
19
  export { composeSystemPrompt, composeBlockSystemPrompt, standardsDeliveredAsFiles, STANDARDS_CONTEXT_INDEX_FILE, STANDARDS_CONTEXT_FILE_PREFIX, type ComposableBlock, type StandardsDelivery, } from './agents/runtime/fragments.js';
19
20
  export { type StandardPhase, STANDARD_PHASES, STANDARD_PHASE_BY_KIND, phaseForKind, standardSystemPrompt, renderStandardUserPrompt, initiativePresetSection, CONTEXT_DIR, } from './agents/prompts/standard.js';
21
+ export { toolServersSection } from './agents/prompts/capabilities.js';
20
22
  export { type AcceptanceAgentKind, ACCEPTANCE_AGENT_KINDS, acceptanceSystemPrompt, isAcceptanceKind, testApproachSection, } from './agents/prompts/acceptance.js';
21
23
  export { type CompanionDefinition, COMPANIONS, isCompanionKind, companionFor, companionTargets, isContainerBackedCompanion, } from './agents/kinds/companions.js';
22
24
  export { companionSystemPrompt } from './agents/prompts/companion.js';
@@ -53,7 +55,7 @@ export { runRepoOps } from './repo-ops/run.js';
53
55
  export { blueprintPostOp, specPostOp, specPromotionPostOp } from './repo-ops/builtin.js';
54
56
  export { readServiceSpec } from './repo-ops/readServiceSpec.js';
55
57
  export { coerceInitiativePlan, canonicalInitiativeJson, hashInitiative, initiativeContentView, renderInitiativeFiles, renderInitiativeTrackerMarkdown, parseInitiativeVersionFile, commitInitiativeTracker, } from './repo-ops/initiative.js';
56
- export { CompositeModelProvider, CliInlineLanguageModel, type InlineCliRequest, type InlineCliResult, type InlineCliRunner, InstrumentedModelProvider, catFactoryObservability, type InlineObservabilityContext, VendorConcurrencyLimiter, limitModelProvider, vendorConcurrencyLimiterFromEnv, type ModelResolver, type ProviderRegistry, MODEL_SUPPORT_DOCS, anthropicResolver, baseProviderRegistry, cloudflareRestResolver, openAiCompatibleResolver, openAiResolver, DEEPSEEK_BASE_URL, DEFAULT_OPENAI_COMPATIBLE_BASE_URLS, isProxyableProvider, MOONSHOT_BASE_URL, OPENAI_BASE_URL, OPENROUTER_BASE_URL, QWEN_BASE_URL, resolveOpenAiCompatibleBaseUrl, UI_CONFIGURABLE_DIRECT_PROVIDERS, type CachePolicy, cachedTokensFromUsage, inlineCacheProviderOptions, promptCacheParams, providerCachePolicy, } from './providers/index.js';
58
+ export { CompositeModelProvider, CliInlineLanguageModel, type InlineCliRequest, type InlineCliResult, type InlineCliRunner, InstrumentedModelProvider, catFactoryObservability, type InlineObservabilityContext, VendorConcurrencyLimiter, limitModelProvider, vendorConcurrencyLimiterFromEnv, type ModelResolver, type ProviderRegistry, MODEL_SUPPORT_DOCS, anthropicResolver, baseProviderRegistry, cloudflareRestResolver, openAiCompatibleResolver, openAiResolver, DEEPSEEK_BASE_URL, DEFAULT_OPENAI_COMPATIBLE_BASE_URLS, isProxyableProvider, MOONSHOT_BASE_URL, OPENAI_BASE_URL, OPENROUTER_BASE_URL, QWEN_BASE_URL, resolveOpenAiCompatibleBaseUrl, UI_CONFIGURABLE_DIRECT_PROVIDERS, type CachePolicy, type InputTokenClasses, readInputTokenClasses, inlineCacheProviderOptions, promptCacheParams, providerCachePolicy, } from './providers/index.js';
57
59
  export { FragmentLibraryService, type FragmentLibraryServiceDependencies, } from './fragmentLibrary/FragmentLibraryService.js';
58
60
  export { FragmentSourceService, type FragmentSourceServiceDependencies, type ResolveFragmentInstallationId, } from './fragmentLibrary/FragmentSourceService.js';
59
61
  export { DeterministicFragmentSelector } from './fragmentLibrary/DeterministicFragmentSelector.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,KAAK,2BAA2B,EAAE,MAAM,8BAA8B,CAAA;AAChG,OAAO,EACL,KAAK,sBAAsB,EAC3B,+BAA+B,EAC/B,kCAAkC,EAClC,sBAAsB,EACtB,6BAA6B,EAC7B,sBAAsB,GACvB,MAAM,gCAAgC,CAAA;AACvC,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACvB,KAAK,eAAe,EACpB,kBAAkB,EAClB,mBAAmB,EACnB,qBAAqB,GACtB,MAAM,6BAA6B,CAAA;AACpC,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACpE,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAA;AAMrE,OAAO,EACL,KAAK,mBAAmB,EACxB,iBAAiB,EACjB,wBAAwB,GACzB,MAAM,4BAA4B,CAAA;AAKnC,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,sBAAsB,EAC3B,KAAK,mBAAmB,EACxB,sBAAsB,EACtB,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,gCAAgC,CAAA;AACvC,OAAO,EACL,iBAAiB,EACjB,8BAA8B,EAC9B,yBAAyB,EACzB,kCAAkC,EAClC,kCAAkC,GACnC,MAAM,gCAAgC,CAAA;AAGvC,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,uBAAuB,EAC5B,sBAAsB,GACvB,MAAM,qCAAqC,CAAA;AAI5C,OAAO,EACL,KAAK,UAAU,EACf,KAAK,oBAAoB,EACzB,gBAAgB,EAChB,eAAe,EACf,gBAAgB,EAChB,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,EACrB,mBAAmB,EACnB,qBAAqB,EACrB,SAAS,EACT,QAAQ,EACR,gBAAgB,EAChB,qBAAqB,GACtB,MAAM,0BAA0B,CAAA;AAGjC,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,gBAAgB,EACrB,cAAc,EACd,uBAAuB,GACxB,MAAM,0BAA0B,CAAA;AAGjC,OAAO,EACL,+BAA+B,EAC/B,6BAA6B,EAC7B,kCAAkC,EAClC,sBAAsB,EACtB,yBAAyB,GAC1B,MAAM,2BAA2B,CAAA;AAElC,OAAO,EACL,aAAa,EACb,mBAAmB,EACnB,wBAAwB,EACxB,uBAAuB,GACxB,MAAM,6BAA6B,CAAA;AAEpC,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,kCAAkC,CAAA;AAEzC,OAAO,EACL,4BAA4B,EAC5B,4BAA4B,GAC7B,MAAM,6BAA6B,CAAA;AAEpC,OAAO,EACL,qCAAqC,EACrC,qCAAqC,EACrC,4CAA4C,EAC5C,4CAA4C,GAC7C,MAAM,gCAAgC,CAAA;AACvC,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,QAAQ,EACb,eAAe,EACf,aAAa,EACb,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,4BAA4B,CAAA;AACnC,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAA;AACjE,OAAO,EACL,mBAAmB,EACnB,wBAAwB,EACxB,yBAAyB,EACzB,4BAA4B,EAC5B,6BAA6B,EAC7B,KAAK,eAAe,EACpB,KAAK,iBAAiB,GACvB,MAAM,+BAA+B,CAAA;AACtC,OAAO,EACL,KAAK,aAAa,EAClB,eAAe,EACf,sBAAsB,EACtB,YAAY,EACZ,oBAAoB,EACpB,wBAAwB,EACxB,uBAAuB,EACvB,WAAW,GACZ,MAAM,8BAA8B,CAAA;AACrC,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAA;AACrE,OAAO,EACL,KAAK,mBAAmB,EACxB,sBAAsB,EACtB,sBAAsB,EACtB,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,gCAAgC,CAAA;AACvC,OAAO,EACL,KAAK,mBAAmB,EACxB,UAAU,EACV,eAAe,EACf,YAAY,EACZ,gBAAgB,EAChB,0BAA0B,GAC3B,MAAM,8BAA8B,CAAA;AACrC,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAA;AAKrE,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EACf,kBAAkB,EAClB,iBAAiB,EACjB,cAAc,EACd,oBAAoB,EACpB,sBAAsB,EACtB,qBAAqB,EACrB,KAAK,cAAc,GACpB,MAAM,4BAA4B,CAAA;AAKnC,OAAO,EACL,mBAAmB,EACnB,0BAA0B,EAC1B,0BAA0B,GAC3B,MAAM,kCAAkC,CAAA;AAMzC,OAAO,EAAE,+BAA+B,EAAE,MAAM,uBAAuB,CAAA;AAMvE,OAAO,EACL,sBAAsB,EACtB,mBAAmB,EACnB,yBAAyB,EACzB,eAAe,GAChB,MAAM,kCAAkC,CAAA;AAOzC,OAAO,EACL,wBAAwB,EACxB,qBAAqB,EACrB,2BAA2B,GAC5B,MAAM,oCAAoC,CAAA;AAK3C,OAAO,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,MAAM,oCAAoC,CAAA;AAClG,YAAY,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAA;AAQ1E,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,kBAAkB,EACvB,aAAa,EACb,mBAAmB,EACnB,oBAAoB,EACpB,2BAA2B,EAC3B,cAAc,EAId,kBAAkB,EAClB,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,iCAAiC,CAAA;AACxC,OAAO,EACL,yBAAyB,EACzB,sBAAsB,EACtB,2BAA2B,EAC3B,2BAA2B,EAC3B,wBAAwB,GACzB,MAAM,8BAA8B,CAAA;AACrC,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAA;AACjG,OAAO,EACL,qBAAqB,EACrB,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,6BAA6B,CAAA;AACpC,OAAO,EACL,qBAAqB,EACrB,4BAA4B,EAC5B,gBAAgB,EAChB,KAAK,gBAAgB,EACrB,4BAA4B,GAC7B,MAAM,oCAAoC,CAAA;AAC3C,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EACjB,aAAa,EACb,KAAK,aAAa,EAClB,kBAAkB,GACnB,MAAM,yBAAyB,CAAA;AAChC,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AACjG,OAAO,EACL,kBAAkB,EAClB,yBAAyB,EACzB,2BAA2B,EAC3B,YAAY,EACZ,KAAK,kBAAkB,EACvB,yBAAyB,GAC1B,MAAM,iCAAiC,CAAA;AACxC,OAAO,EACL,gBAAgB,EAChB,uBAAuB,EACvB,yBAAyB,EACzB,QAAQ,EACR,KAAK,cAAc,EACnB,uBAAuB,EACvB,eAAe,GAChB,MAAM,+BAA+B,CAAA;AACtC,OAAO,EACL,2BAA2B,EAC3B,kCAAkC,EAClC,oCAAoC,EACpC,iBAAiB,EACjB,KAAK,uBAAuB,EAC5B,kCAAkC,GACnC,MAAM,0CAA0C,CAAA;AACjD,OAAO,EACL,oBAAoB,EACpB,uBAAuB,EACvB,KAAK,iBAAiB,EACtB,oBAAoB,GACrB,MAAM,mCAAmC,CAAA;AAC1C,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAA;AACpG,OAAO,EACL,mBAAmB,EACnB,sBAAsB,EACtB,mBAAmB,GACpB,MAAM,8BAA8B,CAAA;AACrC,OAAO,EACL,yBAAyB,EACzB,4BAA4B,EAC5B,yBAAyB,GAC1B,MAAM,oCAAoC,CAAA;AAC3C,OAAO,EACL,wBAAwB,EACxB,+BAA+B,EAC/B,sBAAsB,EACtB,KAAK,sBAAsB,EAC3B,+BAA+B,GAChC,MAAM,uCAAuC,CAAA;AAC9C,OAAO,EACL,eAAe,EACf,sBAAsB,EACtB,gBAAgB,EAChB,KAAK,gBAAgB,EACrB,sBAAsB,EACtB,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,8BAA8B,CAAA;AACrC,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EACjB,kCAAkC,EAClC,8BAA8B,EAC9B,4BAA4B,EAC5B,wBAAwB,EACxB,kBAAkB,GACnB,MAAM,yBAAyB,CAAA;AAChC,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAA;AACxF,OAAO,EACL,KAAK,sBAAsB,EAC3B,0BAA0B,EAC1B,wBAAwB,EACxB,sBAAsB,EACtB,uBAAuB,EACvB,mBAAmB,EACnB,yBAAyB,GAC1B,MAAM,oCAAoC,CAAA;AAC3C,OAAO,EAAE,0BAA0B,EAAE,MAAM,uCAAuC,CAAA;AAClF,OAAO,EACL,kBAAkB,EAClB,sBAAsB,EACtB,qBAAqB,EACrB,kBAAkB,EAClB,2BAA2B,EAC3B,mBAAmB,EACnB,uBAAuB,EACvB,gBAAgB,GACjB,MAAM,4BAA4B,CAAA;AAMnC,OAAO,EACL,KAAK,YAAY,EACjB,sBAAsB,EACtB,UAAU,EACV,sBAAsB,EACtB,aAAa,EACb,oBAAoB,EACpB,0BAA0B,EAC1B,oBAAoB,EACpB,aAAa,EACb,aAAa,EACb,eAAe,EACf,sBAAsB,EACtB,wBAAwB,EACxB,oBAAoB,GACrB,MAAM,sBAAsB,CAAA;AAI7B,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAI9C,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAKxF,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAK/D,OAAO,EACL,oBAAoB,EACpB,uBAAuB,EACvB,cAAc,EACd,qBAAqB,EACrB,qBAAqB,EACrB,+BAA+B,EAC/B,0BAA0B,EAC1B,uBAAuB,GACxB,MAAM,0BAA0B,CAAA;AAKjC,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACtB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,yBAAyB,EACzB,uBAAuB,EACvB,KAAK,0BAA0B,EAC/B,wBAAwB,EACxB,kBAAkB,EAClB,+BAA+B,EAC/B,KAAK,aAAa,EAClB,KAAK,gBAAgB,EACrB,kBAAkB,EAClB,iBAAiB,EACjB,oBAAoB,EACpB,sBAAsB,EACtB,wBAAwB,EACxB,cAAc,EACd,iBAAiB,EACjB,mCAAmC,EACnC,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EACf,mBAAmB,EACnB,aAAa,EACb,8BAA8B,EAC9B,gCAAgC,EAChC,KAAK,WAAW,EAChB,KAAK,iBAAiB,EACtB,qBAAqB,EACrB,0BAA0B,EAC1B,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,sBAAsB,CAAA;AAE7B,OAAO,EACL,sBAAsB,EACtB,KAAK,kCAAkC,GACxC,MAAM,6CAA6C,CAAA;AACpD,OAAO,EACL,qBAAqB,EACrB,KAAK,iCAAiC,EACtC,KAAK,6BAA6B,GACnC,MAAM,4CAA4C,CAAA;AACnD,OAAO,EAAE,6BAA6B,EAAE,MAAM,oDAAoD,CAAA;AAClG,OAAO,EACL,mBAAmB,EACnB,KAAK,+BAA+B,GACrC,MAAM,0CAA0C,CAAA;AACjD,OAAO,EACL,KAAK,oBAAoB,EACzB,YAAY,EACZ,YAAY,EACZ,eAAe,EACf,mBAAmB,GACpB,MAAM,uCAAuC,CAAA;AAC9C,OAAO,KAAK,mBAAmB,MAAM,4CAA4C,CAAA;AAGjF,OAAO,EACL,kBAAkB,EAClB,KAAK,8BAA8B,EACnC,KAAK,0BAA0B,GAChC,MAAM,sCAAsC,CAAA;AAC7C,OAAO,EACL,mBAAmB,EACnB,KAAK,+BAA+B,GACrC,MAAM,uCAAuC,CAAA;AAC9C,OAAO,EAAE,gBAAgB,EAAE,KAAK,mBAAmB,EAAE,MAAM,oCAAoC,CAAA;AAC/F,OAAO,KAAK,gBAAgB,MAAM,sCAAsC,CAAA;AACxE,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,gBAAgB,EAChB,KAAK,gBAAgB,EACrB,KAAK,qBAAqB,EAC1B,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,oBAAoB,GAC1B,MAAM,sCAAsC,CAAA"}
package/dist/index.js CHANGED
@@ -9,6 +9,11 @@ export { TASK_ESTIMATOR_AGENT_KIND } from './agents/prompts/roles.js';
9
9
  // registers extra kinds by reference on the injected instance. No module-global, no
10
10
  // `clear*()`, no external-adapter module-identity gotcha.
11
11
  export { AgentKindRegistry, defaultAgentKindRegistry, } from './agents/kinds/registry.js';
12
+ // Agent CAPABILITIES: the skills a kind applies and the tool servers (MCP) it may call.
13
+ // A deployment registers reusable definitions on the same injected registry and references
14
+ // them by id from any number of kinds, or declares one inline on a single kind. See
15
+ // `backend/docs/custom-agents.md` → "Capabilities: skills and tools".
16
+ export { bundledSkillToResolved, normalizeSkillRefs, normalizeToolRefs, } from './agents/kinds/capabilities.js';
12
17
  export { isInlineModelStep, REQUIREMENTS_REVIEW_AGENT_KIND, CLARITY_REVIEW_AGENT_KIND, REQUIREMENTS_BRAINSTORM_AGENT_KIND, ARCHITECTURE_BRAINSTORM_AGENT_KIND, } from './agents/kinds/step-surface.js';
13
18
  // Schema-driven structured output: derive a kind's `agent.output` spec + a typed parser from
14
19
  // one valibot schema instead of a hand-written shapeHint string + lenient coercer.
@@ -35,6 +40,7 @@ export { PROMPT_VERSIONS, promptVersion, promptVersionLabel, promptVersionForKin
35
40
  export { KAIZEN_SYSTEM_PROMPT } from './agents/prompts/kaizen.js';
36
41
  export { composeSystemPrompt, composeBlockSystemPrompt, standardsDeliveredAsFiles, STANDARDS_CONTEXT_INDEX_FILE, STANDARDS_CONTEXT_FILE_PREFIX, } from './agents/runtime/fragments.js';
37
42
  export { STANDARD_PHASES, STANDARD_PHASE_BY_KIND, phaseForKind, standardSystemPrompt, renderStandardUserPrompt, initiativePresetSection, CONTEXT_DIR, } from './agents/prompts/standard.js';
43
+ export { toolServersSection } from './agents/prompts/capabilities.js';
38
44
  export { ACCEPTANCE_AGENT_KINDS, acceptanceSystemPrompt, isAcceptanceKind, testApproachSection, } from './agents/prompts/acceptance.js';
39
45
  export { COMPANIONS, isCompanionKind, companionFor, companionTargets, isContainerBackedCompanion, } from './agents/kinds/companions.js';
40
46
  export { companionSystemPrompt } from './agents/prompts/companion.js';
@@ -130,7 +136,7 @@ export { coerceInitiativePlan, canonicalInitiativeJson, hashInitiative, initiati
130
136
  // The generic AI provisioning facade: a mixable provider registry + the base,
131
137
  // runtime-neutral resolvers. Optional/heavier backends ship as their own packages
132
138
  // (e.g. @cat-factory/provider-bedrock) and are mixed into a CompositeModelProvider.
133
- export { CompositeModelProvider, CliInlineLanguageModel, InstrumentedModelProvider, catFactoryObservability, VendorConcurrencyLimiter, limitModelProvider, vendorConcurrencyLimiterFromEnv, MODEL_SUPPORT_DOCS, anthropicResolver, baseProviderRegistry, cloudflareRestResolver, openAiCompatibleResolver, openAiResolver, DEEPSEEK_BASE_URL, DEFAULT_OPENAI_COMPATIBLE_BASE_URLS, isProxyableProvider, MOONSHOT_BASE_URL, OPENAI_BASE_URL, OPENROUTER_BASE_URL, QWEN_BASE_URL, resolveOpenAiCompatibleBaseUrl, UI_CONFIGURABLE_DIRECT_PROVIDERS, cachedTokensFromUsage, inlineCacheProviderOptions, promptCacheParams, providerCachePolicy, } from './providers/index.js';
139
+ export { CompositeModelProvider, CliInlineLanguageModel, InstrumentedModelProvider, catFactoryObservability, VendorConcurrencyLimiter, limitModelProvider, vendorConcurrencyLimiterFromEnv, MODEL_SUPPORT_DOCS, anthropicResolver, baseProviderRegistry, cloudflareRestResolver, openAiCompatibleResolver, openAiResolver, DEEPSEEK_BASE_URL, DEFAULT_OPENAI_COMPATIBLE_BASE_URLS, isProxyableProvider, MOONSHOT_BASE_URL, OPENAI_BASE_URL, OPENROUTER_BASE_URL, QWEN_BASE_URL, resolveOpenAiCompatibleBaseUrl, UI_CONFIGURABLE_DIRECT_PROVIDERS, readInputTokenClasses, inlineCacheProviderOptions, promptCacheParams, providerCachePolicy, } from './providers/index.js';
134
140
  export { FragmentLibraryService, } from './fragmentLibrary/FragmentLibraryService.js';
135
141
  export { FragmentSourceService, } from './fragmentLibrary/FragmentSourceService.js';
136
142
  export { DeterministicFragmentSelector } from './fragmentLibrary/DeterministicFragmentSelector.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -17,12 +17,42 @@ export declare function promptCacheParams(provider: string, cacheKey: string | n
17
17
  */
18
18
  export declare function inlineCacheProviderOptions(provider: string): Record<string, unknown>;
19
19
  /**
20
- * The cached-input-token count a provider reports in its usage, across the field names
21
- * they use. Covers OpenAI (`prompt_tokens_details.cached_tokens`), DeepSeek
22
- * (`prompt_cache_hit_tokens`) and Anthropic (`cache_read_input_tokens`, or the AI SDK's
23
- * camelCase `cacheReadInputTokens`). NOTE on the Anthropic shape: its cache reads are
24
- * reported SEPARATELY from `input_tokens` (they are NOT a subset of it), so a hit-rate
25
- * computed as cached/prompt can exceed 1 callers clamp it (see `cacheHitRate`).
20
+ * The three orthogonal input classes of one model call: input processed from scratch, plus
21
+ * the two cache classes. Additive by construction — total input is their sum — which is the
22
+ * invariant every telemetry population site holds.
23
+ *
24
+ * They stay apart because they are priced an order of magnitude apart in OPPOSITE directions:
25
+ * a cache READ is ~0.1× base input, a cache WRITE 1.25–2×, i.e. dearer than fresh. Summed,
26
+ * a repair loop that keeps invalidating and re-writing its prefix is indistinguishable from
27
+ * one riding a warm cache.
26
28
  */
27
- export declare function cachedTokensFromUsage(usage: unknown): number;
29
+ export interface InputTokenClasses {
30
+ fresh: number;
31
+ cacheRead: number;
32
+ cacheWrite: number;
33
+ }
34
+ /**
35
+ * Read a provider's usage payload into the three input classes, reconciling the two shapes
36
+ * vendors report in. This is ONE function rather than a "read the cache classes" helper plus
37
+ * a "subtract them" helper, because splitting it made the shape decision a rule the CALLER
38
+ * had to know and pair correctly — and the pairing is the whole subtlety.
39
+ *
40
+ * The shape is decided by WHICH read field the payload carries, and the two classes are read
41
+ * INDEPENDENTLY of each other:
42
+ *
43
+ * - **Inclusive** (OpenAI `prompt_tokens_details.cached_tokens`, DeepSeek
44
+ * `prompt_cache_hit_tokens`): the prompt count is the WHOLE prompt and every cache class the
45
+ * payload reports is a partition of it, so both come off. Subtracting both — not just the
46
+ * read — is what keeps the total we record equal to the vendor's own `prompt_tokens`: an
47
+ * OpenAI-shaped gateway fronting Anthropic (`litellm`, OpenRouter) reports its reads under
48
+ * the OpenAI field AND a `cache_creation_input_tokens` beside it, and reading only one of
49
+ * them would either drop the dearest class or mint input the vendor never billed.
50
+ * - **Exclusive** (Anthropic `cache_read_input_tokens` / `cache_creation_input_tokens`, or the
51
+ * AI SDK's camelCase spellings): `input_tokens` is already fresh-only and the classes sit
52
+ * beside it, so nothing is subtracted.
53
+ *
54
+ * Everything is clamped at 0 and read defensively: the counts come off ONE payload, so a
55
+ * vendor inconsistency must degrade to a sane number rather than mint a negative one.
56
+ */
57
+ export declare function readInputTokenClasses(usage: unknown): InputTokenClasses;
28
58
  //# sourceMappingURL=cache.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../../src/providers/cache.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,KAAK,WAAW,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AAE3E,OAAO,EAAE,KAAK,WAAW,EAAE,mBAAmB,EAAE,CAAA;AAEhD;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAClC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAGzB;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAKpF;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAgB5D"}
1
+ {"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../../src/providers/cache.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,KAAK,WAAW,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AAE3E,OAAO,EAAE,KAAK,WAAW,EAAE,mBAAmB,EAAE,CAAA;AAEhD;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAClC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAGzB;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAKpF;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAA;IACb,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;CACnB;AAgBD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,OAAO,GAAG,iBAAiB,CA4BvE"}
@@ -37,33 +37,67 @@ export function inlineCacheProviderOptions(provider) {
37
37
  }
38
38
  return {};
39
39
  }
40
+ const ZERO_INPUT_CLASSES = { fresh: 0, cacheRead: 0, cacheWrite: 0 };
40
41
  /**
41
- * The cached-input-token count a provider reports in its usage, across the field names
42
- * they use. Covers OpenAI (`prompt_tokens_details.cached_tokens`), DeepSeek
43
- * (`prompt_cache_hit_tokens`) and Anthropic (`cache_read_input_tokens`, or the AI SDK's
44
- * camelCase `cacheReadInputTokens`). NOTE on the Anthropic shape: its cache reads are
45
- * reported SEPARATELY from `input_tokens` (they are NOT a subset of it), so a hit-rate
46
- * computed as cached/prompt can exceed 1 — callers clamp it (see `cacheHitRate`).
42
+ * The first candidate that is a usable token count, else 0. Vendors spell the same figure
43
+ * several ways and occasionally omit or garble one, so a count is only accepted when it is a
44
+ * finite positive number never coerced, never allowed to go negative.
47
45
  */
48
- export function cachedTokensFromUsage(usage) {
46
+ function firstNumber(...candidates) {
47
+ for (const value of candidates) {
48
+ if (typeof value === 'number' && Number.isFinite(value) && value > 0)
49
+ return value;
50
+ }
51
+ return 0;
52
+ }
53
+ /**
54
+ * Read a provider's usage payload into the three input classes, reconciling the two shapes
55
+ * vendors report in. This is ONE function rather than a "read the cache classes" helper plus
56
+ * a "subtract them" helper, because splitting it made the shape decision a rule the CALLER
57
+ * had to know and pair correctly — and the pairing is the whole subtlety.
58
+ *
59
+ * The shape is decided by WHICH read field the payload carries, and the two classes are read
60
+ * INDEPENDENTLY of each other:
61
+ *
62
+ * - **Inclusive** (OpenAI `prompt_tokens_details.cached_tokens`, DeepSeek
63
+ * `prompt_cache_hit_tokens`): the prompt count is the WHOLE prompt and every cache class the
64
+ * payload reports is a partition of it, so both come off. Subtracting both — not just the
65
+ * read — is what keeps the total we record equal to the vendor's own `prompt_tokens`: an
66
+ * OpenAI-shaped gateway fronting Anthropic (`litellm`, OpenRouter) reports its reads under
67
+ * the OpenAI field AND a `cache_creation_input_tokens` beside it, and reading only one of
68
+ * them would either drop the dearest class or mint input the vendor never billed.
69
+ * - **Exclusive** (Anthropic `cache_read_input_tokens` / `cache_creation_input_tokens`, or the
70
+ * AI SDK's camelCase spellings): `input_tokens` is already fresh-only and the classes sit
71
+ * beside it, so nothing is subtracted.
72
+ *
73
+ * Everything is clamped at 0 and read defensively: the counts come off ONE payload, so a
74
+ * vendor inconsistency must degrade to a sane number rather than mint a negative one.
75
+ */
76
+ export function readInputTokenClasses(usage) {
49
77
  if (typeof usage !== 'object' || usage === null)
50
- return 0;
78
+ return ZERO_INPUT_CLASSES;
51
79
  const u = usage;
52
- // OpenAI: prompt_tokens_details.cached_tokens.
80
+ // The prompt count under the OpenAI wire name, falling back to the Anthropic/AI-SDK ones so
81
+ // a raw vendor payload still yields its fresh figure instead of a silent 0.
82
+ const promptCount = firstNumber(u.prompt_tokens, u.input_tokens, u.inputTokens);
83
+ // Read independently of the read class: on a gateway shape both fields are present, and
84
+ // detecting one must never suppress the other.
85
+ const cacheWrite = firstNumber(u.cache_creation_input_tokens, u.cacheCreationInputTokens);
53
86
  const details = u.prompt_tokens_details;
54
- if (typeof details === 'object' && details !== null) {
55
- const cached = details.cached_tokens;
56
- if (typeof cached === 'number' && cached >= 0)
57
- return cached;
87
+ const openAiCached = typeof details === 'object' && details !== null
88
+ ? details.cached_tokens
89
+ : undefined;
90
+ // The presence of an inclusive-shape read field is what identifies the shape, so it is
91
+ // probed for a NUMBER rather than mere presence: a junk value must fall through to the
92
+ // exclusive reading, not commit the payload to a subtraction on a count of 0.
93
+ if (typeof openAiCached === 'number' || typeof u.prompt_cache_hit_tokens === 'number') {
94
+ const cacheRead = firstNumber(openAiCached, u.prompt_cache_hit_tokens);
95
+ return { fresh: Math.max(0, promptCount - cacheRead - cacheWrite), cacheRead, cacheWrite };
58
96
  }
59
- // DeepSeek: prompt_cache_hit_tokens.
60
- const hit = u.prompt_cache_hit_tokens;
61
- if (typeof hit === 'number' && hit >= 0)
62
- return hit;
63
- // Anthropic: cache_read_input_tokens (raw API) / cacheReadInputTokens (AI SDK).
64
- const anthropicRead = u.cache_read_input_tokens ?? u.cacheReadInputTokens;
65
- if (typeof anthropicRead === 'number' && anthropicRead >= 0)
66
- return anthropicRead;
67
- return 0;
97
+ return {
98
+ fresh: promptCount,
99
+ cacheRead: firstNumber(u.cache_read_input_tokens, u.cacheReadInputTokens),
100
+ cacheWrite,
101
+ };
68
102
  }
69
103
  //# sourceMappingURL=cache.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cache.js","sourceRoot":"","sources":["../../src/providers/cache.ts"],"names":[],"mappings":"AAAA,sFAAsF;AACtF,kFAAkF;AAClF,sFAAsF;AACtF,mFAAmF;AACnF,wFAAwF;AACxF,uFAAuF;AACvF,iBAAiB;AACjB,EAAE;AACF,kEAAkE;AAClE,gFAAgF;AAChF,uFAAuF;AACvF,4DAA4D;AAC5D,OAAO,EAAoB,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AAE3E,OAAO,EAAoB,mBAAmB,EAAE,CAAA;AAEhD;;;;;;;GAOG;AACH,MAAM,UAAU,iBAAiB,CAC/B,QAAgB,EAChB,QAAmC;IAEnC,IAAI,QAAQ,IAAI,QAAQ,KAAK,QAAQ;QAAE,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,CAAA;IAC5E,OAAO,EAAE,CAAA;AACX,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,0BAA0B,CAAC,QAAgB;IACzD,IAAI,mBAAmB,CAAC,QAAQ,CAAC,KAAK,oBAAoB,EAAE,CAAC;QAC3D,OAAO,EAAE,SAAS,EAAE,EAAE,YAAY,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,EAAE,CAAA;IAC/D,CAAC;IACD,OAAO,EAAE,CAAA;AACX,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,qBAAqB,CAAC,KAAc;IAClD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,CAAC,CAAA;IACzD,MAAM,CAAC,GAAG,KAAgC,CAAA;IAC1C,+CAA+C;IAC/C,MAAM,OAAO,GAAG,CAAC,CAAC,qBAAqB,CAAA;IACvC,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACpD,MAAM,MAAM,GAAI,OAAmC,CAAC,aAAa,CAAA;QACjE,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,IAAI,CAAC;YAAE,OAAO,MAAM,CAAA;IAC9D,CAAC;IACD,qCAAqC;IACrC,MAAM,GAAG,GAAG,CAAC,CAAC,uBAAuB,CAAA;IACrC,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,IAAI,CAAC;QAAE,OAAO,GAAG,CAAA;IACnD,gFAAgF;IAChF,MAAM,aAAa,GAAG,CAAC,CAAC,uBAAuB,IAAI,CAAC,CAAC,oBAAoB,CAAA;IACzE,IAAI,OAAO,aAAa,KAAK,QAAQ,IAAI,aAAa,IAAI,CAAC;QAAE,OAAO,aAAa,CAAA;IACjF,OAAO,CAAC,CAAA;AACV,CAAC"}
1
+ {"version":3,"file":"cache.js","sourceRoot":"","sources":["../../src/providers/cache.ts"],"names":[],"mappings":"AAAA,sFAAsF;AACtF,kFAAkF;AAClF,sFAAsF;AACtF,mFAAmF;AACnF,wFAAwF;AACxF,uFAAuF;AACvF,iBAAiB;AACjB,EAAE;AACF,kEAAkE;AAClE,gFAAgF;AAChF,uFAAuF;AACvF,4DAA4D;AAC5D,OAAO,EAAoB,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AAE3E,OAAO,EAAoB,mBAAmB,EAAE,CAAA;AAEhD;;;;;;;GAOG;AACH,MAAM,UAAU,iBAAiB,CAC/B,QAAgB,EAChB,QAAmC;IAEnC,IAAI,QAAQ,IAAI,QAAQ,KAAK,QAAQ;QAAE,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,CAAA;IAC5E,OAAO,EAAE,CAAA;AACX,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,0BAA0B,CAAC,QAAgB;IACzD,IAAI,mBAAmB,CAAC,QAAQ,CAAC,KAAK,oBAAoB,EAAE,CAAC;QAC3D,OAAO,EAAE,SAAS,EAAE,EAAE,YAAY,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,EAAE,CAAA;IAC/D,CAAC;IACD,OAAO,EAAE,CAAA;AACX,CAAC;AAkBD,MAAM,kBAAkB,GAAsB,EAAE,KAAK,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,CAAA;AAEvF;;;;GAIG;AACH,SAAS,WAAW,CAAC,GAAG,UAAqB;IAC3C,KAAK,MAAM,KAAK,IAAI,UAAU,EAAE,CAAC;QAC/B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC;YAAE,OAAO,KAAK,CAAA;IACpF,CAAC;IACD,OAAO,CAAC,CAAA;AACV,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,UAAU,qBAAqB,CAAC,KAAc;IAClD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,kBAAkB,CAAA;IAC1E,MAAM,CAAC,GAAG,KAAgC,CAAA;IAC1C,4FAA4F;IAC5F,4EAA4E;IAC5E,MAAM,WAAW,GAAG,WAAW,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,WAAW,CAAC,CAAA;IAC/E,wFAAwF;IACxF,+CAA+C;IAC/C,MAAM,UAAU,GAAG,WAAW,CAAC,CAAC,CAAC,2BAA2B,EAAE,CAAC,CAAC,wBAAwB,CAAC,CAAA;IAEzF,MAAM,OAAO,GAAG,CAAC,CAAC,qBAAqB,CAAA;IACvC,MAAM,YAAY,GAChB,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,IAAI;QAC7C,CAAC,CAAE,OAAmC,CAAC,aAAa;QACpD,CAAC,CAAC,SAAS,CAAA;IACf,uFAAuF;IACvF,uFAAuF;IACvF,8EAA8E;IAC9E,IAAI,OAAO,YAAY,KAAK,QAAQ,IAAI,OAAO,CAAC,CAAC,uBAAuB,KAAK,QAAQ,EAAE,CAAC;QACtF,MAAM,SAAS,GAAG,WAAW,CAAC,YAAY,EAAE,CAAC,CAAC,uBAAuB,CAAC,CAAA;QACtE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,WAAW,GAAG,SAAS,GAAG,UAAU,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,CAAA;IAC5F,CAAC;IAED,OAAO;QACL,KAAK,EAAE,WAAW;QAClB,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC,uBAAuB,EAAE,CAAC,CAAC,oBAAoB,CAAC;QACzE,UAAU;KACX,CAAA;AACH,CAAC"}
@@ -16,8 +16,17 @@ export interface InlineCliResult {
16
16
  text: string;
17
17
  /** `length` when the model hit its output cap (the reviewer rejects a truncated doc). */
18
18
  finishReason?: 'stop' | 'length';
19
+ /**
20
+ * The call's token usage, with the input side split into its three orthogonal classes:
21
+ * `inputTokens` is FRESH input only, exclusive of both caches, so the total input is
22
+ * `inputTokens + cacheReadTokens + cacheWriteTokens`. A harness CLI that reports no cache
23
+ * breakdown leaves the two cache fields absent (⇒ 0), which is honest: on that shape the
24
+ * fresh count IS the whole input.
25
+ */
19
26
  usage?: {
20
27
  inputTokens?: number;
28
+ cacheReadTokens?: number;
29
+ cacheWriteTokens?: number;
21
30
  outputTokens?: number;
22
31
  };
23
32
  }
@@ -1 +1 @@
1
- {"version":3,"file":"cli-inline.d.ts","sourceRoot":"","sources":["../../src/providers/cli-inline.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,0BAA0B,EAC1B,6BAA6B,EAG7B,2BAA2B,EAC5B,MAAM,kBAAkB,CAAA;AAczB,+FAA+F;AAC/F,MAAM,WAAW,gBAAgB;IAC/B,mDAAmD;IACnD,KAAK,EAAE,MAAM,CAAA;IACb,qDAAqD;IACrD,MAAM,EAAE,MAAM,CAAA;IACd,gCAAgC;IAChC,MAAM,EAAE,MAAM,CAAA;IACd,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,MAAM,CAAC,EAAE,WAAW,CAAA;CACrB;AAED,wDAAwD;AACxD,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAA;IACZ,yFAAyF;IACzF,YAAY,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAA;IAChC,KAAK,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;CACxD;AAED,kFAAkF;AAClF,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,EAAE,gBAAgB,KAAK,OAAO,CAAC,eAAe,CAAC,CAAA;AA4BrF,qBAAa,sBAAuB,YAAW,eAAe;IAK1D,QAAQ,CAAC,QAAQ,EAAE,MAAM;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM;IACxB,OAAO,CAAC,QAAQ,CAAC,GAAG;IANtB,QAAQ,CAAC,oBAAoB,EAAG,IAAI,CAAS;IAC7C,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAK;IAErD,YACW,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACP,GAAG,EAAE,eAAe,EACnC;IAEE,UAAU,CAAC,OAAO,EAAE,0BAA0B,GAAG,OAAO,CAAC,6BAA6B,CAAC,CAiB5F;IAEK,QAAQ,CAAC,OAAO,EAAE,0BAA0B,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAmBxF;CACF"}
1
+ {"version":3,"file":"cli-inline.d.ts","sourceRoot":"","sources":["../../src/providers/cli-inline.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,0BAA0B,EAC1B,6BAA6B,EAG7B,2BAA2B,EAC5B,MAAM,kBAAkB,CAAA;AAczB,+FAA+F;AAC/F,MAAM,WAAW,gBAAgB;IAC/B,mDAAmD;IACnD,KAAK,EAAE,MAAM,CAAA;IACb,qDAAqD;IACrD,MAAM,EAAE,MAAM,CAAA;IACd,gCAAgC;IAChC,MAAM,EAAE,MAAM,CAAA;IACd,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,MAAM,CAAC,EAAE,WAAW,CAAA;CACrB;AAED,wDAAwD;AACxD,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAA;IACZ,yFAAyF;IACzF,YAAY,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAA;IAChC;;;;;;OAMG;IACH,KAAK,CAAC,EAAE;QACN,WAAW,CAAC,EAAE,MAAM,CAAA;QACpB,eAAe,CAAC,EAAE,MAAM,CAAA;QACxB,gBAAgB,CAAC,EAAE,MAAM,CAAA;QACzB,YAAY,CAAC,EAAE,MAAM,CAAA;KACtB,CAAA;CACF;AAED,kFAAkF;AAClF,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,EAAE,gBAAgB,KAAK,OAAO,CAAC,eAAe,CAAC,CAAA;AAsCrF,qBAAa,sBAAuB,YAAW,eAAe;IAK1D,QAAQ,CAAC,QAAQ,EAAE,MAAM;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM;IACxB,OAAO,CAAC,QAAQ,CAAC,GAAG;IANtB,QAAQ,CAAC,oBAAoB,EAAG,IAAI,CAAS;IAC7C,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAK;IAErD,YACW,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACP,GAAG,EAAE,eAAe,EACnC;IAEE,UAAU,CAAC,OAAO,EAAE,0BAA0B,GAAG,OAAO,CAAC,6BAA6B,CAAC,CAiB5F;IAEK,QAAQ,CAAC,OAAO,EAAE,0BAA0B,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAmBxF;CACF"}
@@ -17,10 +17,20 @@ function flattenPrompt(prompt) {
17
17
  return { system: systemParts.join('\n\n'), user: userParts.join('\n\n') };
18
18
  }
19
19
  function toUsage(usage) {
20
- const input = usage?.inputTokens;
20
+ const fresh = usage?.inputTokens;
21
+ const cacheRead = usage?.cacheReadTokens ?? 0;
22
+ const cacheWrite = usage?.cacheWriteTokens ?? 0;
21
23
  const output = usage?.outputTokens;
24
+ // `noCache` is the fresh count the runner reported; `total` is the whole input side, so the
25
+ // cache classes are added back onto it. Reporting fresh as the total would make a
26
+ // cache-heavy subscription run look nearly free on the trace sink.
22
27
  return {
23
- inputTokens: { total: input, noCache: input, cacheRead: 0, cacheWrite: 0 },
28
+ inputTokens: {
29
+ total: fresh == null ? undefined : fresh + cacheRead + cacheWrite,
30
+ noCache: fresh,
31
+ cacheRead,
32
+ cacheWrite,
33
+ },
24
34
  outputTokens: { total: output, text: output, reasoning: 0 },
25
35
  };
26
36
  }
@@ -1 +1 @@
1
- {"version":3,"file":"cli-inline.js","sourceRoot":"","sources":["../../src/providers/cli-inline.ts"],"names":[],"mappings":"AA6CA,iGAAiG;AACjG,SAAS,aAAa,CAAC,MAA6B;IAClD,MAAM,WAAW,GAAa,EAAE,CAAA;IAChC,MAAM,SAAS,GAAa,EAAE,CAAA;IAC9B,KAAK,MAAM,OAAO,IAAI,MAAM,EAAE,CAAC;QAC7B,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC9B,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QACnC,CAAC;aAAM,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YACnC,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;gBACnC,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM;oBAAE,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YACrD,CAAC;QACH,CAAC;QACD,yFAAyF;IAC3F,CAAC;IACD,OAAO,EAAE,MAAM,EAAE,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAA;AAC3E,CAAC;AAED,SAAS,OAAO,CAAC,KAA+B;IAC9C,MAAM,KAAK,GAAG,KAAK,EAAE,WAAW,CAAA;IAChC,MAAM,MAAM,GAAG,KAAK,EAAE,YAAY,CAAA;IAClC,OAAO;QACL,WAAW,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE;QAC1E,YAAY,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,EAAE;KAC5D,CAAA;AACH,CAAC;AAED,MAAM,OAAO,sBAAsB;IAKtB,QAAQ;IACR,OAAO;IACC,GAAG;IANb,oBAAoB,GAAG,IAAa,CAAA;IACpC,aAAa,GAA6B,EAAE,CAAA;IAErD,YACW,QAAgB,EAChB,OAAe,EACP,GAAoB;wBAF5B,QAAQ;uBACR,OAAO;mBACC,GAAG;IACnB,CAAC;IAEJ,KAAK,CAAC,UAAU,CAAC,OAAmC;QAClD,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;QACtD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC;YAC5B,KAAK,EAAE,IAAI,CAAC,OAAO;YACnB,MAAM;YACN,MAAM,EAAE,IAAI;YACZ,GAAG,CAAC,OAAO,CAAC,eAAe,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACxF,GAAG,CAAC,OAAO,CAAC,WAAW,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5E,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAChE,CAAC,CAAA;QACF,MAAM,MAAM,GAAG,MAAM,CAAC,YAAY,IAAI,MAAM,CAAA;QAC5C,OAAO;YACL,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE;YACjE,YAAY,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE;YAC9C,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;YAC5B,QAAQ,EAAE,EAAE;SACb,CAAA;IACH,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,OAAmC;QAChD,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;QAChD,MAAM,IAAI,GAAG,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QAC9F,MAAM,MAAM,GAAG,IAAI,cAAc,CAA4B;YAC3D,KAAK,CAAC,UAAU;gBACd,UAAU,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,QAAQ,EAAE,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAA;gBAC1E,MAAM,EAAE,GAAG,GAAG,CAAA;gBACd,UAAU,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC,CAAA;gBAC9C,IAAI,IAAI;oBAAE,UAAU,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;gBACrE,UAAU,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,CAAA;gBAC5C,UAAU,CAAC,OAAO,CAAC;oBACjB,IAAI,EAAE,QAAQ;oBACd,KAAK,EAAE,SAAS,CAAC,KAAK;oBACtB,YAAY,EAAE,SAAS,CAAC,YAAY;iBACrC,CAAC,CAAA;gBACF,UAAU,CAAC,KAAK,EAAE,CAAA;YACpB,CAAC;SACF,CAAC,CAAA;QACF,OAAO,EAAE,MAAM,EAAE,CAAA;IACnB,CAAC;CACF"}
1
+ {"version":3,"file":"cli-inline.js","sourceRoot":"","sources":["../../src/providers/cli-inline.ts"],"names":[],"mappings":"AAyDA,iGAAiG;AACjG,SAAS,aAAa,CAAC,MAA6B;IAClD,MAAM,WAAW,GAAa,EAAE,CAAA;IAChC,MAAM,SAAS,GAAa,EAAE,CAAA;IAC9B,KAAK,MAAM,OAAO,IAAI,MAAM,EAAE,CAAC;QAC7B,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC9B,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QACnC,CAAC;aAAM,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YACnC,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;gBACnC,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM;oBAAE,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YACrD,CAAC;QACH,CAAC;QACD,yFAAyF;IAC3F,CAAC;IACD,OAAO,EAAE,MAAM,EAAE,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAA;AAC3E,CAAC;AAED,SAAS,OAAO,CAAC,KAA+B;IAC9C,MAAM,KAAK,GAAG,KAAK,EAAE,WAAW,CAAA;IAChC,MAAM,SAAS,GAAG,KAAK,EAAE,eAAe,IAAI,CAAC,CAAA;IAC7C,MAAM,UAAU,GAAG,KAAK,EAAE,gBAAgB,IAAI,CAAC,CAAA;IAC/C,MAAM,MAAM,GAAG,KAAK,EAAE,YAAY,CAAA;IAClC,4FAA4F;IAC5F,kFAAkF;IAClF,mEAAmE;IACnE,OAAO;QACL,WAAW,EAAE;YACX,KAAK,EAAE,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,GAAG,SAAS,GAAG,UAAU;YACjE,OAAO,EAAE,KAAK;YACd,SAAS;YACT,UAAU;SACX;QACD,YAAY,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,EAAE;KAC5D,CAAA;AACH,CAAC;AAED,MAAM,OAAO,sBAAsB;IAKtB,QAAQ;IACR,OAAO;IACC,GAAG;IANb,oBAAoB,GAAG,IAAa,CAAA;IACpC,aAAa,GAA6B,EAAE,CAAA;IAErD,YACW,QAAgB,EAChB,OAAe,EACP,GAAoB;wBAF5B,QAAQ;uBACR,OAAO;mBACC,GAAG;IACnB,CAAC;IAEJ,KAAK,CAAC,UAAU,CAAC,OAAmC;QAClD,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;QACtD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC;YAC5B,KAAK,EAAE,IAAI,CAAC,OAAO;YACnB,MAAM;YACN,MAAM,EAAE,IAAI;YACZ,GAAG,CAAC,OAAO,CAAC,eAAe,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACxF,GAAG,CAAC,OAAO,CAAC,WAAW,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5E,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAChE,CAAC,CAAA;QACF,MAAM,MAAM,GAAG,MAAM,CAAC,YAAY,IAAI,MAAM,CAAA;QAC5C,OAAO;YACL,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE;YACjE,YAAY,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE;YAC9C,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;YAC5B,QAAQ,EAAE,EAAE;SACb,CAAA;IACH,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,OAAmC;QAChD,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;QAChD,MAAM,IAAI,GAAG,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QAC9F,MAAM,MAAM,GAAG,IAAI,cAAc,CAA4B;YAC3D,KAAK,CAAC,UAAU;gBACd,UAAU,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,QAAQ,EAAE,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAA;gBAC1E,MAAM,EAAE,GAAG,GAAG,CAAA;gBACd,UAAU,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC,CAAA;gBAC9C,IAAI,IAAI;oBAAE,UAAU,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;gBACrE,UAAU,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,CAAA;gBAC5C,UAAU,CAAC,OAAO,CAAC;oBACjB,IAAI,EAAE,QAAQ;oBACd,KAAK,EAAE,SAAS,CAAC,KAAK;oBACtB,YAAY,EAAE,SAAS,CAAC,YAAY;iBACrC,CAAC,CAAA;gBACF,UAAU,CAAC,KAAK,EAAE,CAAA;YACpB,CAAC;SACF,CAAC,CAAA;QACF,OAAO,EAAE,MAAM,EAAE,CAAA;IACnB,CAAC;CACF"}
@@ -5,5 +5,5 @@ export { InstrumentedModelProvider, catFactoryObservability, type InlineObservab
5
5
  export { VendorConcurrencyLimiter, limitModelProvider, vendorConcurrencyLimiterFromEnv, } from './limited.js';
6
6
  export { anthropicResolver, baseProviderRegistry, cloudflareRestResolver, openAiCompatibleResolver, openAiResolver, } from './resolvers.js';
7
7
  export { DEEPSEEK_BASE_URL, DEFAULT_OPENAI_COMPATIBLE_BASE_URLS, isProxyableProvider, MOONSHOT_BASE_URL, OPENAI_BASE_URL, OPENROUTER_BASE_URL, QWEN_BASE_URL, resolveOpenAiCompatibleBaseUrl, UI_CONFIGURABLE_DIRECT_PROVIDERS, } from './endpoints.js';
8
- export { type CachePolicy, cachedTokensFromUsage, inlineCacheProviderOptions, promptCacheParams, providerCachePolicy, } from './cache.js';
8
+ export { type CachePolicy, type InputTokenClasses, readInputTokenClasses, inlineCacheProviderOptions, promptCacheParams, providerCachePolicy, } from './cache.js';
9
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/providers/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,KAAK,aAAa,EAAE,KAAK,gBAAgB,EAAE,MAAM,eAAe,CAAA;AACjG,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAA;AAC9C,OAAO,EACL,sBAAsB,EACtB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,eAAe,GACrB,MAAM,iBAAiB,CAAA;AACxB,OAAO,EACL,yBAAyB,EACzB,uBAAuB,EACvB,KAAK,0BAA0B,GAChC,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EACL,wBAAwB,EACxB,kBAAkB,EAClB,+BAA+B,GAChC,MAAM,cAAc,CAAA;AACrB,OAAO,EACL,iBAAiB,EACjB,oBAAoB,EACpB,sBAAsB,EACtB,wBAAwB,EACxB,cAAc,GACf,MAAM,gBAAgB,CAAA;AACvB,OAAO,EACL,iBAAiB,EACjB,mCAAmC,EACnC,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EACf,mBAAmB,EACnB,aAAa,EACb,8BAA8B,EAC9B,gCAAgC,GACjC,MAAM,gBAAgB,CAAA;AACvB,OAAO,EACL,KAAK,WAAW,EAChB,qBAAqB,EACrB,0BAA0B,EAC1B,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,YAAY,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/providers/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,KAAK,aAAa,EAAE,KAAK,gBAAgB,EAAE,MAAM,eAAe,CAAA;AACjG,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAA;AAC9C,OAAO,EACL,sBAAsB,EACtB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,eAAe,GACrB,MAAM,iBAAiB,CAAA;AACxB,OAAO,EACL,yBAAyB,EACzB,uBAAuB,EACvB,KAAK,0BAA0B,GAChC,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EACL,wBAAwB,EACxB,kBAAkB,EAClB,+BAA+B,GAChC,MAAM,cAAc,CAAA;AACrB,OAAO,EACL,iBAAiB,EACjB,oBAAoB,EACpB,sBAAsB,EACtB,wBAAwB,EACxB,cAAc,GACf,MAAM,gBAAgB,CAAA;AACvB,OAAO,EACL,iBAAiB,EACjB,mCAAmC,EACnC,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EACf,mBAAmB,EACnB,aAAa,EACb,8BAA8B,EAC9B,gCAAgC,GACjC,MAAM,gBAAgB,CAAA;AACvB,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,iBAAiB,EACtB,qBAAqB,EACrB,0BAA0B,EAC1B,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,YAAY,CAAA"}
@@ -5,5 +5,5 @@ export { InstrumentedModelProvider, catFactoryObservability, } from './instrumen
5
5
  export { VendorConcurrencyLimiter, limitModelProvider, vendorConcurrencyLimiterFromEnv, } from './limited.js';
6
6
  export { anthropicResolver, baseProviderRegistry, cloudflareRestResolver, openAiCompatibleResolver, openAiResolver, } from './resolvers.js';
7
7
  export { DEEPSEEK_BASE_URL, DEFAULT_OPENAI_COMPATIBLE_BASE_URLS, isProxyableProvider, MOONSHOT_BASE_URL, OPENAI_BASE_URL, OPENROUTER_BASE_URL, QWEN_BASE_URL, resolveOpenAiCompatibleBaseUrl, UI_CONFIGURABLE_DIRECT_PROVIDERS, } from './endpoints.js';
8
- export { cachedTokensFromUsage, inlineCacheProviderOptions, promptCacheParams, providerCachePolicy, } from './cache.js';
8
+ export { readInputTokenClasses, inlineCacheProviderOptions, promptCacheParams, providerCachePolicy, } from './cache.js';
9
9
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/providers/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAA6C,MAAM,eAAe,CAAA;AACjG,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAA;AAC9C,OAAO,EACL,sBAAsB,GAIvB,MAAM,iBAAiB,CAAA;AACxB,OAAO,EACL,yBAAyB,EACzB,uBAAuB,GAExB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EACL,wBAAwB,EACxB,kBAAkB,EAClB,+BAA+B,GAChC,MAAM,cAAc,CAAA;AACrB,OAAO,EACL,iBAAiB,EACjB,oBAAoB,EACpB,sBAAsB,EACtB,wBAAwB,EACxB,cAAc,GACf,MAAM,gBAAgB,CAAA;AACvB,OAAO,EACL,iBAAiB,EACjB,mCAAmC,EACnC,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EACf,mBAAmB,EACnB,aAAa,EACb,8BAA8B,EAC9B,gCAAgC,GACjC,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAEL,qBAAqB,EACrB,0BAA0B,EAC1B,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,YAAY,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/providers/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAA6C,MAAM,eAAe,CAAA;AACjG,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAA;AAC9C,OAAO,EACL,sBAAsB,GAIvB,MAAM,iBAAiB,CAAA;AACxB,OAAO,EACL,yBAAyB,EACzB,uBAAuB,GAExB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EACL,wBAAwB,EACxB,kBAAkB,EAClB,+BAA+B,GAChC,MAAM,cAAc,CAAA;AACrB,OAAO,EACL,iBAAiB,EACjB,oBAAoB,EACpB,sBAAsB,EACtB,wBAAwB,EACxB,cAAc,GACf,MAAM,gBAAgB,CAAA;AACvB,OAAO,EACL,iBAAiB,EACjB,mCAAmC,EACnC,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EACf,mBAAmB,EACnB,aAAa,EACb,8BAA8B,EAC9B,gCAAgC,GACjC,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAGL,qBAAqB,EACrB,0BAA0B,EAC1B,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,YAAY,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"instrumented.d.ts","sourceRoot":"","sources":["../../src/providers/instrumented.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,IAAI,CAAA;AACvC,OAAO,KAAK,EACV,0BAA0B,EAE1B,YAAY,EACZ,MAAM,EACN,aAAa,EACb,QAAQ,EACT,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EACL,uBAAuB,EAIxB,MAAM,qBAAqB,CAAA;AAK5B,OAAO,EAAE,uBAAuB,EAAE,CAAA;AAClC,YAAY,EAAE,0BAA0B,EAAE,CAAA;AAwD1C;;;;GAIG;AACH,qBAAa,yBAA0B,YAAW,aAAa;IAC7D,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAe;IACrC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAc;IACxC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;IACvC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAc;IAClC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAQ;IAE5B,YAAY,IAAI,EAAE;QAChB,KAAK,EAAE,aAAa,CAAA;QACpB,SAAS,EAAE,YAAY,CAAA;QACvB,oFAAoF;QACpF,aAAa,CAAC,EAAE,OAAO,CAAA;QACvB,wDAAwD;QACxD,GAAG,CAAC,EAAE,MAAM,MAAM,CAAA;QAClB,2EAA2E;QAC3E,MAAM,CAAC,EAAE,MAAM,CAAA;KAChB,EAMA;IAED,OAAO,CAAC,GAAG,EAAE,QAAQ,GAAG,aAAa,CAWpC;IAED,OAAO,CAAC,aAAa;IAiBrB,OAAO,CAAC,IAAI;CAsCb"}
1
+ {"version":3,"file":"instrumented.d.ts","sourceRoot":"","sources":["../../src/providers/instrumented.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,IAAI,CAAA;AACvC,OAAO,KAAK,EACV,0BAA0B,EAE1B,YAAY,EACZ,MAAM,EACN,aAAa,EACb,QAAQ,EACT,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EACL,uBAAuB,EAIxB,MAAM,qBAAqB,CAAA;AAK5B,OAAO,EAAE,uBAAuB,EAAE,CAAA;AAClC,YAAY,EAAE,0BAA0B,EAAE,CAAA;AAyF1C;;;;GAIG;AACH,qBAAa,yBAA0B,YAAW,aAAa;IAC7D,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAe;IACrC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAc;IACxC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;IACvC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAc;IAClC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAQ;IAE5B,YAAY,IAAI,EAAE;QAChB,KAAK,EAAE,aAAa,CAAA;QACpB,SAAS,EAAE,YAAY,CAAA;QACvB,oFAAoF;QACpF,aAAa,CAAC,EAAE,OAAO,CAAA;QACvB,wDAAwD;QACxD,GAAG,CAAC,EAAE,MAAM,MAAM,CAAA;QAClB,2EAA2E;QAC3E,MAAM,CAAC,EAAE,MAAM,CAAA;KAChB,EAMA;IAED,OAAO,CAAC,GAAG,EAAE,QAAQ,GAAG,aAAa,CAWpC;IAED,OAAO,CAAC,aAAa;IAiBrB,OAAO,CAAC,IAAI;CAwCb"}
@@ -20,24 +20,44 @@ export { catFactoryObservability };
20
20
  // named `inline`. The instrumentation never changes the model's behaviour and never
21
21
  // throws into the call.
22
22
  /** Read token counts defensively across the AI SDK's flat (v2) and nested (v3) usage shapes. */
23
+ /**
24
+ * Read the SDK's usage into the four orthogonal classes the trace sink carries: `prompt` is
25
+ * FRESH input only, with the two cache classes beside it, so
26
+ * `prompt + cacheRead + cacheWrite` is the total input.
27
+ *
28
+ * The v3 shape already breaks the input down (`{ total, noCache, cacheRead, cacheWrite }`),
29
+ * so the split is read straight off it rather than re-derived; `noCache` is preferred over
30
+ * `total − read − write` because it is what the provider itself reported, and the subtraction
31
+ * is only the fallback for a model that fills `total` but not `noCache`. The v2/flat shape
32
+ * carries no cache breakdown at all, so both classes are 0 and the flat prompt count is
33
+ * already the whole (uncached) input.
34
+ */
23
35
  function readUsage(usage) {
24
36
  const u = usage;
25
37
  if (!u)
26
- return { prompt: 0, completion: 0, total: 0 };
38
+ return { prompt: 0, cacheRead: 0, cacheWrite: 0, completion: 0, total: 0 };
27
39
  const inputTokens = u.inputTokens;
28
40
  const outputTokens = u.outputTokens;
29
- // v3: nested { total, }
41
+ const num = (value) => (typeof value === 'number' ? value : 0);
42
+ // v3: nested { total, noCache, cacheRead, cacheWrite }
30
43
  if (inputTokens && typeof inputTokens === 'object') {
31
- const prompt = Number(inputTokens.total ?? 0);
44
+ const input = inputTokens;
45
+ const cacheRead = num(input.cacheRead);
46
+ const cacheWrite = num(input.cacheWrite);
47
+ const prompt = typeof input.noCache === 'number'
48
+ ? input.noCache
49
+ : Math.max(0, num(input.total) - cacheRead - cacheWrite);
32
50
  const completion = Number(outputTokens?.total ?? 0);
33
- const total = typeof u.totalTokens === 'number' ? u.totalTokens : prompt + completion;
34
- return { prompt, completion, total };
51
+ const total = typeof u.totalTokens === 'number'
52
+ ? u.totalTokens
53
+ : prompt + cacheRead + cacheWrite + completion;
54
+ return { prompt, cacheRead, cacheWrite, completion, total };
35
55
  }
36
- // v2 / legacy flat
56
+ // v2 / legacy flat: no cache breakdown reported.
37
57
  const prompt = Number(inputTokens ?? u.promptTokens ?? 0);
38
58
  const completion = Number(outputTokens ?? u.completionTokens ?? 0);
39
59
  const total = typeof u.totalTokens === 'number' ? u.totalTokens : prompt + completion;
40
- return { prompt, completion, total };
60
+ return { prompt, cacheRead: 0, cacheWrite: 0, completion, total };
41
61
  }
42
62
  /** Extract the assistant text from a generate result, across result shapes. */
43
63
  function readOutputText(result) {
@@ -117,6 +137,8 @@ export class InstrumentedModelProvider {
117
137
  startedAt,
118
138
  endedAt,
119
139
  promptTokens: usage.prompt,
140
+ cacheReadTokens: usage.cacheRead,
141
+ cacheWriteTokens: usage.cacheWrite,
120
142
  completionTokens: usage.completion,
121
143
  totalTokens: usage.total,
122
144
  finishReason: ok ? readFinishReason(result) : null,
@@ -1 +1 @@
1
- {"version":3,"file":"instrumented.js","sourceRoot":"","sources":["../../src/providers/instrumented.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"instrumented.js","sourceRoot":"","sources":["../../src/providers/instrumented.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,10 @@
1
- import type { AgentRunContext, GitHubClient, SkillSourceRepository, WorkspaceRepository } from '@cat-factory/kernel';
1
+ import type { GitHubClient, ResolvedSkill, SkillSourceRepository, WorkspaceRepository } from '@cat-factory/kernel';
2
2
  import type { SkillCatalogService } from './SkillCatalogService.js';
3
3
  import type { ResolveSkillInstallationId } from './SkillSourceService.js';
4
4
  /** The resolved skill (the `AgentRunContext.skill` payload) + the per-run version pin. */
5
5
  export interface ResolvedSkillForRun {
6
- /** Folded onto `AgentRunContext.skill` by the engine and rendered harness-aware by the executor. */
7
- skill: NonNullable<AgentRunContext['skill']>;
6
+ /** Folded onto `AgentRunContext.skills` by the engine and rendered harness-aware by the executor. */
7
+ skill: ResolvedSkill;
8
8
  /** Pinned onto the run step (`PipelineStep.skillVersion`) so the run records exactly what ran. */
9
9
  version: {
10
10
  skillId: string;
@@ -1 +1 @@
1
- {"version":3,"file":"SkillRunResolver.d.ts","sourceRoot":"","sources":["../../src/skillLibrary/SkillRunResolver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,eAAe,EACf,YAAY,EACZ,qBAAqB,EACrB,mBAAmB,EACpB,MAAM,qBAAqB,CAAA;AAG5B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AACnE,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAA;AAEzE,0FAA0F;AAC1F,MAAM,WAAW,mBAAmB;IAClC,oGAAoG;IACpG,KAAK,EAAE,WAAW,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAA;IAC5C,kGAAkG;IAClG,OAAO,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAA;CACjE;AAKD;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,gBAAgB;IAEzB,OAAO,CAAC,QAAQ,CAAC,IAAI;IADvB,YACmB,IAAI,EAAE;QACrB,mBAAmB,EAAE,mBAAmB,CAAA;QACxC,cAAc,EAAE,mBAAmB,CAAA;QACnC,qBAAqB,EAAE,qBAAqB,CAAA;QAC5C,YAAY,EAAE,YAAY,CAAA;QAC1B,qBAAqB,EAAE,0BAA0B,CAAA;QACjD;;;;WAIG;QACH,UAAU,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;KACvE,EACC;IAEJ,oFAAoF;IACpF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAAY;IACtD,4DAA4D;IAC5D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAa;IAE9C,aAAa,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CA8BtF;IAED;;;;;;OAMG;YACW,cAAc;IA4B5B;;;;OAIG;YACW,gBAAgB;CAqD/B"}
1
+ {"version":3,"file":"SkillRunResolver.d.ts","sourceRoot":"","sources":["../../src/skillLibrary/SkillRunResolver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,YAAY,EACZ,aAAa,EAEb,qBAAqB,EACrB,mBAAmB,EACpB,MAAM,qBAAqB,CAAA;AAG5B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AACnE,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAA;AAEzE,0FAA0F;AAC1F,MAAM,WAAW,mBAAmB;IAClC,qGAAqG;IACrG,KAAK,EAAE,aAAa,CAAA;IACpB,kGAAkG;IAClG,OAAO,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAA;CACjE;AAKD;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,gBAAgB;IAEzB,OAAO,CAAC,QAAQ,CAAC,IAAI;IADvB,YACmB,IAAI,EAAE;QACrB,mBAAmB,EAAE,mBAAmB,CAAA;QACxC,cAAc,EAAE,mBAAmB,CAAA;QACnC,qBAAqB,EAAE,qBAAqB,CAAA;QAC5C,YAAY,EAAE,YAAY,CAAA;QAC1B,qBAAqB,EAAE,0BAA0B,CAAA;QACjD;;;;WAIG;QACH,UAAU,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;KACvE,EACC;IAEJ,oFAAoF;IACpF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAAY;IACtD,4DAA4D;IAC5D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAa;IAE9C,aAAa,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CA+BtF;IAED;;;;;;OAMG;YACW,cAAc;IA4B5B;;;;OAIG;YACW,gBAAgB;CAmD/B"}
@@ -46,6 +46,7 @@ export class SkillRunResolver {
46
46
  return {
47
47
  skill: {
48
48
  skillId: record.skillId,
49
+ origin: 'catalog',
49
50
  name: record.name,
50
51
  description: record.description,
51
52
  instructions: record.instructions,
@@ -1 +1 @@
1
- {"version":3,"file":"SkillRunResolver.js","sourceRoot":"","sources":["../../src/skillLibrary/SkillRunResolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SkillRunResolver.js","sourceRoot":"","sources":["../../src/skillLibrary/SkillRunResolver.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cat-factory/agents",
3
- "version": "0.78.0",
3
+ "version": "0.80.0",
4
4
  "description": "Agent catalog, routing, prompts and fragment library for the Agent Architecture Board.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -32,14 +32,14 @@
32
32
  "handlebars": "^4.7.9",
33
33
  "p-map": "^7.0.6",
34
34
  "valibot": "^1.4.2",
35
- "@cat-factory/contracts": "0.181.0",
36
- "@cat-factory/kernel": "0.174.0",
37
- "@cat-factory/prompt-fragments": "0.15.4"
35
+ "@cat-factory/contracts": "0.183.0",
36
+ "@cat-factory/kernel": "0.176.0",
37
+ "@cat-factory/prompt-fragments": "0.15.6"
38
38
  },
39
39
  "devDependencies": {
40
40
  "typescript": "7.0.2",
41
41
  "vitest": "^4.1.10",
42
- "@cat-factory/caching": "0.11.2"
42
+ "@cat-factory/caching": "0.11.4"
43
43
  },
44
44
  "scripts": {
45
45
  "build": "tsc -b tsconfig.build.json",