A minimal VS Code extension that drives agentao --acp --stdio as a workspace-scoped subprocess. Reference implementation of the “three-loop” ACP client architecture from the developer guide.
Corresponds to Part 7.2 of the developer guide and the TypeScript client in Part 3.3.4.
ACPClient class — spawn agentao, line-oriented stdio reader, request/response correlation with timeouts, notification dispatch, server→client request handlingAgentao: Ask, Agentao: Cancel), streaming output channel, modal permission promptssessionId saved to ctx.globalState and restored via session/load on next activationnpm install
npm run compile # or: npm run typecheck for no-emit
Expected: zero TypeScript errors, out/ directory created.
agentao is on your PATH (uv tool install agentao or run from this repo with uv run agentao)Agentao: Ask → type a question| Path | Role |
|---|---|
src/acp-client.ts |
Stand-alone ACPClient — usable in any Node host, not just VS Code |
src/extension.ts |
VS Code activation entry: spawn, restore session, register commands |
package.json |
Extension manifest + dev deps |
tsconfig.json |
Compiles src/*.ts → out/*.js |
vsce, icon, category wiring — follow VS Code’s own guide)workspaceFolder; spawn one ACPClient per root for real multi-root support