Agent Skills: Bug Detector Skill

Detects bugs, logic errors, and edge case handling issues in code. Use when reviewing code for runtime errors, null/undefined handling, type errors, and edge cases. Returns structured bug reports with file paths, line numbers, and suggested fixes.

UncategorizedID: thrawn01/claude-dotfiles/bug-detector

Install this agent skill to your local

pnpm dlx add-skill https://github.com/thrawn01/claude-dotfiles/tree/HEAD/skills/bug-detector

Skill Files

Browse the full folder contents for bug-detector.

Download Skill

Loading file tree…

skills/bug-detector/SKILL.md

Skill Metadata

Name
bug-detector
Description
Detects bugs, logic errors, and edge case handling issues in code. Use when reviewing code for runtime errors, null/undefined handling, type errors, and edge cases. Returns structured bug reports with file paths, line numbers, and suggested fixes.

Bug Detector Skill

Instructions

  1. Analyze code for potential bugs and logic errors
  2. Check for null/undefined handling
  3. Identify edge cases that aren't handled
  4. Look for type errors and runtime exceptions
  5. Check for off-by-one errors
  6. Identify race conditions (if applicable)
  7. Return structured bug reports with:
    • File path and line numbers
    • Description of the bug
    • Current problematic code
    • Suggested fix with code example
    • Reason why it's a bug
    • Priority (Must-Fix, Should-Fix, Nice-to-Have)

Examples

Input: JavaScript function without null check Output:

### BUG-001
- **File**: `utils.js`
- **Lines**: 15-18
- **Priority**: Must-Fix
- **Issue**: Function will crash if items parameter is null or undefined
- **Current Code**:
  ```javascript
  function calculateTotal(items) {
      return items.reduce((sum, item) => sum + item.price, 0);
  }
  • Suggested Fix:
    function calculateTotal(items) {
        if (!items || !Array.isArray(items)) {
            return 0;
        }
        return items.reduce((sum, item) => sum + item.price, 0);
    }
    
  • Reason: Calling reduce on null/undefined will throw TypeError

## Bug Types to Detect

- **Null/Undefined Errors**: Missing null checks before operations
- **Type Errors**: Wrong data types used in operations
- **Logic Errors**: Incorrect algorithm implementation
- **Edge Cases**: Unhandled boundary conditions
- **Off-by-One Errors**: Array/index boundary mistakes
- **Race Conditions**: Concurrent access issues (if applicable)
- **Division by Zero**: Missing zero checks
- **Array/Collection Errors**: Accessing invalid indices
- **Missing Return Values**: Functions that should return but don't
- **Incorrect Comparisons**: Wrong comparison operators

## Priority Guidelines

- **Must-Fix**: Bugs that cause crashes or incorrect behavior
- **Should-Fix**: Bugs that cause minor issues or unexpected behavior
- **Nice-to-Have**: Potential issues that might cause problems in edge cases