@narumitw/pi-subagents 0.33.0 → 0.38.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 +13 -4
- package/package.json +3 -1
- package/src/config-ui.ts +476 -718
- package/src/settings.ts +222 -181
package/README.md
CHANGED
|
@@ -240,7 +240,13 @@ Auto-resume is best-effort because Pi's custom-message API is fire-and-forget. S
|
|
|
240
240
|
|
|
241
241
|
The default `subprocess` transport preserves compatibility: each turn starts a fresh isolated `pi --mode json -p --no-session` child and receives sanitized, bounded history. Set `transport` to `in-process` to retain one public Pi SDK `AgentSession` per stateful `agentId`, avoiding repeated process startup while preserving native child history in memory.
|
|
242
242
|
|
|
243
|
-
Run `/subagents` in TUI mode to open the primary manager. It leads with the current
|
|
243
|
+
Run `/subagents` in TUI mode to open the standard primary manager. It leads with the current
|
|
244
|
+
delegation workflow, human-readable async completion behavior, and active/retained counts. **Change
|
|
245
|
+
delegation**, **Current agents**, and **Completion behavior** cover the common workflows; agent
|
|
246
|
+
permissions, transport/runtime details, source, and settings path remain under **Advanced settings**.
|
|
247
|
+
Escape returns from a nested screen to a newly refreshed manager; Ctrl+C closes the full flow.
|
|
248
|
+
Exact workflow/reload and project-agent safety confirmations remain extension-owned because they
|
|
249
|
+
guard live agent and trust-boundary policy rather than ordinary navigation.
|
|
244
250
|
|
|
245
251
|
The direct routes remain predictable: `/subagents settings` changes user completion delivery and applies it immediately, including refreshing the model-facing spawn guidance; `/subagents status` reports current-session runtime values separately from the configured value, source, and path; `/subagents help` summarizes the single-command interface. In RPC mode, bare `/subagents` emits the same bounded status through Pi's notification protocol instead of opening a custom TUI. JSON and print modes do not emit ad hoc command output. Manual edits use `~/.pi/agent/pi-subagents.json` and take effect after reloading Pi:
|
|
246
252
|
|
|
@@ -266,7 +272,7 @@ The direct routes remain predictable: `/subagents settings` changes user complet
|
|
|
266
272
|
}
|
|
267
273
|
```
|
|
268
274
|
|
|
269
|
-
The settings UI patches the raw JSON atomically and preserves unknown fields; it refuses to overwrite malformed or invalid settings. `blocking.enabled` defaults to `true`; set it to `false` for async-only delegation. `stateful.enabled` also defaults to `true`; its existing `false` value remains the blocking-only workflow. When stateful tools are enabled, their membership stays fixed across spawn, completion, interrupt, close, and mailbox transitions. This avoids lifecycle-driven tool-schema churn and preserves a stable provider prompt prefix for KV caching.
|
|
275
|
+
The settings UI patches the raw JSON atomically and preserves unknown fields; it refuses to overwrite malformed or invalid settings. Supported Pi writers serialize the latest-document read and same-directory temporary-file rename through `pi-subagents.json.mutation-lock`. Editors and older extension versions do not participate in that lock, so avoid manual edits while a settings save is in progress. `blocking.enabled` defaults to `true`; set it to `false` for async-only delegation. `stateful.enabled` also defaults to `true`; its existing `false` value remains the blocking-only workflow. When stateful tools are enabled, their membership stays fixed across spawn, completion, interrupt, close, and mailbox transitions. This avoids lifecycle-driven tool-schema churn and preserves a stable provider prompt prefix for KV caching.
|
|
270
276
|
|
|
271
277
|
| Tool | Purpose |
|
|
272
278
|
| --- | --- |
|
|
@@ -382,9 +388,12 @@ Built-in agents inherit the active/default Pi model instead of forcing a provide
|
|
|
382
388
|
|
|
383
389
|
## ⚙️ Configure agent tools
|
|
384
390
|
|
|
385
|
-
Open `/subagents`, choose **Advanced settings**, then **Agent tool
|
|
391
|
+
Open `/subagents`, choose **Advanced settings**, then **Agent tool permissions** in an interactive
|
|
392
|
+
Pi session to edit the tools each subagent may use. The standard bounded multi-select keeps a
|
|
393
|
+
one-save draft: toggles do not write until **Save changes**, Escape discards the draft, and unavailable
|
|
394
|
+
configured tool names remain visible and preserved. These are user settings stored in `~/.pi/agent/pi-subagents.json` and affect future sessions.
|
|
386
395
|
|
|
387
|
-
Compatibility: a valid legacy `pi-subagents-config.json` is
|
|
396
|
+
Compatibility: a valid legacy `pi-subagents-config.json` remains readable with a warning and is never modified automatically; rename it to `pi-subagents.json`. The first subsequent settings save writes the canonical file. If both files exist, the new filename takes precedence.
|
|
388
397
|
|
|
389
398
|
- Select an agent, then press Enter or Space to toggle tools.
|
|
390
399
|
- Press `S` to save, or Esc to cancel and return to agent selection.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@narumitw/pi-subagents",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.38.0",
|
|
4
4
|
"description": "Pi extension for delegating work to specialized isolated subagents.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -29,6 +29,8 @@
|
|
|
29
29
|
"typecheck": "tsc --noEmit"
|
|
30
30
|
},
|
|
31
31
|
"dependencies": {
|
|
32
|
+
"@narumitw/pi-tui-kit": "<1",
|
|
33
|
+
"proper-lockfile": "^4.1.2",
|
|
32
34
|
"typebox": "^1.3.8"
|
|
33
35
|
},
|
|
34
36
|
"peerDependencies": {
|