Skip to content
Development
Skill

/migrate-workspace

Migrate the .aiwg/ directory from single-framework layout to the multi-framework layout with an automatic backup

From plugin
aiwg
176200 skills199 agents23 commands
Install
$ npx -y skills add jmagly/aiwg --skill migrate-workspace --agent claude-code

How 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/migrate-workspace

Context preview

The summary Claude sees to decide when to auto-load this skill.

Migrate the .aiwg/ directory from single-framework layout to the multi-framework layout with an automatic backup

SKILL.md

migrate-workspace.SKILL.md
namespace: aiwg
name: migrate-workspace
platforms: [all]
description: Migrate the .aiwg/ directory from single-framework layout to the multi-framework layout with an automatic backup

Migrate Workspace

You upgrade the `.aiwg/` directory from the old single-framework layout to the new multi-framework layout, moving artifacts into framework-scoped subdirectories. A backup is always created before any changes are applied.

Triggers

Alternate expressions and non-obvious activations (primary phrases are matched automatically from the skill description):

  • "upgrade my aiwg structure" → run migration
  • "move to multi-framework layout" → run migration
  • "preview workspace migration" → dry-run only
  • "what would migrate?" → dry-run only

Trigger Patterns Reference

| Pattern | Example | Action | |---------|---------|--------| | Full migration | "migrate my workspace" | Run `aiwg migrate-workspace` | | Dry run | "preview the workspace migration" | Run `aiwg migrate-workspace --dry-run` | | Forced | "migrate workspace, skip confirmation" | Run `aiwg migrate-workspace --yes` | | Check needed | "do I need to migrate?" | Run `aiwg migrate-workspace --dry-run` |

Behavior

When triggered:

1. **Always dry-run first** unless the user explicitly confirms or passes `--yes`:

  • Run `aiwg migrate-workspace --dry-run` to show what would move.
  • Report the planned changes to the user.
  • Ask for confirmation before proceeding.

2. **Extract arguments**:

  • Is `--dry-run` requested? Report only, no changes.
  • Has the user already confirmed? Use `--yes` to skip the interactive prompt.
  • Is there a specific backup path? (optional)

3. **Run the appropriate command**:

   # Preview only — no changes
   aiwg migrate-workspace --dry-run

   # Full migration (prompts for confirmation)
   aiwg migrate-workspace

   # Full migration, skip prompt
   aiwg migrate-workspace --yes

4. **What the migration does**:

  • Creates a timestamped backup at `.aiwg/.backup-<timestamp>/`
  • Creates framework-scoped subdirectories under `.aiwg/frameworks/<name>/`
  • Moves existing flat artifacts into the appropriate scoped location
  • Updates `.aiwg/frameworks/registry.json`
  • Leaves a `MIGRATION.md` log at `.aiwg/` root

5. **Safety guarantee**: The backup is created before any file is moved. If migration fails partway through, `aiwg rollback-workspace` can restore from the backup.

6. **Report the result** — show what was moved, backup location, and how to rollback if needed.

Examples

Example 1: Dry run first (default approach)

**User**: "Migrate my workspace"

**Extraction**: Migration requested — dry-run before applying

**Action** (step 1):

aiwg migrate-workspace --dry-run

**Response**:

Workspace Migration Preview
━━━━━━━━━━━━━━━━━━━━━━━━━━━
Would move:
  .aiwg/requirements/ → .aiwg/frameworks/sdlc-complete/requirements/
  .aiwg/architecture/ → .aiwg/frameworks/sdlc-complete/architecture/
  .aiwg/testing/      → .aiwg/frameworks/sdlc-complete/testing/
  (+ 5 more directories)

Would create backup: .aiwg/.backup-20260401-1423/
No files would be deleted.

Proceed with migration? [y/N]

After user confirms → run `aiwg migrate-workspace --yes`.

Example 2: Dry run only

**User**: "What would the workspace migration do?"

**Extraction**: Preview-only, no confirmation needed

**Action**:

aiwg migrate-workspace --dry-run

**Response**: Shows the planned moves table (as above) and stops. Does not prompt for confirmation.

Example 3: Already on new layout

**User**: "Do I need to migrate my workspace?"

**Extraction**: Check whether migration is needed

**Action**:

aiwg migrate-workspace --dry-run

**Response**: "Your workspace is already on the multi-framework layout. No migration needed."

Example 4: Migration with confirmation

**User**: "Go ahead and migrate the workspace"

**Extraction**: User has already seen dry-run output and is confirming

**Action**:

aiwg migrate-workspace --yes

**Response**:

Backup created: .aiwg/.backup-20260401-1423/
Migrating 8 directories...
  requirements/  moved
  architecture/  moved
  testing/       moved
  (+ 5 more)
registry.json updated.
Migration complete. To undo: aiwg rollback-workspace

Clarification Prompts

If the user's intent is ambiguous:

  • "Would you like me to preview the migration first, or go ahead and apply it?"
  • "Have you already reviewed the dry-run output, or should I run it first?"

References

  • @$AIWG_ROOT/src/cli/handlers/workspace.ts — `migrate-workspace` command handler
  • @$AIWG_ROOT/docs/cli-reference.md — CLI reference
  • @$AIWG_ROOT/agentic/code/addons/aiwg-utils/skills/rollback-workspace/SKILL.md — Undoing a migration
Read more
Ships withaiwg

Multi-agent AI framework for Claude Code, Copilot, Cursor, Warp, and 6 more platforms 200+ agents, 109+ CLI commands, 400+ deployable agent/skill/command/rule artifacts, 8 core frameworks, 32 addons, and a 40-plugin Claude Code marketplace.

Get the whole plugin