LmCast :: Stay tuned in

Show HN: VT Code – open-source terminal coding agent in Rust

Recorded: May 30, 2026, 5:01 a.m.

Original Summarized

GitHub - 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. · GitHub

Skip to content

Navigation Menu

Toggle navigation

Sign in

Appearance settings

PlatformAI CODE CREATIONGitHub CopilotWrite better code with AIGitHub SparkBuild and deploy intelligent appsGitHub ModelsManage and compare promptsMCP RegistryNewIntegrate external toolsDEVELOPER WORKFLOWSActionsAutomate any workflowCodespacesInstant dev environmentsIssuesPlan and track workCode ReviewManage code changesAPPLICATION SECURITYGitHub Advanced SecurityFind and fix vulnerabilitiesCode securitySecure your code as you buildSecret protectionStop leaks before they startEXPLOREWhy GitHubDocumentationBlogChangelogMarketplaceView all featuresSolutionsBY COMPANY SIZEEnterprisesSmall and medium teamsStartupsNonprofitsBY USE CASEApp ModernizationDevSecOpsDevOpsCI/CDView all use casesBY INDUSTRYHealthcareFinancial servicesManufacturingGovernmentView all industriesView all solutionsResourcesEXPLORE BY TOPICAISoftware DevelopmentDevOpsSecurityView all topicsEXPLORE BY TYPECustomer storiesEvents & webinarsEbooks & reportsBusiness insightsGitHub SkillsSUPPORT & SERVICESDocumentationCustomer supportCommunity forumTrust centerPartnersView all resourcesOpen SourceCOMMUNITYGitHub SponsorsFund open source developersPROGRAMSSecurity LabMaintainer CommunityAcceleratorGitHub StarsArchive ProgramREPOSITORIESTopicsTrendingCollectionsEnterpriseENTERPRISE SOLUTIONSEnterprise platformAI-powered developer platformAVAILABLE ADD-ONSGitHub Advanced SecurityEnterprise-grade security featuresCopilot for BusinessEnterprise-grade AI featuresPremium SupportEnterprise-grade 24/7 supportPricing

Search or jump to...

Search code, repositories, users, issues, pull requests...

Search

Clear

Search syntax tips

Provide feedback


We read every piece of feedback, and take your input very seriously.

Include my email address so I can be contacted

Cancel

Submit feedback

Saved searches

Use saved searches to filter your results more quickly

Name

Query

To see all available qualifiers, see our documentation.

Cancel

Create saved search

Sign in

Sign up

Appearance settings

Resetting focus

You signed in with another tab or window. Reload to refresh your session.
You signed out in another tab or window. Reload to refresh your session.
You switched accounts on another tab or window. Reload to refresh your session.

Dismiss alert

vinhnx

/

VTCode

Public

Uh oh!

There was an error while loading. Please reload this page.


Notifications
You must be signed in to change notification settings

Fork
51

Star
618

Code

Issues
0

Pull requests
0

Discussions

Actions

Projects

Wiki

Security and quality
0

Insights

Additional navigation options

Code

Issues

Pull requests

Discussions

Actions

Projects

Wiki

Security and quality

Insights


vinhnx/VTCode

 mainBranchesTagsGo to fileCodeOpen more actions menuFolders and filesNameNameLast commit messageLast commit dateLatest commit History5,767 Commits5,767 Commits.github.github  .vtcode.vtcode  docsdocs  evalsevals  fuzzfuzz  homebrewhomebrew  resourcesresources  rulesrules  scriptsscripts  srcsrc  system-promptssystem-prompts  teststests  vscode-extensionvscode-extension  vtcode-acpvtcode-acp  vtcode-authvtcode-auth  vtcode-bash-runnervtcode-bash-runner  vtcode-collaboration-tool-specsvtcode-collaboration-tool-specs  vtcode-commonsvtcode-commons  vtcode-configvtcode-config  vtcode-corevtcode-core  vtcode-exec-eventsvtcode-exec-events  vtcode-file-searchvtcode-file-search  vtcode-ghostty-vt-sysvtcode-ghostty-vt-sys  vtcode-indexervtcode-indexer  vtcode-llmvtcode-llm  vtcode-lmstudiovtcode-lmstudio  vtcode-markdown-storevtcode-markdown-store  vtcode-process-hardeningvtcode-process-hardening  vtcode-terminal-detectionvtcode-terminal-detection  vtcode-themevtcode-theme  vtcode-toolsvtcode-tools  vtcode-tuivtcode-tui  vtcode-utility-tool-specsvtcode-utility-tool-specs  vtcode-vimvtcode-vim  zed-extensionzed-extension  .env.example.env.example  .gitignore.gitignore  .mcp.json.mcp.json  .python-version.python-version  .vtcodegitignore.vtcodegitignore  AGENTS.mdAGENTS.md  CHANGELOG.mdCHANGELOG.md  CONTEXT.mdCONTEXT.md  Cargo.lockCargo.lock  Cargo.tomlCargo.toml  Cross.tomlCross.toml  Dockerfile.buildDockerfile.build  LICENSELICENSE  README.mdREADME.md  build.rsbuild.rs  cliff.tomlcliff.toml  clippy.tomlclippy.toml  config.tomlconfig.toml  release.tomlrelease.toml  rust-toolchain.tomlrust-toolchain.toml  rustfmt.tomlrustfmt.toml  sgconfig.ymlsgconfig.yml  vtcode.tomlvtcode.toml  vtcode.toml.examplevtcode.toml.example  View all filesRepository files navigationREADMECode of conductContributingMIT licenseSecurity

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.

Installation
Native Installer (Recommended) - No dependencies, instant setup:
The default macOS/Linux installer also attempts the recommended ripgrep + ast-grep bundle for enhanced semantic grep and programming language-level understanding (optional).
TipOfficial macOS/Linux release archives bundle ghostty-vt/ runtime libraries for richer PTY screen snapshots. VT Code still falls back to the built-in legacy_vt100 backend when those assets are unavailable in non-release or custom installs.

macOS & Linux:
curl -fsSL https://raw.githubusercontent.com/vinhnx/vtcode/main/scripts/install.sh | bash

# Or skip ripgrep + ast-grep during install
curl -fsSL https://raw.githubusercontent.com/vinhnx/vtcode/main/scripts/install.sh | bash -s -- --without-search-tools
Windows (PowerShell):
irm https://raw.githubusercontent.com/vinhnx/vtcode/main/scripts/install.ps1 | iex
NoteWindows installs are currently best-effort and may lag behind macOS/Linux release builds. The current release pipeline is still being tuned for cross-based Windows builds, and Windows build minutes can be costly, so Windows artifacts may not be available in every release.

Alternative Installation Methods:
# Cargo (Rust package manager)
cargo install vtcode

# Homebrew (macOS/Linux)
# From homebrew/core (official):
brew install vtcode

# From vinhnx/tap (development/bleeding edge):
brew tap vinhnx/tap
brew install vtcode

# If switching between taps, uninstall first:
brew uninstall vtcode
brew install vtcode # or: brew install vinhnx/tap/vtcode

# Optional: install the search tools bundle later
vtcode dependencies install search-tools
Ghostty VT is not installed through vtcode dependencies install ....
Instead, VT Code uses runtime libraries that are either:

Bundled in official macOS/Linux release archives under ghostty-vt/
Copied by the native installers during release installs
Staged locally for development with scripts/setup-ghostty-vt-dev.sh
Auto-bootstrapped by ./scripts/run.sh and ./scripts/run-debug.sh when the runtime libraries are missing

See Installation Guide, Development Setup, and Ghostty VT Packaging.

Note: If you encounter "installed from different tap" errors, uninstall the existing formula first: brew uninstall vtcode, then install from your preferred tap.

See Installation Guide and Native Installer Guide for more options and troubleshooting.
Usage
# Set your API key
export OPENAI_API_KEY="sk-..."

# Launch VT Code
vtcode
Skills Support
VT Code includes comprehensive support for Skills, following the open Agent Skills standard. Skills enable VT Code to leverage external capabilities and extend its functionality through a standardized skill system.

Skill Discovery: VT Code can discover and load skills from multiple locations with precedence handling
Standard Compliance: Fully compliant with the Agent Skills specification for interoperability
Multi-Location Support: Skills can be loaded from local directories, remote repositories, or embedded resources
Extensible Ecosystem: Integrate with the growing ecosystem of Agent Skills for enhanced capabilities

For more information about skills implementation in VT Code, see Agent Skills Guide.
Subagents And Background Helpers
VT Code can delegate bounded work to foreground subagents and also run an explicitly configured background subagent as a managed subprocess.

/agent and /agents active inspect delegated agents in place without switching the main session
Background subprocesses are opt-in; VT Code no longer ships with a preconfigured default background agent
Ctrl+B starts or stops the configured default background subagent only after [subagents.background] is enabled and default_agent is set
/subprocesses or Alt+S opens the Local Agents drawer
The wide-mode sidebar shows a unified Local Agents section for delegated agents and background subprocesses

The background runtime is configured under [subagents.background]:
[subagents.background]
enabled = true
default_agent = "rust-engineer"
refresh_interval_ms = 2000
auto_restore = true
toggle_shortcut = "ctrl+b"
Supported Providers
VT Code works with GitHub Copilot, OpenAI, Anthropic, Google Gemini, DeepSeek, OpenRouter, Z.AI, Moonshot AI, MiniMax, HuggingFace Inference Providers, Ollama (local & cloud), LM Studio (local), and OpenAI-compatible custom providers such as Atlas Cloud.
Set the corresponding environment variable for your provider (see Installation Guide for all options).
Atlas Cloud
Atlas Cloud works through VT Code's [[custom_providers]] support, so you can
point VT Code at https://api.atlascloud.ai/v1 without adding a dedicated
runtime provider.

[agent]
provider = "atlascloud"
default_model = "deepseek-ai/deepseek-v4-flash"

[[custom_providers]]
name = "atlascloud"
display_name = "Atlas Cloud"
base_url = "https://api.atlascloud.ai/v1"
api_key_env = "ATLASCLOUD_API_KEY"
model = "deepseek-ai/deepseek-v4-flash"
See Atlas Cloud Integration for the full setup
flow and troubleshooting notes.
GitHub Copilot Integration
VT Code includes first-class support for GitHub Copilot with OAuth device-flow authentication via the official copilot CLI:
# Install GitHub Copilot CLI
brew install gh-copilot

# Authenticate
copilot login

# Or use VT Code's TUI
vtcode
# Then: /login copilot
For detailed setup, see GitHub Copilot Authentication.
Agent Protocols
VT Code supports multiple agent protocols for integration:
Agent Client Protocol (ACP)
VT Code can integrate with code editors like Zed. For setup and troubleshooting, refer to the
ACP docs.
For local development, prefer pointing Zed at a small wrapper script that runs the repo build
(target/debug/vtcode or target/release/vtcode) with an explicit --config path, instead of
relying on an older installed binary in ~/.local/bin.
Agent2Agent (A2A) Protocol
VT Code implements the Agent2Agent (A2A) Protocol, enabling communication and interoperability between AI agents. The A2A protocol supports:

Agent Discovery: Via Agent Cards at /.well-known/agent-card.json
Task Lifecycle Management: States like submitted, working, completed, failed
Real-time Streaming: Via Server-Sent Events (SSE)
Rich Content Types: Text, file, and structured data parts
Push Notifications: Webhook-based async updates
JSON-RPC 2.0: Over HTTP(S) for interoperability

For more information about A2A protocol support, see A2A Protocol Documentation.
Anthropic API Compatibility
VT Code provides compatibility with the Anthropic Messages API to help connect existing applications to VT Code, including tools like Claude Code.
The server supports:

Messages endpoint at /v1/messages
Streaming responses
Tool calling
Vision (image) support
Multi-turn conversations
System prompts
All major Anthropic API features

For more information about Anthropic API compatibility, see Anthropic API Documentation.
Open Responses Specification
VT Code conforms to the Open Responses specification, an open, vendor-neutral standard for large language model APIs. This enables interoperable LLM workflows across different providers.
Key features of Open Responses conformance:

Unified Item Types: State machine-based items with defined lifecycle states
Semantic Streaming: Events describe meaningful transitions, not raw token deltas
Agentic Loop Support: Composable tool invocation and message orchestration
Extension Points: Provider-specific features via namespaced extensions (e.g., vtcode:file_change)

For more information about Open Responses implementation, see Open Responses Documentation.
Agent Trajectory Interchange Format (ATIF)
VT Code implements the Agent Trajectory Interchange Format (ATIF) v1.4 for standardized session trajectory export. ATIF captures complete interaction histories — user messages, agent responses, tool calls, observations, and LLM metrics — in a JSON format usable across debugging, visualization, SFT, and RL pipelines.

Complete History: Every agent step, tool invocation, and observation in one file
LLM Metrics: Per-step and aggregate token usage, costs, and cache statistics
Interoperable: Compatible with Harbor, OpenHands, Gemini CLI, Claude Code, and Codex trajectories
Opt-in: Enable via telemetry.atif_enabled = true in vtcode.toml

For more information, see ATIF Trajectory Format Documentation.
Authentication
VT Code supports secure OAuth 2.0 authentication for seamless account-based access:

OAuth Providers: OpenAI ChatGPT and OpenRouter with PKCE-secured flows
Secure Token Storage: OS-native credential stores (Keychain, Credential Manager, Secret Service)
Automatic Token Refresh: Transparent token renewal without user intervention
Fallback Encryption: AES-256-GCM encrypted files when keyring unavailable

For detailed setup and provider guides, see OAuth Authentication Guide.
Configuration
VT Code supports a rich set of configuration options, with preferences stored in vtcode.toml. Key configuration features include:

OAuth Settings: Control authentication method and token storage per provider
Lifecycle Hooks: Execute shell commands in response to agent events - see Lifecycle Hooks Guide
Tool Policies: Control which tools are allowed, prompted, or denied
Security Settings: Configure human-in-the-loop approval and workspace boundaries
Performance Tuning: Adjust context limits, timeouts, and caching behavior
PTY Backend Selection: Ghostty VT is the default backend; it falls back to legacy_vt100 when runtime libraries are unavailable

For full configuration options, see Configuration.
For Ghostty VT runtime library packaging details, see Ghostty VT Packaging.
CLI Design Principles
VT Code follows the Command Line Interface Guidelines and standard UNIX principles to ensure a robust and pipe-friendly experience:

Output Streams: Primary output (e.g., code from ask, events from exec) is sent to stdout. All logs, metadata, reasoning traces, and interaction prompts are sent to stderr. This allows you to safely pipe vtcode output to other tools.
# Only the generated code is saved to file; metadata remains on screen
vtcode ask "factorial function in rust" > factorial.rs

Standard Arguments: Adheres to GNU/POSIX argument parsing standards using clap, supporting standard flags like --help, --version, and -- separator for positional arguments.

Key Features

Security First: Multi-layered security model with tree-sitter-bash command validation, execution policy, and sandbox isolation
OAuth Authentication: Secure PKCE-based OAuth flows with OS-native credential storage and automatic token refresh (docs)
Multi-Provider AI: OpenAI, Anthropic, DeepSeek, Gemini, Z.AI, Moonshot AI, OpenRouter, MiniMax, Ollama (local)
Semantic Code Understanding: LLM-native code analysis and navigation (Rust, Python, JavaScript/TypeScript, Go, Java, and more)
Smart Tools: Built-in code analysis, file operations, terminal commands, and refactoring
Agent Skills: Comprehensive skills location system with multi-location support and precedence handling, aligned with the open Agent Skills standard (docs)
Editor Integration: Native support for Zed IDE via Agent Client Protocol (ACP)
Lifecycle Hooks: Execute custom shell commands in response to agent events for context enrichment, policy enforcement, and automation (docs)
Context Management: Advanced token budget tracking and context curation
TUI Interface: Rich terminal user interface with real-time streaming
Ghostty VT Snapshots: PTY sessions use Ghostty VT runtime libraries when available and fall back to built-in legacy_vt100
Auto-Update System: Built-in update manager with release channels, version pinning, and mirror support (docs)

Security & Safety
VT Code implements a defense-in-depth security model to protect against prompt injection and argument injection attacks:

Execution Policy: Command allowlist with per-command argument validation
Workspace Isolation: All operations confined to workspace boundaries
OS-Native Sandboxing: macOS Seatbelt and Linux Landlock + seccomp for kernel-enforced isolation
Tool Policies: Configurable allow/deny/prompt policies for MCP tools
Human-in-the-Loop: Configurable approval system for sensitive operations
Audit Trail: Comprehensive logging of all command executions

See Security Model and Sandbox Deep Dive for details.

Docs & Examples

Installation

Native Installers
Quick Reference

Getting started

Interactive mode
Command line interface
Subagents

OAuth Authentication - Secure OAuth 2.0 flows with PKCE, token storage, and automatic refresh
Configuration
Update System - Release channels, version pinning, and update management
AI Provider Setup - Complete guides for configuring different LLM providers:

OpenAI, Anthropic, Google Gemini
Atlas Cloud
OpenRouter
Ollama
LM Studio

Context Engineering

Token budget management
Dynamic context curation

Agent Skills - Comprehensive skills location system with multi-location support, precedence handling, and the open Agent Skills standard.

Standard Compliance - How VT Code implements the Agent Skills standard

Code Intelligence
Agent Client Protocol (ACP)
Zed Integration - Agent Client Protocol Integration. VT Code is fully capable ACP agent, works with ACP Clients, for example Zed.
Lifecycle Hooks - Execute shell commands in response to agent events, enabling context enrichment, policy enforcement, and automation
Keyboard Shortcuts
macOS Alt Shortcut Troubleshooting - Solutions for when Alt/Option shortcuts don't work on macOS
Exec Mode
Development

Development Setup
Testing
CI/CD
Empirical Evaluation - Formal framework for measuring LLM performance across safety, logic, and coding benchmarks.

FAQ - Frequently asked questions about VT Code
TUI & Async Guides

Event Handling - Terminal event architecture and patterns
Async Architecture - Tokio async/await design and best practices
Rendering Best Practices - Widget rendering and display optimization

Ratatui Integration - Complete integration of Ratatui FAQ best practices

Summary - Overview of all improvements
FAQ Integration - Mapping of FAQ topics to code
Async Improvements - Tokio best practices applied

Architecture
Security

Security Model
Security Documentation Index
Tool Policies

Anthropic API Compatibility - Documentation for Anthropic Messages API compatibility server
ATIF Trajectory Format - Standardized agent trajectory export for debugging, SFT, and RL pipelines

Documents

Ask Google Gemini CodeWiki
Ask Devin DeepWiki

Visual Studio Code Extension
VT Code is available as an VS Code extension.

The original VT Code extension for Visual Studio Code with full semantic code understanding and AI assistance.
VT Code is also compatible with other VS Code-compatible editors:

Compatible with Cursor, Windsurf, and other VS Code-compatible editors through the Open VSX registry.
For installation instructions and download links for other IDEs, visit our IDE Downloads page. For troubleshooting, see the IDE Integration Troubleshooting Guide.

Contributing
I warmly welcome contributions of all kinds! Please read CONTRIBUTING.md and AGENTS.md for my project-specific rules and guidelines (for both humans and agents).
Whether you're looking to fix bugs, add new features, improve documentation, or enhance the user experience, your help is greatly appreciated.
How To Contribute:

Report issues you're experiencing
Upvote issues that matter to you
Help answer questions on the issue tracker

If you're not sure where to start:

Check out the issues page
Browse by labels that interest you
Look for good first issue labeled items
Feel free to browse all open issues and pick one that resonates with you!

Steps to get started:

Fork the repository by clicking the Fork button in the top-right corner
Clone your forked repository to your local machine
Create a new branch for your changes and start contributing!

When reporting an issue, please include enough details for others to reproduce the problem effectively.

Star History

License
This repository is licensed under the MIT License.

About

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.

vinhnx.github.io

Topics

agent

rust

cli

terminal

tui

cargo

crossterm

ratatui

codingagent

Resources

Readme

License

MIT license

Code of conduct

Code of conduct

Contributing

Contributing

Security policy

Security policy

Uh oh!

There was an error while loading. Please reload this page.


Activity
Stars

618
stars
Watchers

6
watching
Forks

51
forks

Report repository

Releases
383

0.115.0

Latest

May 30, 2026


+ 382 releases

Sponsor this project

 

Uh oh!

There was an error while loading. Please reload this page.



patreon.com/vinhnx

opencollective.com/vinhnx

buymeacoffee.com/vinhnx

Learn more about GitHub Sponsors

Uh oh!

There was an error while loading. Please reload this page.


Contributors

Uh oh!

There was an error while loading. Please reload this page.


Languages

Rust
94.5%

TypeScript
2.7%

Shell
1.5%

Python
1.2%

PowerShell
0.1%

JavaScript
0.0%

Footer

© 2026 GitHub, Inc.

Footer navigation

Terms

Privacy

Security

Status

Community

Docs

Contact

Manage cookies

Do not share my personal information

You can’t perform that action at this time.

VT Code is presented as an open-source coding agent distinguished by its LLM-native code understanding and a robust shell safety framework. The system is designed to support multiple large language model providers through automatic failover mechanisms and efficient context management. The installation process offers native installers for macOS and Linux, alongside alternative methods using Cargo and Homebrew, with specific considerations for runtime library packaging, such as using Ghostty VT, which provides richer PTY screen snapshots.

The agent incorporates an extensible Skill system, adhering to the Agent Skills specification, which allows it to discover and load skills from various locations, handling precedence correctly for interoperability. It manages internal execution through the delegation of bounded work to foreground subagents and explicitly configured background subagents, accessible via commands like /agent and /subprocesses, which are unified in a wide-mode sidebar. The system supports a diverse range of AI providers, including OpenAI, Anthropic, Google Gemini, DeepSeek, and various inference providers like Ollama and LM Studio, facilitated by environment variable configuration. Custom integrations are supported via custom providers, exemplified by the Atlas Cloud integration.

Interoperability is foundational to VT Code, as it implements several agent protocols. It supports the Agent Client Protocol for integration with code editors like Zed, and the Agent2Agent Protocol, which enables communication and state management between different AI agents through features like agent discovery, task lifecycle management, real-time streaming via Server-Sent Events, and JSON-RPC 2.0 for general interoperability. Furthermore, VT Code achieves compatibility with the Anthropic Messages API, supporting features such as tool calling, vision support, and multi-turn conversations, and conforms to the Open Responses specification to ensure vendor-neutral LLM workflow capabilities.

Session history and debugging are formalized through the Agent Trajectory Interchange Format (ATIF) v1.4 implementation. ATIF standardizes the export of complete interaction histories, encompassing user messages, agent responses, tool calls, observations, and LLM metrics like token usage, thereby enabling standardized pipelines for debugging, synthetic data generation, and reinforcement learning.

Security is a paramount concern for VT Code, employing a multi-layered defense-in-depth security model. This model includes execution policy with command allowlists and per-command argument validation, workspace isolation, and OS-native sandboxing leveraging security mechanisms such as macOS Seatbelt and Linux Landlock and seccomp for kernel-enforced isolation. The system also incorporates human-in-the-loop approval for sensitive operations and maintains a comprehensive audit trail of all command executions.

The system follows strict command line interface design principles, adopting UNIX standards by routing primary output streams (like generated code) to stdout while channeling metadata, reasoning traces, and interaction prompts to stderr, promoting safe piping of output to other utilities. Configuration is managed via a configuration file, storing preferences in vtcode.toml, which governs OAuth settings, lifecycle hooks, tool policies, performance tuning parameters, and backend selection, defaulting to the Ghostty VT runtime library.

The system features advanced context management through dynamic context curation and token budget tracking. It is integrated into development workflows via editor extensions, including a native Visual Studio Code extension and compatibility with other VS Code-compatible editors through the Open VSX registry. In terms of interaction, the system features a rich terminal user interface and supports agent events that can trigger custom shell commands via lifecycle hooks for contextual enrichment and automation.