Files
claude-foundations/memory/script-list-transcripts-here.md
Paul O'Reilly 6fd0dac218 Add transcript backup tracking system and pre-compact hook improvements
- pre-compact-backup.sh: derive transcript path from session_id+cwd (no
  longer relies on transcript_path field that Claude Code stopped providing);
  register each backup in tracking.json after saving
- extract-transcripts.py: new script managing tracking.json — register,
  list, extract conversation text, mark-processed modes
- list-transcripts-here.sh: thin wrapper for extract-transcripts --list
  using $(pwd); needed because SKILL.md bang commands reject $() substitution
- install-hooks.sh: now also symlinks skill-helper scripts into
  ~/.claude/scripts/ via a curated SKILL_HELPERS list
- Memory docs: new script-extract-transcripts.md, script-list-transcripts-here.md;
  updated skill-log.md, script-install-hooks.md, MEMORY.md index

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-13 14:06:09 +12:00

1.1 KiB

script: list-transcripts-here

Location: claude-foundations/scripts/list-transcripts-here.sh
Symlinked to: ~/.claude/scripts/list-transcripts-here.sh

Purpose

Thin wrapper around extract-transcripts.py --list "$(pwd)". Exists because SKILL.md bang commands (!command``) cannot use $() substitution — the Claude Code permission checker rejects it. The wrapper runs the substitution internally (in bash, where it's fine) and outputs the result.

Usage

# From within a project directory
bash ~/.claude/scripts/list-transcripts-here.sh
# → JSON array of unprocessed transcript backups for the current cwd

How it works

Single line: python3 "$HOME/.claude/scripts/extract-transcripts.py" --list "$(pwd)"

Gotchas

  • Must be called with bash list-transcripts-here.sh (not python3) — it's a shell wrapper, not a Python script
  • Output is the same as extract-transcripts.py --list, so check that script's docs for the JSON format
  • The $() substitution is the entire reason this wrapper exists; if that restriction is ever lifted from SKILL.md bang commands, this wrapper can be removed