nazgulloglisted
Install: claude install-skill OrodruinLabs/nazgul
# Nazgul Log
## Examples
- `/nazgul:log` — View unified timeline of all Nazgul activity (iterations, commits, reviews)
## Current State
- Iteration logs: !`tail -20 nazgul/logs/iterations.jsonl 2>/dev/null || echo "No iteration logs"`
- Recent commits: !`git log --oneline --grep="$(jq -r '.afk.commit_prefix // "feat("' nazgul/config.json 2>/dev/null)" -20 2>/dev/null || echo "No commits found"`
- Checkpoints: !`ls -1t nazgul/checkpoints/iteration-*.json 2>/dev/null | head -2 || echo "No checkpoints"`
## Instructions
Build a unified timeline from all Nazgul activity sources and present it as a formatted run history.
### Step 1: Parse All Sources
Gather events from the preprocessor data above. Each source provides different event types:
1. **Iteration logs** (`nazgul/logs/iterations.jsonl`): Each line is a JSON object. Iteration-boundary lines carry `iteration`, `timestamp`, `active_task`, `status`, `done`, `total`, `git_sha`, `blocked_reason`; some lines from other writers carry an `event` field (e.g. `stop_failure`, `task_completed`) plus `timestamp` instead. These are the primary timeline markers.
2. **Git commits** (filtered by commit prefix from config): Commits with the configured prefix represent state changes committed to disk. Read `afk.commit_prefix` from config to determine the grep pattern. Extract the timestamp, short hash, and message.
3. **Checkpoints** (`nazgul/checkpoints/iteration-*.json`): Each file captures a full snapshot at an iteration boundary.