An open API service indexing awesome lists of open source software.

https://github.com/vinhnx/vtcode

VT Code is an open-source coding agent with LLM-native code understanding and robust shell safety. Supports multiple LLM providers with automatic failover and efficient context management.
https://github.com/vinhnx/vtcode

agent cargo cli codingagent crossterm ratatui rust terminal tui

Last synced: 6 days ago
JSON representation

VT Code is an open-source coding agent with LLM-native code understanding and robust shell safety. Supports multiple LLM providers with automatic failover and efficient context management.

Awesome Lists containing this project

README

          


VT Code


Skills
Zed ACP
MCP
Built with Ratatui
Ask DeepWiki


VT Code demoย ย ย ย VT Code screenshot

Secure, open, universal.

## What is VT Code?

VT Code is a Rust coding agent built for long-running autonomous workflows, with OS-native sandboxing, multi-provider LLM support, open protocols, and extensible Skills.

## Features

- **Agent runtime** - Interactive TUI, slash commands, streaming, `ask`/`exec` CLI, session resume
- **Coding tools** - Safe file ops, ripgrep search, fuzzy discovery, code intelligence, project indexing, terminal execution
- **Extensibility** - Agent Skills, MCP client/server, lifecycle hooks, subagents, custom providers, Zed ACP, VS Code, Claude Code
- **Model providers** - 21+ LLM providers: Anthropic, OpenAI, Gemini, OpenRouter, Ollama, LM Studio, and more
- **Safety** - Restricted shell sandbox, tool guardrails, subprocess isolation, full audit logging
- **Protocols** - Open Responses, Agent2Agent (A2A), ATIF, Anthropic Messages API
- **Loop engineering** - Worktree isolation for parallel agents, propose/verify sub-agent separation, durable loop state, cost guardrails

## Quick start

```shell
curl -fsSL https://raw.githubusercontent.com/vinhnx/vtcode/main/scripts/install.sh | bash
vtcode init
vtcode
```

1. **Install** - one-liner for macOS/Linux (also installs ripgrep + ast-grep)
2. **Init** - scaffolds `vtcode.toml`, `.vtcode/`, and `AGENTS.md` in your project
3. **Launch** - interactive TUI with streaming, tools, and slash commands

### Common commands

```shell
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**](./docs/user-guide/interactive-mode.md) - Primary agents, slash commands (`/model`, `/review`, `/mcp`, `/skills`, `/theme`, `/compact`)
- [**Full automation**](./docs/guides/full-automation.md) - `--full-auto` CLI, plan-build-evaluate harness, subagents, scheduled tasks
- [**Providers**](./docs/providers/PROVIDER_GUIDES.md) - Setup guides for all 21 providers
- [**Configuration**](./docs/config/CONFIG_FIELD_REFERENCE.md) - `vtcode.toml`, tool config, lifecycle hooks
- [**Agent Skills**](./docs/skills/SKILLS_GUIDE.md) - Creating, loading, and sharing skills
- [**MCP Integration**](./docs/guides/mcp-integration.md) - Client and server modes
- [**Editor guides**](./docs/guides/zed-acp.md) - Zed ACP, VS Code, Claude Code
- [**Safety**](./docs/security/SECURITY_MODEL.md) - Shell sandbox, security hardening, threat model
- [**Protocols**](./docs/protocols/OPEN_RESPONSES.md) - Open Responses, ATIF, A2A, Anthropic Messages API
- [**Loop engineering**](./docs/project/PLAN-loop-engineering.md) - Worktree isolation, propose/verify, loop state, cost guardrails

## Providers

VT Code supports 21+ LLM providers out of the box, plus any OpenAI-compatible API via `[[custom_providers]]`.

| Category | Providers |
| ------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Cloud LLMs** | [Anthropic](./docs/providers/PROVIDER_GUIDES.md#anthropic-claude) ยท [OpenAI](./docs/providers/PROVIDER_GUIDES.md#openai-gpt) ยท [Gemini](./docs/providers/PROVIDER_GUIDES.md#google-gemini) ยท [Z.AI](./docs/providers/PROVIDER_GUIDES.md#zai-zai) ยท [Moonshot (Kimi)](./docs/providers/PROVIDER_GUIDES.md#moonshot-kimi) ยท [StepFun](./docs/providers/PROVIDER_GUIDES.md#stepfun) ยท [MiniMax](./docs/providers/PROVIDER_GUIDES.md#minimax) ยท [Mistral](./docs/providers/PROVIDER_GUIDES.md#mistral) ยท [Qwen](./docs/providers/PROVIDER_GUIDES.md#qwen) |
| **Gateways** | [OpenRouter](./docs/providers/PROVIDER_GUIDES.md#openrouter-marketplace) ยท [Evolink](./docs/providers/PROVIDER_GUIDES.md#evolink-multi-model-gateway) ยท [HuggingFace](./docs/providers/PROVIDER_GUIDES.md#huggingface) ยท [Atlas Cloud](./docs/providers/PROVIDER_GUIDES.md#atlas-cloud) |
| **Local inference** | [Ollama](./docs/providers/PROVIDER_GUIDES.md#ollama-local--cloud-models) ยท [LM Studio](./docs/providers/PROVIDER_GUIDES.md#lm-studio-local-server) ยท [llama.cpp](./docs/providers/PROVIDER_GUIDES.md#llamacpp-local-server) |
| **Other** | [GitHub Copilot](./docs/providers/PROVIDER_GUIDES.md#github-copilot) ยท [Anthropic API Compat](./docs/providers/PROVIDER_GUIDES.md#anthropic-api-compatibility-server) ยท [Poolside](./docs/providers/PROVIDER_GUIDES.md#poolside) |

Read: [Provider Guides](./docs/providers/PROVIDER_GUIDES.md).

Atlas Cloud referral: [atlascloud.ai?ref=C59AAV](https://www.atlascloud.ai?ref=C59AAV)

## Development

```shell
git clone https://github.com/vinhnx/vtcode.git
cd vtcode
./scripts/run-debug.sh
```

Rust stable, edition 2024, MSRV 1.88. Workspace of ~30 crates:

| Layer | Crates |
| -------------- | -------------------------------------------------------------------------- |
| Binary | `vtcode` |
| Core | `vtcode-core`, `vtcode-ui`, `vtcode-config` |
| Extracted | `vtcode-llm`, `vtcode-skills`, `vtcode-safety`, `vtcode-a2a`, `vtcode-mcp` |
| Infrastructure | `vtcode-commons`, `vtcode-auth`, `vtcode-bash-runner`, `vtcode-macros` |
| Tooling | `vtcode-indexer`, `vtcode-exec-events` |
| Protocol | `vtcode-acp`, `vtcode-utility-tool-specs` |

```shell
./scripts/check-dev.sh # fast quality gate (clippy, fmt, check)
cargo nextest run # parallel test runner
```

## Contributing

I'd love to have you, bug reports, docs, features, ideas, all welcome. Start with [issues](https://github.com/vinhnx/vtcode/issues) or [good first issues](https://github.com/vinhnx/vtcode/issues?q=is%3Aopen+is%3Aissue+label%3A%22good+first+issue%22). AI agents see [AGENTS.md](./AGENTS.md). Humans see [CONTRIBUTING.md](./docs/CONTRIBUTING.md).


@oiwnย 
@chenrui333ย 
@Sachin-Bhatย 
@leonj1ย 
@gzsomborย 
@lucaszhu-hueย 
@poelziย 
@EvoLinkAIย 
@gurdasnijorย 
@kernitusย 
@morlerย 
@uiYzzi

## 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](https://github.com/sponsors/vinhnx) would mean the world.


@dnhn
@codemod
@coderabbitai
@KhaiRyth


GitHub Sponsorsย ย ย 
Buy Me a Coffee

## License

[MIT License](LICENSE).