auto-code-rover  by AutoCodeRoverSG

Autonomous software engineer for program improvement

created 1 year ago
2,973 stars

Top 16.5% on sourcepulse

GitHubView on GitHub
Project Summary

AutoCodeRover is an autonomous software engineer designed to automatically fix GitHub issues and improve programs. It targets developers and researchers seeking to automate bug fixing and feature implementation, leveraging LLMs with code analysis and debugging capabilities to generate patches.

How It Works

AutoCodeRover operates in two stages: context retrieval and patch generation. It utilizes program structure-aware code search APIs to navigate abstract syntax trees for relevant code context, rather than relying on simple string matching. When test suites are available, it employs statistical fault localization to enhance repair rates.

Quick Start & Requirements

  • Installation: Recommended via Docker (docker build -f Dockerfile.minimal -t acr . then docker run -it -e OPENAI_KEY="${OPENAI_KEY:-OPENAI_API_KEY}" acr). Alternatively, local setup with conda env create -f environment.yml.
  • Prerequisites: API keys for supported LLMs (OpenAI, Anthropic, Groq, etc.). For local models like Llama 3 via Ollama, specific Docker networking configurations might be needed. SWE-bench mode requires a separate SWE-bench setup.
  • Resources: Running SWE-bench experiments is recommended on a host machine.
  • Docs: arXiv Paper, Website, Discord

Highlighted Details

  • Achieves 46.20% efficacy (pass@1) on SWE-bench Verified and 30.67% on SWE-bench-lite.
  • Cost-effective, with tasks costing less than $0.7 and completing within 7 minutes.
  • Supports a wide range of LLMs including OpenAI, Anthropic, Meta Llama, and models via AWS Bedrock and Groq.
  • Can operate on live GitHub issues, local repositories, and SWE-bench tasks.

Maintenance & Community

  • Active development with recent updates in November 2024.
  • Community support available via a Discord server.
  • Contact: acr@sonarsource.com.

Licensing & Compatibility

  • The repository itself does not explicitly state a license in the README. The associated arXiv paper is published by ACM, typically implying copyright. Further investigation into the repository's LICENSE file is recommended for commercial use.

Limitations & Caveats

  • Free Groq plans may exceed context limits. Running local models requires careful Docker networking setup. The SWE-bench mode requires a separate, detailed setup process.
Health Check
Last commit

3 months ago

Responsiveness

1 week

Pull Requests (30d)
0
Issues (30d)
1
Star History
64 stars in the last 90 days

Explore Similar Projects

Feedback? Help us improve.