pi-subagents 0.3.2 → 0.4.1
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 +77 -0
- package/README.md +34 -7
- package/chain-clarify.ts +631 -31
- package/chain-execution.ts +93 -16
- package/execution.ts +5 -2
- package/index.ts +143 -21
- package/package.json +2 -1
- package/render.ts +4 -2
- package/schemas.ts +13 -11
- package/settings.ts +24 -20
- package/types.ts +2 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,82 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [Unreleased]
|
|
4
|
+
|
|
5
|
+
### Changed
|
|
6
|
+
- Added `pi-package` keyword for npm discoverability (pi v0.50.0 package system)
|
|
7
|
+
|
|
8
|
+
## [0.4.0] - 2026-01-25
|
|
9
|
+
|
|
10
|
+
### Added
|
|
11
|
+
- **Clarify TUI for single and parallel modes** - Use `clarify: true` to preview/edit before execution
|
|
12
|
+
- Single mode: Edit task, model, thinking level, output file
|
|
13
|
+
- Parallel mode: Edit each task independently, model, thinking level
|
|
14
|
+
- Navigate between parallel tasks with ↑↓
|
|
15
|
+
- **Mode-aware TUI headers** - Header shows "Agent: X" for single, "Parallel Tasks (N)" for parallel, "Chain: X → Y" for chains
|
|
16
|
+
- **Model override for single/parallel** - TUI model selection now works for all modes
|
|
17
|
+
|
|
18
|
+
### Fixed
|
|
19
|
+
- **MAX_PARALLEL error mode** - Now correctly returns `mode: 'parallel'` (was incorrectly `mode: 'single'`)
|
|
20
|
+
- **`output: true` handling** - Now correctly treats `true` as "use agent's default output" instead of creating a file literally named "true"
|
|
21
|
+
|
|
22
|
+
### Changed
|
|
23
|
+
- **Schema description** - `clarify` parameter now documents all modes: "default: true for chains, false for single/parallel"
|
|
24
|
+
|
|
25
|
+
## [0.3.3] - 2026-01-25
|
|
26
|
+
|
|
27
|
+
### Added
|
|
28
|
+
- **Thinking level selector in chain TUI** - Press `[t]` to set thinking level for any step
|
|
29
|
+
- Options: off, minimal, low, medium, high, xhigh (ultrathink)
|
|
30
|
+
- Appends to model as suffix (e.g., `anthropic/claude-sonnet-4-5:high`)
|
|
31
|
+
- Pre-selects current thinking level if already set
|
|
32
|
+
- **Model selector in chain TUI** - Press `[m]` to select a different model for any step
|
|
33
|
+
- Fuzzy search through all available models
|
|
34
|
+
- Shows current model with ✓ indicator
|
|
35
|
+
- Provider/model format (e.g., `anthropic/claude-haiku-4-5`)
|
|
36
|
+
- Override indicator (✎) when model differs from agent default
|
|
37
|
+
- **Model visibility in chain execution** - Shows which model each step is using
|
|
38
|
+
- Display format: `Step 1: scout (claude-haiku-4-5) | 3 tools, 16.8s`
|
|
39
|
+
- Model shown in both running and completed steps
|
|
40
|
+
- **Auto-propagate output changes to reads** - When you change a step's output filename,
|
|
41
|
+
downstream steps that read from it are automatically updated to use the new filename
|
|
42
|
+
- Maintains chain dependencies without manual updates
|
|
43
|
+
- Example: Change scout's output from `context.md` to `summary.md`, planner's reads updates automatically
|
|
44
|
+
|
|
45
|
+
### Changed
|
|
46
|
+
- **Progress is now chain-level** - `[p]` toggles progress for ALL steps at once
|
|
47
|
+
- Progress setting shown at chain level (not per-step)
|
|
48
|
+
- Chains share a single progress.md, so chain-wide toggle is more intuitive
|
|
49
|
+
- **Clearer output/writes labeling** - Renamed `output:` to `writes:` to clarify it's a file
|
|
50
|
+
- Hotkey changed from `[o]` to `[w]` for consistency
|
|
51
|
+
- **{previous} data flow indicator** - Shows on the PRODUCING step (not receiving):
|
|
52
|
+
- `↳ response → {previous}` appears after scout's reads line
|
|
53
|
+
- Only shows when next step's template uses `{previous}`
|
|
54
|
+
- Clearer mental model: output flows DOWN the chain
|
|
55
|
+
- Chain TUI footer updated: `[e]dit [m]odel [t]hinking [w]rites [r]eads [p]rogress`
|
|
56
|
+
|
|
57
|
+
### Fixed
|
|
58
|
+
- **Chain READ/WRITE instructions now prepended** - Instructions restructured:
|
|
59
|
+
- `[Read from: /path/file.md]` and `[Write to: /path/file.md]` prepended BEFORE task
|
|
60
|
+
- Overrides any hardcoded filenames in task text from parent agent
|
|
61
|
+
- Previously: instructions were appended at end and could be overlooked
|
|
62
|
+
- **Output file validation** - After each step, validates expected file was created:
|
|
63
|
+
- If missing, warns: "Agent wrote to different file(s): X instead of Y"
|
|
64
|
+
- Helps diagnose when agents don't create expected outputs
|
|
65
|
+
- **Root cause: agents need `write` tool** - Agents without `write` in their tools list
|
|
66
|
+
cannot create output files (they tried MCP workarounds which failed)
|
|
67
|
+
- **Thinking level suffixes now preserved** - Models with thinking levels (e.g., `claude-sonnet-4-5:high`)
|
|
68
|
+
now correctly resolve to `anthropic/claude-sonnet-4-5:high` instead of losing the provider prefix
|
|
69
|
+
|
|
70
|
+
### Improved
|
|
71
|
+
- **Per-step progress indicators** - When progress is enabled, each step shows its role:
|
|
72
|
+
- Step 1: `● creates & updates progress.md`
|
|
73
|
+
- Step 2+: `↔ reads & updates progress.md`
|
|
74
|
+
- Clear visualization of progress.md data flow through the chain
|
|
75
|
+
- **Comprehensive tool descriptions** - Better documentation of chain variables:
|
|
76
|
+
- Tool description now explains `{task}`, `{previous}`, `{chain_dir}` in detail
|
|
77
|
+
- Schema descriptions clarify what each variable means and when to use them
|
|
78
|
+
- Helps agents construct proper chain queries for any use case
|
|
79
|
+
|
|
3
80
|
## [0.3.2] - 2026-01-25
|
|
4
81
|
|
|
5
82
|
### Performance
|
package/README.md
CHANGED
|
@@ -6,6 +6,8 @@
|
|
|
6
6
|
|
|
7
7
|
Pi extension for delegating tasks to subagents with chains, parallel execution, TUI clarification, and async support.
|
|
8
8
|
|
|
9
|
+
https://github.com/user-attachments/assets/702554ec-faaf-4635-80aa-fb5d6e292fd1
|
|
10
|
+
|
|
9
11
|
## Installation
|
|
10
12
|
|
|
11
13
|
```bash
|
|
@@ -43,16 +45,41 @@ npx pi-subagents --remove
|
|
|
43
45
|
|
|
44
46
|
*Chain defaults to sync with TUI clarification. Use `clarify: false` to enable async (sequential-only chains; parallel-in-chain requires sync mode).
|
|
45
47
|
|
|
46
|
-
**
|
|
48
|
+
**Clarify TUI for single/parallel:**
|
|
49
|
+
|
|
50
|
+
Single and parallel modes also support the clarify TUI for previewing/editing parameters before execution. Unlike chains, they default to no TUI - use `clarify: true` to enable:
|
|
51
|
+
|
|
52
|
+
```typescript
|
|
53
|
+
// Single agent with clarify TUI
|
|
54
|
+
{ agent: "scout", task: "Analyze the codebase", clarify: true }
|
|
55
|
+
|
|
56
|
+
// Parallel tasks with clarify TUI
|
|
57
|
+
{ tasks: [{agent: "scout", task: "Analyze frontend"}, ...], clarify: true }
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
**Clarification TUI keybindings:**
|
|
47
61
|
|
|
48
62
|
*Navigation mode:*
|
|
49
|
-
- `Enter` - Run
|
|
63
|
+
- `Enter` - Run
|
|
50
64
|
- `Esc` - Cancel
|
|
51
|
-
- `↑↓` - Navigate between steps
|
|
52
|
-
- `e` - Edit task/template
|
|
53
|
-
- `
|
|
54
|
-
- `
|
|
55
|
-
- `
|
|
65
|
+
- `↑↓` - Navigate between steps/tasks (parallel, chain)
|
|
66
|
+
- `e` - Edit task/template (all modes)
|
|
67
|
+
- `m` - Select model (all modes)
|
|
68
|
+
- `t` - Select thinking level (all modes)
|
|
69
|
+
- `w` - Edit writes/output file (single, chain only)
|
|
70
|
+
- `r` - Edit reads list (chain only)
|
|
71
|
+
- `p` - Toggle progress tracking (chain only)
|
|
72
|
+
|
|
73
|
+
*Model selector mode:*
|
|
74
|
+
- `↑↓` - Navigate model list
|
|
75
|
+
- `Enter` - Select model
|
|
76
|
+
- `Esc` - Cancel (keep current model)
|
|
77
|
+
- Type to filter (fuzzy search by model name or provider)
|
|
78
|
+
|
|
79
|
+
*Thinking level selector mode:*
|
|
80
|
+
- `↑↓` - Navigate level list
|
|
81
|
+
- `Enter` - Select level
|
|
82
|
+
- `Esc` - Cancel (keep current level)
|
|
56
83
|
|
|
57
84
|
*Edit mode (full-screen editor with word wrapping):*
|
|
58
85
|
- `Esc` - Save changes and exit
|