sfllisted
Install: claude install-skill wasulajr/headsup
# sfl: Save For Later (and resume)
Two modes. Default is **save**. If the invocation says `resume` (e.g. `/sfl resume`, or the launch prompt `/nil` injects), run **resume** instead.
---
## SAVE mode
Checkpoint the current window so any fresh session can pick it up with zero re-derivation. One required write, one optional write, then a banner.
### 1. Durable checkpoint (optional)
If you maintain a memory system (project memory files, a notes directory, anything persistent across sessions), write the fuller checkpoint there: what was done, what is pending, exact open questions, file and resource paths, decisions made. Convert relative dates to absolute. Distill; do not dump the transcript. Reference that file in the entry's `gov_memory` field in step 2.
If there is no memory system, skip this step. The entry file from step 2 is then the complete checkpoint, and `gov_memory:` is `(none)`.
### 2. Live per-window entry (what /nil consumes)
Resolve this window's identity:
```bash
~/.claude/sfl/lib/window-id.sh
```
It prints `LABEL=`, `SLUG=`, `CWD=`, `STAMP=`. The entry file is `~/.claude/sfl/<SLUG>.md`: **one file per window, and you overwrite it** (the newest sfl per window wins; that is the whole point, so do not append or version it).
**Write it through the Bash helper, NOT the Write tool.** Claude Code guards direct Write-tool access to its own config directory (`~/.claude/`), which prompts on every save. The helper `sfl-entry.sh` writes via the Bash tool instead (