A powerful and flexible AI code generation tool that helps developers create, modify, and improve code using advanced language models. Espada streamlines the development process by leveraging AI to generate high-quality, maintainable code based on natural language descriptions.
-
Interactive CLI Interface:
- User-friendly command-line interface for code generation
- Real-time feedback and progress indicators
- Customizable output formatting
-
Multiple Model Support:
- Works with various AI models including GPT-4, Claude
- Flexible model switching for different tasks
- Optimized prompts for each model type
-
File Selection:
- Smart file selection system with glob pattern support
- Intelligent context gathering from related files
- Customizable file inclusion/exclusion patterns
-
Learning System:
- Built-in learning capabilities to improve code generation over time
- Feedback incorporation for better results
- Historical pattern recognition
-
Project Management:
- Efficient project organization and metadata management
- Version control integration
- Project templates and scaffolding
- Python 3.11 or higher (3.12 recommended)
- Poetry for dependency management
- OpenAI API key or Anthropic API key
- Git version 2.25 or higher
- 4GB RAM minimum (8GB recommended)
- Internet connection for API access
- Clone the repository:
git clone https://github.com/VinsmokeSomya/Vibe-Coder.git
cd Vibe-Coder
- Install dependencies using Poetry:
# Install Poetry if not already installed
curl -sSL https://install.python-poetry.org | python3 -
# Install project dependencies
poetry install
# Verify installation
poetry run python -c "import espada; print(espada.__version__)"
- Set up your environment variables:
# Create environment file
cp .env.template .env
# Edit .env with your configuration
OPENAI_API_KEY=your_api_key_here
ANTHROPIC_API_KEY=your_anthropic_key_here # Optional
MODEL_NAME=gpt-4
DEBUG_MODE=false
LOG_LEVEL=INFO
- Create a new project:
# Basic project creation
poetry run espada projects/your-project
- Run with specific model:
# Using GPT-4
poetry run espada projects/your-project --model gpt-4
# Using Claude
poetry run espada projects/your-project --model claude-2
espada/
βββ applications/ # Application-specific code
β βββ cli/ # CLI implementation
βββ core/ # Core functionality
β βββ ai.py # AI model integrations and interactions
β βββ base_agent.py # Base agent implementation
β βββ chat_to_files.py # Chat to file conversion logic
β βββ diff.py # Code diffing functionality
β βββ git.py # Git integration
β βββ linting.py # Code linting utilities
β βββ prompt.py # Prompt management
β βββ project_config.py # Project configuration
β βββ token_usage.py # Token usage tracking
βββ tools/ # Tool implementations
β βββ custom_steps.py # Custom execution steps
β βββ supported_languages.py # Language support definitions
βββ preprompts/ # Predefined prompts
βββ benchmark/ # Benchmarking tools
The project can be configured through:
OPENAI_API_KEY
: Your OpenAI API keyMODEL_NAME
: Default model to useDEBUG_MODE
: Enable debug loggingLOG_LEVEL
: Logging verbosity
--model
: Override model selection--temperature
: Adjust generation temperature--max-tokens
: Set token limit--debug
: Enable debug mode
We welcome contributions! Here's how you can help:
- Fork the repository
- Create a feature branch
- Commit your changes
- Push to the branch
- Open a Pull Request
Please read CONTRIBUTING.md for details on our code of conduct and development process.
This project is licensed under the MIT License - see the LICENSE file for details.
- OpenAI for GPT models and API
- Anthropic for Claude models
- The open-source community
- All contributors and maintainers
- GitHub Issues: Report a bug
- Documentation: Coming soon...
- Enhanced model support
- Web interface
- Cloud deployment options
- Collaborative features
- Advanced code analysis