Skills clawreverse
Inspect, checkpoint, rollback, and branch OpenClaw sessions with the ClawReverse plugin. Use when a user wants to recover from bad tool or file changes, restore a known-good checkpoint, inspect session lineage, create a child branch from an earlier point, or avoid re-spending tokens after a long OpenClaw run. Do not use for plain git history operations or non-OpenClaw workspaces.
git clone https://github.com/openclaw/skills
T=$(mktemp -d) && git clone --depth=1 https://github.com/openclaw/skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/binhuangpjlab/clawreverse-skill" ~/.claude/skills/clawdbot-skills-clawreverse-d13d58 && rm -rf "$T"
skills/binhuangpjlab/clawreverse-skill/SKILL.mdClawReverse
Use this skill for OpenClaw session recovery and branching.
ClawReverse is a native OpenClaw plugin that adds the
openclaw reverse command family for checkpoint listing, rollback, continue, checkout, and lineage inspection.
Use this skill when
- a user wants to undo a bad OpenClaw tool call or recover from unwanted file changes
- a user wants to restore a known-good point without rerunning the whole task
- a user wants to branch from an earlier checkpoint and keep the parent session untouched
- a user wants to inspect checkpoint lineage, rollback status, rollback reports, or branch records
- a user wants to save tokens after a long analysis run by continuing from a checkpoint instead of starting over
Do not use this skill when
- the task is a normal git revert, git checkout, or git branch workflow that should be handled directly with git
- the workspace is not managed by OpenClaw
- there are no OpenClaw sessions or checkpoints to operate on yet
Key behavior you should know first
- ClawReverse creates checkpoints before mutating tool calls. Read-only tools and read-only shell commands do not create checkpoints.
rewinds the current session to a checkpoint. By default it does not restore the live workspace files unlessrollback
is used.--restore-workspace
requires a non-emptycontinue
and creates a new child agent, new workspace, and new session, leaving the parent untouched.--prompt
creates a new session in the same agent from a checkpoint-backed entry.checkout
can immediately start a run in that new session.--continue
is the fastest way to explain lineage and branch points to a user.tree- Add
whenever another tool needs machine-readable output.--json
Prerequisites
- a working OpenClaw installation
- access to the machine that runs OpenClaw
- a valid
openclaw.json - the ClawReverse plugin files available in this skill bundle
First step: verify or install the plugin
- Check whether the plugin is already available:
openclaw reverse --help
- If the command is missing, install the plugin from this skill bundle:
openclaw plugins install -l "{baseDir}"
- Then initialize or repair config:
openclaw reverse setup
- Restart the OpenClaw Gateway after install or config changes, then verify again:
openclaw reverse --help
If the OpenClaw state directory is not the default one, use:
openclaw reverse setup --base-dir /path/to/openclaw-state
Default config created by setup
setup{ "plugins": { "allow": ["clawreverse"], "enabled": true, "entries": { "clawreverse": { "enabled": true, "config": { "workspaceRoots": ["~/.openclaw/workspace"], "checkpointDir": "~/.openclaw/plugins/clawreverse/checkpoints", "registryDir": "~/.openclaw/plugins/clawreverse/registry", "runtimeDir": "~/.openclaw/plugins/clawreverse/runtime", "reportsDir": "~/.openclaw/plugins/clawreverse/reports", "maxCheckpointsPerSession": 100, "allowContinuePrompt": true, "stopRunBeforeRollback": true } } } } }
Standard workflow
1) Identify the target agent and session
openclaw reverse agents openclaw reverse sessions --agent <agent-id>
Use the value in the
Agent column as the agent id and the value in the Session column as the session id. The row marked latest is the newest session.
2) List checkpoints
openclaw reverse checkpoints --agent <agent-id> --session <session-id>
If you need details for one checkpoint:
openclaw reverse checkpoint --checkpoint <checkpoint-id>
3) Choose the correct action
Roll back the current line
Use this when the user wants to rewind the current session to an earlier point.
openclaw reverse rollback \ --agent <agent-id> \ --session <session-id> \ --checkpoint <checkpoint-id>
Only add
--restore-workspace when the user explicitly wants the current on-disk workspace restored too:
openclaw reverse rollback \ --agent <agent-id> \ --session <session-id> \ --checkpoint <checkpoint-id> \ --restore-workspace
Continue as a safe child branch
Use this when the parent session and workspace must stay untouched and the user wants a fresh attempt from a known-good checkpoint.
openclaw reverse continue \ --agent <agent-id> \ --session <session-id> \ --checkpoint <checkpoint-id> \ --prompt "Continue from here with a different approach."
Optional advanced flags:
to force the child agent id--new-agent <agent-id>
for auth-copy behavior--clone-auth <auto|always|never>
to capture child launch diagnostics and return--loglogFilePath
Checkout into a new session in the same agent
Use this when the user wants a new session from a checkpoint-backed entry without creating a new agent.
openclaw reverse nodes --agent <agent-id> --session <session-id> openclaw reverse checkout \ --agent <agent-id> \ --source-session <session-id> \ --entry <entry-id>
To start running immediately after checkout:
openclaw reverse checkout \ --agent <agent-id> \ --source-session <session-id> \ --entry <entry-id> \ --continue \ --prompt "Continue from this restored entry."
4) Inspect status, reports, and lineage
openclaw reverse rollback-status --agent <agent-id> --session <session-id> openclaw reverse tree --agent <agent-id> --session <session-id> openclaw reverse report --rollback <rollback-id> openclaw reverse branch --branch <branch-id>
tree also supports automatic root selection and subtree inspection:
openclaw reverse tree openclaw reverse tree --node <checkpoint-id>
Command quick reference
| Command | Purpose |
|---|---|
| Patch and create plugin directories |
| Show plugin runtime status |
| List configured agents |
| List sessions for one agent |
| List checkpoints for a session |
| Inspect one checkpoint by id |
| Show rollback state for a session |
| Rewind a session to a checkpoint |
| Create a child agent, workspace, and session from a checkpoint |
| List checkpoint-backed entries that support checkout |
| Display checkpoint lineage as a tree |
| Create a new session from a checkpoint-backed entry |
| Inspect a rollback report |
| Inspect a saved branch record |
Guardrails
- Prefer
overcontinue
when the user wants to preserve the parent line untouched.rollback - Prefer
when the user wants the current line moved back to an earlier checkpoint.rollback - Ask before using
if the user has not clearly requested live file restoration.--restore-workspace - If no checkpoints appear, explain that ClawReverse only records checkpoints before mutating tools or mutating shell commands. Read-only operations such as
,read
,glob
,ls
,git status
,find
,cat
,grep
,diff
, and similar commands are intentionally skipped.tree - Use
for programmatic parsing or when you want to feed results into another tool.--json - From
,{baseDir}
runs the repository test suite.npm test
Troubleshooting
openclaw reverse
is missing
openclaw reverse- re-run
openclaw plugins install -l "{baseDir}" - run
openclaw reverse setup - restart the Gateway
- check that
is inclawreverseplugins.allow - check that
isplugins.entries.clawreverse.enabledtrue
continue
fails
continue- make sure
is non-empty--prompt - if an agent id conflict occurs, retry with
--new-agent <fresh-id> - if you used
, inspect the returned--loglogFilePath
rollback
did not change files
rollbackThat is expected unless
--restore-workspace was used.
tree
or checkpoints
shows nothing
treecheckpoints- confirm the agent id and session id are correct
- confirm the session has mutating tool calls that could create checkpoints