checkpoint — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited checkpoint (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Run this checklist at a clean breakpoint to hold continuity across sessions and compactions. Perform each step — do not just print the checklist. Create one todo per step (1–4) and work them in order.
!`cat .checkpoint.config 2>/dev/null || cat .claude/checkpoint.config 2>/dev/null || echo "NO_CONFIG"`Resolve these keys from the block above (fall back to the defaults, and tell the user which you used):
| Key | Default | Meaning |
|---|---|---|
LIVING_DOC | docs/DESIGN.md | The source-verified "how" doc you keep non-stale. |
MEMORY_DIR | .claude/memory | Where durable memories live (one fact per file + MEMORY.md index). |
COMMIT_MODE | offer | offer = propose the commit and wait for OK. auto = commit without asking. |
COMMIT_CONVENTION | infer | infer from git log, or a freeform note overriding it. |
If NO_CONFIG: use the defaults, name them to the user, and mention they can run the worked example in the plugin README to create .checkpoint.config once per seat.
Outstanding work:
!`git status --short 2>/dev/null || echo "not a git repo"`Recent commits — infer author, message style, and co-author policy from these (do not impose your own):
!`git log -8 --pretty='format:%an <%ae> | %s' 2>/dev/null || echo "no git history"`COMMIT_MODE=auto).git push unless the user explicitly asks.MEMORY_DIR: one fact per file with a short slug name, then add a one-line pointer to MEMORY_DIR/MEMORY.md (the index). If a memory already covers the fact, update that file instead of duplicating. Convert relative dates ("yesterday") to absolute.LIVING_DOC)Update it so it is not stale. This step is governed by the two disciplines below — apply them before writing anything.
Skip if compaction is not imminent. If it is (context is filling, or a PreCompact nudge fired), append a fenced GO BLOCK anchored on current state so a post-compaction you can resume in one read. Put it where the next session will see it — top of LIVING_DOC under a ## Rehydrate heading, or a memory file. Include:
Keep it short — it is a launch pad, not a transcript.
Before writing any claim into LIVING_DOC, open the real code and confirm it — do not write from memory, from a docstring, or from a comment. A docstring or comment is not source of truth; it is the exact thing that rots. Verify against the code body: the wire-up, the default, the call site, as you're about to describe it.
Motivating failure: a stale docstring said a feature was "not wired" while the code wired it. A whole debugging session chased the wrong thing. Docs rot and mislead; verification is the fix.
Decisions enter LIVING_DOC as labeled claims, never as conversation transcript.
Pasting the back-and-forth in is the failure. Distill it to the claim and the why.
| Excuse | Reality |
|---|---|
| "I just read that code, I remember it" | Memory is what rots docs. Re-open the source before etching. |
| "I wrote this yesterday, I remember it" | Same trap. The docstring's author "remembered" too — and it was wrong. Re-open it. |
| "The docstring/comment says so" | Docstrings are the thing that goes stale — the motivating failure was a lying docstring. Verify the code body. |
| "I was told not to open files / we're over budget" | Then you may not state it as fact. Open it anyway, or label Unverified without asserting the claim's direction. |
| "It's obviously wired, no need to check" | The motivating failure was an "obvious" claim that was false. Check. |
| "Intent and fact are basically the same here" | They are not. A reader acts on present-tense claims. Label intent as intent. |
| "The conversation explains it best" | The reader doesn't have the conversation. A labeled claim + why survives compaction; a transcript doesn't. |
| "Compaction probably isn't that close" | If unsure, emit the go-block. It's cheap; losing state isn't. |
| "User didn't say I could commit" | Then offer, don't commit. Steps 2–4 still run. |
Report what you did per step (committed / memories written / doc sections refreshed and source-verified / go-block emitted or skipped) so the user can see the checkpoint actually ran.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.