agentfootprint 9.32.0 → 9.34.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 (112) hide show
  1. package/dist/adapters/hosting/firestoreSessions.js +813 -0
  2. package/dist/adapters/hosting/firestoreSessions.js.map +1 -0
  3. package/dist/core/agent/buildToolRegistry.js +1 -1
  4. package/dist/core/agent/buildToolRegistry.js.map +1 -1
  5. package/dist/core/agent/toolEffects.js +4 -10
  6. package/dist/core/agent/toolEffects.js.map +1 -1
  7. package/dist/core/slots/buildToolsSlot.js +2 -1
  8. package/dist/core/slots/buildToolsSlot.js.map +1 -1
  9. package/dist/doors/skill-graph.js +109 -0
  10. package/dist/doors/skill-graph.js.map +1 -0
  11. package/dist/esm/adapters/hosting/firestoreSessions.d.ts +474 -0
  12. package/dist/esm/adapters/hosting/firestoreSessions.js +803 -0
  13. package/dist/esm/adapters/hosting/firestoreSessions.js.map +1 -0
  14. package/dist/esm/core/agent/buildToolRegistry.js +2 -2
  15. package/dist/esm/core/agent/buildToolRegistry.js.map +1 -1
  16. package/dist/esm/core/agent/toolEffects.d.ts +15 -7
  17. package/dist/esm/core/agent/toolEffects.js +2 -9
  18. package/dist/esm/core/agent/toolEffects.js.map +1 -1
  19. package/dist/esm/core/slots/buildToolsSlot.js +2 -1
  20. package/dist/esm/core/slots/buildToolsSlot.js.map +1 -1
  21. package/dist/esm/doors/skill-graph.d.ts +70 -0
  22. package/dist/esm/doors/skill-graph.js +77 -0
  23. package/dist/esm/doors/skill-graph.js.map +1 -0
  24. package/dist/esm/hosting-providers.d.ts +22 -0
  25. package/dist/esm/hosting-providers.js +27 -0
  26. package/dist/esm/hosting-providers.js.map +1 -1
  27. package/dist/esm/lib/injection-engine/devWarn.d.ts +47 -0
  28. package/dist/esm/lib/injection-engine/devWarn.js +57 -0
  29. package/dist/esm/lib/injection-engine/devWarn.js.map +1 -0
  30. package/dist/esm/lib/injection-engine/devWarnHost.d.ts +16 -0
  31. package/dist/esm/lib/injection-engine/devWarnHost.js +19 -0
  32. package/dist/esm/lib/injection-engine/devWarnHost.js.map +1 -0
  33. package/dist/esm/lib/injection-engine/hostContract.d.ts +211 -0
  34. package/dist/esm/lib/injection-engine/hostContract.js +37 -0
  35. package/dist/esm/lib/injection-engine/hostContract.js.map +1 -0
  36. package/dist/esm/lib/injection-engine/index.d.ts +7 -2
  37. package/dist/esm/lib/injection-engine/index.js +18 -2
  38. package/dist/esm/lib/injection-engine/index.js.map +1 -1
  39. package/dist/esm/lib/injection-engine/skillGraph.d.ts +3 -2
  40. package/dist/esm/lib/injection-engine/skillGraph.js +7 -12
  41. package/dist/esm/lib/injection-engine/skillGraph.js.map +1 -1
  42. package/dist/esm/lib/injection-engine/skillIntent.js +4 -7
  43. package/dist/esm/lib/injection-engine/skillIntent.js.map +1 -1
  44. package/dist/esm/lib/injection-engine/skillSteps.d.ts +18 -10
  45. package/dist/esm/lib/injection-engine/skillSteps.js +17 -12
  46. package/dist/esm/lib/injection-engine/skillSteps.js.map +1 -1
  47. package/dist/esm/lib/injection-engine/skillToolDescriptors.d.ts +119 -0
  48. package/dist/esm/lib/injection-engine/skillToolDescriptors.js +182 -0
  49. package/dist/esm/lib/injection-engine/skillToolDescriptors.js.map +1 -0
  50. package/dist/esm/lib/injection-engine/skillTools.d.ts +41 -79
  51. package/dist/esm/lib/injection-engine/skillTools.js +61 -137
  52. package/dist/esm/lib/injection-engine/skillTools.js.map +1 -1
  53. package/dist/esm/lib/injection-engine/toolOutcome.d.ts +30 -0
  54. package/dist/esm/lib/injection-engine/toolOutcome.js +31 -0
  55. package/dist/esm/lib/injection-engine/toolOutcome.js.map +1 -0
  56. package/dist/esm/lib/injection-engine/types.d.ts +38 -14
  57. package/dist/esm/lib/injection-engine/types.js.map +1 -1
  58. package/dist/hosting-providers.js +34 -1
  59. package/dist/hosting-providers.js.map +1 -1
  60. package/dist/lib/injection-engine/devWarn.js +63 -0
  61. package/dist/lib/injection-engine/devWarn.js.map +1 -0
  62. package/dist/lib/injection-engine/devWarnHost.js +21 -0
  63. package/dist/lib/injection-engine/devWarnHost.js.map +1 -0
  64. package/dist/lib/injection-engine/hostContract.js +38 -0
  65. package/dist/lib/injection-engine/hostContract.js.map +1 -0
  66. package/dist/lib/injection-engine/index.js +23 -2
  67. package/dist/lib/injection-engine/index.js.map +1 -1
  68. package/dist/lib/injection-engine/skillGraph.js +7 -12
  69. package/dist/lib/injection-engine/skillGraph.js.map +1 -1
  70. package/dist/lib/injection-engine/skillIntent.js +4 -7
  71. package/dist/lib/injection-engine/skillIntent.js.map +1 -1
  72. package/dist/lib/injection-engine/skillSteps.js +19 -14
  73. package/dist/lib/injection-engine/skillSteps.js.map +1 -1
  74. package/dist/lib/injection-engine/skillToolDescriptors.js +187 -0
  75. package/dist/lib/injection-engine/skillToolDescriptors.js.map +1 -0
  76. package/dist/lib/injection-engine/skillTools.js +63 -138
  77. package/dist/lib/injection-engine/skillTools.js.map +1 -1
  78. package/dist/lib/injection-engine/toolOutcome.js +34 -0
  79. package/dist/lib/injection-engine/toolOutcome.js.map +1 -0
  80. package/dist/lib/injection-engine/types.js.map +1 -1
  81. package/dist/types/adapters/hosting/firestoreSessions.d.ts +475 -0
  82. package/dist/types/adapters/hosting/firestoreSessions.d.ts.map +1 -0
  83. package/dist/types/core/agent/buildToolRegistry.d.ts.map +1 -1
  84. package/dist/types/core/agent/toolEffects.d.ts +15 -7
  85. package/dist/types/core/agent/toolEffects.d.ts.map +1 -1
  86. package/dist/types/core/slots/buildToolsSlot.d.ts.map +1 -1
  87. package/dist/types/doors/skill-graph.d.ts +71 -0
  88. package/dist/types/doors/skill-graph.d.ts.map +1 -0
  89. package/dist/types/hosting-providers.d.ts +22 -0
  90. package/dist/types/hosting-providers.d.ts.map +1 -1
  91. package/dist/types/lib/injection-engine/devWarn.d.ts +48 -0
  92. package/dist/types/lib/injection-engine/devWarn.d.ts.map +1 -0
  93. package/dist/types/lib/injection-engine/devWarnHost.d.ts +17 -0
  94. package/dist/types/lib/injection-engine/devWarnHost.d.ts.map +1 -0
  95. package/dist/types/lib/injection-engine/hostContract.d.ts +212 -0
  96. package/dist/types/lib/injection-engine/hostContract.d.ts.map +1 -0
  97. package/dist/types/lib/injection-engine/index.d.ts +7 -2
  98. package/dist/types/lib/injection-engine/index.d.ts.map +1 -1
  99. package/dist/types/lib/injection-engine/skillGraph.d.ts +3 -2
  100. package/dist/types/lib/injection-engine/skillGraph.d.ts.map +1 -1
  101. package/dist/types/lib/injection-engine/skillIntent.d.ts.map +1 -1
  102. package/dist/types/lib/injection-engine/skillSteps.d.ts +18 -10
  103. package/dist/types/lib/injection-engine/skillSteps.d.ts.map +1 -1
  104. package/dist/types/lib/injection-engine/skillToolDescriptors.d.ts +120 -0
  105. package/dist/types/lib/injection-engine/skillToolDescriptors.d.ts.map +1 -0
  106. package/dist/types/lib/injection-engine/skillTools.d.ts +41 -79
  107. package/dist/types/lib/injection-engine/skillTools.d.ts.map +1 -1
  108. package/dist/types/lib/injection-engine/toolOutcome.d.ts +31 -0
  109. package/dist/types/lib/injection-engine/toolOutcome.d.ts.map +1 -0
  110. package/dist/types/lib/injection-engine/types.d.ts +38 -14
  111. package/dist/types/lib/injection-engine/types.d.ts.map +1 -1
  112. package/package.json +20 -2
@@ -0,0 +1,19 @@
1
+ /**
2
+ * devWarnHost — agentfootprint's binding of the pure core's dev-warn seam
3
+ * (9.34.0). Side-effect module: importing it is the whole API.
4
+ *
5
+ * The injection-engine barrel imports this for its side effect, so every
6
+ * path that can reach `skillGraph()` inside this package (the main entry,
7
+ * `agentfootprint/context`) has bound the reader before a graph exists.
8
+ * `agentfootprint/skill-graph` deliberately does NOT import it — that door
9
+ * loads no engine, and this file's one job is to read footprintjs's flag.
10
+ *
11
+ * Zone: HOST. It is the only place in the injection engine that may import
12
+ * `footprintjs`, and it exists so the other files do not have to.
13
+ *
14
+ * Listed in package.json `sideEffects` so a bundler keeps it.
15
+ */
16
+ import { isDevMode } from 'footprintjs';
17
+ import { useSkillGraphDevMode } from './devWarn.js';
18
+ useSkillGraphDevMode(isDevMode);
19
+ //# sourceMappingURL=devWarnHost.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"devWarnHost.js","sourceRoot":"","sources":["../../../../src/lib/injection-engine/devWarnHost.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAEpD,oBAAoB,CAAC,SAAS,CAAC,CAAC"}
@@ -0,0 +1,211 @@
1
+ /**
2
+ * hostContract — THE BOUNDARY between the skill-graph runtime and whatever
3
+ * runs it (9.34.0).
4
+ *
5
+ * The skill graph is a pure decision layer: given an `InjectionContext` it
6
+ * says which skill the cursor is in, which skills are reachable from there,
7
+ * and which injections are active. It does not call a model, does not own a
8
+ * loop, and does not know what a `Tool` is in any particular framework. This
9
+ * module is the small set of shapes that statement needs to be TRUE:
10
+ *
11
+ * • {@link SkillToolSchema} / {@link SkillTool} — the narrow shape a skill's
12
+ * tools must have for the graph to reason about them (a name, a
13
+ * description, an input schema, something to run). agentfootprint's own
14
+ * `Tool` structurally satisfies it; so would any other framework's.
15
+ * • {@link SkillToolDescriptor} — a PLAIN description of a tool the graph
16
+ * needs to exist (`read_skill` above all, which is how the model moves
17
+ * the cursor). The graph describes it; the host constructs it in its own
18
+ * tool type.
19
+ * • {@link SkillCachePolicy} — the cache directive that rides the
20
+ * `ActiveInjection` projection across the host boundary.
21
+ * • {@link SkillGraphHost} — the obligations a host must meet for the graph
22
+ * to route correctly. Documentation as a type.
23
+ *
24
+ * WHY STRUCTURAL COPIES. `SkillToolSchema` and `SkillCachePolicy` are
25
+ * field-for-field mirrors of `adapters/types.ts#LLMToolSchema` and
26
+ * `cache/types.ts#CachePolicy`. Mirroring them is what lets a foreign host
27
+ * satisfy the boundary without importing an adapter layer it does not use;
28
+ * TypeScript's structural typing then makes the two spellings mutually
29
+ * assignable, so nothing inside agentfootprint changed shape. The mirrors are
30
+ * PINNED against their originals by
31
+ * `test/lib/injection-engine/skill-graph-fence.test.ts`, which fails on drift
32
+ * in either direction.
33
+ *
34
+ * Zone: PURE CORE. Zero imports, by construction.
35
+ */
36
+ /**
37
+ * A tool's LLM-facing declaration — name, description, input schema.
38
+ *
39
+ * Structural mirror of `LLMToolSchema` (`src/adapters/types.ts`). Anything
40
+ * that satisfies one satisfies the other.
41
+ */
42
+ export interface SkillToolSchema {
43
+ readonly name: string;
44
+ readonly description: string;
45
+ readonly inputSchema: Readonly<Record<string, unknown>>;
46
+ }
47
+ /**
48
+ * The NARROW tool shape a skill carries in `InjectionContent.tools`.
49
+ *
50
+ * Two required members — a schema and something to run — because those are
51
+ * the only two the graph, the contract checker and the vocabulary checker
52
+ * ever read. agentfootprint's `Tool` adds credentials, artifact wants,
53
+ * check-in demands, capabilities and result ceilings on top; every one of
54
+ * them is optional, so a `Tool` IS a `SkillTool` and a `SkillTool` is
55
+ * accepted everywhere a `Tool` is. That is the point: a host on another
56
+ * framework hands its own tool objects straight in.
57
+ *
58
+ * `execute`'s context is deliberately `unknown` here — it is the HOST's
59
+ * execution context, and the graph never calls the tool.
60
+ */
61
+ export interface SkillTool<TArgs = Record<string, unknown>, TResult = unknown> {
62
+ readonly schema: SkillToolSchema;
63
+ execute(args: TArgs, ctx: unknown): Promise<TResult> | TResult;
64
+ }
65
+ /**
66
+ * A tool the graph DESCRIBES but does not construct.
67
+ *
68
+ * `read_skill` is the load-bearing one: it is how the model asks to move the
69
+ * cursor, so the graph has to be able to say what that tool looks like —
70
+ * which ids are on the enum, which are reachable from here, what the menu
71
+ * offers this turn, what the result says. What it must NOT do is build the
72
+ * host's tool object, because that would drag a framework's tool factory
73
+ * (and everything that factory pulls in) into a pure decision layer.
74
+ *
75
+ * So the graph emits this POJO and the host adapts it:
76
+ *
77
+ * @example agentfootprint's own adapter (`skillTools.ts`)
78
+ * const d = readSkillDescriptor(skills, offer);
79
+ * return d && defineTool({ name: d.name, description: d.description,
80
+ * inputSchema: d.inputSchema, execute: d.execute });
81
+ *
82
+ * @example another framework
83
+ * const d = readSkillDescriptor(skills);
84
+ * myFramework.tool(d.name, d.description, d.inputSchema, d.execute);
85
+ */
86
+ export interface SkillToolDescriptor<TArgs = Record<string, unknown>, TResult = unknown> {
87
+ readonly name: string;
88
+ readonly description: string;
89
+ readonly inputSchema: Readonly<Record<string, unknown>>;
90
+ /** Pure: same args in, same string out. No host context is passed. */
91
+ execute(args: TArgs): TResult;
92
+ }
93
+ /**
94
+ * Read-only snapshot a {@link SkillCachePolicy} predicate inspects.
95
+ * Structural mirror of `CachePolicyContext` (`src/cache/types.ts`).
96
+ */
97
+ export interface SkillCachePolicyContext {
98
+ readonly iteration: number;
99
+ readonly iterationsRemaining: number;
100
+ readonly userMessage: string;
101
+ readonly lastToolName?: string;
102
+ readonly cumulativeInputTokens: number;
103
+ }
104
+ /**
105
+ * Whether an injection's content may be marked as a cacheable prefix.
106
+ * Structural mirror of `CachePolicy` (`src/cache/types.ts`) — carried
107
+ * across the boundary by `ActiveInjection.cache`, where a host that has no
108
+ * prefix cache at all can simply ignore it.
109
+ */
110
+ export type SkillCachePolicy = 'always' | 'never' | 'while-active' | {
111
+ readonly until: (ctx: SkillCachePolicyContext) => boolean;
112
+ };
113
+ /**
114
+ * The obligations a host must meet to run a skill graph CORRECTLY.
115
+ *
116
+ * This is documentation as a type, not a runtime abstraction. Nothing in
117
+ * agentfootprint constructs one, nothing consumes one, and implementing it
118
+ * does not start a run — the package has exactly one run door and this is
119
+ * not a second one. It exists so the contract that was previously spread
120
+ * across four call sites in three files can be READ in one place, and so a
121
+ * host on another framework can typecheck its own wiring against it.
122
+ *
123
+ * `buildInjectionEngineSubflow.ts` + `core/agent/stages/toolCalls.ts` are the
124
+ * reference implementation of every clause below.
125
+ *
126
+ * @example checking a foreign host against the contract
127
+ * const host: SkillGraphHost = {
128
+ * advanceCursor: (ctx) => graph.explainNextSkill(ctx).to,
129
+ * acceptSkillPick: (id, cursor) => graph.reachableSkills(cursor).includes(id),
130
+ * …
131
+ * };
132
+ */
133
+ export interface SkillGraphHost {
134
+ /**
135
+ * **Obligation 1 — one cursor advance per iteration, off the SAME ctx.**
136
+ *
137
+ * Build the iteration's `InjectionContext` ONCE, ask the graph where the
138
+ * cursor goes with that exact object, and evaluate every trigger with that
139
+ * exact object. Route triggers are compiled as `nextSkill(ctx) === id`, so
140
+ * an active set derived from a different ctx than the stored cursor can
141
+ * disagree with it — the skill the loop thinks it is in and the body it
142
+ * actually injects come apart. This is the keystone; everything else here
143
+ * is bookkeeping around it.
144
+ *
145
+ * Reference: `buildInjectionEngineSubflow.ts` — `baseCtx` is built, handed
146
+ * to `explainNextSkill`, then handed to `evaluateInjections`.
147
+ */
148
+ advanceCursor(ctx: SkillGraphIterationContext): string | undefined;
149
+ /**
150
+ * **Obligation 2 — enforce reachability at PICK time.**
151
+ *
152
+ * When the model calls `read_skill(id)`, the host must check `id` against
153
+ * `graph.reachableSkills(cursor)` BEFORE treating the pick as real, and
154
+ * refuse teachingly when it is not reachable. The graph cannot enforce
155
+ * this itself: it never sees the tool call. A host that skips the gate
156
+ * turns every declared edge into a suggestion.
157
+ *
158
+ * Reference: `toolCalls.ts` — `deps.allowedSkillIds(currentSkillId)`.
159
+ */
160
+ acceptSkillPick(skillId: string, currentSkillId: string | undefined): boolean;
161
+ /**
162
+ * **Obligation 3 — publish an ACCEPTED pick, and only an accepted one.**
163
+ *
164
+ * `InjectionContext.pendingSkillPick` is the model's validated volunteer
165
+ * hop. Set it only after obligation 2 has said yes (a refused pick must
166
+ * never move the cursor), and clear it at the top of every iteration so it
167
+ * names a pick made just now rather than a stale one.
168
+ *
169
+ * Reference: `toolCalls.ts` — cleared once per iteration, then set only on
170
+ * the accepted-hop path.
171
+ */
172
+ publishAcceptedPick(skillId: string | undefined): void;
173
+ /**
174
+ * **Obligation 4 — carry the cursor across iterations.**
175
+ *
176
+ * The value obligation 1 produced becomes the NEXT iteration's
177
+ * `currentSkillId`. One run's worth: a skill graph declares how one turn
178
+ * is routed, so a fresh run starts at the entry, not where the last one
179
+ * stopped. A host that wants continuity persists the id itself and starts
180
+ * the next turn's graph from it.
181
+ *
182
+ * Reference: `buildInjectionEngineSubflow.ts` writes the advanced cursor
183
+ * to a distinct output key; the mount mappers map it onto the parent's
184
+ * `currentSkillId` for the next iteration.
185
+ */
186
+ carryCursor(nextSkillId: string | undefined): void;
187
+ /**
188
+ * **Obligation 5 — say what happened, out loud.**
189
+ *
190
+ * Every routing decision the graph makes is evidence, and evidence that is
191
+ * not emitted did not happen as far as any observer is concerned. A host
192
+ * should surface at minimum: a skill becoming active or inactive, a pick
193
+ * REFUSED by the gate, and a batch whose edges disagreed. agentfootprint
194
+ * spells these `agentfootprint.skill.activated` / `.deactivated` /
195
+ * `.rejected` / `.escalated` / `.route_conflict` / `.reroute_superseded` /
196
+ * `.turn_routed`; a foreign host may name them whatever it likes, but a
197
+ * refusal the operator cannot see is the one this contract cares about.
198
+ */
199
+ emitSkillEvent(name: string, payload: Readonly<Record<string, unknown>>): void;
200
+ }
201
+ /**
202
+ * The per-iteration context obligation 1 reads. Kept structural (rather than
203
+ * naming `InjectionContext`) so this module stays a zero-import leaf; the
204
+ * real `InjectionContext` satisfies it.
205
+ */
206
+ export interface SkillGraphIterationContext {
207
+ readonly iteration: number;
208
+ readonly userMessage: string;
209
+ readonly currentSkillId?: string;
210
+ readonly pendingSkillPick?: string;
211
+ }
@@ -0,0 +1,37 @@
1
+ /**
2
+ * hostContract — THE BOUNDARY between the skill-graph runtime and whatever
3
+ * runs it (9.34.0).
4
+ *
5
+ * The skill graph is a pure decision layer: given an `InjectionContext` it
6
+ * says which skill the cursor is in, which skills are reachable from there,
7
+ * and which injections are active. It does not call a model, does not own a
8
+ * loop, and does not know what a `Tool` is in any particular framework. This
9
+ * module is the small set of shapes that statement needs to be TRUE:
10
+ *
11
+ * • {@link SkillToolSchema} / {@link SkillTool} — the narrow shape a skill's
12
+ * tools must have for the graph to reason about them (a name, a
13
+ * description, an input schema, something to run). agentfootprint's own
14
+ * `Tool` structurally satisfies it; so would any other framework's.
15
+ * • {@link SkillToolDescriptor} — a PLAIN description of a tool the graph
16
+ * needs to exist (`read_skill` above all, which is how the model moves
17
+ * the cursor). The graph describes it; the host constructs it in its own
18
+ * tool type.
19
+ * • {@link SkillCachePolicy} — the cache directive that rides the
20
+ * `ActiveInjection` projection across the host boundary.
21
+ * • {@link SkillGraphHost} — the obligations a host must meet for the graph
22
+ * to route correctly. Documentation as a type.
23
+ *
24
+ * WHY STRUCTURAL COPIES. `SkillToolSchema` and `SkillCachePolicy` are
25
+ * field-for-field mirrors of `adapters/types.ts#LLMToolSchema` and
26
+ * `cache/types.ts#CachePolicy`. Mirroring them is what lets a foreign host
27
+ * satisfy the boundary without importing an adapter layer it does not use;
28
+ * TypeScript's structural typing then makes the two spellings mutually
29
+ * assignable, so nothing inside agentfootprint changed shape. The mirrors are
30
+ * PINNED against their originals by
31
+ * `test/lib/injection-engine/skill-graph-fence.test.ts`, which fails on drift
32
+ * in either direction.
33
+ *
34
+ * Zone: PURE CORE. Zero imports, by construction.
35
+ */
36
+ export {};
37
+ //# sourceMappingURL=hostContract.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hostContract.js","sourceRoot":"","sources":["../../../../src/lib/injection-engine/hostContract.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG"}
@@ -5,6 +5,7 @@
5
5
  * One `Injection` type. One `InjectionEngine` subflow. N typed sugar
6
6
  * factories. See `README.md` in this folder for the full concept.
7
7
  */
8
+ import './devWarnHost.js';
8
9
  export type { Injection, InjectionTrigger, InjectionContent, InjectionContext, InjectionEvaluation, ActiveInjection, } from './types.js';
9
10
  export { projectActiveInjection } from './types.js';
10
11
  export { toolResultsOf } from './types.js';
@@ -14,12 +15,16 @@ export { defineInstruction, type DefineInstructionOptions } from './factories/de
14
15
  export { defineRelevanceHint, READS_ENTRY_SCORES_METADATA_KEY, type RelevanceHintOptions, } from './factories/defineRelevanceHint.js';
15
16
  export { defineMenuHint, MENU_HINT_METADATA_KEY, type MenuHintOptions, } from './factories/defineMenuHint.js';
16
17
  export { defineSkill, resolveSurfaceMode, type DefineSkillOptions, type SurfaceMode, type RefreshPolicy, type AutoActivateMode, } from './factories/defineSkill.js';
17
- export { buildSkipStepTool, pointerOf, SKIP_STEP_TOOL_NAME, type OnSkipPolicy, type SkillStep, type StepPlan, type StepPointer, type StepPointerCarrier, } from './skillSteps.js';
18
+ export { pointerOf, SKIP_STEP_TOOL_NAME, skipStepDescriptor, type OnSkipPolicy, type SkillStep, type StepPlan, type StepPointer, type StepPointerCarrier, } from './skillSteps.js';
18
19
  export { defineStepsHint, STEPS_HINT_METADATA_KEY, type StepsHintOptions, } from './factories/defineStepsHint.js';
19
20
  export { checkArtifactVocabularies, vocabularyOf, type ArtifactVocabulary, } from './skillVocabulary.js';
20
21
  export { SkillRegistry, type SkillRegistryOptions } from './SkillRegistry.js';
21
22
  export { skillsFromDir, type SkillsFromDirOptions } from './skillsFromDir.js';
22
- export { buildListSkillsTool, buildReadSkillTool, type SkillToolPair } from './skillTools.js';
23
+ export { buildListSkillsTool, buildReadSkillTool, buildSkipStepTool, type ReadSkillOffer, type SkillToolPair, } from './skillTools.js';
24
+ export { listSkillsDescriptor, readSkillDescriptor } from './skillToolDescriptors.js';
25
+ export type { SkillCachePolicy, SkillCachePolicyContext, SkillGraphHost, SkillGraphIterationContext, SkillTool, SkillToolDescriptor, SkillToolSchema, } from './hostContract.js';
26
+ export { TOOL_RESULT_STATUSES, type ToolResultStatus } from './toolOutcome.js';
27
+ export { useSkillGraphDevMode, type DevModeReader } from './devWarn.js';
23
28
  export { defineSteering, type DefineSteeringOptions } from './factories/defineSteering.js';
24
29
  export { defineFact, type DefineFactOptions } from './factories/defineFact.js';
25
30
  export { defineInjection, type DefineInjectionOptions, type InjectionFlavor, } from './factories/defineInjection.js';
@@ -5,6 +5,14 @@
5
5
  * One `Injection` type. One `InjectionEngine` subflow. N typed sugar
6
6
  * factories. See `README.md` in this folder for the full concept.
7
7
  */
8
+ // Bind the pure core's dev-warn seam to footprintjs's `isDevMode` (9.34.0).
9
+ // Side-effect import, on purpose: the skill-graph core no longer imports the
10
+ // engine, so SOMEONE has to hand it the dev flag, and this barrel is on every
11
+ // path inside this package that can reach `skillGraph()`. Without it,
12
+ // `enableDevMode()` would stop switching skill-graph warnings on — the one
13
+ // behavior the fence refactor must not change. `agentfootprint/skill-graph`
14
+ // deliberately skips it; see `devWarn.ts`.
15
+ import './devWarnHost.js';
8
16
  // POJO projection — used by slot subflows + advanced consumers
9
17
  export { projectActiveInjection } from './types.js';
10
18
  // The iteration's tool-result batch with the singular fallback applied
@@ -24,7 +32,7 @@ export { defineSkill, resolveSurfaceMode, } from './factories/defineSkill.js';
24
32
  // the public slice here is what a consumer needs to DECLARE steps, READ the
25
33
  // pointer off a snapshot (`pointerOf(sharedState.stepPointer)`), and compose
26
34
  // the integrity tool into custom wiring (the buildReadSkillTool precedent).
27
- export { buildSkipStepTool, pointerOf, SKIP_STEP_TOOL_NAME, } from './skillSteps.js';
35
+ export { pointerOf, SKIP_STEP_TOOL_NAME, skipStepDescriptor, } from './skillSteps.js';
28
36
  export { defineStepsHint, STEPS_HINT_METADATA_KEY, } from './factories/defineStepsHint.js';
29
37
  // Artifact vocabularies (9.25.0) — `produces`/`consumes` on a skill or a step.
30
38
  // The public slice is what a consumer needs to READ a skill's declared data
@@ -42,7 +50,15 @@ export { skillsFromDir } from './skillsFromDir.js';
42
50
  // auto-attach path. Exported so consumers building custom tool wiring
43
51
  // (e.g., gatedTools chains) can compose the same `list_skills` /
44
52
  // `read_skill` tools directly.
45
- export { buildListSkillsTool, buildReadSkillTool } from './skillTools.js';
53
+ export { buildListSkillsTool, buildReadSkillTool, buildSkipStepTool, } from './skillTools.js';
54
+ // The graph's own DESCRIPTIONS of the tools it needs (9.34.0) — the POJOs the
55
+ // builders above wrap. Exported because a host composing its own tool objects
56
+ // (another framework, a custom ToolProvider) should read `read_skill`'s enum,
57
+ // reachability offer and result sentences from the library rather than
58
+ // re-writing them. Also the whole surface of `agentfootprint/skill-graph`.
59
+ export { listSkillsDescriptor, readSkillDescriptor } from './skillToolDescriptors.js';
60
+ export { TOOL_RESULT_STATUSES } from './toolOutcome.js';
61
+ export { useSkillGraphDevMode } from './devWarn.js';
46
62
  export { defineSteering } from './factories/defineSteering.js';
47
63
  export { defineFact } from './factories/defineFact.js';
48
64
  // Unified factory — a `type` discriminant routes to the four named factories
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/lib/injection-engine/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAYH,+DAA+D;AAC/D,OAAO,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAEpD,uEAAuE;AACvE,8EAA8E;AAC9E,mFAAmF;AACnF,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE3C,SAAS;AACT,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EACL,2BAA2B,GAE5B,MAAM,kCAAkC,CAAC;AAE1C,gFAAgF;AAChF,OAAO,EAAE,iBAAiB,EAAiC,MAAM,kCAAkC,CAAC;AACpG,OAAO,EACL,mBAAmB,EACnB,+BAA+B,GAEhC,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EACL,cAAc,EACd,sBAAsB,GAEvB,MAAM,+BAA+B,CAAC;AAEvC,OAAO,EACL,WAAW,EACX,kBAAkB,GAKnB,MAAM,4BAA4B,CAAC;AAEpC,6EAA6E;AAC7E,8EAA8E;AAC9E,4EAA4E;AAC5E,6EAA6E;AAC7E,4EAA4E;AAC5E,OAAO,EACL,iBAAiB,EACjB,SAAS,EACT,mBAAmB,GAMpB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,eAAe,EACf,uBAAuB,GAExB,MAAM,gCAAgC,CAAC;AAExC,+EAA+E;AAC/E,4EAA4E;AAC5E,gFAAgF;AAChF,4EAA4E;AAC5E,+EAA+E;AAC/E,yCAAyC;AACzC,OAAO,EACL,yBAAyB,EACzB,YAAY,GAEb,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,aAAa,EAA6B,MAAM,oBAAoB,CAAC;AAE9E,8EAA8E;AAC9E,+EAA+E;AAC/E,6DAA6D;AAC7D,OAAO,EAAE,aAAa,EAA6B,MAAM,oBAAoB,CAAC;AAE9E,wEAAwE;AACxE,sEAAsE;AACtE,iEAAiE;AACjE,+BAA+B;AAC/B,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAsB,MAAM,iBAAiB,CAAC;AAE9F,OAAO,EAAE,cAAc,EAA8B,MAAM,+BAA+B,CAAC;AAE3F,OAAO,EAAE,UAAU,EAA0B,MAAM,2BAA2B,CAAC;AAE/E,6EAA6E;AAC7E,0EAA0E;AAC1E,qDAAqD;AACrD,OAAO,EACL,eAAe,GAGhB,MAAM,gCAAgC,CAAC;AAExC,4EAA4E;AAC5E,8EAA8E;AAC9E,OAAO,EACL,UAAU,EACV,WAAW;AACX,mFAAmF;AACnF,qFAAqF;AACrF,uFAAuF;AACvF,6BAA6B;AAC7B,aAAa,EACb,wBAAwB;AAiCxB,+EAA+E;AAC/E,+EAA+E;AAC/E,qEAAqE;AACrE,6EAA6E;AAC7E,uFAAuF;AACvF,iCAAiC,GAQlC,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,aAAa,EACb,eAAe,EACf,WAAW,GAIZ,MAAM,kBAAkB,CAAC;AAC1B,2EAA2E;AAC3E,0EAA0E;AAC1E,6EAA6E;AAC7E,sDAAsD;AACtD,OAAO,EACL,oBAAoB,GAKrB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,aAAa,EAA6B,MAAM,oBAAoB,CAAC;AAC9E,sEAAsE;AACtE,4EAA4E;AAC5E,OAAO,EACL,mBAAmB,GAGpB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,eAAe,EACf,SAAS,EACT,sBAAsB,EACtB,WAAW,EACX,eAAe,GAKhB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,cAAc,GAEf,MAAM,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/lib/injection-engine/index.ts"],"names":[],"mappings":"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"}
@@ -57,6 +57,7 @@
57
57
  * at the same skill (8.5.0 — before, the drawn build-time provenance was read as the
58
58
  * per-hop cause, so a model pick was recorded under a declared edge's label).
59
59
  */
60
+ import type { ToolResultStatus } from './toolOutcome.js';
60
61
  import type { Injection, InjectionContext } from './types.js';
61
62
  import type { Embedder } from '../../memory/embedding/types.js';
62
63
  import type { EntryScore, EntryScoring, EntryScorer } from './entryScorer.js';
@@ -258,7 +259,7 @@ export interface SkillRouteOptions {
258
259
  readonly when?: (result: {
259
260
  readonly toolName: string;
260
261
  readonly result: string;
261
- readonly status?: import('../../core/agent/toolEffects.js').ToolResultStatus;
262
+ readonly status?: ToolResultStatus;
262
263
  }) => boolean;
263
264
  /** Sugar for "activate whenever this tool returns (any result)". String is an
264
265
  * exact match; RegExp is tested against the tool name. */
@@ -274,7 +275,7 @@ export interface SkillRouteOptions {
274
275
  * Data — comparable, drawable (`toMermaid()` captions it), stored. At
275
276
  * most one of `when` / `onToolStatus`: code or data, never both.
276
277
  */
277
- readonly onToolStatus?: import('../../core/agent/toolEffects.js').ToolResultStatus | ReadonlyArray<import('../../core/agent/toolEffects.js').ToolResultStatus>;
278
+ readonly onToolStatus?: ToolResultStatus | ReadonlyArray<ToolResultStatus>;
278
279
  /** Caption rendered on the edge. Defaults to a derived label. */
279
280
  readonly label?: string;
280
281
  }
@@ -57,7 +57,7 @@
57
57
  * at the same skill (8.5.0 — before, the drawn build-time provenance was read as the
58
58
  * per-hop cause, so a model pick was recorded under a declared edge's label).
59
59
  */
60
- import { isDevMode } from 'footprintjs';
60
+ import { devMode, devWarn } from './devWarn.js';
61
61
  import { toolResultsOf } from './types.js';
62
62
  import { embeddingScorer } from './entryScorer.js';
63
63
  import { checkupGraph, formatCheckup, } from './skillGraphCheckup.js';
@@ -582,9 +582,8 @@ export function skillGraph(config) {
582
582
  if (check === 'throw' && !reported.ok) {
583
583
  throw new Error(`skillGraph: build-time check-up failed:\n${formatCheckup(reported)}`);
584
584
  }
585
- if (reported.problems.length > 0 && isDevMode()) {
586
- // eslint-disable-next-line no-console
587
- console.warn(`skillGraph: build-time check-up found problems:\n${formatCheckup(reported)}`);
585
+ if (reported.problems.length > 0) {
586
+ devWarn(`skillGraph: build-time check-up found problems:\n${formatCheckup(reported)}`);
588
587
  }
589
588
  }
590
589
  return {
@@ -1120,10 +1119,7 @@ function memoizePerPass(resolveCursor) {
1120
1119
  };
1121
1120
  }
1122
1121
  function warnMatcherThrew(edge, err) {
1123
- if (!isDevMode())
1124
- return;
1125
- // eslint-disable-next-line no-console
1126
- console.warn(`agentfootprint skillGraph: ${edge} predicate threw — treated as no-match. ` +
1122
+ devWarn(`agentfootprint skillGraph: ${edge} predicate threw — treated as no-match. ` +
1127
1123
  `Predicates must be pure + total. ${err instanceof Error ? err.message : String(err)}`);
1128
1124
  }
1129
1125
  /** Compile a skill's incoming edges → one injection trigger (or null = keep the
@@ -1302,7 +1298,7 @@ register) {
1302
1298
  * identity — `evaluateInjections` passes one ctx object to every trigger in a
1303
1299
  * pass). When all leaves have been evaluated for one ctx and the fired count
1304
1300
  * is not exactly 1, a console.warn names the leaves. Production pays one
1305
- * `isDevMode()` check per evaluation; a throwing predicate is excluded here
1301
+ * `devMode()` check per evaluation; a throwing predicate is excluded here
1306
1302
  * because the evaluator already reports it (`skipped: 'predicate-threw'`).
1307
1303
  */
1308
1304
  function attachExactlyOneLeafMonitor(skills) {
@@ -1318,7 +1314,7 @@ function attachExactlyOneLeafMonitor(skills) {
1318
1314
  trigger: {
1319
1315
  kind: 'rule',
1320
1316
  activeWhen: (ctx) => {
1321
- if (!isDevMode())
1317
+ if (!devMode())
1322
1318
  return inner(ctx);
1323
1319
  const fired = inner(ctx); // may throw → evaluator reports 'predicate-threw'
1324
1320
  let pass = passes.get(ctx);
@@ -1332,8 +1328,7 @@ function attachExactlyOneLeafMonitor(skills) {
1332
1328
  if (pass.evaluated === total) {
1333
1329
  passes.delete(ctx); // reset so a reused ctx object starts a fresh pass
1334
1330
  if (pass.fired.length !== 1) {
1335
- // eslint-disable-next-line no-console
1336
- console.warn(pass.fired.length === 0
1331
+ devWarn(pass.fired.length === 0
1337
1332
  ? `agentfootprint skillGraph.tree: NO leaf fired this iteration (expected exactly one). ` +
1338
1333
  `The tree is exhaustive by construction, so a decide() predicate likely returned ` +
1339
1334
  `different answers across leaf evaluations — predicates must be pure and deterministic. ` +
@@ -1 +1 @@
1
- {"version":3,"file":"skillGraph.js","sourceRoot":"","sources":["../../../../src/lib/injection-engine/skillGraph.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"skillGraph.js","sourceRoot":"","sources":["../../../../src/lib/injection-engine/skillGraph.ts"],"names":[],"mappings":"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"}