agentic/code/addons/aiwg-utils/skills/rollback-workspace/SKILL.md
Restore the .aiwg/ directory from a migrate-workspace backup, listing available backups when none is specified
npx skillsauth add jmagly/aiwg rollback-workspaceInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
You restore the .aiwg/ directory from a backup created by migrate-workspace. Lists available backups when no specific backup is named. The restore is safe — it will not overwrite artifacts that were created after the migration.
Alternate expressions and non-obvious activations (primary phrases are matched automatically from the skill description):
| Pattern | Example | Action |
|---------|---------|--------|
| Rollback latest | "roll back the workspace migration" | Run aiwg rollback-workspace |
| List backups | "what workspace backups exist?" | Run aiwg rollback-workspace --list |
| Specific backup | "restore from the backup made on April 1st" | Run aiwg rollback-workspace --from .aiwg/.backup-20260401-1423 |
| Dry run | "preview the rollback" | Run aiwg rollback-workspace --dry-run |
| Force | "rollback workspace, skip confirmation" | Run aiwg rollback-workspace --yes |
When triggered:
List backups before restoring unless a specific backup is named or the user has already confirmed:
aiwg rollback-workspace --list to show what is available.Extract arguments:
--list requested? Show backups and stop.--from <path> given? Use that backup.--dry-run requested? Show what would be restored, no changes.--yes to skip the interactive prompt.Run the appropriate command:
# List available backups
aiwg rollback-workspace --list
# Preview rollback (no changes)
aiwg rollback-workspace --dry-run
# Rollback to most recent backup (prompts for confirmation)
aiwg rollback-workspace
# Rollback to specific backup
aiwg rollback-workspace --from .aiwg/.backup-20260401-1423
# Rollback, skip prompt
aiwg rollback-workspace --yes
Safety behaviour:
Report the result — confirm what was restored, list any skipped conflicts, and remind the user to run aiwg status to verify.
User: "Roll back my workspace migration"
Extraction: Rollback requested — list backups before applying
Action (step 1):
aiwg rollback-workspace --list
Response:
Available workspace backups:
1. .aiwg/.backup-20260401-1423 (created 2026-04-01 14:23 UTC — before migration)
2. .aiwg/.backup-20260320-0900 (created 2026-03-20 09:00 UTC — before migration)
Which backup would you like to restore from? (default: 1 — most recent)
After user selects → run aiwg rollback-workspace --from .aiwg/.backup-20260401-1423.
User: "Undo the migration"
Extraction: One backup found, propose it
Action:
aiwg rollback-workspace --list
# One result → propose it
aiwg rollback-workspace --dry-run
Preview response:
Rollback Preview (from .aiwg/.backup-20260401-1423)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Would restore:
.aiwg/frameworks/sdlc-complete/requirements/ → .aiwg/requirements/
.aiwg/frameworks/sdlc-complete/architecture/ → .aiwg/architecture/
(+ 6 more directories)
Files added after migration (will NOT be overwritten):
.aiwg/requirements/UC-015.md (newer than backup)
Proceed? [y/N]
After user confirms → aiwg rollback-workspace --yes.
User: "Preview a workspace rollback"
Extraction: Dry-run only
Action:
aiwg rollback-workspace --dry-run
Response: Shows the planned restore table (as above) and stops. Does not prompt for confirmation.
User: "Roll back my workspace"
Extraction: No backups found
Action:
aiwg rollback-workspace --list
Response: "No workspace backups found in .aiwg/. Backups are created automatically when you run aiwg migrate-workspace. If you have a manual backup, specify its path with aiwg rollback-workspace --from <path>."
User: "Restore from the backup at .aiwg/.backup-20260320-0900"
Extraction: Explicit backup path given
Action:
aiwg rollback-workspace --from .aiwg/.backup-20260320-0900
Response: Runs the restore, reports what was moved back and any skipped conflicts. Confirms with aiwg status recommendation.
If the user's intent is ambiguous:
.backup-20260401-1423, .backup-20260320-0900."rollback-workspace command handlerdata-ai
Report which research-corpus radar sidecars are overdue for refresh. Computes staleness (days since last refresh vs the cadence window) for every radar, sorted most-overdue-first. Runs via `aiwg corpus radar-status`.
data-ai
Aggregate research-corpus radar sidecars into a corpus or per-cluster freshness report — totals, overdue count, per-cluster / per-GRADE / per-trajectory breakdowns, an overdue table, and per-radar rationale snippets. Runs via `aiwg corpus radar-report`.
testing
Scaffold radar/freshness sidecars for research-corpus REFs. Pulls title/authors from the citation sidecar and GRADE from the analysis doc, defaults the refresh cadence from GRADE and the cluster from a corpus-local map, and stamps documentation/radar/REF-XXX-radar.md. Runs via `aiwg corpus radar-init`.
data-ai
Compute an entity's publication trajectory — per-year paper counts, topic drift, hot-streak detection (≥3 consecutive A-grade years), and career phase. Runs via `aiwg corpus profile-temporal`.