Coda - AI Code Assistant
A powerful, modular AI code assistant that brings the best of AI-powered development directly to your terminal.
✨ What is Coda?
Coda is your AI pair programmer that lives in your terminal, built with a modular architecture that supports multiple AI providers including Oracle OCI GenAI, OpenAI, Anthropic, Google, and 100+ more via LiteLLM.
🏗️ Modular Architecture
Coda is built with a clean, three-layer architecture:
┌─────────────────────────────────────────────────┐
│ Apps Layer │
│ (CLI, Web UI, Plugins, Custom) │
├─────────────────────────────────────────────────┤
│ Services Layer │
│ (Integration, Orchestration, Workflows) │
├─────────────────────────────────────────────────┤
│ Base Layer │
│ (Config, Theme, Providers, Session, Search, etc) │
└─────────────────────────────────────────────────┘
Base Modules
- 🔧 Config: Unified configuration management
- 🎨 Theme: Terminal UI and formatting
- 🤖 Providers: AI integration
- 💬 Session: Conversation persistence
- 🔍 Search: Semantic code search
- 📊 Observability: Logging and metrics
🚀 Quick Start
Try without installing
# Run directly with uvx (no installation needed!)
uvx --from coda-code-assistant coda
Install from PyPI
# Install with pip
pip install coda-code-assistant
# Or install with uv
uv pip install coda-code-assistant
# Run Coda
coda
Install from source
# Clone the repository with submodules
git clone --recursive https://github.com/djvolz/coda-code-assistant.git
cd coda-code-assistant
# Install with uv (recommended)
uv sync
# Run Coda
uv run coda
Using Individual Modules
from coda.base.config import Config
from coda.base.providers import ProviderFactory
# Initialize configuration
config = Config()
# Create a provider
factory = ProviderFactory(config.to_dict())
provider = factory.create("openai")
# Start chatting
response = provider.chat(
messages=[{"role": "user", "content": "Hello!"}],
model="gpt-4"
)
print(response["content"])
📖 Documentation
In-Repository Docs
- Integration Guide - How to use modules together
- Module Documentation - Individual module READMEs
- Example Applications - Working examples
- Diagram Rendering Guide - How to create diagrams
Wiki Documentation
For comprehensive documentation, visit our Wiki:
- Getting Started Guide - Installation and setup
- AI Modes - Specialized AI personalities
- Development Guide - Contributing and development workflow
- Architecture Guide - Deep dive into the modular design
- Troubleshooting - Common issues and solutions
🎯 Key Features
- 🌐 Provider Support: Works with Oracle OCI GenAI, Ollama, OpenAI, Anthropic, Google, and 100+ providers
- 🧩 Modular Design: Use only the components you need
- 💻 Terminal-First: Designed for developers who live in the command line
- 🧠 Smart AI Modes: Specialized modes for coding, debugging, explaining, and reviewing
- 💾 Session Management: Save, resume, and branch conversations
- 🎨 Beautiful Interface: Rich terminal UI with syntax highlighting
- 🔧 Tool Integration: File operations, web search, and more via MCP
- 📊 Diagram Rendering: Create flowcharts, UML diagrams, and graphs with diagram-renderer
- 🧪 Well-Tested: Comprehensive test suite ensures reliability
🛠️ Example Applications
Check out our example applications to see Coda modules in action:
- Simple Chatbot - Basic provider usage
- Session Manager - Persistent conversations
- Code Analyzer - AI-powered code analysis
🤝 Contributing
We welcome contributions! Please see our Contributing Guide for details.
Development
# Install development dependencies
uv sync --dev
# Run tests
uv run pytest
# Run type checks
uv run mypy coda
# Format code
uv run black .
uv run ruff check --fix
📄 License
This project is licensed under the MIT License - see the LICENSE file for details.
🔗 Links
Made with ❤️ by the Coda community
Metadata
Release files for coda-code-assistant 2025.8.22.910
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| coda_code_assistant-2025.8.22.910.tar.gz | 1.6 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| coda_code_assistant-2025.8.22.910-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 2.0 MB
Release files / coda_code_assistant-2025.8.22.910.tar.gz
| Download URL | coda_code_assistant-2025.8.22.910.tar.gz |
|---|---|
| Size | 1.6 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
9851e018bed060aa062a570af361e72760f6a5bacf14f31263aa58243682cb5d
|
|
BLAKE2b-256 checksum How to use checksums |
415180f0ea5d77eea7a4444fbbe8d8c9b4afb95cfb2a0b1622e499330664d790
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.8.13
|
Release files / coda_code_assistant-2025.8.22.910-py3-none-any.whl
| Download URL | coda_code_assistant-2025.8.22.910-py3-none-any.whl |
|---|---|
| Size | 406.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
28d0f4708d29e76c43c24f99b7769f0f577ac4bc2c18b92adbbffbb816a9dbbe
|
|
BLAKE2b-256 checksum How to use checksums |
8bcb5660c832ae884c851f227a69f029780fa1bbeebc22504a235efc0be91bad
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.8.13
|