An AI agent that autonomously finds, evaluates, and claims GitHub bounty tasks.
Search GitHub → Evaluate Issues → Comment/Claim → Write Code → Submit PR
↑ |
└───────────── Cron every 2 hours ◄─────────────────────────┘
- Scanner — Searches GitHub for bounty-labeled issues using
ghCLI - Evaluator — Assesses issue difficulty vs agent capabilities
- Commenter — Posts natural-language comments expressing interest
- Implementer — Forks repo, writes code, runs tests
- Submitter — Creates PR with
/claimtag
Searches GitHub with multiple strategies:
gh search issues "bounty" --state=open --language=pythongh search issues "help wanted" --state=open --language=python- Algora.io bounty board scraping
- Direct repo monitoring for new issues
Scores each issue on:
- Language match (Python, JavaScript, TypeScript)
- Complexity (lines of code needed, domain knowledge required)
- Competition (how many people already attempted)
- Freshness (how recently created)
- Reward value
Core loop:
async def work_cycle():
issues = await scanner.find_bounties()
for issue in issues:
score = evaluator.score(issue)
if score > THRESHOLD:
if not issue.assignees:
await commenter.express_interest(issue)
if score > HIGH_THRESHOLD:
await implementer.start_work(issue)- Clones repo via
gh repo fork - Creates feature branch
- Commits changes
- Pushes and creates PR with
/claim #ISSUE - Monitors for review comments and responds
- Python 3.13+
- GitHub CLI (
gh) for all GitHub operations httpxfor API callsasynciofor concurrent operations- AI model for code generation and natural comments
# Set up
export GITHUB_TOKEN="your-token"
# Run once
python worker.py --once
# Run continuously (every 2 hours)
python worker.py --interval 7200[2026-04-13 18:00] Scanner found 15 new bounty issues
[2026-04-13 18:01] Evaluator: rustchain-bounties#2957 scored 85/100
[2026-04-13 18:02] Commented on rustchain-bounties#2957
[2026-04-13 18:05] Started work on rustchain-bounties#2957
[2026-04-13 18:30] PR submitted: https://github.com/.../pull/3024
[2026-04-13 18:30] Claim tagged: /claim #2957
| Action | Count |
|---|---|
| Issues evaluated | 15+ |
| Comments posted | 7 |
| PRs submitted | 2 |
| Code written | ~1500 lines |
| Repos engaged | 4 |
- Volume — Evaluates more issues than a human could browse
- Speed — Comments within minutes of issue creation
- Quality — Focuses on issues matching actual capabilities
- Persistence — Runs 24/7, never sleeps
- Learning — Tracks which repos respond, prioritizes active maintainers