Truss VS Code Extension
The extension contains the side-panel UI, local model settings, approval prompts, chat history, inline completion, commit-message action, and a bundled Truss runtime service.
Install
Download the current signed Truss .vsix from the VS Code card on the Downloads page. That download comes directly from the latest GitHub Release. Install it from the VS Code Extensions menu, then open its Activity Bar icon to start the side panel. No separate CLI installation is required. Advanced users can set trussHarness.command to use an external truss-cli executable instead of the bundled service.
Repository-only Extension Development Host instructions are available in Development.
Install a downloaded VSIX
Every stable VS Code release on the Downloads page also provides a
.vsix file for manual installation. The same VSIX works on Windows, macOS,
and Linux.
| Platform | Install in VS Code |
|---|---|
| Windows | Press Ctrl+Shift+X to open Extensions, open the … menu, choose Install from VSIX…, and select the downloaded .vsix file. |
| macOS | Press Cmd+Shift+X to open Extensions, open the … menu, choose Install from VSIX…, and select the downloaded .vsix file. |
| Linux | Press Ctrl+Shift+X to open Extensions, open the … menu, choose Install from VSIX…, and select the downloaded .vsix file. |
If the code command is available in your terminal, this equivalent command
works on every platform:
code --install-extension /path/to/truss-harness-vscode-<version>.vsixRestart or reload VS Code if prompted. Truss checks GitHub Releases for updates at most once per day; run Truss: Check for Updates to check immediately.
Bring your own key
Run Truss: Configure BYOK Provider from the Command Palette, select OpenAI, Anthropic, OpenRouter, Groq, Together AI, Gemini, xAI, Mistral AI, DeepSeek, Perplexity, Fireworks AI, NVIDIA NIM, Xiaomi MiMo, Sakana Fugu, or Ollama Cloud, and supply a model ID and key. The key is stored in VS Code Secret Storage, never in the workspace, conversation state, or extension settings. Use Truss: Remove BYOK Provider Key to delete it. Local Ollama remains separate and does not need a key.
Panel workflow
- Open Settings.
- Select a detected server or enter a custom endpoint.
- Refresh model discovery and choose a model.
- Select Chat, Plan, or Edit mode.
- Choose a tool permission policy and optionally enable Internet research.
- Select Apply and start chatting.
The panel remembers endpoint, model, mode, permission selections, and bounded conversation transcripts in VS Code workspace state. When no model is saved, it auto-detects a local model. A restored conversation creates a fresh runtime session from its saved user/assistant transcript when you send the next prompt.
Chat and file context
Agent replies render Markdown, including headings, lists, links, inline code, and fenced code blocks with readable syntax color. Model output is rendered as safe DOM content; it is not injected as HTML.
Type @/ in the chat composer to fuzzy-search workspace files. Use the arrow keys followed by Enter or Tab to select a file. The selected @/path/to/file remains visible in the prompt, and Truss sends a bounded copy of that file with the next model request. Up to eight files can be attached, with an 80,000-character total limit. Slash commands such as /status, /update, and /help are reserved for local workspace actions.
Agent modes
| Mode | Tool access |
|---|---|
| Chat | Read, list, search, and grep workspace files |
| Plan | Read-only file inspection tools |
| Edit | Full filesystem and terminal tools |
Permissions
| Policy | Behavior |
|---|---|
| Ask every time | Allow or deny every tool call from the panel |
| Auto-allow read-only | Auto-runs reads, lists, grep, and search; prompts for writes and terminal commands |
| Auto-allow all | Runs all registered tools without prompting |
When Internet research is enabled, web_search and web_fetch are available in every mode. They only read public text pages, reject private/local addresses, and prompt under Ask and Auto-allow read-only policies.
Managed agents
Run Truss: Open Agent Control Center from the Command Palette to create workspace-local profiles and start focused independent work. Each profile may use a different provider, endpoint, model, mode, and approval policy. The control center shows live status and allows stopping a run or resolving its pending approval. Provider keys remain in VS Code Secret Storage; profile data contains only an opaque reference. See Managed Agents for concurrency and Edit-run safety rules.
Editor actions
- Commit message reads staged changes, then unstaged changes, and asks the selected local model for a conventional commit message. It never creates a commit.
- Inline completions use the selected local model. Accept a completion with VS Code’s normal inline-completion binding, commonly Tab.
Workspace commands
The chat composer accepts /init, /update [note], /status, /clear-memory, and /help. These run locally, so they work without a configured model. Use the Help button in the side panel to display them, or run the matching Truss actions from the Command Palette.
MCP servers
Enter an mcpServers JSON object in the panel’s MCP servers (JSON) setting. Applying settings restarts the runtime service on the next request and displays server connection diagnostics in the panel. Chat and Plan modes load only servers marked readOnly; Agent mode loads every enabled server. See MCP Servers.