Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
What is VT Code?
VT Code is a Rust coding agent built for long-running autonomous workflows. It has OS-native sandboxing, multi-provider LLM support, open protocols, and extensible Skills.
Features
- Agent runtime: interactive TUI, slash commands, streaming,
ask/execCLI, and session resume - Coding tools: safe file ops, ripgrep search, ast-grep outline symbol maps, fuzzy discovery, code intelligence, project indexing, and terminal execution
- Extensibility: Agent Skills, Model Context Protocol MCP client/server, lifecycle hooks, subagents, custom providers, and Agent Client Protocol (ACP)
- Model providers: 21+ LLM providers including Anthropic, OpenAI, Gemini, OpenRouter, local inference via Ollama, LM Studio, and llama.cpp (managed with the
/localcommand), and more - Safety: restricted shell sandbox, tool guardrails, subprocess isolation, and full audit logging
- Provider governance:
providers_whitelistrestricts which LLM providers VT Code can access, preventing accidental data leakage to unapproved endpoints - Protocols: Open Responses, Agent2Agent (A2A), ATIF, and Anthropic Messages API
- Loop engineering: worktree isolation for parallel agents, propose/verify sub-agent separation, durable loop state, and cost guardrails
- Planning workflow: iterate on a build plan with
/planand theplanprimary agent, then hand off tobuild/autovia a structured review gate
Quick start
Install via homebrew
brew install vinhnx/tap/vtcode
One-liner for macOS/Linux (also installs ripgrep + ast-grep)
curl -fsSL https://raw.githubusercontent.com/vinhnx/vtcode/main/scripts/install.sh | bash
Scaffolds vtcode.toml, .vtcode/, and AGENTS.md in your project
vtcode init
Launch VT Code
vtcode
Common commands
vtcode # interactive TUI
vtcode init # scaffold project config + AGENTS.md
vtcode ask "explain Rc vs Arc" # one-shot question
vtcode exec "refactor main.rs" # headless task with full tool access
vtcode review # review uncommitted changes
vtcode update # self-update
Documentation
- Interactive TUI: primary agents, slash commands (
/model,/review,/mcp,/skills,/theme,/compact) - Full automation:
--full-autoCLI, plan-build-evaluate harness, subagents, and scheduled tasks - Providers: setup guides for all 21 providers
- Configuration:
vtcode.toml, tool config, and lifecycle hooks - Agent Skills: creating, loading, and sharing skills
- MCP Integration: client and server modes
- Editor guides: Zed ACP, VS Code, and Claude Code
- Safety: shell sandbox, security hardening, and threat model
- Protocols: Open Responses, ATIF, A2A, and Anthropic Messages API
- Loop engineering: worktree isolation, propose/verify, loop state, and cost guardrails
- Planning workflow:
/plan, review gate, and plan handoff to build/auto agents
Providers
VT Code supports 21+ LLM providers out of the box, plus any OpenAI-compatible API via [[custom_providers]].
| Category | Providers |
|---|---|
| Cloud LLMs | Anthropic · OpenAI · Gemini · Z.AI · Moonshot (Kimi) · StepFun · MiniMax · Mistral · Qwen |
| Gateways | OpenRouter · Evolink · HuggingFace · Atlas Cloud |
| Local inference | Ollama · LM Studio · llama.cpp |
| Other | GitHub Copilot · Anthropic API Compat · Poolside |
Read: Provider Guides.
Provider governance
Use providers_whitelist in vtcode.toml to restrict which LLM providers VT Code may access. This prevents accidental data leakage to unapproved endpoints in corporate or air-gapped environments.
# vtcode.toml
= ["opencode-zen", "opencode-go", "gemini"]
Leave it empty (the default) to allow all built-in and custom providers. See Configuration and Getting Started for full setup instructions.
Local models (experimental)
Run models entirely on your machine for privacy, offline use, or zero token cost. VT Code supports three local backends, all managed from the TUI:
- Ollama (
ollama serve), best-supported local backend; auto-loads pulled models. - LM Studio (
lms server start), OpenAI-compatible; select the loaded model in the picker. - llama.cpp (
llama-server -m model.gguf), most automated; auto-starts viaLLAMACPP_MODEL_PATH.
/local # interactive local server manager
/local start ollama # start a specific backend
/local troubleshoot # diagnose connection / model issues
Before each generation VT Code verifies the server is up and the model is
loaded, and on failure prints the exact recovery command (e.g.
ollama pull gpt-oss:20b) instead of a cryptic error. Local inference is
experimental and depends on your hardware. See
Local Models guide for trade-offs, hardware
sizing, and a reliable-setup checklist. For the full /local reference, see
Local Inference Servers.
Development
git clone https://github.com/vinhnx/vtcode.git
cd vtcode
./scripts/run-debug.sh
Rust stable, edition 2024, MSRV 1.93.0. Workspace of ~30 crates:
| Layer | Crates |
|---|---|
| Binary | vtcode |
| Common | vtcode-commons, vtcode-exec-events, vtcode-macros, vtcode-utility-tool-specs |
| Codegen | vtcode-core, vtcode-ui, vtcode-config, vtcode-llm, vtcode-skills, vtcode-safety, vtcode-a2a, vtcode-mcp, vtcode-auth, vtcode-acp, vtcode-indexer, vtcode-bash-runner, vtcode-memory, vtcode-eval |
Want to use VT Code as a library? See vtcode-battery-pack for a curated set of crates you can add to your own Rust projects.
./scripts/check-dev.sh # fast quality gate (clippy, fmt, check)
cargo nextest run # parallel test runner
Contributing
VT Code is built by an open source community. Whether you're fixing bugs, improving docs, proposing features, reporting security issues, or shipping patches, all contributions are welcome.
Ways to contribute:
- Security advisories, responsible disclosure makes everyone safer. See the Security Policy for reporting guidelines.
- Bug fixes & patches, small or large, every fix matters.
- Documentation, guides, examples, and improvements help the whole ecosystem.
- Features & ideas, open an issue or start a discussion.
- Code reviews & testing, help keep the project healthy.
Getting started:
- Browse good first issues
- Read CONTRIBUTING.md for humans
- Check AGENTS.md for AI agents
Thank you to everyone who has contributed to VT Code, your work makes this project better for all of us.
Support
VT Code is a labor of love built in my spare time. If it's helped you ship something or learn something, a sponsorship would mean the world.
License
First-party code is licensed under MIT OR Apache-2.0, choose whichever works best for you. See LICENSE for the full Apache-2.0 text; MIT terms are also granted under the same copyright.
Third-party and inspired-by code remains under its original licenses. See THIRD-PARTY-NOTICES for attributions.