Skip to Content
DocsClientsVS Code Extension

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.

PlatformInstall in VS Code
WindowsPress Ctrl+Shift+X to open Extensions, open the menu, choose Install from VSIX…, and select the downloaded .vsix file.
macOSPress Cmd+Shift+X to open Extensions, open the menu, choose Install from VSIX…, and select the downloaded .vsix file.
LinuxPress 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>.vsix

Restart 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

  1. Open Settings.
  2. Select a detected server or enter a custom endpoint.
  3. Refresh model discovery and choose a model.
  4. Select Chat, Plan, or Edit mode.
  5. Choose a tool permission policy and optionally enable Internet research.
  6. 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

ModeTool access
ChatRead, list, search, and grep workspace files
PlanRead-only file inspection tools
EditFull filesystem and terminal tools

Permissions

PolicyBehavior
Ask every timeAllow or deny every tool call from the panel
Auto-allow read-onlyAuto-runs reads, lists, grep, and search; prompts for writes and terminal commands
Auto-allow allRuns 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.

Last updated on