dig
Mine Claude Code sessions — timeline, gaps, repo attribution, session history.
Skill by Soul-Brews-Studio
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/soul-brews-studio-dig
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: agent-building
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
- Runs as
- Python package
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/dig
What's inside
- Skill name
dig- Description
- Mine Claude Code sessions — timeline, gaps, repo attribution, session history. Use when user says "dig", "sessions", "past sessions", "timeline", "what did I work on", or wants to see session history. Do NOT trigger for finding code/projects (use /trace), exploring repos (use /learn), or current session status (use /recap).
- License
- MIT
- Instructions
- 187 lines in SKILL.md · view on GitHub
Before installing
- Ships executable scripts
Files (3)
- DEEP.md
- SKILL.md
- dig.py · scripts/
SKILL.md (first lines)
# /dig - Session Goldminer v2
Mine Claude Code session data for timelines, gaps, and repo attribution. No query needed.
## Usage
```
/dig # Current repo, 10 most recent
/dig [N] # Current repo, N most recent
/dig --all # All repos, ALL sessions (auto-detect count)
/dig --all [N] # All repos, N most recent
/dig --deep # Deep scan — ALL .jsonl files (not just most-recent per project)
/dig --deep [N] # Deep scan, N most recent
/dig --all --deep # All repos, deep scan — full coverage
/dig --timeline # Day-by-day grouped (current repo)
/dig --all --timeline # Day-by-day grouped (all repos, ALL sessions)
```
### Deep Mode (#216)
Standard `/dig` deduplicates by session basename — only showing the most recent file per session. This misses historical sessions, subagent sessions, and worktree sessions.
`--deep` scans ALL `.jsonl` files across all project directories. Output includes extra fields:
- `toolCalls` — number of tool invocations in the session
- `fileSizeKB` — session file size in KB
- Coverage metadata: `"X of Y sessions"` showing how many were returned vs found
### Timezone (#214)
dig.py v2 auto-detects timezone instead of hardcoding GMT+7:
1. `MAW_DISPLAY_TZ` env var (e.g., `Asia/Bangkok`, `7`, `America/New_York`)
2. `TZ` env var
3. System timezone
4. Fallback: UTC
Output metadata includes detected timezone name and offset.
## Step 0: Timestamp
```bash
date "+🕐 %H:%M %Z (%A %d %B %Y)"
ENCODED_PWD=$(pwd | sed 's|^/|-|; s|[/.]|-|g')
PROJECT_BASE=$(ls -d "$HOME/.claude/projects/${ENCODED_PWD}" 2>/dev/null | head -1)
export PROJECT_DIRS="$PROJECT_BASE"
# Strip -wt* suffix to find parent project dir
PARENT_ENCODED=$(echo "$ENCODED_PWD" | sed 's/-wt-[^/]*$//')
if [ "$PARENT_ENCODED" != "$ENCODED_PWD" ]; then
PARENT_BASE=$(ls -d "$HOME/.claude/projects/${PARENT_ENCODED}" 2>/dev/null | head -1)
[ -n "$PARENT_BASE" ] && export PROJECT_DIRS="$PROJECT_DIRS:$PARENT_BASE"
fi
# nullglob-safe worktree scan (both parent and self)
for base in "$PROJECT_BASE" "$PARENT_BASE"; do
[ -z "$base" ] && continue
for wt in "$base"-wt-*(N); do # (N) = zsh nullglob qualifier
[ -d "$wt" ] && export PROJECT_DIRS="$PROJECT_DIRS:$wt"
done
done
```
Encodes `pwd` the same way Claude does (replace `/` and `.` with `-`, prepend `-`) to match the `.claude/projects/` directory naming (e.g. `github.com` → `github-com`). Detects parent project from worktree dirs (strips `-wt-*` suffix) and includes both parent and self worktrees. The `(N)` qualifier prevents zsh crashes when no worktrees exist.
**With `--all`** (all repos):
```bash
export PROJECT_DIRS=$(ls -d "$HOME/.claude/projects/"*/ | tr '\n' ':')
```
## Step 2: Extract Session Data
Run the dig script. Pass `0` for `--all` (no limit), or N if user specified a count, default 10:
```bash
python3 ~/.claude/skills/dig/scripts/dig.py [N] [--deep]
# N=10 (default), N=0 (scan all sessions), N=50 (50 most recent)
# --deep: scan ALL .jsonl files (not just most-recent per basename)
```
### Deep Mode Display
When `--deep` is used, add extra columns to the table:
```markdown
| # | Date | Session | Min | Repo | Msgs | Tools | Size | Focus |
```
And show coverage in the footer:
```markdown
**Coverage**: [returned]/[found] sessions | **Timezone**: [tz_name] (GMT+[offset])
```
## Step 3: Display Timeline
Read the JSON output and display as a table. Sessions are chronological (oldest first). Gap rows (`type: "gap"`) span the session column with `· · ·` prefix:
```markdown
## Session Timeline
| # | Date | Session | Min | Repo | Msgs | Focus |
|---|------|---------|-----|------|------|-------|
| | | · · · sleeping / offline | | | | |
| 1 | 02-21 | 08:40–09:08 | 28m | oracle-skills-cli | 5 | Wire /rrr to read pulse data |
| | | · · · 45m gap | | | | |
| 2 | 02-21 | 09:55–10:23 | 28m | homelab | 3 | oracle-pulse birth + CLI flag |
| | | · · · no session yet | | | | |
**Dirs scanned**: [list PROJECT_DIRS]
**Total sessions found**: [count]
```
Column rendering rules:
- **Gap rows**: `| | | · · · [label] | | | | |` — number + date empty, label in Session col
- **Date**: `MM-DD` short format (strip year)
- **Session**: `HH:MM–HH:MM` using `startGMT7` and `endGMT7` (strip date, keep time only)
- **Min**: `[durationMin]m`
- **Repo**: use `repoName` field from dig.py output (resolved via ghq)
- **Msgs**: `realHumanMessages` countFrom Soul-Brews-Studio/arra-oracle-skills-cli, MIT.
More from Soul-Brews-Studio/arra-oracle-skills-cli
- 0.786score
round-table
Soul-Brews-Studio
Convene a Round Table (โต๊ะกลม): 3–8 souls — persona files, Oracles, or real people's DNA — debate ONE stakes-bearing decision over exactly 4 rounds (OPEN…
SkillAFreshness: A★ 125Claude Code +9 - 0.786score
soul
Soul-Brews-Studio
Bring an Oracle into the current repo — its soul, ALL its skills and its expertise — by link, never by copy.
SkillAFreshness: A★ 125Claude Code +9 - 0.740score
forward
Soul-Brews-Studio
Hand off the current session to the next one.
SkillBFreshness: B★ 125Claude Code +9 - 0.740score
recap
Soul-Brews-Studio
Session orientation and awareness — retro summaries, handoffs, git state, focus.
SkillBFreshness: B★ 125Claude Code +9 - 0.736score
rrr
Soul-Brews-Studio
Create a session retrospective with an AI diary and reusable lessons.
SkillBFreshness: B★ 125Claude Code +9 - 0.734score
feel
Soul-Brews-Studio
Capture how the system feels — energy, momentum, burnout, breakthrough.
SkillBFreshness: B★ 125Claude Code +9 - 0.734score
psi
Soul-Brews-Studio
Attach a code repo's ψ vault to a caretaker oracle — check, link, heal, unlink.
SkillBFreshness: B★ 125Claude Code +9 - 0.734score
oracle-title-forge
Soul-Brews-Studio
Forge a title + subtitle (or reframe) for a BOOK, article, talk, or any technical piece, then hand off to a cover so it has LIFE and honesty — not…
SkillBFreshness: B★ 125Claude Code +9 - 0.729score
learn
Soul-Brews-Studio
Explore a codebase with parallel Haiku agents — clone, read, and document.
SkillBFreshness: B★ 125Claude Code +9 - 0.729score
incubate
Soul-Brews-Studio
Clone or create repos for active development — the right hand of /learn.
SkillBFreshness: B★ 125Claude Code +9 - 0.724score
oracle-write-complete-book
Soul-Brews-Studio
Write a complete book from scratch — outline, parallel Sonnet drafting, Thai word break, typst PDF rendering, review, title brainstorm, publish to GitHub.
SkillBFreshness: B★ 125Claude Code +9 - 0.682score
project
Soul-Brews-Studio
Clone and track external repos.
SkillCFreshness: C★ 125Claude Code +9
Signals
- Stars
- 125
- Forks
- 58
- Open issues
- 26
- Last commit (this folder)
- Jul 15, 2026 (3 months ago)
- Last release
- Jul 25, 2026 (3 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
Same skill elsewhere
Copies of this SKILL.md published by others; search shows only one of them.
More from Soul-Brews-Studio
- 0.786score
soul
Soul-Brews-Studio
Bring an Oracle into the current repo — its soul, ALL its skills and its expertise — by link, never by copy.
SkillAFreshness: A★ 125Claude Code +9 - 0.786score
round-table
Soul-Brews-Studio
Convene a Round Table (โต๊ะกลม): 3–8 souls — persona files, Oracles, or real people's DNA — debate ONE stakes-bearing decision over exactly 4 rounds (OPEN…
SkillAFreshness: A★ 125Claude Code +9 - 0.740score
recap
Soul-Brews-Studio
Session orientation and awareness — retro summaries, handoffs, git state, focus.
SkillBFreshness: B★ 125Claude Code +9 - 0.740score
forward
Soul-Brews-Studio
Hand off the current session to the next one.
SkillBFreshness: B★ 125Claude Code +9 - 0.736score
rrr
Soul-Brews-Studio
Create a session retrospective with an AI diary and reusable lessons.
SkillBFreshness: B★ 125Claude Code +9 - 0.734score
psi
Soul-Brews-Studio
Attach a code repo's ψ vault to a caretaker oracle — check, link, heal, unlink.
SkillBFreshness: B★ 125Claude Code +9
Cite this page
dig skill. Agent Mart. https://agentmart.dev/skills/soul-brews-studio-dig (last updated 2026-10-24)