/rollback
Manage PDCA checkpoints and rollback — create, list, restore for safe recovery. Rollback events are recorded via lib/audit/audit-logger ACTION_TYPES.rollback_executed. For sprint-level recovery, individual feature rollbacks may be triggered from within sprint phases (sprint
$ npx -y skills add popup-studio-ai/bkit-claude-code --skill rollback --agent claude-codeHow 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
/rollback
Context preview
The summary Claude sees to decide when to auto-load this skill.
Manage PDCA checkpoints and rollback — create, list, restore for safe recovery. Rollback events are recorded via lib/audit/audit-logger ACTION_TYPES.rollback_executed. For sprint-level recovery, individual feature rollbacks may be triggered from within sprint phases (sprint
SKILL.md
rollback.SKILL.mdname: rollback
classification: workflow
classification-reason: Checkpoint and rollback management persists regardless of model advancement
deprecation-risk: none
effort: medium
description: |
Manage PDCA checkpoints and rollback — create, list, restore for safe recovery. Rollback events are recorded via lib/audit/audit-logger ACTION_TYPES.rollback_executed. For sprint-level recovery, individual feature rollbacks may be triggered from within sprint phases (sprint itself is forward-only — terminal state is `archived`, not rolled back; v2.1.13).
Triggers: rollback, checkpoint, restore, undo
argument-hint: "[list|to|phase|reset] [target]"
user-invocable: true
allowed-tools:
- Read
- Write
- Glob
- Grep
- Bash
- AskUserQuestion
imports: []
next-skill: null
pdca-phase: null
task-template: "[Rollback] {action}"Rollback Skill
> User-invocable skill for checkpoint management and PDCA state rollback.
Arguments
| Argument | Description | Example | |----------|-------------|---------| | (none) | List available checkpoints (same as `list`) | `/rollback` | | `list` | List all available checkpoints | `/rollback list` | | `to <checkpoint-id>` | Restore to a specific checkpoint | `/rollback to cp-1710842700000` | | `phase` | Rollback to previous PDCA phase | `/rollback phase` | | `reset <feature>` | Reset feature to initial (idle) state | `/rollback reset user-auth` |
Action Details
list (Default)
List all available checkpoints for the current or specified feature.
1. Read checkpoint metadata from `.bkit/checkpoints/` 2. Filter by current active feature (or show all if no active feature) 3. Sort by timestamp (newest first) 4. Display formatted checkpoint list
**Checkpoint Metadata Schema**:
{
"id": "cp-1710842700000",
"feature": "user-auth",
"phase": "design",
"type": "auto",
"timestamp": "2026-03-19T10:30:00.000Z",
"description": "Auto-checkpoint before Do phase",
"pdcaStatus": { "phase": "design", "matchRate": 0, "iterationCount": 0 },
"files": ["docs/02-design/features/user-auth.design.md"]
}**Output Format**:
--- Checkpoints: user-auth ------------------------
ID Phase Type Date Description
cp-1710842700000 design auto 2026-03-19 10:30 Before Do phase
cp-1710839100000 plan auto 2026-03-19 09:25 Before Design phase
cp-1710835500000 idle manual 2026-03-19 08:15 Manual save point
---------------------------------------------------
Total: 3 checkpoints
Usage: /rollback to cp-1710842700000
to <checkpoint-id>
Restore state to a specific checkpoint.
1. Validate the checkpoint ID exists in `.bkit/checkpoints/` 2. Read the checkpoint metadata and saved state 3. Display what will be restored (phase, files, status) 4. **Require user confirmation** via AskUserQuestion (always, regardless of automation level) 5. On confirmation: a. Create a safety checkpoint of current state (before rollback) b. Restore `pdca-status.json` to the checkpoint's saved state c. Restore any saved file snapshots d. Write audit log: `checkpoint_restored` e. Display confirmation with restored state 6. On rejection: Cancel and display current state
**Safety Rule**: Rollback operations ALWAYS require user confirmation, even at L4 (Full-Auto). This is a destructive operation.
phase
Rollback to the previous PDCA phase.
1. Read current feature state from `.bkit/state/pdca-status.json` 2. Determine previous phase using the PDCA phase order: `idle <- pm <- plan <- design <- do <- check <- act <- report <- archived` 3. If current phase is `idle`, display: "Already at initial state. Nothing to rollback." 4. Display the phase transition that will occur 5. **Require user confirmation** via AskUserQuestion 6. On confirmation: a. Create auto-checkpoint of current state b. Use `state-machine.transition()` with `ROLLBACK` event c. Update `pdca-status.json` with previous phase d. Write audit log: `phase_rollback` e. Display: "Rolled back from {current} to {previous}"
**Phase Rollback Map**: | Current Phase | Rolls Back To | |:-------------:|:-------------:| | pm | idle | | plan | pm (or idle if PM was skipped) | | design | plan | | do | design | | check | do | | act | check | | report | check | | archived | report |
reset <feature>
Reset a feature to its initial (idle) state.
1. Validate the feature exists in `pdca-status.json` 2. Display current feature state and what will be lost 3. **Require user confirmation** via AskUserQuestion with warning: "This will reset ALL PDCA progress for {feature}. Documents in docs/ will NOT be deleted." 4. On confirmation: a. Create auto-checkpoint of current state b. Use `state-machine.transition()` with `RESET` event c. Clear feature from active features list d. Reset all metrics (matchRate, iterationCount, etc.) e. Write audit log: `feature_reset` f. Display: "Feature {feature} reset to idle state. PDCA documents preserved in docs/."
**Important**: Reset does NOT delete documents from `docs/`. It only resets the PDCA status tracking. Use `/pdca cleanup` to remove archived status entries.
Checkpoint Types
| Type | Trigger | Description | |------|---------|-------------| | `auto` | Phase transition (Design->Do) | Automatic checkpoint at key transitions | | `manual` | User command | User-created save point | | `phase_transition` | Any phase change | Lightweight state snapshot | | `pre_rollback` | Before rollback | Safety checkpoint before destructive operation |
State Files
| File | Purpose | |------|---------| | `.bkit/checkpoints/cp-{timestamp}.json` | Checkpoint metadata and state snapshot | | `.bkit/state/pdca-status.json` | Current PDCA status (modified on rollback) |
Module Dependencies
| Module | Function | Usage | |--------|----------|-------| | `lib/control/checkpoint-manager.js` | `listCheckpoints()` | List available checkpoints | | `lib/control/checkpoint-manager
Read more
name: rollback
classification: workflow
classification-reason: Checkpoint and rollback management persists regardless of model advancement
deprecation-risk: none
effort: medium
description: |
Manage PDCA checkpoints and rollback — create, list, restore for safe recovery. Rollback events are recorded via lib/audit/audit-logger ACTION_TYPES.rollback_executed. For sprint-level recovery, individual feature rollbacks may be triggered from within sprint phases (sprint itself is forward-only — terminal state is `archived`, not rolled back; v2.1.13).
Triggers: rollback, checkpoint, restore, undo
argument-hint: "[list|to|phase|reset] [target]"
user-invocable: true
allowed-tools:
- Read
- Write
- Glob
- Grep
- Bash
- AskUserQuestion
imports: []
next-skill: null
pdca-phase: null
task-template: "[Rollback] {action}"Rollback Skill
> User-invocable skill for checkpoint management and PDCA state rollback.
Arguments
| Argument | Description | Example | |----------|-------------|---------| | (none) | List available checkpoints (same as `list`) | `/rollback` | | `list` | List all available checkpoints | `/rollback list` | | `to <checkpoint-id>` | Restore to a specific checkpoint | `/rollback to cp-1710842700000` | | `phase` | Rollback to previous PDCA phase | `/rollback phase` | | `reset <feature>` | Reset feature to initial (idle) state | `/rollback reset user-auth` |
Action Details
list (Default)
List all available checkpoints for the current or specified feature.
1. Read checkpoint metadata from `.bkit/checkpoints/` 2. Filter by current active feature (or show all if no active feature) 3. Sort by timestamp (newest first) 4. Display formatted checkpoint list
**Checkpoint Metadata Schema**:
{
"id": "cp-1710842700000",
"feature": "user-auth",
"phase": "design",
"type": "auto",
"timestamp": "2026-03-19T10:30:00.000Z",
"description": "Auto-checkpoint before Do phase",
"pdcaStatus": { "phase": "design", "matchRate": 0, "iterationCount": 0 },
"files": ["docs/02-design/features/user-auth.design.md"]
}**Output Format**:
--- Checkpoints: user-auth ------------------------ ID Phase Type Date Description cp-1710842700000 design auto 2026-03-19 10:30 Before Do phase cp-1710839100000 plan auto 2026-03-19 09:25 Before Design phase cp-1710835500000 idle manual 2026-03-19 08:15 Manual save point --------------------------------------------------- Total: 3 checkpoints Usage: /rollback to cp-1710842700000
to <checkpoint-id>
Restore state to a specific checkpoint.
1. Validate the checkpoint ID exists in `.bkit/checkpoints/` 2. Read the checkpoint metadata and saved state 3. Display what will be restored (phase, files, status) 4. **Require user confirmation** via AskUserQuestion (always, regardless of automation level) 5. On confirmation: a. Create a safety checkpoint of current state (before rollback) b. Restore `pdca-status.json` to the checkpoint's saved state c. Restore any saved file snapshots d. Write audit log: `checkpoint_restored` e. Display confirmation with restored state 6. On rejection: Cancel and display current state
**Safety Rule**: Rollback operations ALWAYS require user confirmation, even at L4 (Full-Auto). This is a destructive operation.
phase
Rollback to the previous PDCA phase.
1. Read current feature state from `.bkit/state/pdca-status.json` 2. Determine previous phase using the PDCA phase order: `idle <- pm <- plan <- design <- do <- check <- act <- report <- archived` 3. If current phase is `idle`, display: "Already at initial state. Nothing to rollback." 4. Display the phase transition that will occur 5. **Require user confirmation** via AskUserQuestion 6. On confirmation: a. Create auto-checkpoint of current state b. Use `state-machine.transition()` with `ROLLBACK` event c. Update `pdca-status.json` with previous phase d. Write audit log: `phase_rollback` e. Display: "Rolled back from {current} to {previous}"
**Phase Rollback Map**: | Current Phase | Rolls Back To | |:-------------:|:-------------:| | pm | idle | | plan | pm (or idle if PM was skipped) | | design | plan | | do | design | | check | do | | act | check | | report | check | | archived | report |
reset <feature>
Reset a feature to its initial (idle) state.
1. Validate the feature exists in `pdca-status.json` 2. Display current feature state and what will be lost 3. **Require user confirmation** via AskUserQuestion with warning: "This will reset ALL PDCA progress for {feature}. Documents in docs/ will NOT be deleted." 4. On confirmation: a. Create auto-checkpoint of current state b. Use `state-machine.transition()` with `RESET` event c. Clear feature from active features list d. Reset all metrics (matchRate, iterationCount, etc.) e. Write audit log: `feature_reset` f. Display: "Feature {feature} reset to idle state. PDCA documents preserved in docs/."
**Important**: Reset does NOT delete documents from `docs/`. It only resets the PDCA status tracking. Use `/pdca cleanup` to remove archived status entries.
Checkpoint Types
| Type | Trigger | Description | |------|---------|-------------| | `auto` | Phase transition (Design->Do) | Automatic checkpoint at key transitions | | `manual` | User command | User-created save point | | `phase_transition` | Any phase change | Lightweight state snapshot | | `pre_rollback` | Before rollback | Safety checkpoint before destructive operation |
State Files
| File | Purpose | |------|---------| | `.bkit/checkpoints/cp-{timestamp}.json` | Checkpoint metadata and state snapshot | | `.bkit/state/pdca-status.json` | Current PDCA status (modified on rollback) |
Module Dependencies
| Module | Function | Usage | |--------|----------|-------| | `lib/control/checkpoint-manager.js` | `listCheckpoints()` | List available checkpoints | | `lib/control/checkpoint-manager
A Claude Code plugin that verifies AI-generated code against its own design specs. Three commands. Anyone — even someone vibe-coding for the first time — can ship robust, production-quality software.
Repo: popup-studio-ai/bkit-claude-code
Other skills on bkit.
- /audit
View audit logs, decision traces, and session history for AI transparency. ACTION_TYPES (19 entries) include PDCA events (phase_transition, gate_passed/failed, agent_spawned/completed/failed, rollback_executed, destructive_blocked) and Sprint events (sprint_paused,
Open skill - /bkend-auth
bkend.ai authentication — email/social login, JWT tokens, RBAC, session management. Triggers: bkend auth, bkend login, bkend signup, bkend JWT, bkend RBAC
Open skill - /bkend-cookbook
bkend.ai project tutorials (todo to SaaS) and common error troubleshooting. Triggers: bkend tutorial, bkend cookbook, bkend troubleshooting
Open skill - /bkend-data
bkend.ai database — CRUD, column types, filtering, sorting, relations, indexing. Triggers: bkend table, bkend CRUD, bkend column, bkend relation, bkend data
Open skill - /bkend-quickstart
bkend.ai onboarding — MCP setup, resource hierarchy, tenant/user model, first project. Triggers: bkend quickstart, bkend onboarding, bkend setup, bkend MCP
Open skill - /bkend-storage
bkend.ai file storage — upload (presigned URL), download (CDN), visibility levels, buckets. Triggers: bkend file, bkend upload, bkend download, bkend storage, bkend presigned URL
Open skill

