@introspection-ai/recipes 0.13.0 → 0.14.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/README.md +45 -58
- package/dist/{agent-tool.d.ts → agents.d.ts} +4 -1
- package/dist/agents.d.ts.map +1 -0
- package/dist/{agent-tool.js → agents.js} +1 -1
- package/dist/agents.js.map +1 -0
- package/dist/api/extensions.d.ts +3 -0
- package/dist/api/extensions.d.ts.map +1 -0
- package/dist/api/extensions.js +2 -0
- package/dist/api/extensions.js.map +1 -0
- package/dist/api/mcp.d.ts +4 -0
- package/dist/api/mcp.d.ts.map +1 -0
- package/dist/api/mcp.js +2 -0
- package/dist/api/mcp.js.map +1 -0
- package/dist/api/session.d.ts +3 -0
- package/dist/api/session.d.ts.map +1 -0
- package/dist/api/session.js +2 -0
- package/dist/api/session.js.map +1 -0
- package/dist/child-agent.d.ts +5 -4
- package/dist/child-agent.d.ts.map +1 -1
- package/dist/child-agent.js +26 -117
- package/dist/child-agent.js.map +1 -1
- package/dist/child-session.d.ts +23 -0
- package/dist/child-session.d.ts.map +1 -0
- package/dist/child-session.js +48 -0
- package/dist/child-session.js.map +1 -0
- package/dist/extensions.d.ts +29 -0
- package/dist/extensions.d.ts.map +1 -0
- package/dist/extensions.js +119 -0
- package/dist/extensions.js.map +1 -0
- package/dist/index.d.ts +4 -13
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -13
- package/dist/index.js.map +1 -1
- package/dist/inspect.d.ts +38 -5
- package/dist/inspect.d.ts.map +1 -1
- package/dist/inspect.js +92 -41
- package/dist/inspect.js.map +1 -1
- package/dist/interactions.d.ts +18 -2
- package/dist/interactions.d.ts.map +1 -1
- package/dist/interactions.js +41 -10
- package/dist/interactions.js.map +1 -1
- package/dist/mcp-catalog.d.ts +1 -0
- package/dist/mcp-catalog.d.ts.map +1 -1
- package/dist/mcp-catalog.js +14 -6
- package/dist/mcp-catalog.js.map +1 -1
- package/dist/mcp-chunks/auth-command-ZLGYIEUY.js +273 -0
- package/dist/mcp-chunks/call-arguments-LU3W6D3K.js +13 -0
- package/dist/mcp-chunks/call-command-LKTKSYTH.js +612 -0
- package/dist/mcp-chunks/chunk-2U4BSDC4.js +3951 -0
- package/dist/mcp-chunks/chunk-2XL7MG7R.js +272 -0
- package/dist/mcp-chunks/chunk-3BJA27PY.js +2321 -0
- package/dist/mcp-chunks/chunk-4SQKWYFF.js +15 -0
- package/dist/mcp-chunks/chunk-5QOSCSQB.js +290 -0
- package/dist/mcp-chunks/chunk-6W5QFASN.js +77 -0
- package/dist/mcp-chunks/chunk-6XCZGU3G.js +1004 -0
- package/dist/mcp-chunks/chunk-7FHEBT5G.js +149 -0
- package/dist/mcp-chunks/chunk-7KA2VJVZ.js +114 -0
- package/dist/mcp-chunks/chunk-7UDVSOOF.js +138 -0
- package/dist/mcp-chunks/chunk-BNV3TPE4.js +66 -0
- package/dist/mcp-chunks/chunk-BTLAWHTA.js +129 -0
- package/dist/mcp-chunks/chunk-BV56DXPW.js +13 -0
- package/dist/mcp-chunks/chunk-BWHIA4PC.js +90 -0
- package/dist/mcp-chunks/chunk-BZIQOWE6.js +267 -0
- package/dist/mcp-chunks/chunk-D3MRAZ6H.js +16140 -0
- package/dist/mcp-chunks/chunk-DHBE7UBH.js +750 -0
- package/dist/mcp-chunks/chunk-E22DYOW5.js +251 -0
- package/dist/mcp-chunks/chunk-ECIVB7P4.js +139 -0
- package/dist/mcp-chunks/chunk-HKRJ6O36.js +1076 -0
- package/dist/mcp-chunks/chunk-IABRYROW.js +44 -0
- package/dist/mcp-chunks/chunk-J6LYIZXN.js +45 -0
- package/dist/mcp-chunks/chunk-L7NTQVYN.js +161 -0
- package/dist/mcp-chunks/chunk-LEZSACDE.js +141 -0
- package/dist/mcp-chunks/chunk-LKIBAYKU.js +208 -0
- package/dist/mcp-chunks/chunk-LNH5LAJD.js +152 -0
- package/dist/mcp-chunks/chunk-LQQEYD76.js +124 -0
- package/dist/mcp-chunks/chunk-LRKZP7DJ.js +47 -0
- package/dist/mcp-chunks/chunk-LS7PMWSR.js +109 -0
- package/dist/mcp-chunks/chunk-M3TPODXI.js +95 -0
- package/dist/mcp-chunks/chunk-MZ2NARG7.js +400 -0
- package/dist/mcp-chunks/chunk-N46NEFAF.js +45 -0
- package/dist/mcp-chunks/chunk-NNOEGEUZ.js +17273 -0
- package/dist/mcp-chunks/chunk-NRAJX5E4.js +69 -0
- package/dist/mcp-chunks/chunk-P3PSC54P.js +869 -0
- package/dist/mcp-chunks/chunk-PIIYJR44.js +6341 -0
- package/dist/mcp-chunks/chunk-PWYFKGKG.js +385 -0
- package/dist/mcp-chunks/chunk-SJCCBNZ4.js +45 -0
- package/dist/mcp-chunks/chunk-TATVT5IT.js +194 -0
- package/dist/mcp-chunks/chunk-TEUKFFQL.js +29 -0
- package/dist/mcp-chunks/chunk-UKYNQGNE.js +150 -0
- package/dist/mcp-chunks/chunk-UNKB4SBV.js +37 -0
- package/dist/mcp-chunks/chunk-WD6BOD24.js +138 -0
- package/dist/mcp-chunks/chunk-WQJZMCJN.js +73 -0
- package/dist/mcp-chunks/chunk-XANPGTLI.js +364 -0
- package/dist/mcp-chunks/chunk-XQK2JSW4.js +35 -0
- package/dist/mcp-chunks/chunk-YHQUTU6L.js +571 -0
- package/dist/mcp-chunks/chunk-YVZKMV5H.js +57 -0
- package/dist/mcp-chunks/cli-UV4QJZZM.js +929 -0
- package/dist/mcp-chunks/client-S7RQUG5U.js +13 -0
- package/dist/mcp-chunks/config-command-NLAGKID5.js +1101 -0
- package/dist/mcp-chunks/daemon-command-U242Z6VY.js +26 -0
- package/dist/mcp-chunks/dist-LK3SHAMX.js +6478 -0
- package/dist/mcp-chunks/emit-ts-command-VBXVXO6V.js +386 -0
- package/dist/mcp-chunks/generate-cli-runner-6CAZZA3P.js +1426 -0
- package/dist/mcp-chunks/inspect-cli-command-3ZORTOR7.js +111 -0
- package/dist/mcp-chunks/launch-YKRXHXJI.js +10 -0
- package/dist/mcp-chunks/lifecycle-XVKRHPH3.js +16 -0
- package/dist/mcp-chunks/list-command-2MEGGNFQ.js +4190 -0
- package/dist/mcp-chunks/output-utils-NKESLAJ6.js +12 -0
- package/dist/mcp-chunks/prompt-B1Yc1NPt-VGOTWJMN.js +918 -0
- package/dist/mcp-chunks/record-command-YXHTTTT5.js +17 -0
- package/dist/mcp-chunks/replay-command-25HJ6AQU.js +85 -0
- package/dist/mcp-chunks/resource-command-OO4NYF5C.js +97 -0
- package/dist/mcp-chunks/result-utils-MOHHLNM7.js +15 -0
- package/dist/mcp-chunks/runtime-5WJ3G25Y.js +33 -0
- package/dist/mcp-chunks/runtime-wrapper-RPWDIDBF.js +10 -0
- package/dist/mcp-chunks/serve-command-DHXJZMMN.js +3302 -0
- package/dist/mcp-chunks/timeouts-W2XWCCXR.js +18 -0
- package/dist/mcp-chunks/vault-command-PIYIUEZL.js +154 -0
- package/dist/mcp-daemon-client.d.ts +6 -1
- package/dist/mcp-daemon-client.d.ts.map +1 -1
- package/dist/mcp-daemon-client.js +119 -2
- package/dist/mcp-daemon-client.js.map +1 -1
- package/dist/mcp-daemon-protocol.d.ts +18 -1
- package/dist/mcp-daemon-protocol.d.ts.map +1 -1
- package/dist/mcp-daemon-protocol.js +31 -0
- package/dist/mcp-daemon-protocol.js.map +1 -1
- package/dist/mcp-daemon.js +169 -76602
- package/dist/mcp-daemon.js.map +1 -1
- package/dist/mcp-policy.d.ts +11 -0
- package/dist/mcp-policy.d.ts.map +1 -0
- package/dist/mcp-policy.js +27 -0
- package/dist/mcp-policy.js.map +1 -0
- package/dist/mcp-run-worker.js +38 -76540
- package/dist/mcp-tools.d.ts +39 -0
- package/dist/mcp-tools.d.ts.map +1 -0
- package/dist/mcp-tools.js +493 -0
- package/dist/mcp-tools.js.map +1 -0
- package/dist/mcp.d.ts +21 -9
- package/dist/mcp.d.ts.map +1 -1
- package/dist/mcp.js +101 -31
- package/dist/mcp.js.map +1 -1
- package/dist/model-binding.d.ts +39 -0
- package/dist/model-binding.d.ts.map +1 -0
- package/dist/model-binding.js +103 -0
- package/dist/model-binding.js.map +1 -0
- package/dist/pi-extension.d.ts +2 -22
- package/dist/pi-extension.d.ts.map +1 -1
- package/dist/pi-extension.js +296 -71
- package/dist/pi-extension.js.map +1 -1
- package/dist/recipe/resolve.d.ts +43 -20
- package/dist/recipe/resolve.d.ts.map +1 -1
- package/dist/recipe/resolve.js +215 -70
- package/dist/recipe/resolve.js.map +1 -1
- package/dist/recipe-agent.d.ts +24 -27
- package/dist/recipe-agent.d.ts.map +1 -1
- package/dist/recipe-agent.js +278 -230
- package/dist/recipe-agent.js.map +1 -1
- package/dist/recipe-check.d.ts +17 -0
- package/dist/recipe-check.d.ts.map +1 -0
- package/dist/recipe-check.js +258 -0
- package/dist/recipe-check.js.map +1 -0
- package/dist/recipe-extensions.d.ts.map +1 -1
- package/dist/recipe-extensions.js +0 -3
- package/dist/recipe-extensions.js.map +1 -1
- package/dist/recipe-model.d.ts +3 -1
- package/dist/recipe-model.d.ts.map +1 -1
- package/dist/recipe-model.js +15 -12
- package/dist/recipe-model.js.map +1 -1
- package/dist/recipe-package.d.ts +6 -28
- package/dist/recipe-package.d.ts.map +1 -1
- package/dist/recipe-package.js +248 -191
- package/dist/recipe-package.js.map +1 -1
- package/dist/recipe-skills.d.ts.map +1 -1
- package/dist/recipe-skills.js +42 -29
- package/dist/recipe-skills.js.map +1 -1
- package/dist/run-controller.d.ts +10 -9
- package/dist/run-controller.d.ts.map +1 -1
- package/dist/run-controller.js +28 -21
- package/dist/run-controller.js.map +1 -1
- package/dist/session.d.ts +40 -53
- package/dist/session.d.ts.map +1 -1
- package/dist/session.js +312 -173
- package/dist/session.js.map +1 -1
- package/dist/test-utils.d.ts +7 -7
- package/dist/test-utils.d.ts.map +1 -1
- package/dist/test-utils.js +32 -15
- package/dist/test-utils.js.map +1 -1
- package/docs/agent-composition.md +41 -35
- package/docs/host-api.md +201 -0
- package/docs/index.md +8 -14
- package/docs/interactions.md +12 -11
- package/docs/mcp-auth.md +6 -6
- package/docs/mcp-configuration.md +72 -24
- package/docs/pi-extension.md +39 -11
- package/docs/recipe-flow.md +9 -9
- package/docs/recipe-format.md +90 -41
- package/package.json +23 -17
- package/vendor/mcp-client/darwin-arm64/mcp-client +0 -0
- package/vendor/mcp-client/darwin-x64/mcp-client +0 -0
- package/vendor/mcp-client/linux-arm64/mcp-client +0 -0
- package/vendor/recipe-check/darwin-arm64/recipe-check +0 -0
- package/vendor/recipe-check/darwin-x64/recipe-check +0 -0
- package/vendor/recipe-check/linux-arm64/recipe-check +0 -0
- package/vendor/recipe-check/linux-x64/recipe-check +0 -0
- package/vendor/recipe-check/linux-x64-musl/recipe-check +0 -0
- package/vendor/recipe-check/win32-x64/recipe-check.exe +0 -0
- package/dist/agent-tool.d.ts.map +0 -1
- package/dist/agent-tool.js.map +0 -1
- package/dist/run.d.ts +0 -28
- package/dist/run.d.ts.map +0 -1
- package/dist/run.js +0 -84
- package/dist/run.js.map +0 -1
- package/dist/testing.d.ts +0 -25
- package/dist/testing.d.ts.map +0 -1
- package/dist/testing.js +0 -96
- package/dist/testing.js.map +0 -1
- package/docs/deployment-configuration.md +0 -65
- package/docs/migration.md +0 -70
- package/docs/python-bindings-release.md +0 -47
- package/docs/recipe-evals.md +0 -70
- package/docs/recipe-judges.md +0 -152
- package/docs/runtime-library.md +0 -171
package/README.md
CHANGED
|
@@ -12,9 +12,8 @@
|
|
|
12
12
|
|
|
13
13
|
<div align="center">
|
|
14
14
|
<a href="https://pi.recipes"><img src="https://img.shields.io/badge/website-pi.recipes-blue" alt="Website"></a>
|
|
15
|
-
<a href="https://github.com/introspection-org/
|
|
15
|
+
<a href="https://github.com/introspection-org/recipes/actions/workflows/ci.yml"><img src="https://github.com/introspection-org/recipes/actions/workflows/ci.yml/badge.svg" alt="CI"></a>
|
|
16
16
|
<a href="https://www.npmjs.com/package/@introspection-ai/recipes"><img src="https://img.shields.io/npm/v/@introspection-ai/recipes?label=npm" alt="npm version"></a>
|
|
17
|
-
<a href="https://crates.io/crates/pi-recipe-check"><img src="https://img.shields.io/crates/v/pi-recipe-check?label=crates.io" alt="crates.io version"></a>
|
|
18
17
|
<a href="https://www.apache.org/licenses/LICENSE-2.0"><img src="https://img.shields.io/badge/license-Apache%202.0-green" alt="License"></a>
|
|
19
18
|
</div>
|
|
20
19
|
|
|
@@ -23,7 +22,7 @@
|
|
|
23
22
|
**Everything that makes your agent yours, in one portable package.**
|
|
24
23
|
|
|
25
24
|
A Recipe keeps a complete Pi agent—its instructions, models, tools, skills,
|
|
26
|
-
extensions, subagents, capability policy
|
|
25
|
+
package-wide executable extensions, subagents, and capability policy together as
|
|
27
26
|
ordinary source you can inspect, fork, validate, and own.
|
|
28
27
|
|
|
29
28
|
Run the same Recipe locally, on Introspection, or in another compatible Pi
|
|
@@ -32,15 +31,15 @@ and deployment remain the host's responsibility.
|
|
|
32
31
|
|
|
33
32
|
## What Recipes is
|
|
34
33
|
|
|
35
|
-
Recipes
|
|
34
|
+
Recipes combines two deliberately small contracts:
|
|
36
35
|
|
|
37
36
|
1. **The Recipe Format** is the open, Git-native package contract.
|
|
38
|
-
2. **The
|
|
39
|
-
without imposing a server, queue, database, or deployment platform.
|
|
37
|
+
2. **The Host API** resolves that package into a complete live Pi session.
|
|
40
38
|
|
|
41
39
|
[Pi](https://pi.dev/docs/latest) is the minimal agent harness. A Recipe packages
|
|
42
40
|
the complete configured agent built on that harness. It is more than a prompt
|
|
43
|
-
template or a collection of Pi resources
|
|
41
|
+
template or a collection of Pi resources. Recipes runs the agent; the host
|
|
42
|
+
decides where and how that agent operates.
|
|
44
43
|
|
|
45
44
|
## Package anatomy
|
|
46
45
|
|
|
@@ -51,7 +50,6 @@ my-recipe/
|
|
|
51
50
|
├── agents/*.yaml # models, tools, skills, subagents, policy
|
|
52
51
|
├── skills/**/SKILL.md # reusable domain workflows
|
|
53
52
|
├── extensions/*.ts # optional Recipe-owned Pi extensions
|
|
54
|
-
├── judges/*.yaml # optional portable quality definitions
|
|
55
53
|
└── .pi/mcp.local.example.json # optional binding template
|
|
56
54
|
```
|
|
57
55
|
|
|
@@ -71,7 +69,7 @@ introspection local
|
|
|
71
69
|
|
|
72
70
|
`introspection init` installs a compatible Pi and Recipes extension when they
|
|
73
71
|
are missing. `introspection local` launches the selected local Recipe directly
|
|
74
|
-
with Pi. It does not require an Introspection login or managed
|
|
72
|
+
with Pi. It does not require an Introspection login or managed host.
|
|
75
73
|
|
|
76
74
|
To install the extension without the Introspection CLI:
|
|
77
75
|
|
|
@@ -80,32 +78,25 @@ pi install npm:@introspection-ai/recipes
|
|
|
80
78
|
pi --recipe ./path/to/recipe --agent agent
|
|
81
79
|
```
|
|
82
80
|
|
|
83
|
-
##
|
|
81
|
+
## Run in a host
|
|
84
82
|
|
|
85
|
-
Install
|
|
83
|
+
Install Recipes in a Node.js host:
|
|
86
84
|
|
|
87
85
|
```bash
|
|
88
86
|
npm install @introspection-ai/recipes
|
|
89
87
|
```
|
|
90
88
|
|
|
91
|
-
Choose the lowest useful layer:
|
|
92
|
-
|
|
93
89
|
```ts
|
|
94
|
-
import {
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
90
|
+
import {
|
|
91
|
+
createAgentSession,
|
|
92
|
+
resolveRecipe,
|
|
93
|
+
} from "@introspection-ai/recipes";
|
|
94
|
+
|
|
95
|
+
const recipe = resolveRecipe({ recipeDir: "./my-recipe" });
|
|
96
|
+
const handle = await createAgentSession({
|
|
97
|
+
recipe,
|
|
98
98
|
agentName: "agent",
|
|
99
|
-
});
|
|
100
|
-
```
|
|
101
|
-
|
|
102
|
-
```ts
|
|
103
|
-
import { createRecipeSession } from "@introspection-ai/recipes/session";
|
|
104
|
-
|
|
105
|
-
const handle = await createRecipeSession({
|
|
106
|
-
recipeDir: "./my-recipe",
|
|
107
99
|
cwd: "./workspace",
|
|
108
|
-
agentName: "agent",
|
|
109
100
|
credentials,
|
|
110
101
|
mcpBindings,
|
|
111
102
|
sessionManager,
|
|
@@ -113,67 +104,63 @@ const handle = await createRecipeSession({
|
|
|
113
104
|
});
|
|
114
105
|
|
|
115
106
|
await handle.session.prompt("Start the task");
|
|
107
|
+
await handle.session.prompt("/review src/auth.ts");
|
|
116
108
|
await handle.dispose();
|
|
117
109
|
```
|
|
118
110
|
|
|
119
|
-
|
|
120
|
-
|
|
111
|
+
`createAgentSession` is the single host boundary for an inspected Recipe.
|
|
112
|
+
It selects the requested agent from that immutable graph and constructs a
|
|
113
|
+
standard Pi `AgentSession`. The host still owns task
|
|
114
|
+
lifecycle, durable state, auth, networking, isolation, protocol translation,
|
|
115
|
+
and deployment.
|
|
121
116
|
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
cwd: "./workspace",
|
|
125
|
-
prompt: "Produce the report",
|
|
126
|
-
});
|
|
127
|
-
```
|
|
128
|
-
|
|
129
|
-
`createRecipeSession` is the primary host boundary. It owns Recipe semantics
|
|
130
|
-
and Pi session construction. The host still owns task lifecycle, durable state,
|
|
131
|
-
auth, networking, isolation, protocol translation, and deployment.
|
|
132
|
-
|
|
133
|
-
See [Runtime library](docs/runtime-library.md) for the complete API boundary and
|
|
134
|
-
[host conformance](docs/runtime-library.md#host-conformance) for compatibility
|
|
117
|
+
See [Host API](docs/host-api.md) for the complete boundary and
|
|
118
|
+
[host conformance](docs/host-api.md#host-conformance) for compatibility
|
|
135
119
|
tests.
|
|
136
120
|
|
|
137
121
|
## Public exports
|
|
138
122
|
|
|
139
|
-
- `@introspection-ai/recipes` —
|
|
123
|
+
- `@introspection-ai/recipes` — the two primary operations:
|
|
124
|
+
`resolveRecipe` and `createAgentSession`
|
|
140
125
|
- `@introspection-ai/recipes/recipe` — resolve a Recipe into session inputs
|
|
141
126
|
- `@introspection-ai/recipes/session` — create a live Pi Recipe session
|
|
142
|
-
- `@introspection-ai/recipes/
|
|
127
|
+
- `@introspection-ai/recipes/mcp` — MCP declarations, bindings, and selection
|
|
143
128
|
- `@introspection-ai/recipes/pi-extension` — Pi extension entrypoint
|
|
144
|
-
- `@introspection-ai/recipes/
|
|
129
|
+
- `@introspection-ai/recipes/extensions` — session identity and conditional
|
|
130
|
+
Recipe extension helpers
|
|
131
|
+
- `@introspection-ai/recipes/agents` — portable agent-run controller and tool
|
|
132
|
+
contract
|
|
145
133
|
- `@introspection-ai/recipes/interactions` — portable user-input and approval contract
|
|
146
|
-
- `@introspection-ai/recipes/inspect` —
|
|
134
|
+
- `@introspection-ai/recipes/inspect` — inspect resolved inheritance,
|
|
135
|
+
capabilities, package closure, host requirements, and runtime boundaries
|
|
147
136
|
- `@introspection-ai/recipes/test-utils` — host conformance cases
|
|
148
137
|
|
|
149
138
|
The package intentionally has no `recipes` executable and no generic HTTP
|
|
150
139
|
server. The `introspection` CLI owns authoring and local operation. Hosting
|
|
151
|
-
adapters and deployment cookbooks belong outside this
|
|
140
|
+
adapters and deployment cookbooks belong outside this package.
|
|
152
141
|
|
|
153
142
|
## Validation
|
|
154
143
|
|
|
155
|
-
|
|
144
|
+
`introspection check` is the supported Recipe validation command:
|
|
156
145
|
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
bindings for validating in-memory Recipe snapshots
|
|
146
|
+
```bash
|
|
147
|
+
introspection check
|
|
148
|
+
```
|
|
161
149
|
|
|
162
|
-
|
|
163
|
-
|
|
150
|
+
Every `pi --recipe` launch automatically runs the same Recipe Format validator
|
|
151
|
+
before constructing a session. Invalid Recipes stop Pi rather than falling back
|
|
152
|
+
to an unconfigured agent. `introspection check` remains the explicit command
|
|
153
|
+
for manual and CI validation.
|
|
164
154
|
|
|
165
155
|
## Documentation
|
|
166
156
|
|
|
157
|
+
- [Recipe workflow](docs/recipe-flow.md)
|
|
167
158
|
- [Recipe Format](docs/recipe-format.md)
|
|
168
|
-
- [
|
|
159
|
+
- [Host API](docs/host-api.md)
|
|
169
160
|
- [Pi extension](docs/pi-extension.md)
|
|
170
161
|
- [Agent composition](docs/agent-composition.md)
|
|
171
162
|
- [Interactions](docs/interactions.md)
|
|
172
163
|
- [MCP configuration](docs/mcp-configuration.md)
|
|
173
|
-
- [Deployment configuration](docs/deployment-configuration.md)
|
|
174
|
-
- [Recipe judges](docs/recipe-judges.md)
|
|
175
|
-
- [Recipe eval declarations](docs/recipe-evals.md)
|
|
176
|
-
- [Migration from `@introspection-ai/pi-recipes`](docs/migration.md)
|
|
177
164
|
|
|
178
165
|
## Contributing
|
|
179
166
|
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { type ToolDefinition } from "@earendil-works/pi-coding-agent";
|
|
2
|
+
/** Portable lifecycle contract for Recipe agent runs. */
|
|
2
3
|
export type AgentRunStatus = "running" | "completed" | "failed" | "interrupted" | "closed";
|
|
3
4
|
export interface AgentNestedToolSummary {
|
|
4
5
|
toolName: string;
|
|
@@ -35,8 +36,10 @@ export interface AgentRunController {
|
|
|
35
36
|
message(id: string, message: string): Promise<AgentRunSummary>;
|
|
36
37
|
interrupt(id: string): Promise<AgentRunSummary>;
|
|
37
38
|
close(id: string): Promise<AgentRunSummary>;
|
|
39
|
+
/** Release every run and resource owned by this session's controller. */
|
|
40
|
+
shutdown(): Promise<void>;
|
|
38
41
|
}
|
|
39
42
|
export declare function createAgentTool(controller: AgentRunController, agents: ReadonlyMap<string, unknown>, opts?: {
|
|
40
43
|
acknowledgeCompletions?(ids: readonly string[]): void;
|
|
41
44
|
}): ToolDefinition;
|
|
42
|
-
//# sourceMappingURL=
|
|
45
|
+
//# sourceMappingURL=agents.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agents.d.ts","sourceRoot":"","sources":["../src/agents.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAGlF,yDAAyD;AACzD,MAAM,MAAM,cAAc,GACtB,SAAS,GACT,WAAW,GACX,QAAQ,GACR,aAAa,GACb,QAAQ,CAAC;AAEb,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACrC;AAED,MAAM,WAAW,eAAe;IAC9B,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,cAAc,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,sBAAsB,EAAE,CAAC;IACxC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,IAAI,eAAe,EAAE,CAAC;IAC1B,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI,CAAC;IACxC,KAAK,CAAC,KAAK,EAAE;QACX,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,eAAe,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;KAC/D,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IAC7B,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IACjE,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IAC/D,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IAChD,KAAK,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IAC5C,yEAAyE;IACzE,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3B;AAyED,wBAAgB,eAAe,CAC7B,UAAU,EAAE,kBAAkB,EAC9B,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,EACpC,IAAI,GAAE;IAAE,sBAAsB,CAAC,CAAC,GAAG,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI,CAAA;CAAO,GACnE,cAAc,CAuGhB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agents.js","sourceRoot":"","sources":["../src/agents.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"extensions.d.ts","sourceRoot":"","sources":["../../src/api/extensions.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EACR,gBAAgB,EAChB,uBAAuB,GACxB,MAAM,kBAAkB,CAAC;AAC1B,YAAY,EAAE,6BAA6B,EAAE,MAAM,kBAAkB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"extensions.js","sourceRoot":"","sources":["../../src/api/extensions.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EACR,gBAAgB,EAChB,uBAAuB,GACxB,MAAM,kBAAkB,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export { formatMcpConfigurationDiagnostics, materializeMcpSession, materializeSessionMcpCli, McpBindingError, normalizeMcpServerId, preloadMcpCatalogs, resolveAgentMcpSelections, resolveMcpLocalConfigPath, } from "../mcp.js";
|
|
2
|
+
export type { LocalMcpServer, MaterializedMcpSession, MaterializeMcpSessionOptions, McpConfigurationDiagnostic, McpLocalConfig, McpSessionConfig, McpSessionServer, McpToolCatalogEntry, } from "../mcp.js";
|
|
3
|
+
export type { ScopedMcpToolSelection } from "../mcp-policy.js";
|
|
4
|
+
//# sourceMappingURL=mcp.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../../src/api/mcp.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iCAAiC,EACjC,qBAAqB,EACrB,wBAAwB,EACxB,eAAe,EACf,oBAAoB,EACpB,kBAAkB,EAClB,yBAAyB,EACzB,yBAAyB,GAC1B,MAAM,WAAW,CAAC;AACnB,YAAY,EACV,cAAc,EACd,sBAAsB,EACtB,4BAA4B,EAC5B,0BAA0B,EAC1B,cAAc,EACd,gBAAgB,EAChB,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,WAAW,CAAC;AACnB,YAAY,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC"}
|
package/dist/api/mcp.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp.js","sourceRoot":"","sources":["../../src/api/mcp.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iCAAiC,EACjC,qBAAqB,EACrB,wBAAwB,EACxB,eAAe,EACf,oBAAoB,EACpB,kBAAkB,EAClB,yBAAyB,EACzB,yBAAyB,GAC1B,MAAM,WAAW,CAAC"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export { createAgentSession, RecipeCredentialError, RecipeMcpEnvironmentInUseError, RecipeModelError, RecipeModelTransportError, } from "../session.js";
|
|
2
|
+
export type { CreateAgentSessionOptions, RecipeSessionHandle, RecipeSessionOtelOptions, } from "../session.js";
|
|
3
|
+
//# sourceMappingURL=session.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/api/session.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,qBAAqB,EACrB,8BAA8B,EAC9B,gBAAgB,EAChB,yBAAyB,GAC1B,MAAM,eAAe,CAAC;AACvB,YAAY,EACV,yBAAyB,EACzB,mBAAmB,EACnB,wBAAwB,GACzB,MAAM,eAAe,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session.js","sourceRoot":"","sources":["../../src/api/session.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,qBAAqB,EACrB,8BAA8B,EAC9B,gBAAgB,EAChB,yBAAyB,GAC1B,MAAM,eAAe,CAAC"}
|
package/dist/child-agent.d.ts
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { type ModelRegistry
|
|
1
|
+
import type { CredentialStore } from "@earendil-works/pi-ai";
|
|
2
|
+
import { type ModelRegistry } from "@earendil-works/pi-coding-agent";
|
|
3
|
+
import { type ResolvedRecipe } from "./recipe/resolve.js";
|
|
3
4
|
export interface CreateRecipeChildAgentRunnerOptions {
|
|
4
|
-
|
|
5
|
+
/** Immutable Recipe graph shared with the root Pi session. */
|
|
6
|
+
recipe: ResolvedRecipe;
|
|
5
7
|
workspaceDir: string;
|
|
6
8
|
agentName: string;
|
|
7
9
|
env?: NodeJS.ProcessEnv;
|
|
8
10
|
credentials?: CredentialStore;
|
|
9
|
-
modelRuntime?: ModelRuntime;
|
|
10
11
|
modelRegistry?: ModelRegistry;
|
|
11
12
|
onAssistantMessage?: (text: string, stream: "delta" | "final") => void;
|
|
12
13
|
onToolEvent?: (event: RecipeChildToolEvent) => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"child-agent.d.ts","sourceRoot":"","sources":["../src/child-agent.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"child-agent.d.ts","sourceRoot":"","sources":["../src/child-agent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAGL,KAAK,aAAa,EACnB,MAAM,iCAAiC,CAAC;AAQzC,OAAO,EACL,KAAK,cAAc,EACpB,MAAM,qBAAqB,CAAC;AAG7B,MAAM,WAAW,mCAAmC;IAClD,8DAA8D;IAC9D,MAAM,EAAE,cAAc,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB,WAAW,CAAC,EAAE,eAAe,CAAC;IAC9B,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,kBAAkB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,OAAO,KAAK,IAAI,CAAC;IACvE,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,oBAAoB,KAAK,IAAI,CAAC;CACrD;AAED,MAAM,WAAW,sBAAsB;IACrC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACxC,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACxB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3B;AAED,MAAM,MAAM,4BAA4B,GAAG,CACzC,IAAI,EAAE,mCAAmC,KACtC,sBAAsB,CAAC;AAE5B,MAAM,MAAM,oBAAoB,GAC5B;IACE,IAAI,EAAE,OAAO,CAAC;IACd,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,OAAO,CAAC;CACf,GACD;IACE,IAAI,EAAE,QAAQ,CAAC;IACf,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,OAAO,CAAC;IACd,aAAa,EAAE,OAAO,CAAC;CACxB,GACD;IACE,IAAI,EAAE,KAAK,CAAC;IACZ,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC;AAsBN,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,CAcxD;AAiJD,wBAAgB,4BAA4B,CAC1C,IAAI,EAAE,mCAAmC,GACxC,sBAAsB,CAExB"}
|
package/dist/child-agent.js
CHANGED
|
@@ -1,68 +1,7 @@
|
|
|
1
|
-
import { getEnvApiKey, getModel } from "@earendil-works/pi-ai/compat";
|
|
2
|
-
import { InMemoryCredentialStore } from "@earendil-works/pi-ai";
|
|
3
|
-
import { createAgentSessionFromServices, createAgentSessionServices, ModelRuntime, SessionManager, SettingsManager, } from "@earendil-works/pi-coding-agent";
|
|
4
1
|
import { autoResolveInteractions } from "./interactions.js";
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import { applyRecipeAgentModelConfigToModel, applyRecipeAgentModelConfigToSession, } from "./recipe-model.js";
|
|
9
|
-
import { executableRecipeToolNames, } from "./mcp.js";
|
|
10
|
-
function parseModelSpec(spec) {
|
|
11
|
-
const slash = spec.indexOf("/");
|
|
12
|
-
if (slash < 0) {
|
|
13
|
-
throw new Error(`Invalid recipe model "${spec}" - expected "<provider>/<model_id>"`);
|
|
14
|
-
}
|
|
15
|
-
const provider = spec.slice(0, slash);
|
|
16
|
-
const modelId = spec.slice(slash + 1);
|
|
17
|
-
const lookupProvider = provider === "gemini" ? "google" : provider;
|
|
18
|
-
return { provider, modelId, lookupProvider };
|
|
19
|
-
}
|
|
20
|
-
function modelFromSpec(spec, modelRegistry) {
|
|
21
|
-
const { modelId, lookupProvider } = parseModelSpec(spec);
|
|
22
|
-
return (modelRegistry?.find(lookupProvider, modelId) ??
|
|
23
|
-
getModel(lookupProvider, modelId));
|
|
24
|
-
}
|
|
25
|
-
async function modelRuntimeForChildAgent(model, opts) {
|
|
26
|
-
if (opts.modelRuntime)
|
|
27
|
-
return opts.modelRuntime;
|
|
28
|
-
const credentials = opts.credentials ?? new InMemoryCredentialStore();
|
|
29
|
-
if (!opts.credentials) {
|
|
30
|
-
// Resolve the child's API key up front: prefer the host registry (so a
|
|
31
|
-
// key configured inside Pi flows to children), then provider env keys.
|
|
32
|
-
let apiKey;
|
|
33
|
-
let credentialEnv;
|
|
34
|
-
if (opts.modelRegistry) {
|
|
35
|
-
const auth = await opts.modelRegistry.getApiKeyAndHeaders(model);
|
|
36
|
-
if (auth.ok) {
|
|
37
|
-
apiKey = auth.apiKey;
|
|
38
|
-
credentialEnv = auth.env;
|
|
39
|
-
if (auth.headers) {
|
|
40
|
-
model.headers = { ...(model.headers ?? {}), ...auth.headers };
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
const env = opts.env ?? process.env;
|
|
45
|
-
apiKey ??=
|
|
46
|
-
getEnvApiKey(model.provider) ??
|
|
47
|
-
env[`${model.provider.toUpperCase()}_API_KEY`];
|
|
48
|
-
if (!apiKey && Object.keys(model.headers ?? {}).length === 0) {
|
|
49
|
-
throw new Error(`${model.provider.toUpperCase()}_API_KEY is required when the background agent is not running inside Pi`);
|
|
50
|
-
}
|
|
51
|
-
await credentials.modify(model.provider, async () => ({
|
|
52
|
-
type: "api_key",
|
|
53
|
-
...(apiKey ? { key: apiKey } : {}),
|
|
54
|
-
...(credentialEnv ? { env: credentialEnv } : {}),
|
|
55
|
-
}));
|
|
56
|
-
}
|
|
57
|
-
return ModelRuntime.create({ credentials, modelsPath: null });
|
|
58
|
-
}
|
|
59
|
-
function applySystemInstructions(base, instructions) {
|
|
60
|
-
if (!instructions)
|
|
61
|
-
return base;
|
|
62
|
-
if (instructions.mode === "replace")
|
|
63
|
-
return instructions.content;
|
|
64
|
-
return [base, instructions.content].filter(Boolean).join("\n\n");
|
|
65
|
-
}
|
|
2
|
+
import { createIsolatedChildSession } from "./child-session.js";
|
|
3
|
+
import { resolveRecipeCredentials, resolveRecipeModel, } from "./model-binding.js";
|
|
4
|
+
import { applyRecipeAgentModelConfigToModel } from "./recipe-model.js";
|
|
66
5
|
function asRecord(value) {
|
|
67
6
|
return value && typeof value === "object" && !Array.isArray(value)
|
|
68
7
|
? value
|
|
@@ -115,7 +54,7 @@ function messageFromEvent(event) {
|
|
|
115
54
|
class RecipeChildAgentSessionRunner {
|
|
116
55
|
opts;
|
|
117
56
|
session = null;
|
|
118
|
-
|
|
57
|
+
handle = null;
|
|
119
58
|
assistantStreamedText = false;
|
|
120
59
|
constructor(opts) {
|
|
121
60
|
this.opts = opts;
|
|
@@ -182,59 +121,30 @@ class RecipeChildAgentSessionRunner {
|
|
|
182
121
|
async start() {
|
|
183
122
|
if (this.session)
|
|
184
123
|
return;
|
|
185
|
-
const
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
throw new Error(`Agent not found: ${agentName}`);
|
|
191
|
-
}
|
|
192
|
-
const validationFindings = validateResolvedRecipeAgentDefinition({
|
|
193
|
-
recipeDir: this.opts.recipeDir,
|
|
194
|
-
agentName,
|
|
195
|
-
requireExplicitName: true,
|
|
196
|
-
requiredFields: REQUIRED_RECIPE_AGENT_FIELDS,
|
|
197
|
-
});
|
|
198
|
-
const validationErrors = validationFindings.filter((finding) => finding.severity !== "warning");
|
|
199
|
-
if (validationErrors.length > 0) {
|
|
200
|
-
throw new Error(validationErrors.map((finding) => finding.message).join("\n"));
|
|
201
|
-
}
|
|
202
|
-
const modelSpec = agent.model?.name;
|
|
203
|
-
if (!modelSpec) {
|
|
204
|
-
throw new Error(`Agent "${agentName}" must declare model.name`);
|
|
205
|
-
}
|
|
206
|
-
const model = applyRecipeAgentModelConfigToModel(modelFromSpec(modelSpec, this.opts.modelRegistry), agent.modelConfig);
|
|
207
|
-
const modelRuntime = await modelRuntimeForChildAgent(model, this.opts);
|
|
208
|
-
const services = await createAgentSessionServices({
|
|
209
|
-
cwd: this.opts.workspaceDir,
|
|
210
|
-
agentDir: this.opts.recipeDir,
|
|
211
|
-
modelRuntime,
|
|
212
|
-
settingsManager: SettingsManager.create(this.opts.workspaceDir, this.opts.recipeDir),
|
|
213
|
-
resourceLoaderOptions: {
|
|
214
|
-
noSkills: true,
|
|
215
|
-
additionalSkillPaths: resolveAgentSkillPaths(this.opts.recipeDir, packageResourcePaths(readPiPackageManifest(this.opts.recipeDir), "skills"), agent.skills),
|
|
216
|
-
systemPromptOverride: (base) => applySystemInstructions(loadRecipeSystemPrompt(this.opts.recipeDir) ?? base, agent.systemInstructions),
|
|
217
|
-
},
|
|
218
|
-
});
|
|
219
|
-
// Delegated recipe agents are intentionally one level deep. An agent
|
|
220
|
-
// selected as the root session gets the dynamic `agent` tool from the
|
|
221
|
-
// extension, while the same definition running as a child never does.
|
|
222
|
-
const executableTools = executableRecipeToolNames(agent.tools).filter((tool) => tool !== "agent");
|
|
223
|
-
const created = await createAgentSessionFromServices({
|
|
224
|
-
services,
|
|
225
|
-
sessionManager: SessionManager.inMemory(this.opts.workspaceDir),
|
|
124
|
+
const resolved = this.opts.recipe.selectAgent(this.opts.agentName);
|
|
125
|
+
const model = applyRecipeAgentModelConfigToModel(resolveRecipeModel(resolved.modelSpec, this.opts.modelRegistry), resolved.modelConfig);
|
|
126
|
+
const credentials = await resolveRecipeCredentials({
|
|
127
|
+
provider: model.provider,
|
|
128
|
+
env: this.opts.env ?? process.env,
|
|
226
129
|
model,
|
|
227
|
-
...(
|
|
228
|
-
? {
|
|
130
|
+
...(this.opts.credentials
|
|
131
|
+
? { credentials: this.opts.credentials }
|
|
132
|
+
: {}),
|
|
133
|
+
...(this.opts.modelRegistry
|
|
134
|
+
? { modelRegistry: this.opts.modelRegistry }
|
|
229
135
|
: {}),
|
|
230
|
-
tools: executableTools,
|
|
231
136
|
});
|
|
232
|
-
this.
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
this.
|
|
137
|
+
this.handle = await createIsolatedChildSession({
|
|
138
|
+
recipe: this.opts.recipe,
|
|
139
|
+
agentName: resolved.name,
|
|
140
|
+
cwd: this.opts.workspaceDir,
|
|
141
|
+
env: this.opts.env ?? process.env,
|
|
142
|
+
credentials,
|
|
143
|
+
credentialsResolved: true,
|
|
144
|
+
modelOverride: model,
|
|
145
|
+
onEvent: (event) => this.handleSessionEvent(event),
|
|
237
146
|
});
|
|
147
|
+
this.session = this.handle.session;
|
|
238
148
|
}
|
|
239
149
|
async prompt(prompt) {
|
|
240
150
|
await this.start();
|
|
@@ -256,9 +166,8 @@ class RecipeChildAgentSessionRunner {
|
|
|
256
166
|
await this.session?.abort();
|
|
257
167
|
}
|
|
258
168
|
async shutdown() {
|
|
259
|
-
this.
|
|
260
|
-
this.
|
|
261
|
-
this.session?.dispose();
|
|
169
|
+
await this.handle?.dispose();
|
|
170
|
+
this.handle = null;
|
|
262
171
|
this.session = null;
|
|
263
172
|
}
|
|
264
173
|
}
|
package/dist/child-agent.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"child-agent.js","sourceRoot":"","sources":["../src/child-agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAc,MAAM,8BAA8B,CAAC;AAClF,OAAO,EAAE,uBAAuB,EAAwB,MAAM,uBAAuB,CAAC;AAEtF,OAAO,EACL,8BAA8B,EAC9B,0BAA0B,EAE1B,YAAY,EACZ,cAAc,EACd,eAAe,GAGhB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EACL,sBAAsB,EACtB,4BAA4B,EAC5B,4BAA4B,EAC5B,qCAAqC,GAEtC,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EACL,kCAAkC,EAClC,oCAAoC,GACrC,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,yBAAyB,GAC1B,MAAM,UAAU,CAAC;AAiDlB,SAAS,cAAc,CAAC,IAAY;IAClC,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAChC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CACb,yBAAyB,IAAI,sCAAsC,CACpE,CAAC;IACJ,CAAC;IACD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IACtC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;IACtC,MAAM,cAAc,GAAG,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC;IACnE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC;AAC/C,CAAC;AAED,SAAS,aAAa,CACpB,IAAY,EACZ,aAAwC;IAExC,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;IACzD,OAAO,CACL,aAAa,EAAE,IAAI,CAAC,cAAc,EAAE,OAAO,CAAC;QAC5C,QAAQ,CAAC,cAAuB,EAAE,OAAgB,CAAC,CACpD,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,yBAAyB,CACtC,KAAiB,EACjB,IAAyC;IAEzC,IAAI,IAAI,CAAC,YAAY;QAAE,OAAO,IAAI,CAAC,YAAY,CAAC;IAEhD,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,IAAI,uBAAuB,EAAE,CAAC;IACtE,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;QACtB,uEAAuE;QACvE,uEAAuE;QACvE,IAAI,MAA0B,CAAC;QAC/B,IAAI,aAAiD,CAAC;QACtD,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;YACjE,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC;gBACZ,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;gBACrB,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC;gBACzB,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;oBACjB,KAAK,CAAC,OAAO,GAAG,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;gBAChE,CAAC;YACH,CAAC;QACH,CAAC;QACD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC;QACpC,MAAM;YACJ,YAAY,CAAC,KAAK,CAAC,QAAQ,CAAC;gBAC5B,GAAG,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;QACjD,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7D,MAAM,IAAI,KAAK,CACb,GAAG,KAAK,CAAC,QAAQ,CAAC,WAAW,EAAE,yEAAyE,CACzG,CAAC;QACJ,CAAC;QACD,MAAM,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;YACpD,IAAI,EAAE,SAAS;YACf,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAClC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACjD,CAAC,CAAC,CAAC;IACN,CAAC;IAED,OAAO,YAAY,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;AAChE,CAAC;AAED,SAAS,uBAAuB,CAC9B,IAAwB,EACxB,YAAkD;IAElD,IAAI,CAAC,YAAY;QAAE,OAAO,IAAI,CAAC;IAC/B,IAAI,YAAY,CAAC,IAAI,KAAK,SAAS;QAAE,OAAO,YAAY,CAAC,OAAO,CAAC;IACjE,OAAO,CAAC,IAAI,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AACnE,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAChE,CAAC,CAAE,KAAiC;QACpC,CAAC,CAAC,IAAI,CAAC;AACX,CAAC;AAED,SAAS,WAAW,CAAC,OAAgB;IACnC,IAAI,OAAO,OAAO,KAAK,QAAQ;QAAE,OAAO,OAAO,CAAC;IAChD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;QAAE,OAAO,EAAE,CAAC;IACvC,OAAO,OAAO;SACX,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACZ,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC9B,OAAO,MAAM,EAAE,IAAI,KAAK,MAAM,IAAI,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ;YAC/D,CAAC,CAAC,MAAM,CAAC,IAAI;YACb,CAAC,CAAC,EAAE,CAAC;IACT,CAAC,CAAC;SACD,MAAM,CAAC,OAAO,CAAC;SACf,IAAI,CAAC,IAAI,CAAC,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,MAAe;IAC9C,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,MAAM,CAAC;IAC9C,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,EAAE,CAAC;IACrD,MAAM,MAAM,GAAG,MAAiC,CAAC;IACjD,IAAI,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ;QAAE,OAAO,MAAM,CAAC,MAAM,CAAC;IAC5D,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;IACvE,KAAK,IAAI,KAAK,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QAC7D,MAAM,OAAO,GAAG,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;QAC1C,IAAI,CAAC,OAAO;YAAE,SAAS;QACvB,IAAI,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW;YAAE,SAAS;QAC3D,MAAM,IAAI,GAAG,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;QACjD,IAAI,IAAI;YAAE,OAAO,IAAI,CAAC;IACxB,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAwB;IAChD,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC/B,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACzC,IAAI,MAAM;QAAE,OAAO,MAAM,CAAC;IAC1B,MAAM,cAAc,GAAG,QAAQ,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;IAC/D,OAAO,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;AAC3C,CAAC;AAED,MAAM,6BAA6B;IAKJ;IAJrB,OAAO,GAAwB,IAAI,CAAC;IACpC,WAAW,GAAwB,IAAI,CAAC;IACxC,qBAAqB,GAAG,KAAK,CAAC;IAEtC,YAA6B,IAAyC;QAAzC,SAAI,GAAJ,IAAI,CAAqC;IAAG,CAAC;IAElE,iBAAiB,CAAC,IAAY,EAAE,MAAyB;QAC/D,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAC5B,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAChD,IAAI,MAAM,KAAK,OAAO;YAAE,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;IAC5D,CAAC;IAEO,kBAAkB,CAAC,KAAwB;QACjD,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC/B,MAAM,OAAO,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;QACxC,MAAM,IAAI,GAAG,OAAO,OAAO,EAAE,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;QAE1E,IAAI,MAAM,EAAE,IAAI,KAAK,sBAAsB,EAAE,CAAC;YAC5C,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;gBACtB,IAAI,EAAE,OAAO;gBACb,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;gBACnC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC;gBACnC,IAAI,EAAE,MAAM,CAAC,IAAI;aAClB,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QAED,IAAI,MAAM,EAAE,IAAI,KAAK,uBAAuB,EAAE,CAAC;YAC7C,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;gBACtB,IAAI,EAAE,QAAQ;gBACd,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;gBACnC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC;gBACnC,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,aAAa,EAAE,MAAM,CAAC,aAAa;aACpC,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QAED,IAAI,MAAM,EAAE,IAAI,KAAK,oBAAoB,EAAE,CAAC;YAC1C,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;gBACtB,IAAI,EAAE,KAAK;gBACX,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;gBACnC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC;gBACnC,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,OAAO,EAAE,MAAM,CAAC,OAAO,KAAK,IAAI;aACjC,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QAED,IAAI,MAAM,EAAE,IAAI,KAAK,eAAe,IAAI,IAAI,KAAK,WAAW,EAAE,CAAC;YAC7D,IAAI,CAAC,qBAAqB,GAAG,KAAK,CAAC;QACrC,CAAC;QAED,MAAM,cAAc,GAAG,QAAQ,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;QAC/D,IACE,IAAI,KAAK,WAAW;YACpB,MAAM,EAAE,IAAI,KAAK,gBAAgB;YACjC,cAAc,EAAE,IAAI,KAAK,YAAY;YACrC,OAAO,cAAc,CAAC,KAAK,KAAK,QAAQ,EACxC,CAAC;YACD,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YACtD,OAAO;QACT,CAAC;QAED,IACE,IAAI,KAAK,WAAW;YACpB,MAAM,EAAE,IAAI,KAAK,aAAa;YAC9B,CAAC,IAAI,CAAC,qBAAqB,EAC3B,CAAC;YACD,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC;QACjE,CAAC;IACH,CAAC;IAED,KAAK,CAAC,KAAK;QACT,IAAI,IAAI,CAAC,OAAO;YAAE,OAAO;QAEzB,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,4BAA4B,CAAC;YACxD,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS;YAC9B,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS;SAC/B,CAAC,CAAC;QACH,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CAAC,oBAAoB,SAAS,EAAE,CAAC,CAAC;QACnD,CAAC;QAED,MAAM,kBAAkB,GAAG,qCAAqC,CAAC;YAC/D,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS;YAC9B,SAAS;YACT,mBAAmB,EAAE,IAAI;YACzB,cAAc,EAAE,4BAA4B;SAC7C,CAAC,CAAC;QACH,MAAM,gBAAgB,GAAG,kBAAkB,CAAC,MAAM,CAChD,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,KAAK,SAAS,CAC5C,CAAC;QACF,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAChC,MAAM,IAAI,KAAK,CACb,gBAAgB,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAC9D,CAAC;QACJ,CAAC;QAED,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC;QACpC,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,UAAU,SAAS,2BAA2B,CAAC,CAAC;QAClE,CAAC;QACD,MAAM,KAAK,GAAG,kCAAkC,CAC9C,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,EACjD,KAAK,CAAC,WAAW,CAClB,CAAC;QACF,MAAM,YAAY,GAAG,MAAM,yBAAyB,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QACvE,MAAM,QAAQ,GAAG,MAAM,0BAA0B,CAAC;YAChD,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,YAAY;YAC3B,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS;YAC7B,YAAY;YACZ,eAAe,EAAE,eAAe,CAAC,MAAM,CACrC,IAAI,CAAC,IAAI,CAAC,YAAY,EACtB,IAAI,CAAC,IAAI,CAAC,SAAS,CACpB;YACD,qBAAqB,EAAE;gBACrB,QAAQ,EAAE,IAAI;gBACd,oBAAoB,EAAE,sBAAsB,CAC1C,IAAI,CAAC,IAAI,CAAC,SAAS,EACnB,oBAAoB,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,QAAQ,CAAC,EAC1E,KAAK,CAAC,MAAM,CACb;gBACD,oBAAoB,EAAE,CAAC,IAAI,EAAE,EAAE,CAC7B,uBAAuB,CACrB,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,IAAI,EACnD,KAAK,CAAC,kBAAkB,CACzB;aACJ;SACF,CAAC,CAAC;QAEH,qEAAqE;QACrE,sEAAsE;QACtE,sEAAsE;QACtE,MAAM,eAAe,GAAG,yBAAyB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CACnE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,OAAO,CAC3B,CAAC;QACF,MAAM,OAAO,GAAG,MAAM,8BAA8B,CAAC;YACnD,QAAQ;YACR,cAAc,EAAE,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC;YAC/D,KAAK;YACL,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,aAAa;gBAC5B,CAAC,CAAC,EAAE,aAAa,EAAE,KAAK,CAAC,KAAK,CAAC,aAA8B,EAAE;gBAC/D,CAAC,CAAC,EAAE,CAAC;YACP,KAAK,EAAE,eAAe;SACvB,CAAC,CAAC;QACH,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAC/B,oCAAoC,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;QACtE,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;QACtC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE;YAClD,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,MAAc;QACzB,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;QACnB,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;QACrE,sEAAsE;QACtE,yEAAyE;QACzE,sEAAsE;QACtE,MAAM,uBAAuB,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,OAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;QAClE,OAAO,gBAAgB,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IACpE,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,OAAe;QACzB,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;QACnB,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;QACrE,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,MAAM;QACV,MAAM,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,QAAQ;QACZ,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;QACrB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC;QACxB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;IACtB,CAAC;CACF;AAED,MAAM,UAAU,4BAA4B,CAC1C,IAAyC;IAEzC,OAAO,IAAI,6BAA6B,CAAC,IAAI,CAAC,CAAC;AACjD,CAAC"}
|
|
1
|
+
{"version":3,"file":"child-agent.js","sourceRoot":"","sources":["../src/child-agent.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { CredentialStore, Model } from "@earendil-works/pi-ai";
|
|
2
|
+
import type { AgentSessionEvent } from "@earendil-works/pi-coding-agent";
|
|
3
|
+
import type { ResolvedRecipe } from "./recipe/resolve.js";
|
|
4
|
+
import { type CreateAgentSessionInternalOptions, type RecipeSessionHandle, type RecipeSessionOtelOptions } from "./session.js";
|
|
5
|
+
export interface CreateIsolatedChildSessionOptions {
|
|
6
|
+
recipe: ResolvedRecipe;
|
|
7
|
+
agentName: string;
|
|
8
|
+
cwd: string;
|
|
9
|
+
env: NodeJS.ProcessEnv;
|
|
10
|
+
credentials?: CredentialStore;
|
|
11
|
+
credentialsResolved?: boolean;
|
|
12
|
+
modelOverride?: Model<any>;
|
|
13
|
+
otel?: RecipeSessionOtelOptions;
|
|
14
|
+
onEvent?: (event: AgentSessionEvent) => void;
|
|
15
|
+
sessionFactory?: (options: CreateAgentSessionInternalOptions) => Promise<RecipeSessionHandle>;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Shared child-session primitive used by both the embedded and interactive Pi
|
|
19
|
+
* controllers. It owns the child's private MCP state and always disables
|
|
20
|
+
* recursive delegation.
|
|
21
|
+
*/
|
|
22
|
+
export declare function createIsolatedChildSession(opts: CreateIsolatedChildSessionOptions): Promise<RecipeSessionHandle>;
|
|
23
|
+
//# sourceMappingURL=child-session.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"child-session.d.ts","sourceRoot":"","sources":["../src/child-session.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AACpE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACzE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAEL,KAAK,iCAAiC,EACtC,KAAK,mBAAmB,EACxB,KAAK,wBAAwB,EAC9B,MAAM,cAAc,CAAC;AAEtB,MAAM,WAAW,iCAAiC;IAChD,MAAM,EAAE,cAAc,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC,UAAU,CAAC;IACvB,WAAW,CAAC,EAAE,eAAe,CAAC;IAC9B,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,aAAa,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;IAC3B,IAAI,CAAC,EAAE,wBAAwB,CAAC;IAChC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAC7C,cAAc,CAAC,EAAE,CACf,OAAO,EAAE,iCAAiC,KACvC,OAAO,CAAC,mBAAmB,CAAC,CAAC;CACnC;AAED;;;;GAIG;AACH,wBAAsB,0BAA0B,CAC9C,IAAI,EAAE,iCAAiC,GACtC,OAAO,CAAC,mBAAmB,CAAC,CAkC9B"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { mkdtemp, rm } from "node:fs/promises";
|
|
2
|
+
import { tmpdir } from "node:os";
|
|
3
|
+
import { join } from "node:path";
|
|
4
|
+
import { createAgentSessionInternal, } from "./session.js";
|
|
5
|
+
/**
|
|
6
|
+
* Shared child-session primitive used by both the embedded and interactive Pi
|
|
7
|
+
* controllers. It owns the child's private MCP state and always disables
|
|
8
|
+
* recursive delegation.
|
|
9
|
+
*/
|
|
10
|
+
export async function createIsolatedChildSession(opts) {
|
|
11
|
+
const mcpRuntimeDir = await mkdtemp(join(tmpdir(), "recipes-child-mcp-"));
|
|
12
|
+
try {
|
|
13
|
+
const handle = await (opts.sessionFactory ?? createAgentSessionInternal)({
|
|
14
|
+
recipe: opts.recipe,
|
|
15
|
+
agentName: opts.agentName,
|
|
16
|
+
cwd: opts.cwd,
|
|
17
|
+
env: { ...opts.env },
|
|
18
|
+
...(opts.credentials ? { credentials: opts.credentials } : {}),
|
|
19
|
+
...(opts.credentialsResolved ? { credentialsResolved: true } : {}),
|
|
20
|
+
...(opts.modelOverride ? { modelOverride: opts.modelOverride } : {}),
|
|
21
|
+
...(opts.otel ? { otel: opts.otel } : {}),
|
|
22
|
+
...(opts.onEvent ? { onEvent: opts.onEvent } : {}),
|
|
23
|
+
mcpRuntimeDir,
|
|
24
|
+
runController: null,
|
|
25
|
+
sessionRole: "subagent",
|
|
26
|
+
});
|
|
27
|
+
let disposed = false;
|
|
28
|
+
return {
|
|
29
|
+
...handle,
|
|
30
|
+
async dispose() {
|
|
31
|
+
if (disposed)
|
|
32
|
+
return;
|
|
33
|
+
disposed = true;
|
|
34
|
+
try {
|
|
35
|
+
await handle.dispose();
|
|
36
|
+
}
|
|
37
|
+
finally {
|
|
38
|
+
await rm(mcpRuntimeDir, { recursive: true, force: true });
|
|
39
|
+
}
|
|
40
|
+
},
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
catch (error) {
|
|
44
|
+
await rm(mcpRuntimeDir, { recursive: true, force: true });
|
|
45
|
+
throw error;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=child-session.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"child-session.js","sourceRoot":"","sources":["../src/child-session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAIjC,OAAO,EACL,0BAA0B,GAI3B,MAAM,cAAc,CAAC;AAiBtB;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC9C,IAAuC;IAEvC,MAAM,aAAa,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,oBAAoB,CAAC,CAAC,CAAC;IAC1E,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,cAAc,IAAI,0BAA0B,CAAC,CAAC;YACvE,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,GAAG,EAAE,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE;YACpB,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9D,GAAG,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAClE,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACpE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACzC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAClD,aAAa;YACb,aAAa,EAAE,IAAI;YACnB,WAAW,EAAE,UAAU;SACxB,CAAC,CAAC;QACH,IAAI,QAAQ,GAAG,KAAK,CAAC;QACrB,OAAO;YACL,GAAG,MAAM;YACT,KAAK,CAAC,OAAO;gBACX,IAAI,QAAQ;oBAAE,OAAO;gBACrB,QAAQ,GAAG,IAAI,CAAC;gBAChB,IAAI,CAAC;oBACH,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC;gBACzB,CAAC;wBAAS,CAAC;oBACT,MAAM,EAAE,CAAC,aAAa,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;gBAC5D,CAAC;YACH,CAAC;SACF,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,EAAE,CAAC,aAAa,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1D,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC"}
|