@introspection-ai/recipes 0.28.0 → 0.30.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 (121) hide show
  1. package/dist/agents.d.ts +34 -0
  2. package/dist/agents.d.ts.map +1 -1
  3. package/dist/agents.js +87 -0
  4. package/dist/agents.js.map +1 -1
  5. package/dist/child/agent.d.ts +5 -0
  6. package/dist/child/agent.d.ts.map +1 -1
  7. package/dist/child/agent.js +19 -8
  8. package/dist/child/agent.js.map +1 -1
  9. package/dist/child/session.d.ts +33 -4
  10. package/dist/child/session.d.ts.map +1 -1
  11. package/dist/child/session.js +68 -3
  12. package/dist/child/session.js.map +1 -1
  13. package/dist/mcp-chunks/{auth-command-GQFV6QYP.js → auth-command-SDTBVC2R.js} +22 -21
  14. package/dist/mcp-chunks/call-arguments-ER7NWEPS.js +16 -0
  15. package/dist/mcp-chunks/{call-command-LMAREWKD.js → call-command-WOZT2DLX.js} +33 -32
  16. package/dist/mcp-chunks/{chunk-5B7GRMUK.js → chunk-27XDYSXJ.js} +1 -1
  17. package/dist/mcp-chunks/{chunk-FONFU4G5.js → chunk-2IO3FXZJ.js} +1 -1
  18. package/dist/mcp-chunks/{chunk-O4JIUOWF.js → chunk-35JUFDQI.js} +2 -2
  19. package/dist/mcp-chunks/{chunk-UYJZJXC2.js → chunk-43QNQO5C.js} +3 -3
  20. package/dist/mcp-chunks/{chunk-LIEFPSSB.js → chunk-4IXQQER3.js} +5 -5
  21. package/dist/mcp-chunks/{chunk-O2VOMKAS.js → chunk-6XBQDCGX.js} +10 -10
  22. package/dist/mcp-chunks/{chunk-S2YF442K.js → chunk-7CI6DKEP.js} +2 -2
  23. package/dist/mcp-chunks/{chunk-H7ARMBV7.js → chunk-7OQUF6V6.js} +26 -10
  24. package/dist/mcp-chunks/{chunk-S6GJ42I2.js → chunk-7X3JHUMH.js} +1 -1
  25. package/dist/mcp-chunks/{chunk-D6B2M5V7.js → chunk-7ZZZ7MR2.js} +1 -1
  26. package/dist/mcp-chunks/{chunk-WHJUDBPR.js → chunk-AHDUZPNI.js} +2 -1
  27. package/dist/mcp-chunks/{chunk-QALB3DRW.js → chunk-ALLS7CUV.js} +1 -1
  28. package/dist/mcp-chunks/{chunk-6RG6AD5X.js → chunk-ASFI5AJK.js} +17 -11
  29. package/dist/mcp-chunks/{chunk-LQIE4PKL.js → chunk-CMDB57MS.js} +2 -2
  30. package/dist/mcp-chunks/{chunk-HZ2SX5U6.js → chunk-CO4CYU5W.js} +11 -11
  31. package/dist/mcp-chunks/{chunk-TUQGOYK6.js → chunk-CRX2G22W.js} +1 -1
  32. package/dist/mcp-chunks/{chunk-UKM35J67.js → chunk-DUJ5WAHC.js} +2 -2
  33. package/dist/mcp-chunks/{chunk-RIHPVCGI.js → chunk-EIF7GALA.js} +1 -1
  34. package/dist/mcp-chunks/{chunk-QJNF3A3F.js → chunk-EIXFNLU6.js} +1 -1
  35. package/dist/mcp-chunks/{chunk-77BZYP72.js → chunk-FMYP6JXX.js} +1 -1
  36. package/dist/mcp-chunks/{chunk-LXHPDKEF.js → chunk-FQAJT6U2.js} +1 -1
  37. package/dist/mcp-chunks/{chunk-7WL4TMON.js → chunk-FUKRLUU7.js} +4 -4
  38. package/dist/mcp-chunks/{chunk-L6OOGZVA.js → chunk-FVZKQMZS.js} +21 -7
  39. package/dist/mcp-chunks/{chunk-RZIJUJGL.js → chunk-FWWPRZ37.js} +31 -40
  40. package/dist/mcp-chunks/{chunk-KQCLM7R7.js → chunk-GJ7DWMRT.js} +1 -1
  41. package/dist/mcp-chunks/{chunk-LCBDVFVA.js → chunk-HM26TIPK.js} +1 -1
  42. package/dist/mcp-chunks/{chunk-JVYCENPP.js → chunk-IJTZ2ZRM.js} +4 -4
  43. package/dist/mcp-chunks/{chunk-S5F3HEZZ.js → chunk-IR5SMKTP.js} +425 -445
  44. package/dist/mcp-chunks/{chunk-7PFJCLXL.js → chunk-IWXEOLJL.js} +20 -16
  45. package/dist/mcp-chunks/{chunk-D6SVCPN6.js → chunk-JQCSGX6E.js} +1 -1
  46. package/dist/mcp-chunks/{chunk-P463YBJM.js → chunk-JRU5LZJQ.js} +1 -1
  47. package/dist/mcp-chunks/{chunk-XNHGMWN2.js → chunk-M7VINGHY.js} +9 -7
  48. package/dist/mcp-chunks/{chunk-IF6LRV3J.js → chunk-OURSGEZX.js} +8 -8
  49. package/dist/mcp-chunks/{chunk-H4KL74PV.js → chunk-P3S4OJPI.js} +9 -9
  50. package/dist/mcp-chunks/{chunk-P3UVILEW.js → chunk-POYT6GCW.js} +29 -5
  51. package/dist/mcp-chunks/{chunk-5BMCVE2J.js → chunk-R636HUNL.js} +17 -13
  52. package/dist/mcp-chunks/{chunk-TYYSBILI.js → chunk-SONMFI3S.js} +70 -28
  53. package/dist/mcp-chunks/{chunk-I6UMKX5E.js → chunk-SVCKS5MW.js} +4 -4
  54. package/dist/mcp-chunks/{chunk-NQW3ES2G.js → chunk-TDBM2UIR.js} +1 -1
  55. package/dist/mcp-chunks/{chunk-VJIAHZZG.js → chunk-TKZA4MPW.js} +4 -4
  56. package/dist/mcp-chunks/{chunk-2P2HVZ3G.js → chunk-UHXTAPEC.js} +1 -1
  57. package/dist/mcp-chunks/{chunk-CLR6DJV3.js → chunk-UXI26V4F.js} +1 -1
  58. package/dist/mcp-chunks/{chunk-UIPG6W7N.js → chunk-UYG7PAN2.js} +2 -2
  59. package/dist/mcp-chunks/{chunk-2HOMVWSA.js → chunk-VCPUZFU7.js} +2 -2
  60. package/dist/mcp-chunks/{chunk-FBVRU4Y3.js → chunk-VRTH73R5.js} +40 -33
  61. package/dist/mcp-chunks/{chunk-KOWNVUL2.js → chunk-VWNF5PIF.js} +2 -2
  62. package/dist/mcp-chunks/{chunk-MJFZM5EV.js → chunk-WQBESOWG.js} +22 -5
  63. package/dist/mcp-chunks/chunk-XDARNDP3.js +25 -0
  64. package/dist/mcp-chunks/{chunk-OSYB5GNF.js → chunk-XUJQ6U6M.js} +3 -3
  65. package/dist/mcp-chunks/{chunk-PJCMJ65D.js → chunk-YGRORKGT.js} +226 -101
  66. package/dist/mcp-chunks/{chunk-C2VLY7ED.js → chunk-YM7ZVYI2.js} +4 -4
  67. package/dist/mcp-chunks/{chunk-6QZQZXDJ.js → chunk-YTO7DITJ.js} +3 -3
  68. package/dist/mcp-chunks/{chunk-UHO6KIUJ.js → chunk-ZLV5S5UP.js} +2 -2
  69. package/dist/mcp-chunks/{cli-JI7MEAAX.js → cli-67GWFF4R.js} +69 -68
  70. package/dist/mcp-chunks/client-MQMNAYYW.js +31 -0
  71. package/dist/mcp-chunks/{config-command-GRZLKD3R.js → config-command-3IKIRWMW.js} +41 -27
  72. package/dist/mcp-chunks/daemon-command-OMOZ5MP7.js +31 -0
  73. package/dist/mcp-chunks/{dist-USMCQ22V.js → dist-YL3LFKVP.js} +219 -202
  74. package/dist/mcp-chunks/{emit-ts-command-7VLESP7H.js → emit-ts-command-YWKROLL2.js} +84 -70
  75. package/dist/mcp-chunks/{generate-cli-runner-SSW2B72K.js → generate-cli-runner-CZEVY2Y7.js} +51 -48
  76. package/dist/mcp-chunks/generated-daemon-runtime-SRFULTIT.js +31 -0
  77. package/dist/mcp-chunks/{inspect-cli-command-NCGCMOIS.js → inspect-cli-command-5Y2LORK5.js} +9 -9
  78. package/dist/mcp-chunks/{launch-NBONSPNK.js → launch-43TA3HYF.js} +1 -1
  79. package/dist/mcp-chunks/{lifecycle-CXAKUCN4.js → lifecycle-BY2ILXTB.js} +1 -1
  80. package/dist/mcp-chunks/{list-command-5T4UF4PF.js → list-command-7RU7NNAV.js} +56 -43
  81. package/dist/mcp-chunks/{output-utils-YFTWQZ5V.js → output-utils-2R3SA6KR.js} +3 -3
  82. package/dist/mcp-chunks/{prompt-CH6TK0bC-6DI4RA4E.js → prompt-CH6TK0bC-GKQOEUY4.js} +1 -1
  83. package/dist/mcp-chunks/{record-command-TE5O7WBL.js → record-command-ROIRRNFS.js} +5 -5
  84. package/dist/mcp-chunks/{replay-command-QCUL5ASR.js → replay-command-Y2MYVQTL.js} +6 -6
  85. package/dist/mcp-chunks/{resource-command-XMGF7EAK.js → resource-command-VUV7AYYQ.js} +9 -9
  86. package/dist/mcp-chunks/{result-utils-HKB42M7Y.js → result-utils-5U7NVXDZ.js} +3 -3
  87. package/dist/mcp-chunks/runtime-Q4SCCOQE.js +38 -0
  88. package/dist/mcp-chunks/{runtime-wrapper-MI3HF45J.js → runtime-wrapper-3BVFTSWJ.js} +3 -3
  89. package/dist/mcp-chunks/{serve-command-5HV3ZE25.js → serve-command-BXLQWHFW.js} +8969 -1147
  90. package/dist/mcp-chunks/{timeouts-YBFBTLV2.js → timeouts-6GL2F44N.js} +3 -3
  91. package/dist/mcp-chunks/{vault-command-FC2PD5U6.js → vault-command-JCMW3DQA.js} +4 -4
  92. package/dist/mcp-chunks/{webapi-IFUPO72B.js → webapi-UMWFGMQV.js} +46 -46
  93. package/dist/mcp-daemon.js +27 -26
  94. package/dist/mcp-run-worker.js +27 -26
  95. package/dist/pi-extension.d.ts.map +1 -1
  96. package/dist/pi-extension.js +31 -24
  97. package/dist/pi-extension.js.map +1 -1
  98. package/dist/recipe/model.d.ts.map +1 -1
  99. package/dist/recipe/model.js +25 -1
  100. package/dist/recipe/model.js.map +1 -1
  101. package/dist/recipe/session.d.ts.map +1 -1
  102. package/dist/recipe/session.js +2 -0
  103. package/dist/recipe/session.js.map +1 -1
  104. package/dist/run-controller.d.ts +13 -3
  105. package/dist/run-controller.d.ts.map +1 -1
  106. package/dist/run-controller.js +26 -11
  107. package/dist/run-controller.js.map +1 -1
  108. package/dist/session.d.ts +18 -1
  109. package/dist/session.d.ts.map +1 -1
  110. package/dist/session.js +25 -12
  111. package/dist/session.js.map +1 -1
  112. package/docs/agent-composition.md +27 -6
  113. package/docs/host-api.md +32 -4
  114. package/docs/pi-extension.md +3 -2
  115. package/docs/recipe-format.md +23 -8
  116. package/package.json +10 -10
  117. package/dist/mcp-chunks/call-arguments-VT7JLNJY.js +0 -16
  118. package/dist/mcp-chunks/client-QU7ABSNB.js +0 -30
  119. package/dist/mcp-chunks/daemon-command-3266CYHO.js +0 -30
  120. package/dist/mcp-chunks/generated-daemon-runtime-7CFVWLC7.js +0 -30
  121. package/dist/mcp-chunks/runtime-3X2XVS6X.js +0 -37
@@ -1,8 +1,7 @@
1
1
  import { randomUUID } from "node:crypto";
2
2
  import { notifyAgentRunEvent } from "./agents.js";
3
- import { autoResolveInteractions } from "./interactions.js";
4
3
  import { promptResultError, promptResultText } from "./child/agent.js";
5
- import { createIsolatedChildSession } from "./child/session.js";
4
+ import { createIsolatedChildSession, } from "./child/session.js";
6
5
  /** Default in-process child concurrency. */
7
6
  export const DEFAULT_SUBAGENT_CONCURRENCY = 4;
8
7
  class RunNotFoundError extends Error {
@@ -13,8 +12,11 @@ class RunNotFoundError extends Error {
13
12
  }
14
13
  /**
15
14
  * The default in-process subagent controller. Children are Recipe sessions
16
- * created through `createAgentSession`, with bounded concurrency and
17
- * one-level delegation.
15
+ * created through `createAgentSession`, with bounded concurrency. A child
16
+ * whose agent declares subagents delegates in turn through its own
17
+ * controller, down to `MAX_AGENT_RUN_DEPTH`. A run reports its result only
18
+ * once the runs it started have settled and it has processed them; closing or
19
+ * interrupting it closes or interrupts its whole subtree.
18
20
  *
19
21
  * Recovery rule every controller must honor: a child whose agent profile no
20
22
  * longer exists errors the parent's `agent` tool call — it never wedges it.
@@ -26,6 +28,8 @@ export function createInProcessRunController(opts) {
26
28
  const env = opts.env ?? process.env;
27
29
  const concurrency = Math.max(1, opts.concurrency ?? DEFAULT_SUBAGENT_CONCURRENCY);
28
30
  const runs = new Map();
31
+ const depth = opts.depth ?? 1;
32
+ const parentAgentRunId = opts.parentAgentRunId ?? "root";
29
33
  let active = 0;
30
34
  const queue = [];
31
35
  async function acquireSlot() {
@@ -76,6 +80,9 @@ export function createInProcessRunController(opts) {
76
80
  // runtime to the child.
77
81
  env,
78
82
  ...(opts.credentials ? { credentials: opts.credentials } : {}),
83
+ ...(opts.settingsManager
84
+ ? { settingsManager: opts.settingsManager }
85
+ : {}),
79
86
  ...(opts.memory ? { memory: opts.memory } : {}),
80
87
  ...(opts.memoryOverride
81
88
  ? { memoryOverride: opts.memoryOverride }
@@ -93,14 +100,22 @@ export function createInProcessRunController(opts) {
93
100
  }
94
101
  : {}),
95
102
  ...(opts.sessionFactory ? { sessionFactory: opts.sessionFactory } : {}),
103
+ agentRunId: run.summary.agent_run_id,
104
+ depth,
105
+ ...(opts.onAgentRunEvent
106
+ ? { onAgentRunEvent: opts.onAgentRunEvent }
107
+ : {}),
108
+ ...(opts.concurrency !== undefined
109
+ ? { concurrency: opts.concurrency }
110
+ : {}),
96
111
  onEvent: (event) => {
97
112
  notifyAgentRunEvent(opts.onAgentRunEvent, {
98
113
  type: "agent_run_event",
99
114
  agent_run_id: run.summary.agent_run_id,
100
- parent_agent_run_id: "root",
115
+ parent_agent_run_id: parentAgentRunId,
101
116
  agent_name: run.summary.agent_name,
102
117
  invocation_name: run.summary.invocation_name,
103
- depth: 1,
118
+ depth,
104
119
  event,
105
120
  });
106
121
  const record = event;
@@ -118,9 +133,9 @@ export function createInProcessRunController(opts) {
118
133
  return;
119
134
  }
120
135
  }
121
- // Children never own the root interaction lifecycle: their asks resolve
122
- // internally so a child cannot strand the parent waiting on a user.
123
- await autoResolveInteractions(() => run.handle.session.prompt(prompt));
136
+ // Resolves once the child's own runs have settled and it has had the
137
+ // turn(s) that process their results; interactions auto-resolve.
138
+ await run.handle.run(prompt);
124
139
  if (run.summary.status !== "running")
125
140
  return;
126
141
  const result = {
@@ -233,7 +248,7 @@ export function createInProcessRunController(opts) {
233
248
  const run = requireRun(id);
234
249
  if (run.summary.status === "running") {
235
250
  touch(run, { status: "interrupted", completed_at: Date.now() });
236
- await run.handle?.session.abort().catch(() => { });
251
+ await run.handle?.interrupt().catch(() => { });
237
252
  }
238
253
  return run.summary;
239
254
  },
@@ -244,7 +259,7 @@ export function createInProcessRunController(opts) {
244
259
  status: "closed",
245
260
  completed_at: run.summary.completed_at ?? Date.now(),
246
261
  });
247
- await run.handle?.session.abort().catch(() => { });
262
+ await run.handle?.interrupt().catch(() => { });
248
263
  }
249
264
  await run.handle?.dispose().catch(() => { });
250
265
  run.handle = null;
@@ -1 +1 @@
1
- {"version":3,"file":"run-controller.js","sourceRoot":"","sources":["../src/run-controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run-controller.js","sourceRoot":"","sources":["../src/run-controller.ts"],"names":[],"mappings":"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"}
package/dist/session.d.ts CHANGED
@@ -46,7 +46,11 @@ export interface CreateAgentSessionOptions {
46
46
  env?: NodeJS.ProcessEnv;
47
47
  /** Default: `SessionManager.inMemory(cwd)`. */
48
48
  sessionManager?: SessionManager;
49
- /** Host-owned settings (compaction, retry). Default: `SettingsManager.create(cwd, recipe.recipeDir)`. */
49
+ /**
50
+ * Host settings, including any `applyOverrides` on Pi >=0.99. The agent's `session`
51
+ * policy is layered over them on a session-local copy. Default:
52
+ * `SettingsManager.create(cwd, recipe.recipeDir)`.
53
+ */
50
54
  settingsManager?: SettingsManager;
51
55
  /** Host extensions appended after the recipe's own extensions. */
52
56
  extensionFactories?: ExtensionFactory[];
@@ -64,6 +68,17 @@ export interface CreateAgentSessionOptions {
64
68
  agentToolOptions?: {
65
69
  acknowledgeCompletions?(ids: readonly string[]): void;
66
70
  };
71
+ /**
72
+ * The delegated run this session serves, for a host that runs children
73
+ * itself. Root sessions omit it (depth 0). Below `MAX_AGENT_RUN_DEPTH` a
74
+ * session whose agent declares subagents gets the default controller, which
75
+ * starts its runs one level deeper, attributed to this run id; at the bound
76
+ * it never delegates. Settle its runs with `createDelegatedRuns`.
77
+ */
78
+ agentRun?: {
79
+ id: string;
80
+ depth: number;
81
+ };
67
82
  /** Configuration for the default in-process controller. Ignored when injected. */
68
83
  inProcessRunController?: {
69
84
  concurrency?: number;
@@ -97,6 +112,8 @@ export interface CreateAgentSessionInternalOptions extends CreateAgentSessionOpt
97
112
  credentialsResolved?: boolean;
98
113
  mcpRuntimeDir?: string;
99
114
  sessionRole: RecipeExtensionSessionContext["session"]["role"];
115
+ /** @internal Child session factory inherited by this session's own runs. */
116
+ sessionFactory?: (options: CreateAgentSessionInternalOptions) => Promise<RecipeSessionHandle>;
100
117
  }
101
118
  export interface RecipeSessionOtelOptions extends Omit<InstrumentSessionOptions, "meta"> {
102
119
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"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"}
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";
@@ -16,8 +16,6 @@ import { applyRecipeAgentModelConfigToModel, applyRecipeAgentModelConfigToSessio
16
16
  import { formatMemoryForPrompt, loadMemoryIndex, } from "./memory.js";
17
17
  export { expectedProviderEnvVars } from "./provider-env.js";
18
18
  function sessionSettingsManager(base, sessionSettings) {
19
- if (!sessionSettings)
20
- return base;
21
19
  const merge = (left, right) => {
22
20
  const result = { ...left };
23
21
  for (const [key, value] of Object.entries(right)) {
@@ -31,7 +29,13 @@ function sessionSettingsManager(base, sessionSettings) {
31
29
  }
32
30
  return result;
33
31
  };
34
- return SettingsManager.inMemory(merge(merge(base.getGlobalSettings(), base.getProjectSettings()), sessionSettings));
32
+ // Pi reloads the manager from storage while it builds the session, which
33
+ // discards `applyOverrides`, so the effective settings are baked into a
34
+ // session-local copy. `getSettings` (Pi >=0.99) includes the host's
35
+ // overrides; older Pi exposes only the file-backed scopes.
36
+ const effective = base.getSettings?.() ??
37
+ merge(base.getGlobalSettings(), base.getProjectSettings());
38
+ return SettingsManager.inMemory(merge(effective, sessionSettings ?? {}));
35
39
  }
36
40
  export { RecipeCredentialError, RecipeModelError, RecipeModelTransportError, };
37
41
  function schemaChildPosition(position, key) {
@@ -272,6 +276,12 @@ async function createSessionForAgent(recipe, opts) {
272
276
  ...(opts.credentials ? { credentials: opts.credentials } : {}),
273
277
  });
274
278
  const modelRuntime = await ModelRuntime.create({ credentials, modelsPath: null });
279
+ // Subagents: the shared `agent` tool against an injected or in-process
280
+ // controller. `runController: null` disables delegation outright, and a
281
+ // session at the maximum run depth never delegates.
282
+ const wantsSubagents = recipe.subagents.size > 0 &&
283
+ opts.runController !== null &&
284
+ (opts.agentRun?.depth ?? 0) < MAX_AGENT_RUN_DEPTH;
275
285
  let model;
276
286
  let session;
277
287
  let agentRuns;
@@ -332,9 +342,7 @@ async function createSessionForAgent(recipe, opts) {
332
342
  "find",
333
343
  "ls",
334
344
  ...(opts.customTools ?? []).map((tool) => tool.name),
335
- ...(recipe.subagents.size > 0 && opts.runController !== null
336
- ? ["agent"]
337
- : []),
345
+ ...(wantsSubagents ? ["agent"] : []),
338
346
  ]) {
339
347
  recipeRegistrations.claim("tool", toolName, "<host>");
340
348
  }
@@ -352,7 +360,7 @@ async function createSessionForAgent(recipe, opts) {
352
360
  recipeRegistrations.claim("tool", toolName, "<host>");
353
361
  }
354
362
  for (const connector of connectors.extensions) {
355
- inlineExtensions.push(bindRecipeExtensionFactory(connector.factory, recipeExtensionContext, recipeRegistrations, connector.owner, recipeExtensionToolAllowlist(recipe.tools, recipe.subagents.size > 0 && opts.runController !== null, [
363
+ inlineExtensions.push(bindRecipeExtensionFactory(connector.factory, recipeExtensionContext, recipeRegistrations, connector.owner, recipeExtensionToolAllowlist(recipe.tools, wantsSubagents, [
356
364
  ...connectorLoadout.toolNames,
357
365
  ...(mcp.tools?.map((tool) => tool.name) ?? []),
358
366
  ...((connectorLoadout.deferredToolNames.length > 0 ||
@@ -365,7 +373,7 @@ async function createSessionForAgent(recipe, opts) {
365
373
  ])));
366
374
  }
367
375
  for (const extensionPath of recipe.extensionPaths) {
368
- inlineExtensions.push(bindRecipeExtensionFactory(await loadRecipeExtensionFactory(recipe.recipeDir, extensionPath), recipeExtensionContext, recipeRegistrations, extensionPath, recipeExtensionToolAllowlist(recipe.tools, recipe.subagents.size > 0 && opts.runController !== null, [
376
+ inlineExtensions.push(bindRecipeExtensionFactory(await loadRecipeExtensionFactory(recipe.recipeDir, extensionPath), recipeExtensionContext, recipeRegistrations, extensionPath, recipeExtensionToolAllowlist(recipe.tools, wantsSubagents, [
369
377
  ...(mcp.tools?.map((tool) => tool.name) ?? []),
370
378
  ...((connectorLoadout.deferredToolNames.length > 0 ||
371
379
  (mcp.deferredToolNames?.length ?? 0) > 0)
@@ -433,9 +441,6 @@ async function createSessionForAgent(recipe, opts) {
433
441
  }
434
442
  model = cloneModelForRecipe(selectedModel);
435
443
  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
444
  if (opts.runController) {
440
445
  agentRuns = opts.runController;
441
446
  }
@@ -447,7 +452,15 @@ async function createSessionForAgent(recipe, opts) {
447
452
  cwd,
448
453
  env,
449
454
  ...(opts.credentials ? { credentials: opts.credentials } : {}),
455
+ ...(opts.settingsManager
456
+ ? { settingsManager: opts.settingsManager }
457
+ : {}),
450
458
  concurrency: opts.inProcessRunController?.concurrency,
459
+ depth: (opts.agentRun?.depth ?? 0) + 1,
460
+ ...(opts.agentRun ? { parentAgentRunId: opts.agentRun.id } : {}),
461
+ ...(opts.sessionFactory
462
+ ? { sessionFactory: opts.sessionFactory }
463
+ : {}),
451
464
  ...(opts.onAgentRunEvent
452
465
  ? { onAgentRunEvent: opts.onAgentRunEvent }
453
466
  : {}),
@@ -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 only
199
- to root sessions with visible subagents; delegated children remain one level
200
- deep.
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 one level deep. A definition may expose subagents when selected
220
- directly as a root agent, but the same definition does not receive the `agent`
221
- tool while running as a delegated child.
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. Injected controllers own child selection and execution after the root
136
- session is constructed.
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` envelope containing
140
- the run id, parent id, agent identity, depth, and canonical Pi event. Hosts can
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
 
@@ -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, root parent, agent identity, depth, and
70
- unchanged Pi session event. Custom entries are part of Pi's canonical session
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
 
@@ -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
- MUST commit `pnpm-lock.yaml`. A `packageManager` field, if present, MUST be a
81
- complete `pnpm@<version>` descriptor; Corepack refuses a bare name, a partial
82
- version, or another manager. A Recipe installs with
83
- `pnpm install --frozen-lockfile`, so `package-lock.json`,
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`.
@@ -201,15 +202,22 @@ value; endpoint compatibility must be verified against the provider.
201
202
  `session` owns portable Pi session behavior. Queue modes accept `all` or
202
203
  `one-at-a-time`; `tool_execution` accepts `parallel` or `sequential`. The
203
204
  `retry`, `compaction`, and `images` use the managed runtime's corresponding Pi
204
- settings with snake_case keys and are applied to a session-local settings
205
- manager, leaving host settings unmodified. Their nested keys, types, enums, and
206
- integer ranges are closed and validated. Interactive tree navigation and
205
+ settings with snake_case keys. Each session gets a session-local copy of the
206
+ host's effective settings, including overrides the host applied to the
207
+ settings manager it passes (Pi >=0.99; older Pi exposes only the file-backed
208
+ settings and drops those overrides when it reloads the manager), with the
209
+ agent's `session` values layered on top;
210
+ a key the agent omits keeps the host's value, then Pi's default. Host settings
211
+ are left unmodified, and subagents layer their own `session` over the same host
212
+ settings. Their nested keys, types, enums, and integer ranges are closed and
213
+ validated. Interactive tree navigation and
207
214
  branch summaries, UI, shell, resource loading, persistence, networking,
208
215
  analytics, telemetry, and model-default settings are
209
216
  not portable session policy and remain host-owned or belong under `ai`.
210
217
 
211
218
  `tools` MUST NOT contain `agent`. The host materializes that session-generated
212
- tool for a root session whose effective `subagents` list is non-empty.
219
+ tool for a session whose effective `subagents` list is non-empty and whose
220
+ delegation depth allows it (see below).
213
221
 
214
222
  The default agent is named `agent`. If no `agent` exists, a host MAY select the
215
223
  only declared agent. When multiple agents exist without `agent`, the caller
@@ -285,6 +293,13 @@ through this field.
285
293
  those resolved definitions through the shared `agent` tool. How child work is
286
294
  scheduled or isolated belongs to the host.
287
295
 
296
+ Delegation is two levels deep. A delegated child (depth 1) whose effective
297
+ `subagents` list is non-empty receives its own `agent` tool; a child of a
298
+ child (depth 2) MUST NOT receive one, which also bounds recursive references
299
+ such as `a -> b -> a`. A delegating child's run completes only after the runs
300
+ it started have settled and it has processed their results, and interrupting
301
+ or closing a run interrupts or closes the runs beneath it.
302
+
288
303
  The `pi.mcp` package block declares capability servers and package-level tool
289
304
  policy. Agent `mcp` blocks narrow those declarations. Credentials and concrete
290
305
  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.28.0",
3
+ "version": "0.30.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.13.13",
87
+ "mcporter": "0.14.2",
88
88
  "yaml": "^2.9.0"
89
89
  },
90
90
  "peerDependencies": {
@@ -95,10 +95,10 @@
95
95
  "typebox": "*"
96
96
  },
97
97
  "devDependencies": {
98
- "@earendil-works/pi-agent-core": "0.87.1",
99
- "@earendil-works/pi-ai": "0.87.1",
100
- "@earendil-works/pi-coding-agent": "0.87.1",
101
- "@earendil-works/pi-tui": "0.87.1",
98
+ "@earendil-works/pi-agent-core": "0.99.2",
99
+ "@earendil-works/pi-ai": "0.99.2",
100
+ "@earendil-works/pi-coding-agent": "0.99.2",
101
+ "@earendil-works/pi-tui": "0.99.2",
102
102
  "@types/node": "^26.1.2",
103
103
  "esbuild": "^0.28.1",
104
104
  "typebox": "^1.0.56",
@@ -106,10 +106,10 @@
106
106
  "vitest": "^5.0.1"
107
107
  },
108
108
  "optionalDependencies": {
109
- "@introspection-ai/mcp-client-linux-x64": "0.28.0",
110
- "@introspection-ai/mcp-client-linux-arm64": "0.28.0",
111
- "@introspection-ai/mcp-client-darwin-arm64": "0.28.0",
112
- "@introspection-ai/mcp-client-darwin-x64": "0.28.0"
109
+ "@introspection-ai/mcp-client-linux-x64": "0.30.0",
110
+ "@introspection-ai/mcp-client-linux-arm64": "0.30.0",
111
+ "@introspection-ai/mcp-client-darwin-arm64": "0.30.0",
112
+ "@introspection-ai/mcp-client-darwin-x64": "0.30.0"
113
113
  },
114
114
  "scripts": {
115
115
  "build": "pnpm build:ts && pnpm build:native",