An intelligent tool that analyzes GitHub repositories for Celo hackathon projects, evaluating code quality and checking for Celo blockchain integration using AI-powered analysis.
- π Multi-Repository Analysis: Analyze multiple GitHub repositories from Excel data
- π Intelligent Code Review: AI-powered assessment of code quality and best practices
- π Celo Integration Detection: Automatically checks for Celo blockchain integration
- π Detailed Reports: Generates comprehensive reports with LLM-driven insights
- π§ Smart Recommendations: Provides suggestions for improving code and integration
-
Clone this repository:
git clone https://github.com/yourusername/celo-hackathon-agent.git cd celo-hackathon-agent
-
Install dependencies:
pip install -r requirements.txt
-
Configure API tokens:
- Create a GitHub token with repo scope at GitHub Settings
- Get an Anthropic API key from Anthropic Console
- Create a
.env
file:GITHUB_TOKEN=your_github_token_here ANTHROPIC_API_KEY=your_anthropic_api_key_here
Create an Excel file with the following columns:
project_name
: Name of the projectproject_description
: Brief description of the projectproject_github_url
: URL of the project's GitHub repository (can be comma-separated for multiple repos)project_owner_github_url
: GitHub URLs of project owners (can be comma-separated)project_url
: Main website URL of the project
Or generate sample data:
python create_sample_data.py
# Display available commands
make help
# Install dependencies
make setup
# Run in interactive mode
make run
# Analyze projects from an Excel file
make run-excel FILE=sample_projects.xlsx VERBOSE=1
# Analyze a GitHub repository directly
make run-url URL="https://github.com/user/repo"
# Analyze with custom project name
make run-url URL="https://github.com/user/repo" NAME="My Project" VERBOSE=1
# Clean up generated files
make clean
./devrel-agent.py
This will launch an interactive CLI that guides you through the process.
python run.py --excel sample_projects.xlsx --output reports --verbose
# Analyze from Excel file
./devrel-agent.py --non-interactive --excel sample_projects.xlsx --verbose
# Analyze direct GitHub URLs (project name will be automatically extracted from repository name)
./devrel-agent.py --non-interactive --urls "https://github.com/user/repo1,https://github.com/user/repo2" --verbose
# Analyze direct GitHub URLs with custom project name
./devrel-agent.py --non-interactive --urls "https://github.com/user/repo1,https://github.com/user/repo2" --project-name "My Project" --verbose
--config
: Path to custom configuration file (default:config.json
)--output
: Directory to save reports (default:reports
)--verbose
: Display detailed progress information
Customize the analysis by editing config.json
:
weights
: Adjust the weight of each code quality categorycelo_keywords
: Keywords to search for when checking Celo integrationcelo_files
: Files to check for Celo-related configurations
celo-hackathon-agent/
βββ src/
β βββ models/ # Data types and configuration
β βββ analyzer/ # Analysis components
β βββ utils/ # Utility functions
β βββ reporting/ # Report generation
β βββ main.py # Main application logic
βββ run.py # Legacy entry point script
βββ devrel-agent.py # Interactive CLI tool
βββ Makefile # Simplified command interface
βββ config.json # Configuration
βββ requirements.txt # Dependencies
The tool generates:
summary.md
: Overview of all analyzed projects- Individual project reports with detailed analysis:
- AI-powered code quality assessment with explanations
- Analysis of coding standards and best practices
- Suggestions for code improvements
- Comprehensive evaluation of Celo blockchain integration
- Evidence and detailed analysis of Celo technology usage
results.json
: Raw data in JSON format for further processing
MIT
Made with β€οΈ for the Celo ecosystem