🚀 DevAgent
AI development agent for specification-to-code implementation.
DevAgent bridges the gap between your project specifications (GitHub Issues, Markdown specs, or plain text) and your actual codebase. It leverages local LLMs and the Model Context Protocol (MCP) to automate impact analysis, highlighting exactly what exists, what needs extending, and what is missing.
✨ Features
- 🧠 Automated Gap Analysis: Automatically compares new specs against your existing codebase and categorizes requirements:
- ✅ Reuse: Code already exists.
- ⚠️ Extend: Code exists but needs modification.
- ❌ Conflict: Requirement contradicts existing logic.
- 🔨 Net New: Entirely new implementation required.
- 🔒 Local & Private: Fully supports running locally via Ollama and local ChromaDB embeddings. Your code never has to leave your machine.
- 🔌 Model Context Protocol (MCP): Leverages official MCP servers to safely read your filesystem and fetch GitHub issues, alongside custom Python MCP servers for AST parsing and semantic RAG.
- ⏱️ Effort Estimation & Planning: Uses heuristic baselines and LLM reasoning to estimate implementation hours and suggest an optimal implementation order.
- 🎨 Beautiful Output: Renders beautiful Rich terminal UI interfaces and persists detailed Markdown reports for your team.
🛠️ Architecture
DevAgent uses a multi-agent LangGraph pipeline orchestrated via MCP:
graph TD
Spec[Spec Source: GitHub, Markdown, Text] --> Parser[SpecParser Agent]
Parser --> Context[Web Context via Brave/SearchX]
Parser --> Reqs[Extracted Atomic Requirements]
Reqs --> Inventory[CodeInventory Agent]
Inventory <--> Chroma[(ChromaDB Vector Store)]
Inventory --> Gap[Requirement Classifications]
Gap --> Reporter[GapReport Agent]
Reporter --> UI[Rich Terminal UI & Markdown Report]
style Parser fill:#f9f,stroke:#333,stroke-width:2px
style Inventory fill:#bbf,stroke:#333,stroke-width:2px
style Reporter fill:#dfd,stroke:#333,stroke-width:2px
🚀 Installation
DevAgent is a Python CLI tool. The recommended way to install it is via pipx to keep its dependencies isolated:
pipx install devagent
(Alternatively, you can install it globally or in a virtual environment using pip install devagent).
⚠️ System Requirements
Because DevAgent utilizes official Model Context Protocol (MCP) servers under the hood, you must have Node.js installed on your machine.
- Download and install Node.js (Ensure
npxis available in your PATH).
⚙️ Configuration & Setup
Before analyzing your first project, initialize the global configuration:
devagent init
This interactive prompt will help you set up:
- LLM Provider: Choose between Ollama (local), Groq, Anthropic, OpenAI, or Gemini.
- GitHub Token: (Optional) Required if you want DevAgent to fetch specs directly from GitHub Issues.
- Search Provider: (Optional) Brave or SearchX for gathering web context on implementation patterns.
You can always view or modify your config later using devagent config --show or devagent config --set key=value.
💻 Usage
1. Index your Codebase
Navigate to your project directory and build the semantic search index. This uses local AST parsing (for Python) and text chunking to embed your codebase into a local ChromaDB instance.
cd /path/to/your/project
devagent index
Note: DevAgent respects your .gitignore files automatically. Re-running this command performs an incremental index (only updating changed files).
2. Analyze a Specification
Run a gap analysis against your codebase using a GitHub Issue, a local Markdown file, or inline text:
# Analyze a GitHub Issue (requires GitHub Token in config)
devagent analyze --issue 142 --repo owner/my-repo
# Analyze a local spec file
devagent analyze --spec ./docs/new_feature.md
# Analyze inline text
devagent analyze --text "Add a new user authentication endpoint supporting OAuth2."
By default, this outputs a beautiful Rich terminal report and saves a .md markdown report in your local app data directory.
3. Manage Reports
View previously generated reports for the current project:
# List all saved reports
devagent reports
# View a specific report in the terminal
devagent reports --show issue-142
4. Semantic Search
Need to quickly find where something is implemented? Use the standalone semantic search:
devagent search "user authentication logic"
🩺 Troubleshooting
If you run into issues with dependencies or services, run the built-in doctor command to check the health of your environment:
devagent doctor
🤝 Contributing
Contributions are welcome! Please check out the issues page or submit a pull request.
📝 License
This project is licensed under the MIT License - see the LICENSE file for details.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file devagent-0.1.1.tar.gz.
File metadata
- Download URL: devagent-0.1.1.tar.gz
- Upload date:
- Size: 44.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/7.0.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d45d41def16a34c4d4bf2f120966a09da151a4b1dc0f36ef74aeaa2b2ec0f49e
|
|
| MD5 |
0f1103a413c08b2b7e97f7ed5963714a
|
|
| BLAKE2b-256 |
97b867cb5c9064754428ef7cefa4296467b8f61ff92e1759263ff6bb9073c621
|
File details
Details for the file devagent-0.1.1-py3-none-any.whl.
File metadata
- Download URL: devagent-0.1.1-py3-none-any.whl
- Upload date:
- Size: 5.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/7.0.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d4a332b91ee6e43e559c47685fe161112268ff365d0eaa6de247bcb06ecce5f7
|
|
| MD5 |
c7fe4a2e2352b786740b9f03cf5fb3a0
|
|
| BLAKE2b-256 |
6cb6a208862d657101dd32abadd72a590908edc0de9649669378e5c128ba9f93
|