🤖 AutoCoder - Autonomous AI Coding Agent System
A powerful multi-agent AI system that autonomously generates complete software projects using state-of-the-art LLMs and intelligent agent orchestration.
✨ Latest Updates (August 2025)
🚀 API-Only Architecture
- Unified execution through centralized API server
- Automatic port detection and conflict resolution
- Embedded server management with zero configuration
🔑 Simplified Configuration
- No environment variables required! All API keys load from
config.yaml - Support for OpenAI, Anthropic, and Google Gemini
- Automatic provider detection and fallback
🧪 Comprehensive Testing
- Full CLI test coverage with mocked components
- Integration tests for all major features
- CI/CD pipeline with multi-version Python support
🎯 Key Features
- Multi-Agent System: Specialized agents for planning, development, testing, UI/UX, database, and DevOps
- LangGraph Orchestration: Intelligent workflow management with state persistence
- Auto Port Detection: Automatically finds available ports for API server
- Web Interface: Beautiful FastAPI-powered web UI for project management
- CLI Interface: Powerful command-line tools for developers
- MCP Support: Model Context Protocol integration for enhanced capabilities
- OpenAI Gateway: Compatible with OpenAI API for seamless integration
🚀 Quick Start
Installation
# Clone the repository
git clone https://github.com/eladrave/AutoCoder.git
cd AutoCoder
# Install dependencies
pip install -e .
Configuration
- Copy the example config:
cp config.yaml.example config.yaml
- Add your API keys to
config.yaml:
api_keys:
openai_api_key: "sk-your-key-here"
anthropic_api_key: "sk-ant-your-key-here"
google_api_key: "AIza-your-key-here"
No environment variables needed! The system loads everything from the config file.
Usage
Simple CLI Usage
# Create a simple application
./agent.sh "Create a todo list web app with React"
# Dry run mode (no files created)
./agent.sh "Build a REST API" --dry-run
# Verbose mode with logging
./agent.sh "Create a Python package" --verbose --save-logs
Advanced CLI Options
# Use specific port for API server
python main_api.py "Create app" --port 8080
# Use external API server
python main_api.py "Create app" --api-url http://remote-server:5001
# Keep server running for multiple tasks
python main_api.py "Create app" --keep-server
Web Interface
# Start the web interface
python web_interface/app.py
# Open browser to http://localhost:5001
📚 Documentation
- API Key Setup Guide - Configure API keys and providers
- Migration to API Guide - Transition to API-only architecture
- Cloud Deployment - Deploy to Google Cloud Run
- Monitoring Guide - System monitoring and observability
🧪 Testing
Run the comprehensive test suite:
# Run all tests
pytest tests/
# Run specific test categories
pytest tests/test_cli_api.py -v # CLI tests
pytest tests/test_web_interface.py -v # Web interface tests
pytest tests/test_agents.py -v # Agent tests
# Run with coverage
pytest tests/ --cov=. --cov-report=html
🏗️ Architecture
┌─────────────────────────────────────────┐
│ Web Interface │
│ (FastAPI + React) │
└────────────────┬────────────────────────┘
│
┌────────────────▼────────────────────────┐
│ API Server │
│ (Automatic Port Detection) │
└────────────────┬────────────────────────┘
│
┌────────────────▼────────────────────────┐
│ Workflow Orchestrator │
│ (LangGraph) │
└────────────────┬────────────────────────┘
│
┌───────────┴───────────┐
│ │
┌────▼──────┐ ┌────────▼───────┐
│ Agents │ │ Services │
├───────────┤ ├────────────────┤
│ • Planner │ │ • File Handler │
│ • Developer│ │ • Memory Store │
│ • Tester │ │ • Config Loader│
│ • UI/UX │ │ • Port Finder │
│ • Database│ └────────────────┘
│ • DevOps │
└───────────┘
🤝 Contributing
We welcome contributions! Please see our Contributing Guide for details.
📄 License
This project is licensed under the MIT License - see the LICENSE file for details.
🙏 Acknowledgments
- Built with LangChain and LangGraph
- Powered by OpenAI, Anthropic, and Google AI models
- FastAPI for the robust web framework
- The amazing open-source community
📞 Support
- Issues: GitHub Issues
- Discussions: GitHub Discussions
- Email: support@autocoder.ai
Built with ❤️ by the AutoCoder Team
Metadata
Release files for autocoder-ai 2.0.12
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| autocoder_ai-2.0.12.tar.gz | 215.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| autocoder_ai-2.0.12-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 411.7 kB
Release files / autocoder_ai-2.0.12.tar.gz
| Download URL | autocoder_ai-2.0.12.tar.gz |
|---|---|
| Size | 215.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
82e278a1aea50fb1071a59370c65268ee6643c8f4c70c62bf64c73e99f7e230c
|
|
BLAKE2b-256 checksum How to use checksums |
a94447cd757399a201084af5f0667d4a727bbd317abcded19ef71a43d402637e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.11.2
|
Release files / autocoder_ai-2.0.12-py3-none-any.whl
| Download URL | autocoder_ai-2.0.12-py3-none-any.whl |
|---|---|
| Size | 196.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
e0e273ae609e19a6d459f50910147f80f8fb60a751e048e7d0cdb0a2268966fc
|
|
BLAKE2b-256 checksum How to use checksums |
972ba745c53592a8e1f62b12beb5c98423da3e96fecb4d12dda6b486aed7c192
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.11.2
|