Deterministic debugging with rr record-replay. Use when debugging crashes, ASAN faults, or when reverse execution is needed. Provides reverse-next, reverse-step, reverse-continue commands and crash trace extraction.
Scanned 9/12/2026
Install to Claude Code
npx -y skills add thedixitjain/the-mega-skill-library --skill rr-debugger --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Rr Debugger?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/thedixitjain-rr-debugger)More formats (shields.io, HTML) on the badges page.
---
name: rr-debugger
description: "Deterministic debugging with rr record-replay. Use when debugging crashes, ASAN faults, or when reverse execution is needed. Provides reverse-next, reverse-step, reverse-continue commands and crash trace extraction."
category: engineering-core
source_repo: gadievron/raptor
source_path: ".claude/skills/crash-analysis/rr-debugger/SKILL.md"
source_url: https://github.com/gadievron/raptor/blob/HEAD/.claude/skills/crash-analysis/rr-debugger/SKILL.md
---
# rr Deterministic Debugger
rr provides deterministic record-replay debugging with full reverse execution capabilities.
## Core Workflow
1. **Record**: `rr record <program> [args]`
2. **Replay**: `rr replay` (enters gdb interface with reverse execution)
## Reverse Execution Commands
All standard gdb commands work, plus reverse variants:
- `reverse-next` / `rn`: Step back over function calls
- `reverse-step` / `rs`: Step back into functions
- `reverse-continue` / `rc`: Continue backward to previous breakpoint
- `reverse-stepi` / `rsi`: Step back one instruction
- `reverse-nexti` / `rni`: Step back over one instruction
## Crash Trace Extraction
### Regular Crashes
After `rr record <crashing-program>`:
```bash
rr replay
# In gdb:
reverse-next 100 # Go back 100 steps (adjust N as needed)
# Now step forward to see execution leading to crash:
next
next
...
```
### ASAN Crashes
After `rr record <asan-program>`:
```bash
rr replay
# In gdb:
bt # View stack trace
up # Issue "up" commands until last app frame (before ASAN runtime)
break *$pc # Set breakpoint at that location
reverse-continue # Go back to last app instruction before ASAN
# Now step forward to see execution leading to fault:
next
next
...
```
## Inspecting Variables and Memory
Standard gdb commands work at any point:
- `print <var>`: Print variable value
- `print *<ptr>`: Dereference pointer
- `x/<format> <address>`: Examine memory
- `x/10xb <addr>`: 10 bytes in hex
- `x/s <addr>`: String at address
- `info locals`: Show local variables
- `info args`: Show function arguments
## Source vs Assembly View
- `list`: Show source code around current location
- `disassemble`: Show assembly around current location
- `layout src`: TUI source view
- `layout asm`: TUI assembly view
- `set disassemble-next-line on`: Show assembly with each step
## Automation Script
Use `scripts/crash_trace.py` to automatically extract execution trace before crash.
---
**Source:** [`gadievron/raptor`](https://github.com/gadievron/raptor) → `.claude/skills/crash-analysis/rr-debugger/SKILL.md`
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!