Skip to content
Back to skills

Task Rollback

ASecurity

Reverts the last task's file changes using git. Reads task history for modified files and git reference, shows a preview, requires user confirmation, then reverts and updates the index.

  • 13 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added May 27, 2026
developmentbashgit

Security analysis

A100/100

Scanned May 27, 2026

npx -y skills add d3x293/code-crew --skill task-rollback --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Task Rollback?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Task Rollback
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/d3x293-task-rollback/badge)](https://www.skillsdirectory.com/skills/d3x293-task-rollback)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: task-rollback
description: Reverts the last task's file changes using git. Reads task history for modified files and git reference, shows a preview, requires user confirmation, then reverts and updates the index.
---

# Task Rollback - Undo Last Task

Reverts file changes made by the most recent `/crew task` execution using git.

## When to Activate

- User runs `/crew rollback`

## Prerequisites

- `.claude/crew-history.json` must exist with at least one entry
- Project must be a git repository
- The `gitRefBefore` field should be present in the last history entry (captured by execution-orchestrator before task execution)

If history is missing: "No task history found. Nothing to roll back."
If not a git repo: "Not a git repository. Rollback requires git."

## Rollback Process

### Step 1: Read Last Task

Read `.claude/crew-history.json` and get the last entry:
- Extract `filesModified` — the files that were changed
- Extract `gitRefBefore` — the git commit hash before the task started
- Extract `task` — the original task description
- Extract `timestamp` — when the task ran

### Step 2: Show Preview

Display what will be rolled back:

```
Rollback: "{task}" ({timestamp})
  Files: {file1}, {file2}, {file3}
  Revert to: {gitRefBefore}
```

### Step 3: Ask for Confirmation

**This is mandatory — never skip confirmation.**

Ask: "Proceed with rollback? (y/n)"

If user says no: "Cancelled."

### Step 4: Execute Rollback

Two strategies based on available data:

**Strategy A: gitRefBefore is available (preferred)**
```bash
git checkout {gitRefBefore} -- {file1} {file2} {file3}
```
This reverts only the specific files to their pre-task state without affecting other changes.

**Strategy B: gitRefBefore is not available (fallback)**
```bash
git diff HEAD -- {file1} {file2} {file3}  # Show what will change
git checkout HEAD~1 -- {file1} {file2} {file3}  # Revert to previous commit
```
Warning: This is less precise — only works if the task's changes are in the most recent commit.

**If files have been modified since the task** (additional changes on top):
- Warn the user: "Warning: {file} has been modified since the task. Rolling back will also undo those changes."
- Ask for confirmation again

### Step 5: Update Index

After rollback:
1. Invoke the `index-updater` skill for all reverted files
2. This ensures the index reflects the rolled-back state

### Step 6: Update History

Mark the last task entry in history:
```json
{
  "...existing fields...",
  "rolledBack": true,
  "rolledBackAt": "2026-04-04T13:00:00Z"
}
```

### Step 7: Report

```
Rolled back {count} files. Index updated.
```

## Safety Rules

- **Always show preview and ask for confirmation** — never auto-rollback
- **Only rollback the most recent task** by default
- **Warn about subsequent modifications** to the same files
- **If gitRefBefore is missing**, warn that the rollback may be imprecise
- **Never force-push or reset** — only checkout specific files

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.