Skip to content
Automation
Skill

/checkpoint

Record progress to subtask: Phase completion (from autoworker:code) or test results (from autoworker:test). Auto-detects upstream type from conversation context. Ends by calling autoworker:dispatch.

From plugin
autoworker
1811 skills1 command
Install
$ npx -y skills add phj128/autoworker --skill checkpoint --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/checkpoint

Context preview

The summary Claude sees to decide when to auto-load this skill.

Record progress to subtask: Phase completion (from autoworker:code) or test results (from autoworker:test). Auto-detects upstream type from conversation context. Ends by calling autoworker:dispatch.

SKILL.md

checkpoint.SKILL.md
name: checkpoint
description: |
  Record progress to subtask: Phase completion (from autoworker:code) or test results (from autoworker:test).
  Auto-detects upstream type from conversation context. Ends by calling autoworker:dispatch.

autoworker:checkpoint — Record Progress (Phase Check-off / Test Results)

Called after every autoworker:code or autoworker:test completion. Performs different record-keeping based on upstream type, then always calls autoworker:dispatch.

Execution Flow

1. Locate Subtask

Glob `subtask_*.md` (exclude subtask_template.md) →
  0 found → stop, prompt to create subtask
  1 found → use directly (backward compatible)
  multiple → grep `status:` to filter:
    - Files without status field treated as active (backward compatible)
    - Exactly 1 active → use it
    - 0 active → list all files + status, prompt user to choose
    - >1 active → report anomaly
→ Read → locate "## Plan", "## Verification Plan", and "## Test Results" sections

2. Determine Upstream Type

Prioritize conversation context; when context is insufficient, infer from file state:

  • **Upstream is autoworker:code**: Conversation contains Phase implementation content; or file has unchecked Phase with corresponding code files already modified
  • **Upstream is autoworker:test**: Conversation contains test execution output; or file has all Phases checked but incomplete test layers

3a. Upstream is autoworker:code → Phase Check-off

1. Extract the just-completed Phase number and Step list from conversation context 2. Edit subtask's "Plan" section: check off all Steps for that Phase `[x]` 3. Append completion record in "Progress Log" section:

**Phase X complete**
<brief change description>

3b. Upstream is autoworker:test → Test Results Write

1. Extract test level and per-item results from conversation context 2. Edit subtask's "Test Results" section, format:

### L<N>
- `<command>`: <output summary> PASS/FAIL

3. Check off passed items `[x]` in the "Verification Plan" section

4. Judgment Criteria

**Hard standard for "pass"**:

  • Function completes expected task and returns **meaningful results**
  • Returning empty array/empty string without error ≠ pass
  • "No exception thrown" ≠ pass

5. Output Summary

Checkpoint recorded:
- Type: Phase completion / Test record
- Content: Phase X checked off / L<N> results written
→ Invoking autoworker:dispatch

6. Chain: Immediately Invoke autoworker:dispatch

**After outputting the summary, immediately invoke `autoworker:dispatch`. Do not wait for user instructions, do nothing else.**

Important Notes

  • **Do not return to user mid-way**: After recording, go directly to autoworker:dispatch — don't report or ask
  • **Do not skip verification plan items**: The verification plan is a carefully considered product — don't ad-hoc decide "this one doesn't need testing"
  • **Chaining is mandatory**: Must invoke autoworker:dispatch after completion, cannot skip or manually substitute
Read more
Ships withautoworker

An auto-loop execution workflow with quality gates for Claude Code. Give Claude a task. Autoworker decomposes it, implements code, runs tests, and iterates through quality gates — autonomously looping until the job is done right.

Get the whole plugin
Stats
18
Stars
3
Forks
Maintained
Maintenance
Shell
Language
MIT
License
5mo ago
Last commit
6mo ago
Created

Repo: phj128/autoworker

Other skills on autoworker.