Skip to content

Latest commit

 

History

3 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

oss-copilot

AI-powered open source contribution toolkit

Find issues worth fixing, generate intelligent fixes, and create PRs — all from your terminal.

Python 3.10+ License MIT

What It Does

oss-copilot makes open source contributions effortless:

  • Scan — Discover tractable issues across any GitHub org or repo, ranked by fixability
  • Fix — AI-powered code analysis and fix generation for bugs, typos, docs
  • Contribute — One-command fork → clone → branch → fix → commit → PR workflow
  • Track — Monitor your contribution stats, PR status, and impact over time
  • Dashboard — Beautiful terminal UI showing your open source journey

Quick Start

# Install
pip install oss-copilot

# Configure (one time)
oss-copilot config init
# Enter your GitHub token when prompted

# Scan for issues
oss-copilot scan --org NousResearch --limit 20

# Auto-fix an issue and create PR
oss-copilot fix https://github.com/org/repo/issues/42

# View your contribution stats
oss-copilot stats

# Launch interactive dashboard
oss-copilot dashboard

Features

Smart Issue Scanning

# Scan an entire organization
oss-copilot scan --org NousResearch

# Scan specific repos
oss-copilot scan --repo langchain-ai/langchain --repo microsoft/autogen

# Filter by issue type
oss-copilot scan --org myorg --labels bug,docs --max-comments 2

# Search across GitHub
oss-copilot scan --query "good first issue python machine learning"

Issues are scored by fixability (0-100):

  • Bug with 0 comments: +30
  • Has clear file/line reference: +25
  • Recent (< 7 days): +15
  • Has repro steps: +15
  • Small scope: +10
  • Documentation issue: +5

AI-Powered Fixes

# Generate fix for a specific issue
oss-copilot fix https://github.com/org/repo/issues/42

# Dry run — see what would change without committing
oss-copilot fix --dry-run https://github.com/org/repo/issues/42

# Fix with custom AI model
oss-copilot fix --model gpt-4o-mini https://github.com/org/repo/issues/42

The fix workflow:

  1. Reads the issue body and analyzes the problem
  2. Clones the repo and searches for relevant code
  3. Generates a fix using AI code analysis
  4. Runs linting/tests if available
  5. Creates a commit with proper message format
  6. Pushes to your fork and opens a PR

One-Command Contribution

# Full workflow: scan → pick → fix → PR
oss-copilot contribute --org NousResearch

# Batch contributions
oss-copilot contribute --org NousResearch --limit 3 --auto

Contribution Tracking

# Your stats
oss-copilot stats

# Detailed PR tracking
oss-copilot stats --prs

# Export contribution report
oss-copilot stats --export report.md

Interactive Dashboard

oss-copilot dashboard

Terminal dashboard showing:

  • Contribution heatmap
  • Open PRs with status
  • Issue queue with scores
  • Real-time activity feed

Configuration

Config file: ~/.oss-copilot/config.yaml

github:
  token: ghp_xxxxxxxxxxxx
  username: your-username

ai:
  provider: openai        # openai, anthropic, local
  model: gpt-4o-mini
  api_key: sk-xxxxxxxxxxxx

scanner:
  default_org: NousResearch
  max_issues_per_repo: 10
  min_fixability_score: 40

workflow:
  work_dir: /tmp/oss-copilot-work
  auto_lint: true
  auto_test: true
  commit_style: conventional   # conventional, simple

Use Cases

For Contributors

  • Find your first open source contribution
  • Batch-fix documentation issues across orgs
  • Track your open source impact over time

For Maintainers

  • Identify which issues are easy for newcomers
  • Generate contribution guidelines
  • Triage incoming issues by fixability

For Teams

  • Onboard new developers to open source
  • Set contribution goals and track progress
  • Generate monthly contribution reports

Architecture

oss_copilot/
├── cli.py              # Click CLI entry point
├── core/
│   ├── github.py       # GitHub API wrapper
│   ├── scanner.py      # Issue discovery & scoring
│   ├── fixer.py        # AI-powered fix generation
│   ├── workflow.py     # Fork/clone/branch/PR automation
│   └── tracker.py      # Contribution statistics
├── commands/
│   ├── scan.py         # `oss-copilot scan`
│   ├── fix.py          # `oss-copilot fix`
│   ├── contribute.py   # `oss-copilot contribute`
│   ├── stats.py        # `oss-copilot stats`
│   └── dashboard.py    # `oss-copilot dashboard`
├── utils/
│   ├── config.py       # Configuration management
│   ├── display.py      # Rich terminal output
│   └── ai.py           # LLM integration
└── dashboard/
    ├── app.py          # Flask web dashboard
    ├── templates/      # Jinja2 templates
    └── static/         # CSS/JS assets

Contributing

Contributions welcome! See CONTRIBUTING.md.

# Clone and set up
git clone https://github.com/vominh1919/oss-copilot.git
cd oss-copilot
pip install -e ".[dev]"

# Run tests
pytest

# Run linter
ruff check --fix .

Good First Issues

Check our Issues labeled good-first-issue:

  • Add support for GitLab/Gitea
  • Improve fix generation for specific languages
  • Add contribution templates
  • Build web dashboard features

Roadmap

  • Issue scanning with fixability scoring
  • AI-powered fix generation
  • Automated PR workflow
  • Contribution tracking
  • GitLab support
  • Bitbucket support
  • Web dashboard (Flask)
  • VS Code extension
  • GitHub Action integration
  • Contribution gamification (badges, streaks)
  • Multi-language fix support (Go, Rust, Java, etc.)
  • Collaborative contribution sessions
  • AI code review on incoming PRs

License

MIT License — see LICENSE.

Acknowledgments

  • Built with Click for CLI
  • Terminal UI powered by Rich
  • GitHub integration via httpx
  • AI powered by OpenAI / Anthropic APIs

Star this repo if you find it useful! It helps others discover the project.

About

🤖 AI-powered open source contribution toolkit - Find issues, generate fixes, create PRs automatically

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages