包详细信息

pr-vibe

stroupaloop111MIT0.13.0

AI-powered PR review responder that vibes with CodeRabbit, DeepSource, and other bots to automate repetitive feedback

ai, pr, pull-request, code-review

自述文件

pr-vibe 🎵

npm version License: MIT Node.js CI CodeQL Built by AI npm downloads GitHub stars PRs Welcome

🎵 When AI tools vibe together on your PRs. Let CodeRabbit, Claude Code, and other bots handle the repetitive feedback while you ship features.

Built BY an AI (Claude) FOR AIs to orchestrate - the first tool designed for AI-to-AI collaboration on code reviews.

Demo

# Try instantly without any setup!
npx pr-vibe@latest demo

Visit our interactive demo to see pr-vibe in action.

Why pr-vibe?

PR review bots like CodeRabbit, Claude Code, and DeepSource are great, but they don't understand your project. You find yourself:

  • Explaining why console.log is valid in Lambda functions... again
  • Rejecting the same "any types" warnings for complex webhooks
  • Manually fixing the same security issues they flag
  • Waiting for bot responses and handling rate limits

pr-vibe bridges this gap by:

  • 🤝 Working WITH bots - Enhances CodeRabbit, Claude Code, DeepSource, etc. rather than replacing them
  • 💬 Full Conversations - Handles multi-round dialogues until resolution
  • 🧠 Learning your patterns - Remembers your project's conventions and valid exceptions
  • Automating responses - Fixes what should be fixed, explains what's intentional
  • 🎯 Saving time - Handle bot comments in seconds, not minutes
  • 🤖 Claude Code Support - Special integration for Claude Code's confidence levels and categorization

Features

  • 🚀 Zero-Setup Demo - Try instantly with npx pr-vibe@latest demo
  • 💬 Full Conversation Support - Handles multi-round dialogues with bots, including rate limits
  • 🔐 Smart Auth Detection - Finds GitHub tokens from gh CLI, env vars, VS Code automatically
  • 🔍 Bot Comment Analysis - Parses and understands comments from all major PR review bots
  • 🛠️ Smart Actions - Auto-fix simple issues, explain valid patterns, or escalate edge cases
  • 🧠 Project Memory - Learns and remembers your project-specific patterns
  • ⏱️ Rate Limit Handling - Detects and waits for bot rate limits automatically
  • 📊 Detailed Reports - Save comprehensive reports of all actions taken for review
  • Pre-Merge Safety - Check if all bot comments are resolved before merging
  • 📈 GitHub Status Checks - Post status checks to PRs for team visibility
  • 🗑️ Auto-Cleanup - Reports expire after 30 days to keep your repo clean
  • 🔌 LLM Flexibility - Works with Claude, GPT-4, Gemini, or without any LLM
  • CLI First - Full control with human-in-the-loop design

Supported Bots

pr-vibe works with all major PR review bots and AI code review tools:

Primary Support

  • CodeRabbit - Full conversation support, handles inline review comments
  • Claude Code Review - Special integration for confidence levels and categorization
  • DeepSource - Security and code quality analysis
  • SonarCloud - Code quality and security scanning
  • Snyk - Vulnerability detection
  • CodeClimate - Code quality metrics

AI Code Review Tools

  • GitHub Copilot - AI-powered code suggestions
  • Codacy - Automated code review
  • DeepCode/Snyk Code - AI-based security analysis
  • CodeGeeX - AI code review assistant
  • ReviewDog - Automated code review
  • PR Bot - Generic PR automation

Generic Support

  • Any bot with [bot] suffix in username
  • Custom review bots following standard GitHub comment patterns

pr-vibe automatically detects bot comments, including:

  • Standard PR comments
  • Inline code review comments
  • Nested review comments (even when parent review shows "0 actionable")

Installation

npm install -g pr-vibe

# Or use directly with npx
npx pr-vibe review 42

Getting Started

Option 1: Try the Demo (No Setup Required!)

npx pr-vibe@latest demo

Option 2: Quick Start (60 seconds)

  1. Install pr-vibe globally:

    npm install -g pr-vibe
  2. Check authentication status:

    pr-vibe auth

    pr-vibe will automatically detect GitHub tokens from:

    • GitHub CLI (gh auth token)
    • Environment variables (GITHUB_TOKEN, GH_TOKEN)
    • VS Code GitHub extension
    • Git config

    🔐 Security Note: Never commit tokens to the repository. See SECURITY.md for best practices.

  3. Initialize in your project:

    cd your-project
    pr-vibe init
  4. Review your next PR with bot comments:

    pr-vibe pr 42

That's it! pr-vibe will analyze bot comments, handle conversations, and start learning your patterns.

Commands

# Interactive demo - no setup required!
pr-vibe demo

# Check authentication status
pr-vibe auth

# Initialize patterns in your project
pr-vibe init

# Review bot comments interactively
pr-vibe pr 42

# Filter comments by priority
pr-vibe pr 42 --skip-nits  # Focus on critical issues only
pr-vibe pr 42 --nits-only  # Review only style/formatting comments
pr-vibe pr 42 --show-all   # Show all comments including non-critical

# Priority-based filtering (NEW in v0.12.0)
pr-vibe pr 42 --critical-only           # Only must-fix issues (security, bugs)
pr-vibe pr 42 --priority-threshold suggestion  # Show must-fix + suggestions
pr-vibe pr 42 --priority-threshold nitpick     # Show all (default)
# Note: --critical-only is equivalent to --priority-threshold must-fix

# Smart watch mode - wait for bots to arrive
pr-vibe watch 42                # Watch for bot reviews with smart polling
pr-vibe watch 42 --auto-process # Auto-process when all bots complete
pr-vibe watch 42 --timeout 30   # Custom timeout (default 10 minutes)

# Create GitHub issues for deferred feedback
pr-vibe pr 42 --create-issues  # Auto-create issues when deferring
pr-vibe issues 42              # Create issues from saved report
pr-vibe issues 42 --dry-run    # Preview without creating

# Check if PR is ready to merge (all bot comments resolved)
pr-vibe check 42

# View saved reports for a PR
pr-vibe report 42
pr-vibe report 42 --list  # List all reports
pr-vibe report 42 --json  # Output in JSON format

# Post GitHub status check
pr-vibe status 42         # View status
pr-vibe status 42 --post  # Post to GitHub

# Export comments for external analysis (Claude Code mode)
pr-vibe export 42

# Apply decisions from Claude Code
pr-vibe apply 42

# Clean up old reports
pr-vibe cleanup

# Specify a different repository
pr-vibe pr 42 -r owner/repo

# Show what's new
pr-vibe changelog

Enhanced Output

pr-vibe now provides richer information about your PR:

  • Bot Approval Status: See which bots approved your PR
  • Priority Breakdown: Comments categorized as must-fix, suggestions, or nitpicks
  • PR URL: Direct clickable link to your PR
  • Non-Critical Suggestions: Optional improvements shown with --show-all

Example output:

🔍 Analyzing PR #42...
📎 https://github.com/owner/repo/pull/42

🤖 Bot Approval Status
✅ CodeRabbit: Approved - 3 suggestions, 2 nitpicks
❌ DeepSource: Changes Requested - 1 must-fix, 2 suggestions

✨ Summary
  Total comments: 8
  By Priority:
    Must Fix: 1
    Suggestions: 5
    Nitpicks: 2

  (2 non-critical suggestions hidden - use --show-all to view)

# Check for updates
pr-vibe update

How It Works

  1. Fetches bot comments from your PR (CodeRabbit, Claude Code, DeepSource, etc.)
  2. Analyzes each comment with pattern matching and optional LLM
  3. Suggests actions: fix, explain, defer, or escalate
  4. Handles full conversations including follow-ups and rate limits
  5. Learns from your decisions to get smarter over time
  6. Saves you 20+ minutes per PR with heavy bot activity

Claude Code Integration

pr-vibe has special support for Claude Code reviews:

  • Confidence Levels: Extracts and uses Claude's confidence percentages (e.g., "95% confidence")
  • Categories: Understands Claude's MUST_FIX, SUGGESTION, NITPICK categories
  • Smart Handling: Skips re-analysis when Claude has already categorized issues
  • Priority Mapping: Maps Claude's priorities to pr-vibe's action system
  • Approval Detection: Recognizes when Claude approves changes

Example Claude Code comment handling:

Claude Code: "MUST_FIX: SQL injection vulnerability (95% confidence - FACT)"
pr-vibe: Automatically marks for fixing without re-analysis

Pattern Learning

pr-vibe gets smarter with each use. When you reject a bot suggestion as valid for your project, pr-vibe remembers:

# .pr-bot/patterns.yml
valid_patterns:
  - id: console-log-lambda
    pattern: "console.log"
    condition:
      files: ["**/lambda/**", "**/*-handler.js"]
    reason: "We use console.log for CloudWatch logging"
    confidence: 1.0

LLM Integration (Optional)

Enhance pr-vibe with LLM analysis:

# Use Claude (recommended)
export ANTHROPIC_API_KEY=your-api-key
pr-vibe pr 42 --llm anthropic

# Use GPT-4
export OPENAI_API_KEY=your-api-key  
pr-vibe pr 42 --llm openai

# No LLM needed - pattern matching works great!
pr-vibe pr 42

Priority-Based Filtering

Focus on what matters most with intelligent priority filtering:

Priority Levels

  • Must Fix 🔴: Security vulnerabilities, bugs, breaking changes
  • Suggestion 🟡: Code quality, performance, type safety improvements
  • Nitpick ⚪: Style, formatting, minor cosmetic issues

Filtering Options

# Only show critical issues that must be fixed
pr-vibe pr 42 --critical-only

# Show must-fix and suggestions (hide nitpicks)
pr-vibe pr 42 --priority-threshold suggestion

# Custom threshold - show all at or above specified level
pr-vibe pr 42 --priority-threshold nitpick  # Shows everything

Use Cases

  1. Pre-release Review: Use --critical-only to focus on blockers
  2. Regular Development: Use --priority-threshold suggestion for balanced review
  3. Code Quality Sprint: Review all comments including nitpicks
  4. Quick Fix Mode: Combine --critical-only --auto-fix for rapid resolution

Priority Summary

Every pr-vibe run shows a priority breakdown:

By Priority:
  Must Fix: 2
  Suggestions: 5
  Nitpicks: 3

📋 Filtered by priority:
  Nitpicks: 3 (hidden)

Smart Watch Mode

pr-vibe includes an intelligent watch mode that monitors your PR for bot activity:

  • Adaptive Polling: Starts with 5s intervals, gradually increases to 60s
  • Bot Completion Detection: Recognizes when bots finish their analysis
  • Expected Bot Tracking: Learns which bots typically review your PRs
  • Auto-Process Option: Automatically process comments when all bots complete
# Start watching immediately after creating a PR
gh pr create ...
pr-vibe watch 123

# Auto-process when all bots complete their reviews
pr-vibe watch 123 --auto-process

# Watch with custom timeout and auto-fix
pr-vibe watch 123 --auto-process --auto-fix --timeout 20

Smart polling intervals:

  • 0-30s: Check every 5s (bots respond quickly)
  • 30s-2m: Check every 10s (most bots have arrived)
  • 2-5m: Check every 20s (waiting for slower bots)
  • 5m+: Check every 30s (long-running analysis)

Conversation Management

pr-vibe now handles full conversations with bots:

  • Waits for bot responses instead of assuming completion
  • Detects rate limits and waits appropriately
  • Handles corrections when bots clarify misunderstandings
  • Resolves threads automatically when consensus is reached
  • Escalates to humans after too many rounds
  • Handles long messages by automatically truncating to fit GitHub's 65,536 character limit

Example conversation flow:

You: "This is intentional for CloudWatch"
Bot: "Actually, I was referring to the ESLint issue..."
pr-vibe: "Thank you for the clarification. You're right about the ESLint configuration..."
Bot: "LGTM! Thanks for addressing this."
[Thread resolved automatically]

Message Length Handling

GitHub limits comment bodies to 65,536 characters. pr-vibe automatically:

  • Detects when responses exceed the limit
  • Truncates intelligently at natural boundaries (code blocks, paragraphs)
  • Adds a notice indicating content was truncated
  • Retries with aggressive truncation if needed

CLI Workflow Example

# Morning: New PR from your teammate
$ pr-vibe pr 147
🔍 Found 12 bot comments from CodeRabbit

Bot: "Missing null check on user.email"
> What would you like to do?
  ✓ Apply fix

Bot: "console.log found in production code"  
> What would you like to do?
  ✓ Post reply: "We use console.log for CloudWatch"

[pr-vibe detects rate limit from CodeRabbit]
⏳ Rate limit detected. Waiting 60 seconds...

[After bot responds with clarification]
💬 CodeRabbit: "Thanks for the explanation. Makes sense for Lambda!"
✅ Thread resolved automatically

Summary: Fixed 8 issues, explained 3 patterns, skipped 1
Time saved: ~22 minutes

Reporting & Review

pr-vibe now generates detailed reports for every PR processed:

Comprehensive Reports

  • Detailed decision log - See exactly what was done and why
  • Conversation transcripts - Full dialogue history with bots
  • Confidence scores - Know how certain pr-vibe was about each decision
  • Pattern tracking - See which patterns were applied
  • Time metrics - Track processing time and time saved

Report Storage

  • Reports saved to .pr-bot/reports/pr-{number}/
  • Both Markdown and JSON formats
  • Automatic cleanup after 30 days (configurable)
  • Keep latest 5 reports per PR regardless of age
# View latest report
pr-vibe report 42

# List all available reports
pr-vibe report 42 --list

# Get JSON for programmatic access
pr-vibe report 42 --json

Pre-Merge Safety

Never accidentally merge a PR with unresolved bot comments:

Check Command

# Returns exit 0 if ready, 1 if not
pr-vibe check 42

# Example output:
✅ Bot Comment Status:
  - CodeRabbit[bot]: 12/12 resolved ✓
  - DeepSource[bot]: 3/3 resolved ✓
  - Total: 15/15 (100%)

✅ PR is ready to merge!

GitHub Status Checks

# Post status to GitHub
pr-vibe status 42 --post

# Creates a status check that shows:
# ✅ "All bot comments resolved (15/15)"
# ❌ "3 bot comments need attention"

CI Integration

# .github/workflows/pr-check.yml
- name: Check bot comments resolved
  run: |
    npx pr-vibe check ${{ github.event.pull_request.number }}

Advanced Features

Export Mode for Claude Code

Perfect for AI-powered development workflows:

# Export PR comments for Claude Code analysis
pr-vibe export 42 --format claude

# Creates a markdown report optimized for LLM analysis

Team Patterns (Experimental)

Learn from human reviews too:

pr-vibe pr 42 --experimental

# Now tracks patterns from senior developers
# "When Alice requests a refactor, it's usually about service boundaries"
# "Bob always flags missing integration tests"

Project Philosophy

pr-vibe embodies "vibe coding" - the idea that AI tools should work together harmoniously. Instead of fighting with bots or explaining the same patterns repeatedly, let pr-vibe orchestrate the conversation while you focus on building great software.

This tool was born from real frustration during PR reviews and built by Claude while actually responding to CodeRabbit comments. It's uniquely positioned to understand the AI-to-AI collaboration space because it emerged from that exact use case.

Contributing

We love contributions! See CONTRIBUTING.md for guidelines.

# Fork and clone
git clone https://github.com/yourusername/pr-vibe.git
cd pr-vibe

# Install dependencies
npm install

# Run tests
npm test

# Make your changes and submit a PR!

Sponsors

pr-vibe is open source and free forever. If it saves you time, consider sponsoring:

Sponsor on GitHub

Your support helps maintain and improve pr-vibe for everyone! 💜

License

MIT © Andrew Stroup and pr-vibe contributors


Built with 💜 by Claude and the vibe coding community

Remember: Code reviews are better when tools vibe together 🎵

更新日志

Changelog

All notable changes to pr-vibe will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[0.13.0] - 2025-07-22

🐛 Fixed

  • Enhanced Bot Comment Detection - Fixed issue where pr-vibe would miss inline review comments from bots
    • Now properly detects nested PR review comments even when parent review says "0 actionable comments"
    • Fixed handling of empty/undefined comment bodies
    • Added comprehensive debug logging to trace comment processing

✨ New Features

  • Expanded AI Tool Support - Added detection for more AI code review tools:
    • GitHub Copilot
    • Codacy
    • CodeGeeX
    • ReviewDog
    • PR Bot
    • Generic bot detection for any tool with [bot] suffix

📚 Documentation

  • Added "Supported Bots" section to README
  • Listed all supported bot types with descriptions
  • Clarified inline review comment handling

🔧 Technical Improvements

  • Enhanced bot detector to handle edge cases (null/undefined bodies)
  • Added comprehensive test coverage for bot comment structures
  • Improved PR review comment association logic

[0.12.1] - 2025-07-07

🐛 Fixed

  • Bot Detection Gap - Fixed pr-vibe's inability to detect CodeRabbit PR review comments
    • Added special handling for pr_review_comment type in bot detector
    • These comments are now processed even if parent review says "0 actionable comments"
    • Fixes issue where pr-vibe couldn't detect its own PR reviews

🔧 Technical Details

  • CodeRabbit posts review comments attached to a PR review that says "Actionable comments posted: 0"
  • The actual actionable comments are in the review.comments array
  • Added unit tests to prevent regression

🚀 Dependencies Updated

  • dotenv: 16.5.0 → 17.0.1
  • @anthropic-ai/sdk: 0.30.1 → 0.56.0
  • openai: 4.104.0 → 5.8.2
  • @octokit/rest: 21.1.1 → 22.0.0

[0.12.0] - 2025-07-07

🎯 Priority-Based Filtering

  • --critical-only flag - Focus on must-fix issues only (security, bugs, breaking changes)
  • --priority-threshold option - Filter by priority level: must-fix, suggestion, or nitpick
  • Priority breakdown in summary - Shows count of comments by priority level
  • Filtered count display - Shows how many comments were hidden by priority filter

🔧 Technical Improvements

  • Priority levels exported from decision-engine: MUST_FIX, SUGGESTION, NITPICK
  • All comments now include priority assignment based on category
  • Priority filtering logic with configurable thresholds
  • Validation to prevent conflicting filter options

📊 Enhanced Output

  • AI Analysis now shows priority level for each comment
  • Final summary includes priority breakdown
  • Filtered items are tracked and displayed
  • Clear indication when comments are skipped due to filtering

Example Usage

# Focus on critical issues only
pr-vibe pr 123 --critical-only

# Show must-fix and suggestions
pr-vibe pr 123 --priority-threshold suggestion

# Combine with auto-fix for rapid resolution
pr-vibe pr 123 --critical-only --auto-fix

[0.11.0] - 2025-07-07

🎉 Smart Watch Mode

  • Intelligent PR monitoring - Watch for bots with adaptive polling intervals
  • Bot completion detection - Recognizes when bots finish their analysis
  • Expected bot tracking - Learns which bots typically review your PRs
  • Auto-process option - --auto-process flag to automatically handle comments when all bots complete

🔧 Technical Improvements

  • Adaptive polling intervals:
    • 0-30s: Check every 5 seconds (rapid bot response period)
    • 30s-2m: Check every 10 seconds (most bots have responded)
    • 2-5m: Check every 20 seconds (waiting for slower bots)
    • 5m+: Check every 30 seconds (long-running analysis)
  • Completion signal patterns - Detects "review complete", "analysis finished", "approved", "LGTM"
  • Bot response time tracking - Learns average response times for each bot
  • Smart status updates - Spinner shows which specific bots are still pending

📊 Enhanced UX

  • Shows bot completion status in real-time
  • Displays which bots have been detected vs still waiting
  • Clear messaging when all bots complete
  • Option to process immediately, wait for more, or exit

Example Usage

# Start watching after creating PR
gh pr create ...
pr-vibe watch 123

# Auto-process when ready
pr-vibe watch 123 --auto-process

# Custom timeout
pr-vibe watch 123 --timeout 30

[0.10.0] - 2025-07-07

📋 Merge Readiness Integration

  • Merge readiness summary - Shows clear checklist at the end of every pr command
  • Smart status detection - Combines bot approvals, critical issues, and CI status
  • Visual indicators - ✅/❌ marks show what's passing or blocking merge
  • Clear guidance - "Ready to merge!" or specific reasons why not

🔧 Improvements

  • Professional polish - Fixed potential NaN% confidence displays
  • Consistent experience - Merge readiness shown for both issue and no-issue cases
  • CI integration - Automatically checks GitHub Actions/checks status

Example Output

📋 Merge Readiness:
  ✅ All bot reviews passed
  ✅ No critical issues found
  ✅ CI checks passing (5/5)

  ✅ Ready to merge!

[0.9.0] - 2025-07-07

✨ Enhanced "No Issues Found" Experience

  • Positive messaging - Replace warning "⚠️ No actionable bot comments found" with celebratory "✅ All bot reviews passed!"
  • Bot approval detection - Detect and display approval status for each bot (LGTM, approved, no issues found)
  • Issue breakdown - Show summary counts like "3 suggestions, 2 nitpicks" when bots provide details
  • CI status display - Show GitHub check runs with "3/5 checks passing (2 pending)" format
  • PR URL with hyperlinks - Display clickable PR URL using terminal hyperlink support
  • Progressive disclosure - New --show-all flag to optionally view non-critical suggestions

🔧 Technical Improvements

  • Added detectApproval() method to BotDetector for recognizing approval signals
  • Added extractIssueSummary() method to parse issue counts from bot comments
  • Implemented missing setBotApproval() method in ReportBuilder
  • Added getPRChecks() method to GitHubProvider for CI status
  • Track non-critical suggestions separately with addNonCriticalSuggestion()
  • Enhanced report structure with bot approvals and non-critical sections

📚 Testing

  • Added comprehensive test coverage for bot approval detection
  • Added tests for CI status structure validation
  • Added tests for CLI enhancement behaviors

[0.8.0] - 2025-06-23

🤖 Claude Code Integration

  • Full Claude Code Support - Special handling for Claude Code GitHub app reviews
    • Detects Claude Code bot comments and reviews automatically
    • Extracts confidence levels (e.g., "95% confidence - FACT")
    • Understands Claude's categories: MUST_FIX, SUGGESTION, NITPICK
    • Maps Claude's priorities to pr-vibe's action system
    • Skips redundant LLM analysis when Claude has already categorized

🎯 Smart Analysis

  • Claude Code comments are trusted as high-quality analysis
  • Automatically uses Claude's confidence scores
  • Recognizes Claude Code approvals (LGTM, approve)
  • Handles @claude mentions in comments

🔧 Technical Improvements

  • Added claudeCode bot type to bot-detector.js
  • New parseClaudeCodeReview() method for parsing Claude's format
  • Decision engine now checks for Claude's existing analysis
  • Conversation manager handles Claude Code's specific responses

📚 Documentation

  • Updated README with Claude Code integration details
  • Added examples of Claude Code comment handling
  • New test suite for Claude Code integration

[0.6.1] - 2025-06-20

🐛 Fixed

  • Fixed false positive security categorization - ESLint style warnings no longer flagged as security vulnerabilities
    • Type imports (e.g., "prefer type-only import") now correctly categorized as STYLE, not SECURITY
    • Empty catch blocks now correctly categorized as CODE_QUALITY, not SECURITY
    • Console.log statements now correctly categorized as DEBUG, not SECURITY
    • Added context-aware categorization that checks style patterns before security patterns
    • Commit messages now accurate: "style: Apply code formatting" instead of "SECURITY: Fixed vulnerability"

🔧 Improvements

  • Added new issue categories: STYLE and DEBUG for better classification
  • Enhanced bot comment parsing to understand CodeRabbit severity indicators (⚠️ ≠ security)
  • Added comprehensive test suite for categorization logic

[0.7.0] - 2025-06-22

🎉 Major Features

  • Enhanced Comment Categorization - Better visibility into all bot feedback
    • Priority-based categorization: must-fix vs suggestions vs nitpicks
    • Bot approval status shown in summary (e.g., "CodeRabbit: Approved")
    • --show-all flag to display non-critical suggestions
    • PR URL included in output with terminal hyperlink support
    • Comments grouped by priority in reports

🤖 Bot Review Summary

  • Shows which bots approved your PR at a glance
  • Displays breakdown of comment types per bot
  • Clear indication of actionable vs non-actionable items

📊 Enhanced Reports

  • New "Bot Review Summary" section at top of reports
  • "Non-Critical Suggestions" section for optional improvements
  • Priority breakdown in summary statistics
  • Better organization of comments by severity

🔧 Improvements

  • Added PRIORITY_LEVELS export for consistent categorization
  • Enhanced decision engine to include priority in all analyses
  • Terminal hyperlink support for PR URLs (supported terminals only)
  • Report builder tracks bot approvals and priority counts

📚 Documentation

  • Updated README with enhanced output examples
  • Added priority filtering documentation
  • Documented new bot approval summary feature

[Unreleased]

🎉 Major Features

  • GitHub Issue Creation for Deferred Items - Never lose important bot feedback
    • --create-issues flag to automatically create issues when deferring items
    • New pr-vibe issues <pr> command to create issues from saved reports
    • Issues include full context: bot name, PR link, file/line info, decision reasoning
    • Automatic labeling with bot-feedback, pr-vibe, and bot-specific labels
    • Track created issues in reports and PR summaries
    • --dry-run support to preview issues before creation

🔧 Improvements

  • Enhanced ReportBuilder to track issue URLs for deferred items
  • Updated PR summary to show count of issues created
  • Added dedicated "Deferred to Backlog" section in reports
  • New "Created Issues" section in PR comment summary

📚 Documentation

  • Added issue creation commands to README
  • Created examples/issue-creation-demo.js to showcase the feature

[0.6.0] - 2025-06-19

🎉 Major Features

  • Nit Comment Filtering - Focus on what matters with intelligent nit detection
    • --skip-nits flag to exclude minor style/formatting comments
    • --nits-only flag to review only nitpick comments
    • Detects common nit patterns: "nit:", "minor", "consider", "style", etc.
    • Recognizes CodeRabbit's "review details" and "additional comments" sections
    • 90%+ confidence in nit detection
    • New NIT action type in decision engine with lower priority

🔧 Improvements

  • Enhanced bot detection to track whether comments are nitpicks
  • Updated UI to show [NIT] indicator for nitpick comments
  • Added comprehensive test suite for nit detection
  • Created example demo script showing nit filtering in action

📚 Documentation

  • Added nit filtering options to README
  • Created examples/nit-filtering-demo.js to demonstrate the feature

[0.5.0] - 2025-06-19

🎉 Major Features

  • PR Review Detection - Now detects CodeRabbit and other bots that post as PR reviews

    • Added getReviews() method to fetch GitHub PR reviews
    • Processes both inline comments AND PR reviews
    • Parses CodeRabbit's structured format ("Actionable comments posted: N")
  • Smart Watch Mode - New pr-vibe watch <pr> command for seamless workflow

    • Intelligent polling: 5s intervals for first 30s, then 15s, then 30s
    • Live progress updates showing elapsed time
    • Auto-processes when bots arrive
    • Perfect for use right after creating a PR
  • Nit Comment Filtering - Focus on what matters with intelligent nit detection

    • --skip-nits flag to exclude minor style/formatting comments
    • --nits-only flag to review only nitpick comments
    • Detects common nit patterns: "nit:", "minor", "consider", "style", etc.
    • Recognizes CodeRabbit's "review details" and "additional comments" sections
    • 90%+ confidence in nit detection
  • Bot-Specific Detection - New bot-detector.js with confidence-based detection

    • Detects CodeRabbit, DeepSource, SonarCloud, CodeClimate, Snyk
    • Filters out non-actionable content (summaries, metadata)
    • 95% confidence for known bots
    • Parses bot-specific review formats

🔧 Improvements

  • Better Error Messages - Shows exactly what was found

    • Displays comment counts by type (issue, review, PR review)
    • Lists which bots were detected or skipped
    • Explains why comments weren't processed
    • Suggests using watch mode for fresh PRs
  • Debug Mode - New --debug flag for troubleshooting

    • Shows all API calls and responses
    • Displays detection logic and confidence scores
    • Helps diagnose why bots aren't being detected
  • Confidence Tracking - Every decision now includes confidence levels

    • 95% confidence for pattern matching
    • 90-95% for security issues
    • 70% for architectural discussions
    • Reports show average confidence

🚀 Usage

# New seamless workflow
gh pr create ...
pr-vibe watch 123  # Waits for and processes bot reviews automatically

[0.4.1] - 2025-06-19

🐛 Fixed

  • CLI Changelog Command - Updated hardcoded version from 0.2.0 to current version
    • The pr-vibe changelog command now correctly shows v0.4.0 as the current version
    • Added automated changelog version updates to CI/CD pipeline
    • Future releases will automatically update the CLI changelog

🔧 Improved

  • Release Process - Added automated changelog version synchronization
    • Created scripts/update-changelog-version.js to sync CLI with package.json version
    • Updated GitHub Actions workflows to run changelog update during releases
    • Ensures users always see the correct version information

[0.4.0] - 2025-06-18

✨ Added

  • Comprehensive Reporting System - Detailed decision logs for every PR review

    • ReportBuilder generates structured reports with bot comments, decisions, and actions
    • Reports saved in .pr-bot/reports/ in both Markdown and JSON formats
    • Automatic TTL management (30-day retention by default)
  • Pre-Merge Safety Commands - New commands to ensure PR readiness

    • pr-vibe check <pr> - Exit code 0/1 for CI integration
    • pr-vibe status <pr> - View or post GitHub status checks
    • pr-vibe report <pr> - Access saved reports
    • pr-vibe cleanup - Remove old reports

🐛 Fixed

  • Critical File Replacement Bug - pr-vibe no longer replaces files with TODO placeholders
    • Fixed decision-engine.js to return null instead of TODO strings
    • Added safety checks in file-modifier.js
    • Prevents accidental file corruption

[0.3.4] - 2025-06-18

🐛 Fixed

  • CRITICAL: Restored missing demo command that was accidentally removed in v0.3.3
    • The demo command is essential for the zero-setup experience
    • Now npx pr-vibe@latest demo works correctly again
    • No authentication required for demo mode

[0.3.3] - 2025-06-18

🔒 Security

  • CRITICAL: Fixed shell injection vulnerability in GitHub comment posting
    • Replaced direct shell interpolation with safe execFileSync calls
    • Uses temp files or stdin to pass comment bodies securely
    • Prevents command injection from untrusted bot responses

🐛 Fixed

  • GitHub Comment Length Limit - Automatically handles messages exceeding GitHub's 65,536 character limit
    • Intelligent truncation at natural boundaries (code blocks, paragraphs)
    • Adds truncation notice to inform users when content is cut
    • Automatic retry with aggressive truncation on API validation errors
    • Prevents 422 errors when posting long responses
  • Message Splitting - Fixed bug that dropped content when splitting long messages
    • Correctly tracks raw content length vs augmented length with markers
    • Ensures all content is preserved when splitting across multiple comments

🔧 Added

  • MessageTruncator utility for handling long messages
  • Comprehensive tests for message truncation logic
  • Documentation for message length handling in README

[0.3.2] - 2025-06-18

🐛 Fixed

  • Version display in CLI now correctly reads from package.json instead of being hardcoded

[0.3.1] - 2025-06-18

🐛 Fixed

  • Corrected npm homepage URL to point to GitHub Pages site

[0.3.0] - 2025-06-18

🚀 Added

  • Zero-Setup Demo Mode - Try pr-vibe instantly with npx pr-vibe@latest demo
  • Full Conversation Management - Handles multi-round dialogues with review bots
  • Smart Token Detection - Automatically finds GitHub tokens from gh CLI, env vars, VS Code
  • Rate Limit Handling - Detects and waits for bot rate limits automatically
  • Conversation Monitoring - Tracks bot responses and continues dialogue until resolution
  • Progressive Enhancement - Works in limited mode for public repos without auth
  • Interactive Menu - Run pr-vibe without args for guided experience

🔧 Improved

  • Bot response detection now catches corrections and clarifications
  • Enhanced pattern matching for various rate limit messages
  • Better error messages with actionable solutions
  • Exponential backoff for checking bot responses
  • Thread resolution via GraphQL API
  • pr-vibe signatures on all bot responses

🐛 Fixed

  • Handles cases where bots correct misunderstandings
  • Properly waits for bot responses instead of using arbitrary timeouts
  • Resolved empty test file issues
  • Fixed demo.js corruption issues

[0.2.1] - 2025-06-17

🐛 Fixed

  • CRITICAL: Fixed missing pattern-manager.js implementation that caused import errors
  • Added comprehensive test suite to prevent file corruption
  • Added CI/CD pipeline with package validation
  • Added pre-publish validation script

🔧 Added

  • GitHub Actions workflow for automated testing
  • Package validation before npm publish
  • Integration tests for all critical imports
  • Demo recording script and test repository generator

[0.2.0] - 2025-06-17

✨ Added

  • Human review support with --include-human-reviews flag
  • Pattern learning from team feedback
  • Team playbook tracking for consistent reviews
  • Automatic update notifications
  • Case-insensitive bot detection (fixes CodeRabbit detection)
  • changelog and update commands

🔧 Improved

  • Better pattern confidence scoring
  • Enhanced learning algorithms
  • More informative CLI output

0.1.2 - 2025-06-17

Added

  • Full pattern learning system that remembers project-specific conventions
  • Interactive review mode with decision tracking
  • Export mode for Claude Code integration
  • Apply mode for batch processing decisions
  • Support for CodeRabbit, DeepSource, and other review bots
  • Auto-fix functionality for common issues
  • Global and project-specific pattern storage
  • Beautiful CLI interface with progress indicators
  • Comprehensive documentation and examples

Changed

  • Renamed from pr-bot-responder to pr-vibe for better branding
  • Improved command structure and options
  • Enhanced pattern matching algorithms

Fixed

  • Thread grouping for better conversation context
  • Error handling for missing GitHub tokens
  • Pattern confidence scoring

0.1.1 - 2025-06-16

Added

  • Initial prototype functionality
  • Basic GitHub PR comment fetching
  • Simple pattern matching

0.1.0 - 2025-06-16

Added

  • Project inception
  • Core architecture design
  • Initial package setup

Future Releases

[Unreleased]

  • Browser extension for inline PR reviews
  • Slack/Discord integration
  • Pattern marketplace
  • Visual pattern editor
  • Analytics dashboard