@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 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 delegation workflow, human-readable async completion behavior, and active/retained counts. **Change delegation**, **Current agents**, and **Completion behavior** cover the common workflows; agent permissions, transport/runtime details, source, and settings path remain under **Advanced settings**. Escape returns from a nested screen to a newly refreshed manager and then closes it.
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 settings** in an interactive Pi session to edit the tools each subagent may use. These are user settings stored in `~/.pi/agent/pi-subagents.json` and affect future sessions.
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 migrated automatically to `pi-subagents.json`. If both files exist, the new filename takes precedence.
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.33.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": {