Conversation
- Updated .gitignore to include VS Code and distribution files. - Added exports for VS Code integration in package.json. - Expanded README with installation instructions for the VS Code extension. - Introduced new functions for plain-text banner lines and footer for non-terminal UIs. - Enhanced model management commands to support listing models and switching via index or name. - Updated StreamEvent types to include status updates for UI hosts.
1bcMax
left a comment
There was a problem hiding this comment.
Thanks for the PR — good feature choices. /history, /delete, and the numbered model picker are all real user pain points. The headless session API is the right abstraction for multi-host support.
A few things before I can review further:
-
Remove
dist/from the PR. Compiled output shouldn't be committed — it'll be generated by CI. Please also removevscode-extension/package-lock.jsonandvscode-extension/out/if present. -
Split
extension.ts(782 lines) into smaller modules. Suggestion:webview-provider.ts,session-manager.ts, andui-renderer.ts. One file doing webview setup + session management + HTML rendering + balance tracking is too much to review or maintain. -
Version bump should be a separate commit (2.5.28 → 2.5.29), not mixed into the feature.
-
Can you explain the design decision behind the headless session API (
vscode-session.ts) — why decouple viagetUserInput+onEventcallbacks rather than importing the agent loop directly? Want to make sure we're aligned on the architecture before this ships.
Looking forward to the updated PR.
Add a VS Code sidebar extension (vscode-extension/) that provides the full RunCode agent experience
inside VS Code — chat panel, tool execution, model switching, and all slash commands
event using local cost estimation (same approach as the Ink terminal UI), with RPC sync on turn
completion
I/O, enabling any host (VS Code, future web UI, etc.) to drive sessions via getUserInput + onEvent
via console.error in TTY), allowing VS Code and other non-terminal hosts to display the picker
stderr
Test plan