AutoDev is a Chrome extension that deploys a multi-hop reasoning agent over any public GitHub repository. Ask complex questions about a codebase and get back accurate, sourced answers, without cloning the repo or leaving your browser.
"How does authentication work in this repo?"
"Trace the flow from the API endpoint to the database."
"What callshandleQuestionand where is it defined?"
AutoDev uses an agent loop powered by OpenAI's function calling API. Rather than doing a single search and returning results, the agent autonomously chains multiple tool calls to build a complete picture before answering.
For a question like "how does authentication work?", the agent might:
- Search for authentication-related code semantically
- Find the
auth_middlewarefunction and read its source - Trace what
auth_middlewarecalls using the call graph - Read the
verify_tokenimplementation - Synthesize a full explanation with file references
Every step is visible to the user in a collapsible reasoning trace.
Chrome Extension (Frontend)
- React/TypeScript sidebar injected into GitHub pages
- Streams progress updates in real time via Server-Sent Events
- Displays agent reasoning chain alongside the final answer
Flask Backend
- Clones and indexes repositories on first request
- Builds a cross-file AST call graph using two-pass Python parsing
- Stores function embeddings in ChromaDB for semantic search
- Runs the agent loop using OpenAI function calling
Agent Tools
find_function_location— exact AST lookup for function definitionsget_callers— find all functions that call a given functionget_called_functions— find all functions a given function callsget_function_code— read actual source code of a functionsemantic_search— vector search over function embeddingsget_repo_structure— read README and top-level file structure
Caching
- Repositories are cloned once and reused across sessions
- Call graphs and embeddings are invalidated automatically when the repo's git commit changes
- Repeated queries on the same repo respond in under 5 seconds
git clone https://github.com/Jacob-GHub/AutoDev
cd AutoDevcd backend
pip install -r requirements.txtcp .env.example .env
# Add your OPENAI_API_KEY to .envpython server.py- Open
chrome://extensions - Enable Developer Mode
- Click "Load unpacked" and select the
frontend/distfolder - Navigate to any public Python GitHub repository and click "Ask Repo Question"
- Currently supports Python repositories only
- Requires a local backend server running on port 3000
- Cross-file call resolution is limited to same-language calls
- JavaScript/TypeScript support
- Local repository support via companion CLI
- Change impact analysis ("if I modify this function, what breaks?")
- Conversational follow-up with full session memory
MIT
