agent-loop-ext
Crash-resilient external agent loop with state persistence and CI/CD integration
Restore the .aiwg/ directory from a migrate-workspace backup, listing available backups when none is specified
$ npx -y skills add jmagly/aiwg --skill rollback-workspace --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/rollback-workspaceContext preview
The summary Claude sees to decide when to auto-load this skill.
Restore the .aiwg/ directory from a migrate-workspace backup, listing available backups when none is specified
namespace: aiwg name: rollback-workspace platforms: [all] description: Restore the .aiwg/ directory from a migrate-workspace backup, listing available backups when none is specified
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:
1. **List backups before restoring** unless a specific backup is named or the user has already confirmed:
2. **Extract arguments**:
3. **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
4. **Safety behaviour**:
5. **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:
Reusable project context and specialist workflows for the AI tools you already use. Plan software, coordinate specialist reviews, prepare campaigns, investigate incidents, organize research, curate media, and maintain operational knowledge.
Repo: jmagly/aiwg
Crash-resilient external agent loop with state persistence and CI/CD integration
Detect requests for iterative autonomous agent loops and route to the appropriate loop executor
Automatically execute tests when code-generating agents modify source files, enforcing the execute-before-return pattern
Enable agent loops to learn from similar past tasks and share patterns across loops
Query and manage the executable feedback debug memory
Execute tests on generated code and iterate until passing