Claude Code CommandGit Workflow10 installs

Git Bisect Helper

Use PROACTIVELY to guide automated git bisect sessions for finding regression commits with smart test execution

Install with the Claude Code Templates CLI
$ npx claude-code-templates@latest --command="git-workflow/git-bisect-helper" --yes

Requires Claude Code. The command adds this command to your project's .claudedirectory — nothing runs on ToolZip's servers.

What's inside this command

Component source

Git Bisect Helper & Automation

Automated git bisect session to find regression commits: $ARGUMENTS

Current Repository State

  • Current branch: !git branch --show-current
  • Recent commits: !git log --oneline -10
  • Git status: !git status --porcelain
  • Bisect status: !git bisect log 2>/dev/null || echo "No active bisect session"
  • Available tags: !git tag --sort=-version:refname | head -10

Task

Set up and manage an intelligent git bisect session to identify the exact commit that introduced a regression or bug.

Bisect Session Management

1. Session Initialization

  • Analyze commit history to suggest good/bad commit candidates
  • Set up bisect session with appropriate range
  • Validate that the range actually contains the regression
  • Create backup branch before starting bisect

2. Automatic Test Execution

  • Run specified test command at each bisect point
  • Interpret test results (exit codes, output patterns)
  • Automatically mark commits as good/bad based on test outcomes
  • Handle test environment setup/teardown

3. Manual Verification Support

  • Provide clear instructions for manual testing at each step
  • Show relevant changes in current commit
  • Guide user through good/bad decision process
  • Maintain bisect log with detailed reasoning

4. Smart Commit Analysis

  • Analyze commit messages for relevant keywords
  • Show file changes that might be related to the issue
  • Highlight suspicious patterns or large changes
  • Skip obviously unrelated commits when possible

Bisect Modes

Automatic Bisect (--auto [test-command])

# Automatically bisect using test command
/git-bisect-helper --auto "npm test"
/git-bisect-helper --auto "python -m pytest tests/test_regression.py"
/git-bisect-helper --auto "./scripts/check-performance.sh"
Process:
  • Run test command at each bisect point
  • Mark commit as good (exit code 0) or bad (non-zero)
  • Continue until regression commit is found
  • Provide detailed report of findings

Manual Guided Bisect

# Interactive bisect with guidance
/git-bisect-helper v1.2.0 HEAD
/git-bisect-helper abc123 def456
Process:
  • Show current commit details and changes
  • Provide testing suggestions
  • Wait for user input (good/bad)
  • Continue to next bisect point
  • Offer insights about current commit

Continue Existing Session (--continue)

# Resume interrupted bisect session
/git-bisect-helper --continue
Process:
  • Analyze current bisect state
  • Show progress and remaining steps
  • Continue with appropriate mode
  • Provide context from previous steps

Reset Session (--reset)

# Clean up and reset bisect session
/git-bisect-helper --reset
Process:
  • End current bisect session
  • Return to original branch
  • Clean up temporary files
  • Provide session summary

Intelligent Test Execution

Test Environment Detection

  • Node.js: Detect package.json and run appropriate package manager
  • Python: Identify requirements.txt, setup.py, pyproject.toml
  • Ruby: Look for Gemfile and use bundler
  • Java: Detect Maven (pom.xml) or Gradle (build.gradle)
  • Go: Identify go.mod and use go test
  • Rust: Detect Cargo.toml and use cargo test

Build System Integration

  • Run build process before testing if needed
  • Handle dependency installation for older commits
  • Manage environment variable requirements
  • Skip build for commits that don't compile (mark as bad)

Test Result Interpretation

  • Parse test output for meaningful error patterns
  • Distinguish between test failures and environment issues
  • Handle flaky tests with retry logic
  • Provide confidence levels for automated decisions

Commit Analysis Features

Change Impact Assessment

# Analyze current bisect commit
Files changed: !`git show --name-only --pretty="" HEAD`
Commit message: !`git log -1 --pretty=format:"%s"`
Author and date: !`git log -1 --pretty=format:"%an (%ar)"`

Regression Pattern Detection

  • Identify commits touching critical areas
  • Flag commits with suspicious change patterns
  • Highlight performance-related modifications
  • Detect dependency or configuration changes

Context Preservation

  • Maintain detailed log of bisect decisions
  • Record reasoning for each good/bad marking
  • Save test outputs for later analysis
  • Document environmental factors

Advanced Bisect Strategies

Skip Strategy for Build Issues

  • Automatically skip commits that don't compile
  • Handle dependency version conflicts
  • Skip commits with known build system issues
  • Focus bisect on functional commits only

Performance Regression Detection

  • Use performance benchmarks instead of pass/fail tests
  • Set acceptable performance thresholds
  • Track performance trends across commits
  • Identify performance cliff points

Multi-criteria Bisecting

  • Test multiple aspects simultaneously
  • Handle cases where good/bad isn't binary
  • Support complex regression scenarios
  • Provide weighted decision making

Bisect Session Reporting

Progress Tracking

Bisect Progress:
🎯 Target: Find regression in user authentication
📊 Commits remaining: ~4 (out of 127)
⏱️  Estimated time: 8 minutes
🔍 Current commit: abc123 - "refactor auth middleware"

Final Report

🎉 Regression Found!

Bad Commit: def456
Author: John Doe
Date: 2024-01-15 14:30:00
Message: "optimize database queries"

Files Changed:
- src/auth/database.js
- src/middleware/auth.js
- tests/auth.test.js

Bisect Log: 15 steps, 3 manual verifications
Total Time: 12 minutes

Recovery Commands:
git revert def456                    # Revert the problematic commit
git cherry-pick def456^..def456~1    # Cherry-pick the good parts

Integration with Development Workflow

CI/CD Integration

  • Use same test commands as CI pipeline
  • Respect CI environment variables
  • Handle containerized test environments
  • Integrate with existing quality gates

Team Collaboration

  • Share bisect sessions with team members
  • Document findings in issue tracking
  • Create reproducible bisect scripts
  • Establish team bisect best practices

Debugging Enhancement

  • Generate debug reports for problematic commits
  • Create minimal reproduction cases
  • Suggest fix approaches based on regression type
  • Link to relevant documentation or similar issues

Safety and Recovery

Session Backup

  • Create backup branch before starting
  • Save original HEAD position
  • Maintain recovery information
  • Handle interrupted sessions gracefully

Error Handling

  • Recover from corrupted bisect state
  • Handle repository state conflicts
  • Manage disk space issues during long bisects
  • Provide clear error messages and solutions

Example Workflows

Performance Regression

# Find when tests became slower
/git-bisect-helper --auto "timeout 30s npm test"

Feature Regression

# Find when feature X broke
/git-bisect-helper --auto "./test-feature-x.sh"

Build Regression

# Find when build started failing
/git-bisect-helper --auto "npm run build"

Manual Investigation

# Interactive bisect for complex issues
/git-bisect-helper v2.1.0 HEAD

The bisect helper provides intelligent automation while maintaining full control over the debugging process, making regression hunting efficient and systematic.

Type
Command
Category
Git Workflow
Installs
10
Source
GitHub ↗

Related Claude Code Commands

Catalog data and component content are sourced from the open-source davila7/claude-code-templates project (MIT license). ToolZip curates the listing and writes original descriptions; every component links back to its original source. Claude Code is a product of Anthropic. ToolZip is an independent catalog and is not affiliated with or endorsed by Anthropic.