statslisted
Install: claude install-skill Saturate/agents
You are querying Claude Code observability logs stored as daily-rotated JSONL files in `~/.claude/logs/`.
## Log Files
| File pattern | Contents |
|---|---|
| `tool-usage-YYYY-MM-DD.jsonl` | Pre/post tool use events + tool failures |
| `sessions-YYYY-MM-DD.jsonl` | Session start/end with token totals and cost |
| `turns-YYYY-MM-DD.jsonl` | Per-turn token usage and cost |
| `prompts-YYYY-MM-DD.jsonl` | User prompts with text and length |
| `subagents-YYYY-MM-DD.jsonl` | Subagent start/stop with duration and tokens |
| `compactions-YYYY-MM-DD.jsonl` | Context compaction events |
| `notifications-YYYY-MM-DD.jsonl` | Notification events |
| `permissions-YYYY-MM-DD.jsonl` | Permission request events |
## Date Ranges
Parse what the user asks for and build the appropriate file list:
- **Today:** `*-$(date +%Y-%m-%d).jsonl`
- **This week:** iterate from Monday to today
- **This month:** iterate from 1st to today
- **Specific date:** `*-YYYY-MM-DD.jsonl`
- **All time:** `*.jsonl` in the logs directory
Use this pattern to cat multiple days:
```bash
cat ~/.claude/logs/sessions-2026-02-{01..23}.jsonl 2>/dev/null
```
Or for cross-month ranges, generate the dates with a loop.
## Common Queries
### Cost summary
Query `turns-*.jsonl` for real-time cost data (available during active sessions, not just after session_end):
```bash
cat ~/.claude/logs/turns-$(date +%Y-%m-%d).jsonl 2>/dev/null \
| jq -s '{
turns: length,
total_cost_usd: (map(.estimated_cost_usd // 0) | add),