This section contains information for developers who want to contribute to, modify, or understand the vtcode codebase.
- Environment Setup - Setting up your development environment
- Building from Source - How to build vtcode from source
- Running Tests - Testing strategies and procedures
- Fuzzing Guide - Local security parser fuzzing with cargo-fuzz
- Code Style - Code formatting and style guidelines
- System Architecture - High-level system design
- Component Overview - Major components and their responsibilities
- Data Flow - How data flows through the system
- State Management - How state is managed across components
- Agent Core - Main agent orchestrator implementation
- Tool System - Tool registration and execution
- AI Integration - Gemini AI integration details
- Tree-sitter Integration - Code analysis capabilities
- Color Utilities - Advanced color manipulation for terminal applications
- Contributing Guide - How to contribute to the project
- Pull Request Process - PR guidelines and review process
- Code Review Checklist - What to look for in code reviews
- Release Process - How releases are managed
- Adding New Tools - How to implement new tools
- Language Support - Adding support for new languages
- Testing Strategies - Comprehensive testing approaches
- Performance Optimization - Optimization techniques and best practices
- Performance Hasher Policy - Selective
rustc_hashusage rules - Asset Synchronization - Managing embedded assets between workspace and crate
- Changelog Generation - Automated changelog generation with git-cliff
- Prompt Engineering - Research-preview prompt design techniques
- Context Management - Managing conversation context
- Error Recovery - Error handling and recovery strategies
- Decision Tracking - How decisions are tracked and analyzed
- CLI Integration - Command-line interface details
- Library Integration - Using vtcode as a library
- Plugin System - Extending vtcode with plugins
- Debugging Guide - Debugging techniques and tools
- Logging - Logging configuration and usage
- Profiling - Performance profiling and analysis
- Common Issues - Frequently encountered problems
- Code Standards - Coding standards and best practices
- Documentation - Documentation guidelines
- Security - Security considerations and practices
- Accessibility - Accessibility guidelines
- Git Workflow - Git usage and branching strategies
- CI/CD - Continuous integration and deployment
- Quality Assurance - Quality assurance processes
For detailed API documentation, see the API Reference section.
- Development Mailing List - Development discussions
- Discord Server - Real-time development chat
- GitHub Issues - Bug reports and feature requests
- Wiki - Community-contributed documentation