@introspection-ai/recipes 0.28.0 → 0.29.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.
- package/dist/agents.d.ts +34 -0
- package/dist/agents.d.ts.map +1 -1
- package/dist/agents.js +87 -0
- package/dist/agents.js.map +1 -1
- package/dist/child/agent.d.ts +5 -0
- package/dist/child/agent.d.ts.map +1 -1
- package/dist/child/agent.js +19 -8
- package/dist/child/agent.js.map +1 -1
- package/dist/child/session.d.ts +31 -4
- package/dist/child/session.d.ts.map +1 -1
- package/dist/child/session.js +65 -3
- package/dist/child/session.js.map +1 -1
- package/dist/mcp-chunks/{auth-command-GQFV6QYP.js → auth-command-SDTBVC2R.js} +22 -21
- package/dist/mcp-chunks/call-arguments-ER7NWEPS.js +16 -0
- package/dist/mcp-chunks/{call-command-LMAREWKD.js → call-command-WOZT2DLX.js} +33 -32
- package/dist/mcp-chunks/{chunk-5B7GRMUK.js → chunk-27XDYSXJ.js} +1 -1
- package/dist/mcp-chunks/{chunk-FONFU4G5.js → chunk-2IO3FXZJ.js} +1 -1
- package/dist/mcp-chunks/{chunk-O4JIUOWF.js → chunk-35JUFDQI.js} +2 -2
- package/dist/mcp-chunks/{chunk-UYJZJXC2.js → chunk-43QNQO5C.js} +3 -3
- package/dist/mcp-chunks/{chunk-LIEFPSSB.js → chunk-4IXQQER3.js} +5 -5
- package/dist/mcp-chunks/{chunk-O2VOMKAS.js → chunk-6XBQDCGX.js} +10 -10
- package/dist/mcp-chunks/{chunk-S2YF442K.js → chunk-7CI6DKEP.js} +2 -2
- package/dist/mcp-chunks/{chunk-H7ARMBV7.js → chunk-7OQUF6V6.js} +26 -10
- package/dist/mcp-chunks/{chunk-S6GJ42I2.js → chunk-7X3JHUMH.js} +1 -1
- package/dist/mcp-chunks/{chunk-D6B2M5V7.js → chunk-7ZZZ7MR2.js} +1 -1
- package/dist/mcp-chunks/{chunk-WHJUDBPR.js → chunk-AHDUZPNI.js} +2 -1
- package/dist/mcp-chunks/{chunk-QALB3DRW.js → chunk-ALLS7CUV.js} +1 -1
- package/dist/mcp-chunks/{chunk-6RG6AD5X.js → chunk-ASFI5AJK.js} +17 -11
- package/dist/mcp-chunks/{chunk-LQIE4PKL.js → chunk-CMDB57MS.js} +2 -2
- package/dist/mcp-chunks/{chunk-HZ2SX5U6.js → chunk-CO4CYU5W.js} +11 -11
- package/dist/mcp-chunks/{chunk-TUQGOYK6.js → chunk-CRX2G22W.js} +1 -1
- package/dist/mcp-chunks/{chunk-UKM35J67.js → chunk-DUJ5WAHC.js} +2 -2
- package/dist/mcp-chunks/{chunk-RIHPVCGI.js → chunk-EIF7GALA.js} +1 -1
- package/dist/mcp-chunks/{chunk-QJNF3A3F.js → chunk-EIXFNLU6.js} +1 -1
- package/dist/mcp-chunks/{chunk-77BZYP72.js → chunk-FMYP6JXX.js} +1 -1
- package/dist/mcp-chunks/{chunk-LXHPDKEF.js → chunk-FQAJT6U2.js} +1 -1
- package/dist/mcp-chunks/{chunk-7WL4TMON.js → chunk-FUKRLUU7.js} +4 -4
- package/dist/mcp-chunks/{chunk-L6OOGZVA.js → chunk-FVZKQMZS.js} +21 -7
- package/dist/mcp-chunks/{chunk-RZIJUJGL.js → chunk-FWWPRZ37.js} +31 -40
- package/dist/mcp-chunks/{chunk-KQCLM7R7.js → chunk-GJ7DWMRT.js} +1 -1
- package/dist/mcp-chunks/{chunk-LCBDVFVA.js → chunk-HM26TIPK.js} +1 -1
- package/dist/mcp-chunks/{chunk-JVYCENPP.js → chunk-IJTZ2ZRM.js} +4 -4
- package/dist/mcp-chunks/{chunk-S5F3HEZZ.js → chunk-IR5SMKTP.js} +425 -445
- package/dist/mcp-chunks/{chunk-7PFJCLXL.js → chunk-IWXEOLJL.js} +20 -16
- package/dist/mcp-chunks/{chunk-D6SVCPN6.js → chunk-JQCSGX6E.js} +1 -1
- package/dist/mcp-chunks/{chunk-P463YBJM.js → chunk-JRU5LZJQ.js} +1 -1
- package/dist/mcp-chunks/{chunk-XNHGMWN2.js → chunk-M7VINGHY.js} +9 -7
- package/dist/mcp-chunks/{chunk-IF6LRV3J.js → chunk-OURSGEZX.js} +8 -8
- package/dist/mcp-chunks/{chunk-H4KL74PV.js → chunk-P3S4OJPI.js} +9 -9
- package/dist/mcp-chunks/{chunk-P3UVILEW.js → chunk-POYT6GCW.js} +29 -5
- package/dist/mcp-chunks/{chunk-5BMCVE2J.js → chunk-R636HUNL.js} +17 -13
- package/dist/mcp-chunks/{chunk-TYYSBILI.js → chunk-SONMFI3S.js} +70 -28
- package/dist/mcp-chunks/{chunk-I6UMKX5E.js → chunk-SVCKS5MW.js} +4 -4
- package/dist/mcp-chunks/{chunk-NQW3ES2G.js → chunk-TDBM2UIR.js} +1 -1
- package/dist/mcp-chunks/{chunk-VJIAHZZG.js → chunk-TKZA4MPW.js} +4 -4
- package/dist/mcp-chunks/{chunk-2P2HVZ3G.js → chunk-UHXTAPEC.js} +1 -1
- package/dist/mcp-chunks/{chunk-CLR6DJV3.js → chunk-UXI26V4F.js} +1 -1
- package/dist/mcp-chunks/{chunk-UIPG6W7N.js → chunk-UYG7PAN2.js} +2 -2
- package/dist/mcp-chunks/{chunk-2HOMVWSA.js → chunk-VCPUZFU7.js} +2 -2
- package/dist/mcp-chunks/{chunk-FBVRU4Y3.js → chunk-VRTH73R5.js} +40 -33
- package/dist/mcp-chunks/{chunk-KOWNVUL2.js → chunk-VWNF5PIF.js} +2 -2
- package/dist/mcp-chunks/{chunk-MJFZM5EV.js → chunk-WQBESOWG.js} +22 -5
- package/dist/mcp-chunks/chunk-XDARNDP3.js +25 -0
- package/dist/mcp-chunks/{chunk-OSYB5GNF.js → chunk-XUJQ6U6M.js} +3 -3
- package/dist/mcp-chunks/{chunk-PJCMJ65D.js → chunk-YGRORKGT.js} +226 -101
- package/dist/mcp-chunks/{chunk-C2VLY7ED.js → chunk-YM7ZVYI2.js} +4 -4
- package/dist/mcp-chunks/{chunk-6QZQZXDJ.js → chunk-YTO7DITJ.js} +3 -3
- package/dist/mcp-chunks/{chunk-UHO6KIUJ.js → chunk-ZLV5S5UP.js} +2 -2
- package/dist/mcp-chunks/{cli-JI7MEAAX.js → cli-67GWFF4R.js} +69 -68
- package/dist/mcp-chunks/client-MQMNAYYW.js +31 -0
- package/dist/mcp-chunks/{config-command-GRZLKD3R.js → config-command-3IKIRWMW.js} +41 -27
- package/dist/mcp-chunks/daemon-command-OMOZ5MP7.js +31 -0
- package/dist/mcp-chunks/{dist-USMCQ22V.js → dist-YL3LFKVP.js} +219 -202
- package/dist/mcp-chunks/{emit-ts-command-7VLESP7H.js → emit-ts-command-YWKROLL2.js} +84 -70
- package/dist/mcp-chunks/{generate-cli-runner-SSW2B72K.js → generate-cli-runner-CZEVY2Y7.js} +51 -48
- package/dist/mcp-chunks/generated-daemon-runtime-SRFULTIT.js +31 -0
- package/dist/mcp-chunks/{inspect-cli-command-NCGCMOIS.js → inspect-cli-command-5Y2LORK5.js} +9 -9
- package/dist/mcp-chunks/{launch-NBONSPNK.js → launch-43TA3HYF.js} +1 -1
- package/dist/mcp-chunks/{lifecycle-CXAKUCN4.js → lifecycle-BY2ILXTB.js} +1 -1
- package/dist/mcp-chunks/{list-command-5T4UF4PF.js → list-command-7RU7NNAV.js} +56 -43
- package/dist/mcp-chunks/{output-utils-YFTWQZ5V.js → output-utils-2R3SA6KR.js} +3 -3
- package/dist/mcp-chunks/{prompt-CH6TK0bC-6DI4RA4E.js → prompt-CH6TK0bC-GKQOEUY4.js} +1 -1
- package/dist/mcp-chunks/{record-command-TE5O7WBL.js → record-command-ROIRRNFS.js} +5 -5
- package/dist/mcp-chunks/{replay-command-QCUL5ASR.js → replay-command-Y2MYVQTL.js} +6 -6
- package/dist/mcp-chunks/{resource-command-XMGF7EAK.js → resource-command-VUV7AYYQ.js} +9 -9
- package/dist/mcp-chunks/{result-utils-HKB42M7Y.js → result-utils-5U7NVXDZ.js} +3 -3
- package/dist/mcp-chunks/runtime-Q4SCCOQE.js +38 -0
- package/dist/mcp-chunks/{runtime-wrapper-MI3HF45J.js → runtime-wrapper-3BVFTSWJ.js} +3 -3
- package/dist/mcp-chunks/{serve-command-5HV3ZE25.js → serve-command-BXLQWHFW.js} +8969 -1147
- package/dist/mcp-chunks/{timeouts-YBFBTLV2.js → timeouts-6GL2F44N.js} +3 -3
- package/dist/mcp-chunks/{vault-command-FC2PD5U6.js → vault-command-JCMW3DQA.js} +4 -4
- package/dist/mcp-chunks/{webapi-IFUPO72B.js → webapi-UMWFGMQV.js} +46 -46
- package/dist/mcp-daemon.js +27 -26
- package/dist/mcp-run-worker.js +27 -26
- package/dist/pi-extension.d.ts.map +1 -1
- package/dist/pi-extension.js +22 -19
- package/dist/pi-extension.js.map +1 -1
- package/dist/recipe/model.d.ts.map +1 -1
- package/dist/recipe/model.js +25 -1
- package/dist/recipe/model.js.map +1 -1
- package/dist/run-controller.d.ts +10 -3
- package/dist/run-controller.d.ts.map +1 -1
- package/dist/run-controller.js +23 -11
- package/dist/run-controller.js.map +1 -1
- package/dist/session.d.ts +13 -0
- package/dist/session.d.ts.map +1 -1
- package/dist/session.js +15 -9
- package/dist/session.js.map +1 -1
- package/docs/agent-composition.md +27 -6
- package/docs/host-api.md +32 -4
- package/docs/pi-extension.md +3 -2
- package/docs/recipe-format.md +14 -5
- package/package.json +6 -6
- package/dist/mcp-chunks/call-arguments-VT7JLNJY.js +0 -16
- package/dist/mcp-chunks/client-QU7ABSNB.js +0 -30
- package/dist/mcp-chunks/daemon-command-3266CYHO.js +0 -30
- package/dist/mcp-chunks/generated-daemon-runtime-7CFVWLC7.js +0 -30
- package/dist/mcp-chunks/runtime-3X2XVS6X.js +0 -37
package/dist/session.js
CHANGED
|
@@ -3,7 +3,7 @@ import { rm } from "node:fs/promises";
|
|
|
3
3
|
import { getModel } from "@earendil-works/pi-ai/compat";
|
|
4
4
|
import { createBashToolDefinition, createAgentSessionFromServices, createAgentSessionServices, ModelRuntime, SessionManager, SettingsManager, } from "@earendil-works/pi-coding-agent";
|
|
5
5
|
import { instrumentSession, } from "@introspection-sdk/introspection-pi";
|
|
6
|
-
import { createAgentTool, } from "./agents.js";
|
|
6
|
+
import { createAgentTool, MAX_AGENT_RUN_DEPTH, } from "./agents.js";
|
|
7
7
|
import { loadRecipeConnectors } from "./connector-tools.js";
|
|
8
8
|
import { clearMcpCatalogPreload, preloadMcpCatalogs, } from "./mcp/catalog.js";
|
|
9
9
|
import { createIsolatedMcpEnvironment, configureMcpLocalConfigPath, isolateMcpEnvironment, materializeMcpSession, materializeSessionMcpCli, readMcpSessionConfig, restoreMcpEnvironment, resolveAgentMcpSelections, snapshotMcpEnvironment, stopMcpDaemon, } from "./mcp/index.js";
|
|
@@ -272,6 +272,12 @@ async function createSessionForAgent(recipe, opts) {
|
|
|
272
272
|
...(opts.credentials ? { credentials: opts.credentials } : {}),
|
|
273
273
|
});
|
|
274
274
|
const modelRuntime = await ModelRuntime.create({ credentials, modelsPath: null });
|
|
275
|
+
// Subagents: the shared `agent` tool against an injected or in-process
|
|
276
|
+
// controller. `runController: null` disables delegation outright, and a
|
|
277
|
+
// session at the maximum run depth never delegates.
|
|
278
|
+
const wantsSubagents = recipe.subagents.size > 0 &&
|
|
279
|
+
opts.runController !== null &&
|
|
280
|
+
(opts.agentRun?.depth ?? 0) < MAX_AGENT_RUN_DEPTH;
|
|
275
281
|
let model;
|
|
276
282
|
let session;
|
|
277
283
|
let agentRuns;
|
|
@@ -332,9 +338,7 @@ async function createSessionForAgent(recipe, opts) {
|
|
|
332
338
|
"find",
|
|
333
339
|
"ls",
|
|
334
340
|
...(opts.customTools ?? []).map((tool) => tool.name),
|
|
335
|
-
...(
|
|
336
|
-
? ["agent"]
|
|
337
|
-
: []),
|
|
341
|
+
...(wantsSubagents ? ["agent"] : []),
|
|
338
342
|
]) {
|
|
339
343
|
recipeRegistrations.claim("tool", toolName, "<host>");
|
|
340
344
|
}
|
|
@@ -352,7 +356,7 @@ async function createSessionForAgent(recipe, opts) {
|
|
|
352
356
|
recipeRegistrations.claim("tool", toolName, "<host>");
|
|
353
357
|
}
|
|
354
358
|
for (const connector of connectors.extensions) {
|
|
355
|
-
inlineExtensions.push(bindRecipeExtensionFactory(connector.factory, recipeExtensionContext, recipeRegistrations, connector.owner, recipeExtensionToolAllowlist(recipe.tools,
|
|
359
|
+
inlineExtensions.push(bindRecipeExtensionFactory(connector.factory, recipeExtensionContext, recipeRegistrations, connector.owner, recipeExtensionToolAllowlist(recipe.tools, wantsSubagents, [
|
|
356
360
|
...connectorLoadout.toolNames,
|
|
357
361
|
...(mcp.tools?.map((tool) => tool.name) ?? []),
|
|
358
362
|
...((connectorLoadout.deferredToolNames.length > 0 ||
|
|
@@ -365,7 +369,7 @@ async function createSessionForAgent(recipe, opts) {
|
|
|
365
369
|
])));
|
|
366
370
|
}
|
|
367
371
|
for (const extensionPath of recipe.extensionPaths) {
|
|
368
|
-
inlineExtensions.push(bindRecipeExtensionFactory(await loadRecipeExtensionFactory(recipe.recipeDir, extensionPath), recipeExtensionContext, recipeRegistrations, extensionPath, recipeExtensionToolAllowlist(recipe.tools,
|
|
372
|
+
inlineExtensions.push(bindRecipeExtensionFactory(await loadRecipeExtensionFactory(recipe.recipeDir, extensionPath), recipeExtensionContext, recipeRegistrations, extensionPath, recipeExtensionToolAllowlist(recipe.tools, wantsSubagents, [
|
|
369
373
|
...(mcp.tools?.map((tool) => tool.name) ?? []),
|
|
370
374
|
...((connectorLoadout.deferredToolNames.length > 0 ||
|
|
371
375
|
(mcp.deferredToolNames?.length ?? 0) > 0)
|
|
@@ -433,9 +437,6 @@ async function createSessionForAgent(recipe, opts) {
|
|
|
433
437
|
}
|
|
434
438
|
model = cloneModelForRecipe(selectedModel);
|
|
435
439
|
applyRecipeAgentModelConfigToModel(model, recipe.modelConfig);
|
|
436
|
-
// Subagents: the shared `agent` tool against an injected or in-process
|
|
437
|
-
// controller. `runController: null` disables delegation outright.
|
|
438
|
-
const wantsSubagents = recipe.subagents.size > 0 && opts.runController !== null;
|
|
439
440
|
if (opts.runController) {
|
|
440
441
|
agentRuns = opts.runController;
|
|
441
442
|
}
|
|
@@ -448,6 +449,11 @@ async function createSessionForAgent(recipe, opts) {
|
|
|
448
449
|
env,
|
|
449
450
|
...(opts.credentials ? { credentials: opts.credentials } : {}),
|
|
450
451
|
concurrency: opts.inProcessRunController?.concurrency,
|
|
452
|
+
depth: (opts.agentRun?.depth ?? 0) + 1,
|
|
453
|
+
...(opts.agentRun ? { parentAgentRunId: opts.agentRun.id } : {}),
|
|
454
|
+
...(opts.sessionFactory
|
|
455
|
+
? { sessionFactory: opts.sessionFactory }
|
|
456
|
+
: {}),
|
|
451
457
|
...(opts.onAgentRunEvent
|
|
452
458
|
? { onAgentRunEvent: opts.onAgentRunEvent }
|
|
453
459
|
: {}),
|
package/dist/session.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.js","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"session.js","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"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"}
|
|
@@ -195,9 +195,9 @@ the selected agent narrows model-visible capability:
|
|
|
195
195
|
- Prompt templates declared by the package are recipe resources; they are not
|
|
196
196
|
specialized through `from:`.
|
|
197
197
|
|
|
198
|
-
The `agent` delegation tool is not authored in `tools`. The host adds it
|
|
199
|
-
|
|
200
|
-
|
|
198
|
+
The `agent` delegation tool is not authored in `tools`. The host adds it to
|
|
199
|
+
any session whose effective agent has visible subagents, down to the
|
|
200
|
+
delegation depth bound described below.
|
|
201
201
|
|
|
202
202
|
Skill and subagent selection controls prompt exposure and active capability,
|
|
203
203
|
not filesystem isolation. All agents run in the same Recipe package and current
|
|
@@ -216,9 +216,30 @@ A delegated subagent resolves its own complete effective definition:
|
|
|
216
216
|
3. start from the same recipe `SYSTEM.md` as the root agent; and
|
|
217
217
|
4. append or replace with its effective `system_instructions`.
|
|
218
218
|
|
|
219
|
-
Delegation is
|
|
220
|
-
|
|
221
|
-
|
|
219
|
+
Delegation is two levels deep. The root session is depth 0, the agents it
|
|
220
|
+
delegates to are depth 1, and the agents they delegate to are depth 2. A
|
|
221
|
+
depth-1 child whose effective `subagents` list is non-empty receives its own
|
|
222
|
+
`agent` tool exposing only those agents; a depth-2 child never does, whatever
|
|
223
|
+
its definition declares. The bound also stops recursive references
|
|
224
|
+
(`a -> b -> a`): the second `a` would be depth 3, so `b` has no `agent` tool.
|
|
225
|
+
|
|
226
|
+
```yaml
|
|
227
|
+
# agents/agent.yaml (root)
|
|
228
|
+
subagents: [background, explorer, dreamer]
|
|
229
|
+
|
|
230
|
+
# agents/background.yaml (depth 1: can fan out explorers)
|
|
231
|
+
subagents: [explorer]
|
|
232
|
+
|
|
233
|
+
# agents/explorer.yaml (depth 1 or 2: never delegates)
|
|
234
|
+
```
|
|
235
|
+
|
|
236
|
+
A delegating child reports its result only once its own work has settled.
|
|
237
|
+
When its turn ends while runs it started are still working, the child waits
|
|
238
|
+
for them, then gets one more turn carrying the results it has not already
|
|
239
|
+
read through the `agent` tool, and repeats until nothing it started is
|
|
240
|
+
running. Its output is the final assistant message after that. Interrupting
|
|
241
|
+
or closing a child interrupts or closes every run it started, and children at
|
|
242
|
+
every depth auto-resolve interactions rather than asking the user.
|
|
222
243
|
|
|
223
244
|
## Recommended Structure
|
|
224
245
|
|
package/docs/host-api.md
CHANGED
|
@@ -132,12 +132,40 @@ Recipe-specific memory behavior belongs in `SYSTEM.md` or agent
|
|
|
132
132
|
|
|
133
133
|
The default in-process subagent controller uses that same Recipe snapshot for
|
|
134
134
|
every child, so no session reparses the package or observes a different source
|
|
135
|
-
snapshot.
|
|
136
|
-
|
|
135
|
+
snapshot. A child whose agent declares subagents gets its own in-process
|
|
136
|
+
controller, inheriting the cwd, environment, credentials, memory, OTel options
|
|
137
|
+
and concurrency, down to `MAX_AGENT_RUN_DEPTH` (2). Injected controllers own
|
|
138
|
+
child selection and execution after the root session is constructed, including
|
|
139
|
+
whether their children delegate in turn.
|
|
140
|
+
|
|
141
|
+
A host whose own controller constructs children lets them delegate by passing
|
|
142
|
+
the run each one serves, then settling the child's own runs before reading its
|
|
143
|
+
answer:
|
|
144
|
+
|
|
145
|
+
```ts
|
|
146
|
+
import { createDelegatedRuns } from "@introspection-ai/recipes/agents";
|
|
147
|
+
|
|
148
|
+
const delegated = createDelegatedRuns();
|
|
149
|
+
const child = await createAgentSession({
|
|
150
|
+
recipe,
|
|
151
|
+
agentName: "background",
|
|
152
|
+
cwd,
|
|
153
|
+
agentRun: { id: runId, depth: 1 },
|
|
154
|
+
agentToolOptions: delegated.agentToolOptions,
|
|
155
|
+
});
|
|
156
|
+
// Prompts, waits for the runs the child started, and prompts it again with
|
|
157
|
+
// their results until nothing is outstanding.
|
|
158
|
+
await delegated.run(child, prompt, (input) => child.session.prompt(input));
|
|
159
|
+
```
|
|
160
|
+
|
|
161
|
+
`delegated.interrupt(child)` ends the loop and interrupts the child's runs;
|
|
162
|
+
disposing the child shuts its controller down.
|
|
137
163
|
|
|
138
164
|
`onEvent` observes the root Pi session. `onAgentRunEvent` observes each event
|
|
139
|
-
from the default in-process children as an `AgentRunEvent`
|
|
140
|
-
the run id, parent id
|
|
165
|
+
from the default in-process children, at every depth, as an `AgentRunEvent`
|
|
166
|
+
envelope containing the run id, parent id (`root` for the root's children, the
|
|
167
|
+
delegating run's id below that), agent identity, depth, and canonical Pi
|
|
168
|
+
event. Hosts can
|
|
141
169
|
merge the two streams without copying root events. An injected `runController`
|
|
142
170
|
owns its own observation contract and does not trigger this callback.
|
|
143
171
|
|
package/docs/pi-extension.md
CHANGED
|
@@ -66,8 +66,9 @@ See [Recipe Format](recipe-format.md) for the authored contract and
|
|
|
66
66
|
Pi's JSON mode emits root session events directly. Recipes appends one Pi
|
|
67
67
|
custom entry for every canonical event emitted by a delegated child. Pi emits
|
|
68
68
|
that entry as an `entry_appended` event; its `data` is an `agent_run_event`
|
|
69
|
-
envelope carrying the child run id,
|
|
70
|
-
|
|
69
|
+
envelope carrying the child run id, parent run id (`root`, or the delegating
|
|
70
|
+
child's run id for a depth-2 run), agent identity, depth, and unchanged Pi
|
|
71
|
+
session event. Custom entries are part of Pi's canonical session
|
|
71
72
|
stream but do not participate in model context. Consumers can attribute cost,
|
|
72
73
|
messages, and tool calls across the run tree without a second transcript store.
|
|
73
74
|
|
package/docs/recipe-format.md
CHANGED
|
@@ -77,10 +77,11 @@ Recipe fields inside supported `pi` structures are validation errors unless a
|
|
|
77
77
|
later format version explicitly defines them.
|
|
78
78
|
|
|
79
79
|
When a Recipe declares non-empty `dependencies` or `optionalDependencies`, it
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
version
|
|
83
|
-
|
|
80
|
+
SHOULD commit `pnpm-lock.yaml`; without one the check warns and each install
|
|
81
|
+
resolves the declared ranges afresh. A `packageManager` field, if present, MUST
|
|
82
|
+
be a complete `pnpm@<version>` descriptor; Corepack refuses a bare name, a
|
|
83
|
+
partial version, or another manager. A Recipe installs with pnpm, so
|
|
84
|
+
`package-lock.json`,
|
|
84
85
|
`npm-shrinkwrap.json` and `yarn.lock` are rejected: they pin nothing that is
|
|
85
86
|
read. An npm lockfile left in the tree MUST still carry the same package name
|
|
86
87
|
and version as `package.json`.
|
|
@@ -209,7 +210,8 @@ analytics, telemetry, and model-default settings are
|
|
|
209
210
|
not portable session policy and remain host-owned or belong under `ai`.
|
|
210
211
|
|
|
211
212
|
`tools` MUST NOT contain `agent`. The host materializes that session-generated
|
|
212
|
-
tool for a
|
|
213
|
+
tool for a session whose effective `subagents` list is non-empty and whose
|
|
214
|
+
delegation depth allows it (see below).
|
|
213
215
|
|
|
214
216
|
The default agent is named `agent`. If no `agent` exists, a host MAY select the
|
|
215
217
|
only declared agent. When multiple agents exist without `agent`, the caller
|
|
@@ -285,6 +287,13 @@ through this field.
|
|
|
285
287
|
those resolved definitions through the shared `agent` tool. How child work is
|
|
286
288
|
scheduled or isolated belongs to the host.
|
|
287
289
|
|
|
290
|
+
Delegation is two levels deep. A delegated child (depth 1) whose effective
|
|
291
|
+
`subagents` list is non-empty receives its own `agent` tool; a child of a
|
|
292
|
+
child (depth 2) MUST NOT receive one, which also bounds recursive references
|
|
293
|
+
such as `a -> b -> a`. A delegating child's run completes only after the runs
|
|
294
|
+
it started have settled and it has processed their results, and interrupting
|
|
295
|
+
or closing a run interrupts or closes the runs beneath it.
|
|
296
|
+
|
|
288
297
|
The `pi.mcp` package block declares capability servers and package-level tool
|
|
289
298
|
policy. Agent `mcp` blocks narrow those declarations. Credentials and concrete
|
|
290
299
|
endpoint bindings MUST NOT be required in distributable Recipe source. A host
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@introspection-ai/recipes",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.29.0",
|
|
4
4
|
"description": "The open format for vertical agents, built on Pi.",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"type": "module",
|
|
@@ -84,7 +84,7 @@
|
|
|
84
84
|
"@introspection-sdk/introspection-pi": "^0.23.0",
|
|
85
85
|
"@opentelemetry/api": "^1.9.1",
|
|
86
86
|
"ajv": "^8.20.0",
|
|
87
|
-
"mcporter": "0.
|
|
87
|
+
"mcporter": "0.14.2",
|
|
88
88
|
"yaml": "^2.9.0"
|
|
89
89
|
},
|
|
90
90
|
"peerDependencies": {
|
|
@@ -106,10 +106,10 @@
|
|
|
106
106
|
"vitest": "^5.0.1"
|
|
107
107
|
},
|
|
108
108
|
"optionalDependencies": {
|
|
109
|
-
"@introspection-ai/mcp-client-linux-x64": "0.
|
|
110
|
-
"@introspection-ai/mcp-client-linux-arm64": "0.
|
|
111
|
-
"@introspection-ai/mcp-client-darwin-arm64": "0.
|
|
112
|
-
"@introspection-ai/mcp-client-darwin-x64": "0.
|
|
109
|
+
"@introspection-ai/mcp-client-linux-x64": "0.29.0",
|
|
110
|
+
"@introspection-ai/mcp-client-linux-arm64": "0.29.0",
|
|
111
|
+
"@introspection-ai/mcp-client-darwin-arm64": "0.29.0",
|
|
112
|
+
"@introspection-ai/mcp-client-darwin-x64": "0.29.0"
|
|
113
113
|
},
|
|
114
114
|
"scripts": {
|
|
115
115
|
"build": "pnpm build:ts && pnpm build:native",
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { createRequire as __createRequire } from "node:module"; const require = __createRequire(import.meta.url);
|
|
2
|
-
import {
|
|
3
|
-
parseCallArguments
|
|
4
|
-
} from "./chunk-HZ2SX5U6.js";
|
|
5
|
-
import "./chunk-QALB3DRW.js";
|
|
6
|
-
import "./chunk-KOWNVUL2.js";
|
|
7
|
-
import "./chunk-LCBDVFVA.js";
|
|
8
|
-
import "./chunk-2P2HVZ3G.js";
|
|
9
|
-
import "./chunk-5B7GRMUK.js";
|
|
10
|
-
import "./chunk-H4KL74PV.js";
|
|
11
|
-
import "./chunk-T4MQCFIK.js";
|
|
12
|
-
import "./chunk-D6SVCPN6.js";
|
|
13
|
-
import "./chunk-LRKZP7DJ.js";
|
|
14
|
-
export {
|
|
15
|
-
parseCallArguments
|
|
16
|
-
};
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { createRequire as __createRequire } from "node:module"; const require = __createRequire(import.meta.url);
|
|
2
|
-
import {
|
|
3
|
-
DaemonClient,
|
|
4
|
-
resolveDaemonPaths
|
|
5
|
-
} from "./chunk-FBVRU4Y3.js";
|
|
6
|
-
import "./chunk-PJCMJ65D.js";
|
|
7
|
-
import "./chunk-KQCLM7R7.js";
|
|
8
|
-
import "./chunk-D6B2M5V7.js";
|
|
9
|
-
import "./chunk-L6OOGZVA.js";
|
|
10
|
-
import "./chunk-TYYSBILI.js";
|
|
11
|
-
import "./chunk-IF6LRV3J.js";
|
|
12
|
-
import "./chunk-XNHGMWN2.js";
|
|
13
|
-
import "./chunk-P463YBJM.js";
|
|
14
|
-
import "./chunk-FONFU4G5.js";
|
|
15
|
-
import "./chunk-7PFJCLXL.js";
|
|
16
|
-
import "./chunk-H4KL74PV.js";
|
|
17
|
-
import "./chunk-RZIJUJGL.js";
|
|
18
|
-
import "./chunk-H7ARMBV7.js";
|
|
19
|
-
import "./chunk-UYJZJXC2.js";
|
|
20
|
-
import "./chunk-UHO6KIUJ.js";
|
|
21
|
-
import "./chunk-T4MQCFIK.js";
|
|
22
|
-
import "./chunk-D6SVCPN6.js";
|
|
23
|
-
import "./chunk-QJNF3A3F.js";
|
|
24
|
-
import "./chunk-O4JIUOWF.js";
|
|
25
|
-
import "./chunk-S5F3HEZZ.js";
|
|
26
|
-
import "./chunk-LRKZP7DJ.js";
|
|
27
|
-
export {
|
|
28
|
-
DaemonClient,
|
|
29
|
-
resolveDaemonPaths
|
|
30
|
-
};
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { createRequire as __createRequire } from "node:module"; const require = __createRequire(import.meta.url);
|
|
2
|
-
import {
|
|
3
|
-
handleDaemonCli
|
|
4
|
-
} from "./chunk-5BMCVE2J.js";
|
|
5
|
-
import "./chunk-LXHPDKEF.js";
|
|
6
|
-
import "./chunk-FBVRU4Y3.js";
|
|
7
|
-
import "./chunk-PJCMJ65D.js";
|
|
8
|
-
import "./chunk-KQCLM7R7.js";
|
|
9
|
-
import "./chunk-D6B2M5V7.js";
|
|
10
|
-
import "./chunk-L6OOGZVA.js";
|
|
11
|
-
import "./chunk-TYYSBILI.js";
|
|
12
|
-
import "./chunk-IF6LRV3J.js";
|
|
13
|
-
import "./chunk-XNHGMWN2.js";
|
|
14
|
-
import "./chunk-P463YBJM.js";
|
|
15
|
-
import "./chunk-FONFU4G5.js";
|
|
16
|
-
import "./chunk-7PFJCLXL.js";
|
|
17
|
-
import "./chunk-H4KL74PV.js";
|
|
18
|
-
import "./chunk-RZIJUJGL.js";
|
|
19
|
-
import "./chunk-H7ARMBV7.js";
|
|
20
|
-
import "./chunk-UYJZJXC2.js";
|
|
21
|
-
import "./chunk-UHO6KIUJ.js";
|
|
22
|
-
import "./chunk-T4MQCFIK.js";
|
|
23
|
-
import "./chunk-D6SVCPN6.js";
|
|
24
|
-
import "./chunk-QJNF3A3F.js";
|
|
25
|
-
import "./chunk-O4JIUOWF.js";
|
|
26
|
-
import "./chunk-S5F3HEZZ.js";
|
|
27
|
-
import "./chunk-LRKZP7DJ.js";
|
|
28
|
-
export {
|
|
29
|
-
handleDaemonCli
|
|
30
|
-
};
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { createRequire as __createRequire } from "node:module"; const require = __createRequire(import.meta.url);
|
|
2
|
-
import {
|
|
3
|
-
createGeneratedKeepAliveRuntime
|
|
4
|
-
} from "./chunk-7WL4TMON.js";
|
|
5
|
-
import "./chunk-6QZQZXDJ.js";
|
|
6
|
-
import "./chunk-FBVRU4Y3.js";
|
|
7
|
-
import "./chunk-PJCMJ65D.js";
|
|
8
|
-
import "./chunk-KQCLM7R7.js";
|
|
9
|
-
import "./chunk-D6B2M5V7.js";
|
|
10
|
-
import "./chunk-L6OOGZVA.js";
|
|
11
|
-
import "./chunk-TYYSBILI.js";
|
|
12
|
-
import "./chunk-IF6LRV3J.js";
|
|
13
|
-
import "./chunk-XNHGMWN2.js";
|
|
14
|
-
import "./chunk-P463YBJM.js";
|
|
15
|
-
import "./chunk-FONFU4G5.js";
|
|
16
|
-
import "./chunk-7PFJCLXL.js";
|
|
17
|
-
import "./chunk-H4KL74PV.js";
|
|
18
|
-
import "./chunk-RZIJUJGL.js";
|
|
19
|
-
import "./chunk-H7ARMBV7.js";
|
|
20
|
-
import "./chunk-UYJZJXC2.js";
|
|
21
|
-
import "./chunk-UHO6KIUJ.js";
|
|
22
|
-
import "./chunk-T4MQCFIK.js";
|
|
23
|
-
import "./chunk-D6SVCPN6.js";
|
|
24
|
-
import "./chunk-QJNF3A3F.js";
|
|
25
|
-
import "./chunk-O4JIUOWF.js";
|
|
26
|
-
import "./chunk-S5F3HEZZ.js";
|
|
27
|
-
import "./chunk-LRKZP7DJ.js";
|
|
28
|
-
export {
|
|
29
|
-
createGeneratedKeepAliveRuntime
|
|
30
|
-
};
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import { createRequire as __createRequire } from "node:module"; const require = __createRequire(import.meta.url);
|
|
2
|
-
import {
|
|
3
|
-
callOnce,
|
|
4
|
-
createRuntime
|
|
5
|
-
} from "./chunk-PJCMJ65D.js";
|
|
6
|
-
import "./chunk-KQCLM7R7.js";
|
|
7
|
-
import "./chunk-D6B2M5V7.js";
|
|
8
|
-
import "./chunk-L6OOGZVA.js";
|
|
9
|
-
import "./chunk-TYYSBILI.js";
|
|
10
|
-
import "./chunk-IF6LRV3J.js";
|
|
11
|
-
import "./chunk-XNHGMWN2.js";
|
|
12
|
-
import "./chunk-P463YBJM.js";
|
|
13
|
-
import "./chunk-FONFU4G5.js";
|
|
14
|
-
import {
|
|
15
|
-
MCPORTER_VERSION
|
|
16
|
-
} from "./chunk-7PFJCLXL.js";
|
|
17
|
-
import "./chunk-H4KL74PV.js";
|
|
18
|
-
import "./chunk-RZIJUJGL.js";
|
|
19
|
-
import {
|
|
20
|
-
readJsonFile,
|
|
21
|
-
writeJsonFile
|
|
22
|
-
} from "./chunk-H7ARMBV7.js";
|
|
23
|
-
import "./chunk-UYJZJXC2.js";
|
|
24
|
-
import "./chunk-UHO6KIUJ.js";
|
|
25
|
-
import "./chunk-T4MQCFIK.js";
|
|
26
|
-
import "./chunk-D6SVCPN6.js";
|
|
27
|
-
import "./chunk-QJNF3A3F.js";
|
|
28
|
-
import "./chunk-O4JIUOWF.js";
|
|
29
|
-
import "./chunk-S5F3HEZZ.js";
|
|
30
|
-
import "./chunk-LRKZP7DJ.js";
|
|
31
|
-
export {
|
|
32
|
-
MCPORTER_VERSION,
|
|
33
|
-
callOnce,
|
|
34
|
-
createRuntime,
|
|
35
|
-
readJsonFile,
|
|
36
|
-
writeJsonFile
|
|
37
|
-
};
|