AI coding agent in the sidebar, backed by your own mini-code server.
Tools run on your machine, not on the server. The server declares the tools and drives the model; this extension executes them against your open workspace and reports the result back. The server has no filesystem or shell access at all.
Requirements
The mini-code stack must be running:
cd ../mini-code
./run-all.sh
That starts PostgreSQL, the auth service (:5175) and the API server (:3010),
and prints the application id you need below.
Setup
-
Install the extension (see below).
-
Open Settings → Extensions → Mini Code and set:
Setting Default Notes minicode.apiUrlhttp://localhost:3010Must match PORTinpackages/server/.envminicode.authWebUrlhttp://localhost:5175Auth service minicode.authAppId(empty) App id printed by run-all.sh -
Click the robot icon in the Activity Bar, then Sign In. A browser opens, you log in, and the token is stored in VS Code's secret storage.
Seeded development account: [email protected] / password123.
Using it
| Action | How |
|---|---|
| Open chat | Activity Bar icon, or Cmd+Shift+M |
| New session | ≡ in the panel, or Mini Code: New Session |
| Delete a session | Hover the row in ≡ and click × (asks to confirm) |
| Switch model | Dropdown next to the mode toggle (filter with 7+ models), or Mini Code: Select Model |
| Build ↔ Plan | The toggle, or Tab in the input |
| Attach a file | Type @ and pick from the workspace |
| Attach an image | Paste it into the input |
| Stop a turn | Stop while streaming |
| Change server URLs | Gear icon — each field has a Test button |
Build mode gives the agent read, write, edit and shell access to your workspace. Plan mode is read-only — write and shell tools are refused by the extension itself, not just withheld by the server.
Install
npm install
npm run install:local # build → package → code --install-extension
Or step by step:
npm run build # esbuild (host) + vite (webview)
npm run package # → mini-code-0.1.0.vsix
code --install-extension mini-code-0.1.0.vsix --force
Reload the VS Code window afterwards (Developer: Reload Window).
Development
npm run watch # rebuild the extension host on change
npm run build:webview
Press F5 to launch an Extension Development Host with the extension loaded.
Type checking runs separately from the build — esbuild strips types without checking them, so run both before shipping:
npx tsc --noEmit -p tsconfig.json # extension host
npx tsc --noEmit -p tsconfig.webview.json # webview
Layout
src/ Extension host (Node)
extension.ts Activation, commands
MiniCodePanel.ts Webview provider, SSE handling, tool queue
ApiClient.ts HTTP + SSE against the mini-code server
AuthManager.ts Browser login, token in SecretStorage
ToolExecutor.ts The only place tools actually run
webview/ React UI (browser context)
types.ts Shared host ↔ webview message contract
License
MIT