Autonomous AI-powered development workflows with GitHub Copilot
Features β’ Quick Start β’ How It Works β’ Configuration β’ Contributing
- π§ Setup Wizard - Easy first-time configuration with guided setup
- π Queue Management - View, reorder, add, and remove issues from the development queue
- π Real-time Monitoring - Live status of all issues and PRs with workflow history
- π€ Autonomous Pipeline - Start/stop automated workflow processing
- β±οΈ Smart Cooldowns - Rate-limit issue assignments (configurable)
- π Agent Instructions - Automatically include implementation guidelines
- π MCP Integration - Uses GitHub's official MCP Server for Copilot assignment
- β¨ Auto-Apply Changes - Detects Copilot reviews and triggers change application
./start.shThis will:
- Create a virtual environment (first run only)
- Install dependencies
- Start the Streamlit server at http://localhost:8642
On first launch, you'll be guided through a 5-step setup wizard:
- GitHub Token - Enter your Personal Access Token
- Repository - Select which repository to automate
- Issues - Choose which issues to add to the queue
- Configure - Set automation preferences (cooldown, auto-merge, etc.)
- Complete - Review and start using the pipeline
Your GitHub Personal Access Token needs these permissions:
repo(full control of private repositories)workflow(if you need to trigger workflows)- GitHub Copilot subscription (for issue assignment)
βββββββββββββββββββ ββββββββββββββββββββ βββββββββββββββββββ
β Copilot wants β βββΊ β Auto-reassign β βββΊ β Copilot reviews β
β your review β β review to Copilotβ β and suggests β
βββββββββββββββββββ ββββββββββββββββββββ ββββββββββ¬βββββββββ
β
βββββββββββββββββββ ββββββββββββββββββββ ββββββββββΌβββββββββ
β Start next β βββ β Auto-merge β βββ β Auto-apply β
β issue β β approved PR β β changes β
βββββββββββββββββββ ββββββββββββββββββββ βββββββββββββββββββ
When the pipeline is running, it polls at regular intervals and:
- When Copilot requests your review β Auto-reassign review to Copilot
- When Copilot suggests changes β Auto-comment "@copilot apply changes"
- When PR is approved β Auto-merge into target branch
- When PR is merged β Wait for cooldown, then assign next issue
To prevent overwhelming the system, there's a configurable cooldown between issue assignments:
- Cooldown triggers after a PR is merged (not when assigned)
- Other actions (review reassignment, applying changes, merging) have no cooldown
- Adjustable in the UI Settings
copilot-coding-agent-orchestrator/
βββ src/ # Source code
β βββ app.py # Streamlit dashboard
β βββ setup_wizard.py # First-time setup
β βββ daemon.py # Background daemon
β βββ automation_engine.py # Core automation logic
β βββ github_client.py # GitHub API client
β βββ mcp_client.py # MCP protocol client
βββ assets/ # Branding assets
β βββ swaibian_white.png
β βββ swaibian_Avatar_white.png
β βββ thankyou.jpg
βββ .github/ # GitHub templates
β βββ CODEOWNERS
β βββ CONTRIBUTING.md
β βββ ISSUE_TEMPLATE/
β βββ PULL_REQUEST_TEMPLATE.md
βββ config.example.yaml # Example configuration
βββ .env.example # Example environment
βββ requirements.txt # Python dependencies
βββ start.sh # Start script
βββ LICENSE # MIT License
βββ README.md # This file
After running the setup wizard, your config.yaml will be generated:
github:
owner: YourUsername
repo: YourRepo
target_branch: main
automation:
poll_interval: 60 # seconds between checks
auto_merge: true # auto-merge approved PRs
auto_assign_next: true # auto-assign next issue after merge
cooldown_minutes: 60 # minimum time between assignments
agent_instructions: |
Your custom implementation instructions...
issue_queue:
- ISSUE-1
- ISSUE-2Control the daemon directly from the command line:
# Start daemon
python src/daemon.py start
# Stop daemon
python src/daemon.py stop
# Check status
python src/daemon.py status
# Run automation once
python src/automation_engine.py --once# List available tools
python src/mcp_client.py list-tools
# Assign Copilot to an issue
python src/mcp_client.py assign OWNER REPO ISSUE_NUMBERContributions are welcome! Please read our Contributing Guide first.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add: amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
Some files are protected and require owner approval to modify:
assets/**- Branding and logosREADME.md- DocumentationLICENSE- License file
This project is licensed under the MIT License - see the LICENSE file for details.
If you find this project helpful, consider:
Made with β€οΈ by Swaibian

