rr-debugger

Automate deterministic debugging of crashes and ASAN faults with rr record-replay.

Updated Apr 28, 2026
One-click install
npx skills add https://github.com/roberttmadsen13-del/TOURney --skill rr-debugger-roberttmadsen13-del
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: rr-debugger
Source: https://github.com/roberttmadsen13-del/TOURney/tree/main/SKILLS/raptor-main/.claude/skills/crash-analysis/rr-debugger
Command: npx skills add https://github.com/roberttmadsen13-del/TOURney --skill rr-debugger-roberttmadsen13-del

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) components.

What problem does it solve?

Deterministic debugging of crashes and ASAN faults using rr record-replay, enabling reverse execution to find root causes.

Core Features & Use Cases

  • Deterministic record-replay debugging with full reverse execution capabilities.
  • Reverse execution commands: reverse-next, reverse-step, reverse-continue, reverse-stepi, reverse-nexti.
  • Crash trace extraction workflows for regular crashes and ASAN crashes.
  • Inspect variables and memory with standard gdb commands.
  • Automation script: scripts/crash_trace.py to automatically extract execution traces from rr recordings.

Quick Start

Run rr record <program> to create a crash trace, then rr replay and use reverse-next to inspect the steps leading to the crash.

Frequently Asked Questions about rr-debugger

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I debug a C++ crash deterministically using rr record-replay?

Deterministic debugging with rr record-replay records program execution to replay crashes identically. You record the program with rr, replay the recording, and use gdb reverse execution commands like reverse-next to step backwards and find the root cause.

What is reverse execution in gdb and how does it help with crash analysis?

Reverse execution in gdb allows you to step backwards through a recorded program execution. It helps crash analysis by letting you trace from the exact crash point back to the originating memory fault or ASAN error using commands like reverse-continue and reverse-stepi.

Can I use record-replay debugging to extract traces from ASAN faults?

Yes, rr record-replay supports ASAN faults. The automation script scripts/crash_trace.py automatically extracts execution traces from rr recordings of both regular crashes and ASAN crashes to identify the root cause.

Do I need gdb experience to use rr for reverse debugging?

Yes, basic gdb familiarity is required to navigate reverse workflows. You need to use standard gdb commands to inspect variables and memory, alongside rr-specific reverse execution commands like reverse-next and reverse-stepi during replay.

What's the best way to automate crash trace extraction from rr recordings?

The best way to automate crash trace extraction is using the provided scripts/crash_trace.py. It automatically extracts execution traces from your rr recordings, streamlining the deterministic debugging workflow for regular crashes and ASAN reports.

When should I use deterministic debugging instead of standard gdb for memory faults?

Use deterministic debugging when standard gdb fails to catch intermittent crashes or ASAN faults due to non-deterministic execution. rr record-replay guarantees identical replay, ensuring reverse execution reliably reaches the memory fault root cause.