/migrate-workspace
Migrate the .aiwg/ directory from single-framework layout to the multi-framework layout with an automatic backup
Claude Code
$ npx -y skills add jmagly/aiwg --skill migrate-workspace --agent claude-code
Codex
$ npx skills add jmagly/aiwg --skill migrate-workspace -a codex -y
Cursor
$ npx skills add jmagly/aiwg --skill migrate-workspace -a cursor -y
Gemini CLI
$ npx skills add jmagly/aiwg --skill migrate-workspace -a gemini-cli -y
GitHub Copilot
$ npx skills add jmagly/aiwg --skill migrate-workspace -a github-copilot -y
OpenCode
$ npx skills add jmagly/aiwg --skill migrate-workspace -a opencode -y
Windsurf
$ npx skills add jmagly/aiwg --skill migrate-workspace -a windsurf -y
SKILL.md
migrate-workspace.SKILL.mdnamespace: 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
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
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.
Other skills on aiwg.
More skills from other plugins.
brainstorming
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
ask-matt
Ask which skill or flow fits your situation. A router over the skills in this repo.
Questions about migrate-workspace.
- Which coding agents can use migrate-workspace?
- migrate-workspace installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.

