@victor-software-house/pi-acp 0.1.1 → 0.2.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
@@ -13,8 +13,9 @@ Active development. ACP compliance is improving steadily. Development is centere
13
13
  - Streams assistant output as ACP `agent_message_chunk`
14
14
  - Streams thinking output as ACP `agent_thought_chunk`
15
15
  - Maps pi tool execution to ACP `tool_call` / `tool_call_update`
16
+ - Descriptive tool titles (`Read src/index.ts`, `Run ls -la`, `Edit config.ts`)
16
17
  - Tool call locations surfaced for follow-along features in clients like Zed
17
- - For `edit`, emits ACP structured diffs (`oldText`/`newText`) with inferred line numbers
18
+ - For `edit` and `write`, emits ACP structured diffs (`oldText`/`newText`)
18
19
  - Tool kinds: `read`, `edit`, `execute` (bash), `other`
19
20
  - Session configuration via ACP `configOptions`
20
21
  - Model selector (category: `model`)
@@ -22,11 +23,16 @@ Active development. ACP compliance is improving steadily. Development is centere
22
23
  - Also advertises `modes` and `models` for backward compatibility
23
24
  - `session/set_config_option` for changing model or thinking level
24
25
  - `config_option_update` emitted when configuration changes
25
- - Session persistence and history
26
+ - Session persistence and lifecycle
27
+ - Multiple concurrent sessions supported
26
28
  - pi manages sessions in `~/.pi/agent/sessions/...`
27
- - `session/list` uses pi's `SessionManager` directly
28
- - `session/load` replays full conversation history
29
+ - `session/list` with title fallback from first user message
30
+ - `session/load` replays structured history (text, thinking, tool calls)
31
+ - `unstable_closeSession`, `unstable_resumeSession`, `unstable_forkSession`
29
32
  - Sessions can be resumed in both `pi` CLI and ACP clients
33
+ - Usage and cost tracking
34
+ - `usage_update` emitted after each agent turn with context size and cost
35
+ - `PromptResponse.usage` includes per-turn token counts
30
36
  - Slash commands
31
37
  - File-based prompt templates from `~/.pi/agent/prompts/` and `<cwd>/.pi/prompts/`
32
38
  - Extension commands from pi extensions
@@ -163,7 +169,7 @@ test/
163
169
 
164
170
  ### MUST-level gaps
165
171
 
166
- - **MCP servers** -- accepted in `session/new` and `session/load` params but not wired through to pi. ACP requires agents to connect to all provided MCP servers. This is the main compliance gap.
172
+ - **MCP servers** -- accepted in `session/new` and `session/load` params but not wired through to pi. ACP requires agents to connect to all provided MCP servers. This is the main compliance gap (upstream pi SDK limitation).
167
173
 
168
174
  ### SHOULD-level gaps
169
175
 
@@ -171,8 +177,7 @@ test/
171
177
 
172
178
  ### Not implemented (MAY / client capabilities)
173
179
 
174
- - **`session_info_update`** -- partially implemented (emitted by `/name` command); not emitted automatically for other metadata changes.
175
- - **`agent_plan`** -- plan updates not emitted before tool execution.
180
+ - **`agent_plan`** -- plan updates not emitted before tool execution. pi has no equivalent planning surface.
176
181
  - **ACP filesystem delegation** (`fs/read_text_file`, `fs/write_text_file`) -- pi reads/writes locally. Not advertised.
177
182
  - **ACP terminal delegation** (`terminal/*`) -- pi executes commands locally. Not advertised.
178
183
 
@@ -180,8 +185,9 @@ test/
180
185
 
181
186
  - pi does not have real session modes (ask/architect/code). The `modes` field exposes thinking levels for backward compatibility with clients that do not support `configOptions`.
182
187
  - `configOptions` is the preferred configuration mechanism. Zed uses it exclusively when present.
188
+ - pi-acp uses direct filesystem access rather than delegating reads/writes to the ACP client. This means pi reads on-disk file versions, not unsaved editor buffers.
183
189
 
184
- See [TODO.md](TODO.md) for full gap inventory and [ROADMAP.md](ROADMAP.md) for priorities.
190
+ See [docs/engineering/acp-conformance.md](docs/engineering/acp-conformance.md) for detailed conformance status.
185
191
 
186
192
  ## Release
187
193