@erichll/pi-sandbox 0.21.1 → 0.22.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/CHANGELOG.md +24 -0
- package/README.md +2 -2
- package/package.json +8 -8
- package/src/pi-subagents-native.ts +8 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,29 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.22.0 - 2026-09-30
|
|
4
|
+
|
|
5
|
+
- Raise the `@earendil-works/pi-coding-agent` peer floor to `^0.99.1` and the
|
|
6
|
+
development baseline to `^0.99.1`. Validated against Pi 0.99.1 with
|
|
7
|
+
`tsc --noEmit` and the test suite (92 pass, 1 macOS-only skip); the shipped
|
|
8
|
+
`src/` uses no API that changed between 0.87 and 0.99.
|
|
9
|
+
- Adapt two test fixtures to the 0.99 extension surface: `ToolInfo` now requires
|
|
10
|
+
`exposure`, and tool handlers receive `ExtensionToolContext` (`tools`,
|
|
11
|
+
`executeTool`). The shipped extension uses neither field, so runtime behavior
|
|
12
|
+
is unchanged.
|
|
13
|
+
- Raise the `pi-subagents` development dependency to `^0.72.1` and revalidate
|
|
14
|
+
the native-background loader against the published 0.72.1 package:
|
|
15
|
+
`discoverAgents` and `resolveAgentName` keep their signatures,
|
|
16
|
+
`src/agents/agents` only gains an optional `options.globalNpmRoot` argument,
|
|
17
|
+
`typebox` moved from a hard dependency to an optional host peer, and the
|
|
18
|
+
`./capability-ceiling` export still resolves to `.js`.
|
|
19
|
+
- Depend on `@erichll/pi-auto-review` `^0.22.0`.
|
|
20
|
+
- Document the three-way `subagents.provider` choice (`builtin` / `off` /
|
|
21
|
+
`pi-subagents`) with copy-ready example configs, including the duplicate
|
|
22
|
+
`subagent` tool that makes `builtin` unavailable whenever the pi-subagents
|
|
23
|
+
extension is loaded, and the scheduled-runs-disabled pi-subagents config that
|
|
24
|
+
protected mode requires.
|
|
25
|
+
- Bump the development `typescript` baseline to `^7.0.2`.
|
|
26
|
+
|
|
3
27
|
## 0.21.1 - 2026-09-26
|
|
4
28
|
|
|
5
29
|
- Alias `@earendil-works/pi-tui` for the `jiti` instance that loads the
|
package/README.md
CHANGED
|
@@ -92,7 +92,7 @@ Supported modes:
|
|
|
92
92
|
### `pi-subagents` native-background tool boundary
|
|
93
93
|
|
|
94
94
|
This provider supports the `pi-subagents >=0.66.0` line (validated through
|
|
95
|
-
0.
|
|
95
|
+
0.72.1) and fails closed if its public ceiling API, module layout, or internal
|
|
96
96
|
discovery layout drifts. The peer dependency is a floor with no upper pin; the
|
|
97
97
|
loader's explicit export and layout checks are the real gate. The loader also
|
|
98
98
|
aliases `@earendil-works/pi-tui`, a host peer that the `pi-subagents` internals
|
|
@@ -296,7 +296,7 @@ directory. It never reads or updates production Pi configuration. Model-backed
|
|
|
296
296
|
acceptance requires `PI_SUBAGENTS_GATE_MODEL` and an already-exported matching
|
|
297
297
|
credential; missing prerequisites are reported as `SKIP`. Protected mode with
|
|
298
298
|
pi-subagents 0.68.0 or newer needs Pi 0.86.0 or newer. The development
|
|
299
|
-
baseline is validated against Pi 0.
|
|
299
|
+
baseline is validated against Pi 0.99.1.
|
|
300
300
|
|
|
301
301
|
The test suite covers real Linux Sandbox Runtime enforcement when its native
|
|
302
302
|
dependencies are installed, plus deterministic broker, network approval,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@erichll/pi-sandbox",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.22.0",
|
|
4
4
|
"description": "Linux (bubblewrap) and macOS (Seatbelt) process sandbox for Pi backed by Anthropic's @anthropic-ai/sandbox-runtime. Fail-closed static filesystem policy plus per-connection network approval from pi-auto-review; sandboxes main-agent Bash and built-in subagent process trees.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -51,11 +51,11 @@
|
|
|
51
51
|
},
|
|
52
52
|
"dependencies": {
|
|
53
53
|
"@anthropic-ai/sandbox-runtime": "^0.0.77",
|
|
54
|
-
"@erichll/pi-auto-review": "^0.
|
|
54
|
+
"@erichll/pi-auto-review": "^0.22.0",
|
|
55
55
|
"jiti": "2.7.0"
|
|
56
56
|
},
|
|
57
57
|
"peerDependencies": {
|
|
58
|
-
"@earendil-works/pi-coding-agent": "^0.
|
|
58
|
+
"@earendil-works/pi-coding-agent": "^0.99.1",
|
|
59
59
|
"pi-subagents": ">=0.66.0",
|
|
60
60
|
"typebox": ">=1.0.0"
|
|
61
61
|
},
|
|
@@ -65,12 +65,12 @@
|
|
|
65
65
|
}
|
|
66
66
|
},
|
|
67
67
|
"devDependencies": {
|
|
68
|
-
"@earendil-works/pi-ai": "^0.
|
|
69
|
-
"@earendil-works/pi-coding-agent": "^0.
|
|
70
|
-
"@earendil-works/pi-server": "^0.
|
|
68
|
+
"@earendil-works/pi-ai": "^0.99.1",
|
|
69
|
+
"@earendil-works/pi-coding-agent": "^0.99.1",
|
|
70
|
+
"@earendil-works/pi-server": "^0.99.1",
|
|
71
71
|
"@types/node": "^26.6.2",
|
|
72
|
-
"pi-subagents": "^0.
|
|
72
|
+
"pi-subagents": "^0.72.1",
|
|
73
73
|
"typebox": "^1.3.34",
|
|
74
|
-
"typescript": "^
|
|
74
|
+
"typescript": "^7.0.2"
|
|
75
75
|
}
|
|
76
76
|
}
|
|
@@ -16,10 +16,16 @@ import { createJiti } from "jiti";
|
|
|
16
16
|
* 2026-09-23 against the published 0.71.0 package: the ceiling implementation
|
|
17
17
|
* and the config loader are byte-identical to 0.70.0, `discoverAgents` and
|
|
18
18
|
* `resolveAgentName` keep their signatures, and the `./capability-ceiling`
|
|
19
|
-
* export still resolves to `.js`)
|
|
19
|
+
* export still resolves to `.js`), and revalidated 2026-09-27 against the
|
|
20
|
+
* published 0.72.1 package: the ceiling implementation and the config loader
|
|
21
|
+
* are still byte-identical to 0.70.0, `discoverAgents` and `resolveAgentName`
|
|
22
|
+
* keep their signatures, `src/agents/agents` only gains an optional
|
|
23
|
+
* `options.globalNpmRoot` argument, `typebox` moved from a hard dependency to
|
|
24
|
+
* an optional host peer, and the `./capability-ceiling` export still resolves
|
|
25
|
+
* to `.js`). Protected mode needs Pi 0.86.0 or newer
|
|
20
26
|
* (the pi-subagents 0.68.0+ floor): 0.85.0 does not ship
|
|
21
27
|
* `@earendil-works/pi-server`, so background children fail to launch there.
|
|
22
|
-
* This package's own peer floor is Pi 0.
|
|
28
|
+
* This package's own peer floor is Pi 0.99.1 (validated 2026-09-30).
|
|
23
29
|
*/
|
|
24
30
|
export const PI_SUBAGENTS_COMPAT_RANGE = ">=0.66.0";
|
|
25
31
|
export const NATIVE_CHILD_TOOLS = ["bash", "read", "grep", "find", "ls"] as const;
|