DaveAgent is an intelligent AI-powered coding assistant that works in your current directory. It uses AutoGen 0.4 to orchestrate specialized agents that help you with development tasks.
- π Global CLI Command: Use
daveagentfrom any directory - π Contextual Work: Operates in your current directory automatically
- π§ Vector Memory with ChromaDB: Remembers conversations, code, and decisions between sessions
- π CodeSearcher: Specialized agent for searching and analyzing code
- π File Mentions with @: Mention specific files with
@to give them maximum priority in context - π§ 45+ Integrated Tools: Filesystem, Git, JSON, CSV, Web, Memory (RAG), and more
- π€ Intelligent Agents: Automatic selection of the appropriate agent
- π Complete Logging: Detailed logging system for debugging
- π¨ Rich Interface: CLI with colors and formatting using Rich
- β‘ Real-time Visualization: See the agent's thoughts and actions while it works
cd my-project
daveagent
# Search code before modifying
You: /search current authentication system
# Mention specific files with @
You: @main.py fix the authentication bug in this file
You: @config.py @.env update the API configuration
# Modify with context
You: create an authentication module with JWT
You: refactor the code in services/ to use async/await
You: find all TODOs in the projectpip install daveagent-ai
daveagent# 1. Clone or download the project
git clone https://github.com/davidmonterocrespo24/DaveAgent.git
cd DaveAgent
# 2. Install in development mode
pip install -e .
# 3. Use from any directory!
daveagent- Python 3.10 or higher
- pip (Python package manager)
autogen-agentchat>=0.4.0- Agent frameworkautogen-ext[openai]>=0.4.0- Model extensionsprompt-toolkit>=3.0.0- Command-line interfacerich>=13.0.0- Formatting and colorspandas>=2.0.0- Data processing
See INSTALACION.md for detailed instructions.
# From any directory
cd your-project
daveagent# Debug mode (detailed logs)
daveagent --debug
# View version
daveagent --version
# View help
daveagent --helpWithin DaveAgent, you can use these commands:
| Command | Description |
|---|---|
/help |
Show command help |
/search <query> |
π Search and analyze code |
/index |
π§ Index project in vector memory |
/memory |
π Show memory statistics |
@<file> |
π Mention specific file with high priority |
/debug |
Enable/disable debug mode |
/logs |
Show logs location |
/stats |
Show statistics |
/clear |
Clear history |
/new |
New conversation |
/exit |
Exit DaveAgent |
The /search command invokes the CodeSearcher agent to search and analyze code:
You: /search authentication function
You: /search where is the TaskPlanner class used
You: /search how does the logging system workCodeSearcher provides you with:
- π Relevant files with exact locations
- π§ Functions found with complete code
- π¦ Important variables and constants
- π Dependencies between components
- π‘ Recommendations on what to modify
See docs/CODESEARCHER_GUIDE.md for more details.
Mention specific files in your query using @:
You: @main.py explain how this file works
You: @config.py @.env update the database connection settings
You: @src/agents/code_searcher.py add docstrings to all methodscd my-project
daveagent
# First, search for context
You: /search existing utilities system
# The agent shows functions, files and current structure
# Now modify with context
You: create a utils.py module with functions for:
- validate email
- format dates
- calculate MD5 hashDaveAgent first analyzes the existing code and then creates the my-project/utils.py file with the requested functions, avoiding duplicates and maintaining consistency.
cd existing-project
daveagent
You: analyze the project structure and give me a summary
You: how many functions are there in total?
You: find all files that use the requests librarycd data
daveagent
You: read the sales.csv file and show the top 10 sales
You: create a new CSV with only 2024 sales
You: convert the config.json file to CSV# Start with detailed logs
daveagent --debug
# Within DaveAgent
You: /logs
π Log file: logs/daveagent_20250131_154022.logLogs are saved in:
logs/
βββ daveagent_YYYYMMDD_HHMMSS.log
Each file contains detailed logs with format:
2025-01-31 15:40:22 | DaveAgent | INFO | process_user_request:257 | π New request...
DaveAgent/
βββ src/
β βββ agents/ # Specialized agents
β β βββ task_planner.py # Task planning
β β βββ task_executor.py # Task execution
β β βββ code_searcher.py # π Code search
β βββ config/ # Configuration and prompts
β βββ interfaces/ # CLI interface
β βββ managers/ # Conversation management
β βββ tools/ # 45+ tools
β β βββ filesystem/
β β βββ git/
β β βββ data/ # JSON, CSV
β β βββ web/ # Wikipedia, web search
β β βββ analysis/ # Code analysis, grep, terminal
β βββ utils/ # Utilities (logger)
β βββ cli.py # CLI entry point
βββ docs/ # Documentation
β βββ CODESEARCHER_GUIDE.md # CodeSearcher Guide
βββ main.py # Main application
DaveAgent uses DeepSeek by default. To change the model:
- Edit
main.py:
self.model_client = OpenAIChatCompletionClient(
model="gpt-4", # Change here
api_key="your-api-key",
# ...
)- Or use environment variables in
.daveagent/.env:
DAVEAGENT_API_KEY=your-api-key
DAVEAGENT_MODEL=gpt-4
DAVEAGENT_BASE_URL=https://api.openai.com/v1Contributions are welcome! To contribute:
- Fork the repository
- Create a branch:
git checkout -b feature/new-functionality - Commit your changes:
git commit -m 'Add new functionality' - Push to the branch:
git push origin feature/new-functionality - Open a Pull Request
# Install with development dependencies
pip install -e ".[dev]"
# Run tests
pytest
# Format code
black src/
# Check types
mypy src/- Installation Guide - Detailed installation
- CodeSearcher Guide - π Code search and analysis
- File Mentions Guide - π Mention files with @
- Logging Guide - Logging system
To evaluate the agent's performance using the SWE-bench Verified standard, we have included an automated script that works in Linux environments (or WSL2).
- Linux or WSL2 environment
- Docker installed and running (required for evaluation harness)
- Python 3.10+
The setup_and_run_linux.sh script automates the entire process:
- Compiles and installs the agent
- Runs inference on 10 test tasks
- Runs the official evaluation using Docker
# 1. Grant execution permissions
chmod +x setup_and_run_linux.sh
# 2. Run the script
./setup_and_run_linux.shNote: The complete evaluation may take time depending on your connection speed and CPU.
This project is under the MIT License. See LICENSE for more details.
- Discord Community: Join our Discord server - Get help, report bugs, suggest improvements, and collaborate with other users
- GitHub: https://github.com/davidmonterocrespo24/DaveAgent
- Issues: https://github.com/davidmonterocrespo24/DaveAgent/issues
- Email: davidmonterocrespo24@gmail.com
We encourage you to join our Discord server to:
- π¬ Get Help: Ask questions and get support from the community
- π Report Bugs: Help us improve by reporting issues you encounter
- π‘ Suggest Features: Share your ideas for new features and improvements
- π€ Collaborate: Connect with other users and contributors
- π’ Stay Updated: Get the latest news and updates about DaveAgent