IssuePilot: An Open-Weight AI Copilot to End GitHub Issue Triage Burnout
This is a submission for the Hacktoberfest Open-Source AI Challenge Week 2: Side Hustle
What I Built
Maintainer burnout is a growing problem in open-source software. Popular repositories receive dozens of issues every day: duplicate bug reports, missing reproduction steps, unstructured feature requests, and issues without proper labels. Maintainers end up spending valuable time on repetitive triage instead of building and improving software.
IssuePilot is an AI-powered GitHub Issue Triage and Management platform built around open-weight AI. It acts as an intelligent copilot for open-source maintainers, engineering teams, and SaaS companies, helping them organize incoming issues while keeping humans in control.
What can IssuePilot do?
- Intelligent Issue Classification: Categorizes issues as Bugs, Feature Requests, Documentation, Security, or Questions, and recommends priorities ranging from P0 (Blocker) to P3 (Low).
- Semantic Duplicate Detection: Uses vector embeddings and cosine similarity to identify potentially duplicate issues, even when they use different terminology.
- Human-in-the-Loop Review Queue: Stages suggested labels, priorities, duplicate links, and clarification replies for maintainers to approve or reject before changes are applied to GitHub.
- Automatic Upstream Issue Synchronization: Resolves upstream repositories for forks where issues are disabled, allowing contributors to explore and triage real-world upstream issues.
- Multi-Repository Management: Connects repositories through a GitHub App and provides a centralized workspace for reviewing issue triage results.
The goal is simple: reduce repetitive work without handing control of a repository to an unpredictable bot.
Who would pay for it?
IssuePilot is designed for open-source foundations, funded projects, enterprise engineering teams, and SaaS startups maintaining public SDKs and APIs.
The planned micro-SaaS model includes:
- Free: Individual maintainers managing up to three repositories.
- Team — $19–$49/month: Organizations that need multi-repository triage, duplicate detection, SLA tracking, and batch actions.
The business opportunity is to help engineering teams spend less time organizing issues and more time shipping reliable software.
Demo
- Live Web Application: https://issue-pilot-ten.vercel.app/
- Backend API and Health Check: https://issue-pilot.onrender.com/api/health
Open the web application, sign in with GitHub, and explore connected repositories, AI-generated triage summaries, and the staged action review queue. The backend is hosted on Render, so the first request may take a little longer if the service needs to wake up.
Code
GitHub Repository: https://github.com/CyborgX-hash/Issue-pilot
IssuePilot
Less time triaging. More time building.
IssuePilot is a production-minded, AI-powered GitHub issue management platform designed for open-source maintainers and engineering teams. It connects directly with GitHub via a dedicated GitHub App, categorizes incoming issues using open-weight AI (Gemma), detects potential duplicate issues through semantic similarity, and identifies missing bug report information.
Crucially, IssuePilot enforces human-in-the-loop oversight: AI recommendations are staged in an approval queue where maintainers can inspect, edit, approve, or reject changes before any action is committed to GitHub.
Features
- GitHub App Integration: Clean authorization and granular installation flow scoping permissions only to selected repositories.
- Automated Issue Synchronization: Fetches and caches issues and labels, filtering out pull requests cleanly.
-
Open-Weight AI Triage
- Classifies issues into
BUG,FEATURE_REQUEST,ENHANCEMENT,DOCUMENTATION,QUESTION, orOTHER. - Recommends issue priority (
CRITICAL,HIGH,MEDIUM,LOW) grounded in factual…
- Classifies issues into
Tech Stack
- Frontend: React 18, Vite, Tailwind CSS, Lucide icons
- Backend: Node.js, Express.js
- Database: PostgreSQL with Prisma ORM
- GitHub Integration: GitHub App authentication, Octokit, authenticated webhooks
- AI Inference: Groq SDK with Gemma 2
- Testing: Vitest integration tests
The project is organized as a full-stack monorepo with separate client/, server/, and docs/ directories.
How I Built It
IssuePilot combines open-weight AI, semantic search, and secure GitHub integration to create a practical developer productivity tool.
1. Open-Weight AI with Gemma 2
The core triage engine uses Gemma 2 (gemma2-9b-it), served through Groq for low-latency inference. The architecture is designed to support compatible local inference deployments through tools such as Ollama or vLLM.
Instead of relying on unstructured AI responses, I used Zod schema validation to enforce structured output containing issue categories, confidence scores, priority recommendations, suggested labels, justifications, and clarification drafts.
Because GitHub issue descriptions are user-generated input, the system also uses prompt-boundary separation and defensive validation to reduce prompt-injection risks.
2. Semantic Duplicate Detection
Keyword matching alone cannot reliably identify duplicates. Two developers might describe the same bug using completely different words.
IssuePilot uses the open-weight all-MiniLM-L6-v2 embedding model to represent issue titles and descriptions as vectors. A cosine-similarity engine compares these representations against existing issues to surface likely duplicates, including reports from closed issues.
This helps maintainers find related reports without manually searching through hundreds of issue descriptions.
3. GitHub App Integration
IssuePilot connects to GitHub through a GitHub App built using Octokit. Authenticated webhooks ingest issue events, while installation-based access supports repository-level integration.
The application uses HMAC-SHA256 webhook signature verification, authenticated API access, and a staged review workflow. AI suggestions are not directly applied to repositories: maintainers must approve proposed actions before the application makes changes through the GitHub REST API.
4. A Human-First Workflow
The most important design decision was to avoid building another bot that automatically posts comments everywhere.
IssuePilot stages proposed actions in a review queue so maintainers can inspect, approve, or reject them. This makes AI useful without removing human judgment from repository management.
5. Testing and Deployment
I used agentic pair-programming workflows to help develop the Prisma schema, implement integration tests, and improve deployment behavior.
The test suite reached 34/34 passing tests during development, covering areas such as webhook signature verification, authorization guards, and duplicate-similarity checks.
The frontend is deployed on Vercel, and the backend is deployed on Render.
Why Does Open Innovation Matter?
Open innovation made IssuePilot possible by giving me access to capable models and tools without requiring a proprietary AI model to be the foundation of the product.
Freedom of deployment: Gemma 2 can be served through an inference provider or a compatible self-hosted setup. Organizations can explore deployment options that fit their infrastructure, cost, and security requirements.
Greater control over sensitive data: Repository issues may contain internal implementation details, stack traces, or vulnerability reports. A self-hosted inference configuration can help organizations keep inference within their own environment, provided the rest of the application and its integrations are configured accordingly.
Lower barriers to experimentation: Open-weight models and open-source embedding tools make it easier to experiment with domain-specific triage, evaluate different inference configurations, and adapt the system to different programming languages and repositories.
Room to improve: The architecture creates opportunities to evaluate model accuracy on real issue datasets and potentially fine-tune models for specialized engineering workflows.
Open innovation is not just about avoiding vendor lock-in. It is about giving developers more control over how AI is deployed, evaluated, and improved.
My Agent Session
I used agentic pair-programming workflows throughout development to accelerate implementation and testing. The workflow helped scaffold the database schema, develop integration tests, refine GitHub authentication and authorization safeguards, and improve the deployment experience.
The objective was to use AI as a development partner while still validating the implementation through tests and real-world repository experiments.
My First User
During development, I tested IssuePilot against real-world upstream repositories, including sktime and aiondemand, to explore the challenges contributors face when working with forks where GitHub issues are disabled.
Feedback from an open-source contributor:
"Usually, when we fork a large repo to contribute, issues are disabled on GitHub by default, so testing triage tools was impossible. IssuePilot's automatic upstream sync pulled in 88 active issues immediately, accurately flagged two duplicates related to token parsing, and proposed the exact bug and backend labels we would have manually tagged."
This experiment reinforced the central idea behind IssuePilot: maintainers need useful, reviewable suggestions rather than autonomous bots that make unapproved changes.
The project is still evolving, and this early feedback provides a useful direction for improving its triage accuracy and workflow.
Prize Categories
I'm submitting IssuePilot for the following categories:
- Primary Track: Hacktoberfest Open-Source AI Challenge Week 2 — Side Hustle
- Best Use of Open-Weight Models: Gemma 2
- Developer Tools / Productivity Micro-SaaS
- Open Innovation & Autonomous Agents
Building IssuePilot taught me that useful AI developer tools are not just about generating predictions. They need reliable integrations, structured outputs, security guardrails, and workflows that keep people in control.
If you're maintaining an open-source repository, I'd love for you to try IssuePilot and share your feedback!
Live Demo: https://issue-pilot-ten.vercel.app/
Top comments (0)