Skip to main content

🚀 DevAgent

AI development agent for specification-to-code implementation.

PyPI version Python Versions License MCP

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.


⚙️ 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

devagent-0.1.1.tar.gz (44.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

devagent-0.1.1-py3-none-any.whl (5.0 kB view details)

Uploaded Python 3

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

Hashes for devagent-0.1.1.tar.gz
Algorithm Hash digest
SHA256 d45d41def16a34c4d4bf2f120966a09da151a4b1dc0f36ef74aeaa2b2ec0f49e
MD5 0f1103a413c08b2b7e97f7ed5963714a
BLAKE2b-256 97b867cb5c9064754428ef7cefa4296467b8f61ff92e1759263ff6bb9073c621

See more details on using hashes here.

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

Hashes for devagent-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 d4a332b91ee6e43e559c47685fe161112268ff365d0eaa6de247bcb06ecce5f7
MD5 c7fe4a2e2352b786740b9f03cf5fb3a0
BLAKE2b-256 6cb6a208862d657101dd32abadd72a590908edc0de9649669378e5c128ba9f93

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page