This plugin provides autonomous GitHub issue processing capabilities for Claude Code with full MCP integration.
- ✅ GitHub MCP Integration - Direct GitHub API access for issues and PRs
- ✅ OpenViking MCP Integration - Semantic code search (93% token reduction)
- ✅ Autonomous Loop - Continuously monitors and processes issues
- ✅ CLAUDE.md Compliance - Follows repository architecture rules
- ✅ Vertical Slice Enforcement - Every feature includes Core + ViewModel + View + Tests
The plugin runs autonomously in Claude Code and:
- Checks for Issues - Monitors repository for issues with
agent-tasklabel - Analyzes Issue - Uses GitHub MCP to fetch details, OpenViking to search code
- Plans Solution - Creates implementation plan following CLAUDE.md rules
- Implements - Creates complete vertical slice (Core + ViewModel + View + Tests)
- Tests - Runs
dotnet buildanddotnet test - Creates PR - Uses GitHub MCP to create PR and link to issue
- Loops - Waits 15 seconds and repeats
Ensure you have:
- Claude Code installed
- GitHub Personal Access Token with
reposcope - OpenAI API Key (for OpenViking semantic search)
export GITHUB_TOKEN="ghp_your_token_here"
export OPENAI_API_KEY="sk-your_key_here"Or create a .env file in your project root.
In Claude Code:
# Navigate to your project
cd /path/to/Connect-A-PIC-Pro
# Install the plugin from this repository
/plugin install /path/to/autonomous-issue-agent/pluginThe plugin bundles two MCP servers:
- github - GitHub API integration
- openviking - Semantic code search
Check they're running:
/mcp statusThe plugin doesn't need manual invocation. Once installed, you can:
Option 1: Use Skills Directly
# Check for issues
/autonomous-issue-agent:check-issues
# Process a specific issue
/autonomous-issue-agent:process-issueOption 2: Let Claude Code Auto-Invoke The skills are marked as "model-invoked", meaning Claude Code will automatically use them when appropriate based on context.
Watch the agent work:
# In Claude Code, you'll see:
# - Issue discovery
# - Code analysis with OpenViking
# - Implementation progress
# - Build/test results
# - PR creationSimply close Claude Code or use:
/plugin disable autonomous-issue-agentScans the repository for open issues labeled agent-task and returns the highest priority issue to work on.
Filters:
- Must have
agent-tasklabel - Excludes issues with existing PR links
- Excludes
blocked,wontfix,duplicatelabels - Prioritizes by
priority:high/medium/lowlabels
Complete workflow from issue analysis to PR creation:
- Fetch issue details (GitHub MCP)
- Read CLAUDE.md architecture rules
- Search relevant code (OpenViking MCP)
- Plan vertical slice implementation
- Implement Core + ViewModel + View + Tests
- Run build and tests
- Create PR (GitHub MCP)
By default, the agent checks for new issues every 15 seconds. This is configured in the Python agent version. In the plugin version, Claude Code manages the timing automatically.
The agent looks for issues with the agent-task label. To change this, modify the skill instructions in skills/check-issues.md.
The agent reads CLAUDE.md from your repository root to understand:
- Architecture patterns (MVVM, SOLID principles)
- File size limits (250 lines per new file)
- Vertical slice requirements
- Testing expectations
- Code style conventions
Provides tools:
github_list_issues- List issues with filtersgithub_get_issue- Get issue detailsgithub_create_pull_request- Create PRgithub_add_comment- Add issue/PR comments
Provides semantic code search:
- Reduces token usage by ~93% (23k → 1.6k tokens per issue)
- Finds relevant code without reading entire codebase
- Uses embeddings for intelligent search
Cost Comparison:
- Without MCP: ~$0.069 per issue (23k tokens)
- With MCP: ~$0.005 per issue (1.6k tokens)
- Savings: ~$6.40 per 100 issues
| Feature | Python Agent | Plugin Agent |
|---|---|---|
| MCP Support | ❌ Hangs in subprocess | ✅ Native support |
| Token Usage | ~23k per issue | ~1.6k per issue (93% reduction) |
| GitHub Integration | REST API via subprocess | ✅ GitHub MCP (native) |
| Code Search | Full file reads | ✅ OpenViking (semantic) |
| Setup Complexity | Python deps + env setup | Plugin install |
| Maintenance | Custom Python code | Declarative skills |
| Extensibility | Code changes required | Add new skills (markdown) |
Check environment variables:
echo $GITHUB_TOKEN
echo $OPENAI_API_KEYRestart Claude Code to reload environment.
The agent respects GitHub API rate limits. If you hit limits:
- Wait for rate limit reset (1 hour)
- Use GitHub Enterprise token (higher limits)
- Reduce polling frequency
The agent will:
- Attempt to fix the error
- Retry build/test
- If still failing after 2 attempts, comment on the issue
You can then manually intervene and fix the issue.
Skills are plain markdown files in skills/. To modify behavior:
- Edit the skill markdown file
- Save changes
- Reload plugin:
/reload-plugins
No code changes required!
Create a new markdown file in skills/:
# My New Skill
Instructions for Claude on what to do...Add it to plugin.json if you want to expose it as a command.
MIT - See main repository LICENSE file
- Issues: GitHub Issues
- Documentation: Main README
- Plugin Architecture: PLUGIN_ARCHITECTURE.md