원클릭으로
checkpoint
Mini session checkpoint — auto-save state for crash recovery
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Mini session checkpoint — auto-save state for crash recovery
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Routing work to agents with gc sling and formulas
DaysActivity.md formatting conventions. Use when writing handoff entries, hourly summaries, or any content destined for DaysActivity.md.
Prepend session handoff to DaysActivity.md (team-aware)
Initialize session with context briefing (team-aware)
| name | checkpoint |
| description | Mini session checkpoint — auto-save state for crash recovery |
| allowed-tools | Bash, Read, Write |
Lightweight state capture that runs on a timer. Designed to be invoked by /loop 30m /checkpoint so that if the session dies without a proper /handoff, the next /tap-in has something recent to work with.
Keep this fast and quiet. Minimal output to the user.
Always run as a background subagent. When this skill is invoked (by cron, /loop, or manually), spawn a background Agent to do the work. The checkpoint must never block the main conversation.
Agent({
description: "Checkpoint auto-save",
run_in_background: true,
prompt: "<the gather/write/log steps below, filled with repo path>"
})
Output one line after spawning: nothing — the agent reports "Checkpoint saved [HH:MM]" when it completes.
Run these in parallel:
# Git state
git -C "$CLAUDE_PROJECT_DIR" diff --stat HEAD 2>/dev/null || echo "no changes"
# Uncommitted files
git -C "$CLAUDE_PROJECT_DIR" status --porcelain 2>/dev/null | head -20
# Active beads
bd list --status in_progress 2>/dev/null | head -10
Write to .claude/state/checkpoint.json:
{
"zgent": "<repo basename>",
"timestamp": "<ISO 8601 UTC>",
"type": "checkpoint",
"git": {
"branch": "<current branch>",
"dirty_files": ["<list from git status --porcelain>"],
"diff_stat": "<git diff --stat summary line>"
},
"beads": {
"in_progress": ["<id> — <title>"]
},
"note": "<one sentence: what appears to be happening based on recent context>"
}
jq -n -c \
--arg ts "$(date -u +%Y-%m-%dT%H:%M:%S.%3NZ)" \
--arg sid "${CLAUDE_SESSION_ID:-unknown}" \
--arg zgent "$(basename "${CLAUDE_PROJECT_DIR:-$(pwd)}")" \
--arg event "checkpoint" \
'{ts:$ts, session_id:$sid, zgent:$zgent, event:$event}' \
>> /var/moo/logs/sessions.jsonl 2>/dev/null || true
One line only:
Checkpoint saved [HH:MM]
Do NOT produce a detailed summary. Do NOT ask the user anything. This runs in the background of an active session.
The next /tap-in should check for checkpoint.json when no snapshot.json exists: