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.
VT Code
An open-source terminal coding agent built in Rust.
- VT Code
Overview
VT Code is an open-source terminal coding agent built in Rust. Explore a codebase, plan changes, run tools, and review
edits in the interactive TUI, or run vtcode exec headless. You pick the model and permissions; the runtime handles
context, tools, and execution policy.
- Plan, then review: read-only planning, then turn diffs.
- Run long sessions: project instructions, compaction, resumption, execution logs.
- Control execution: command policy and sandboxing.
- Pick your stack: hosted or local models, plus MCP, Skills, and Plugins.
Plan, run, and review coding work from your terminal.
Quick start
1. Install
|
The installer also sets up ripgrep and ast-grep on macOS/Linux. Or use Homebrew or Cargo:
# Or install with Rust
See the installation guide for prerequisites, other methods, and the installer script you can review before running.
[!NOTE] Windows artifacts are best-effort and may lag behind macOS/Linux.
2. Configure your project
In your project, initialize configuration and instructions, then add provider credentials. For example, with OpenAI:
Replace openai with your supported provider. Credentials can also come from environment variables or a workspace
.env; vtcode login handles supported login flows. See Getting started and
Provider guides.
[!NOTE] ChatGPT OAuth reuses the Codex CLI's public client identity via an unofficial compatibility flow; prefer your own OpenAI API key. GitHub Copilot uses the official
copilotCLI. See OAuth authentication.
[!CAUTION] Never commit API keys or put them in
vtcode.toml.
3. Run your first task
Start with a focused request, such as “Explain how this project handles authentication,” then review the diff and test results before committing. For automation and session commands, see Usage.
Usage
Interactive
Use vtcode to explore, plan, and implement changes in the TUI. For larger tasks, start with
read-only planning, then review
turn diffs before committing. See the
interactive guide for controls.
Headless
Run tasks without the TUI: ask for a tool-free answer, exec for a tool-enabled coding task, and review for
uncommitted changes:
exec requires autonomous execution enabled in [automation.full_auto] plus full_auto workspace trust: a terminal
prompts for trust, while non-TTY runs fail unless you set VTCODE_TRUST_WORKSPACE=full-auto. Full-auto's tool
allow-list, explicit denies, and execution policy still apply. See exec mode for trust
and output options and full automation for configuration.
For repeatable, environment-checked results, use the eval framework — a completion message alone is not verification.
Scheduled tasks
For recurring work, use scheduled tasks: durable prompt jobs on the same exec runtime.
# Weekly dependency audit (Mondays 09:00)
Sessions
Resume or inspect earlier work:
# Resume the most recent interactive session
# Continue the last headless run with a follow-up prompt
# Inspect the execution log
Use vtcode continue --session-id <id> to fork an earlier session.
Extend and integrate
Enable these only when you need them; none are required for the quick start.
Extensions
MCP servers, Agent Skills, and Plugins.
Editors
ACP with Zed for editor integration. WebMCP pairs the TUI with an authenticated browser editor:
The hosted app at vtcode.vinhnx.chatgpt.site (mirror) uses this workspace-scoped bridge. See the WebMCP user guide and deployment reference.
Cross-session memory
Memcode MCP carries context between tasks; see the write-up.
Documentation
Guides by task; the full catalog lives in the documentation index, the docs overview, and the Wiki:
| Goal | Guides |
|---|---|
| Get started | Installation · Getting started · Providers · OAuth login · FAQ · Compatibility |
| Work in the TUI | TUI · Command reference · Planning · Turn diffs · Configuration · Safety |
| Automate | Exec mode · Full automation · Scheduled tasks · Hooks |
| Extend and integrate | Skills · Plugins · MCP · Editors (ACP) · WebMCP · Memcode |
| Develop and evaluate | Development · Testing · Evals · Architecture · Protocols · Loop engineering |
Development
graph LR
BIN[vtcode binary] --> CORE[vtcode-core harness]
BIN --> EVAL[vtcode-eval]
CORE --> LLM[vtcode-llm]
CORE --> SAFETY[vtcode-safety]
CORE --> EVENTS[vtcode-exec-events]
CORE --> CONFIG[vtcode-config]
CORE --> MEMORY[vtcode-memory]
CORE --> UI[vtcode-ui]
Full 23-crate map: Architecture guide. Requires Rust 1.98.1+ (edition 2024) and
cargo-nextest for tests:
CI sets RUSTFLAGS="-D warnings" and builds with --locked; match locally with
RUSTFLAGS="-D warnings" cargo check --locked. Setup and checks: development overview ·
testing guide.
Release binaries and notes: GitHub releases.
Contributing
Contributions are welcome:
- Code — pick or propose an issue; keep changes surgical and tested.
- Docs — every user-facing feature lands with its documentation.
- Evals — new suites and regression cases are high-leverage; see the eval guide.
- Bug reports — include
vtcode trajectoryoutput when possible.
Before a PR, see the contribution guide: Conventional Commits (type(scope): subject),
./scripts/check-dev.sh + cargo nextest run, and a focused diff.
Community
Thanks to everyone who builds, tests, and improves VT Code.
Security Advisors
Main Contributor
Core Contributors
Contributors
Want to see your avatar here? Every bit counts: one-line fixes, bug reports, and feedback are all welcome.
Report a bug · Request a feature · Share feedback · Star the repo · Contribute
Contact
Partnerships and collaboration: vinhnguyen2308 [at] gmail [dot] com. Bugs and feature requests:
GitHub Issues. Security vulnerabilities: report privately via
GitHub private vulnerability reporting; never open a public
issue. Details: security policy.
Resources
- Building VT Code, a year in: harness design, evals, security, lessons learned.
- Podcast · Video
Share VT Code
If VT Code helped you ship something, telling other developers is the easiest way to support it:
Share on X · Share on Hacker News · Share on LinkedIn · Share via Email · Share via SMS
Sponsorship
VT Code is maintained in spare time; a sponsorship keeps it independent.
License
First-party code is MIT OR Apache-2.0 (LICENSE); third-party code keeps its original licenses (THIRD-PARTY-NOTICES).
