attckdigital/smith/smith-migrate-specs
Claude Code and agent skill by attckdigital/smith
- community
Checking that the SKILL.md file is still in the repository.
One-time migration of existing flat spec folders into the system-based hierarchy under .specify/systems/.
Install
npx vskill@latest install attckdigital/smith/smith-migrate-specsSKILL.md
Workflow requirement (Smith 20+): This skill must be invoked from inside an active top-level workflow (/smith-new,/smith-bugfix,/smith-debug,/smith-build). The workflow-gate hook will block standalone invocation. To use this skill standalone, start a top-level workflow first.
Smith Spec Migration
Migrate existing feature spec folders from specs/<NNN-feature>/ into the system-based hierarchy at .specify/systems/<system>/features/<NNN-feature>/.
Arguments: $ARGUMENTS
Prerequisites
.specify/systems/must exist with system spec folders (created by Phase 1B setup or/smith)- System spec files must be present at
.specify/systems/system-*/spec.mdfor system detection to work
Behavior
Step 1: Scan for Migratable Features
Scan specs/ for all feature spec folders. Exclude the following (they are not feature specs):
specs/system-*(system specs — these are the source of truth)specs/questions/(global questions directory)specs/screenshots/(visual reference)specs/sentiment-engine/(legacy non-numbered spec)specs/init-intake.md(not a folder)
A valid feature folder must:
- Be a directory
- Contain at least a
spec.mdfile - Match the pattern
NNN-*(numbered feature)
List all candidates with their folder name and a one-line summary from the first heading in their spec.md.
Step 2: System Detection (per feature)
For each feature folder, determine the primary system:
- Read the feature's `spec.md` — extract what the feature does, which services it touches, what data it modifies
- Read all `.specify/systems/system-*/spec.md` — understand each system's scope
- Determine primary_system — the system most directly impacted by the feature
- Determine also_affects — other systems the feature touches
Use these heuristics for mapping:
- Features touching
services/command-center/→system-15-command-center - Features touching
services/email-pipeline/→system-03-email-archive-contact-graph - Features touching
services/sentiment-engine/→system-05-communication-triageor system-03 depending on scope - Features touching
services/content-strategy/orservices/content-engine/→system-12-content-social-engine - Features touching
services/social-listening/→system-10-social-listening - Features touching
services/trend-intelligence/→system-13-trend-intelligence - Features touching
services/voice-training/→system-04-personal-voice - Features touching
services/meeting-intelligence/→system-09-meeting-intelligence - Features touching
docker-compose.ymlor infrastructure →system-01-infrastructure - Features touching Neo4j/contacts/graph →
system-03-email-archive-contact-graph - Features touching N8N workflows →
system-01-infrastructure - Features that are genuinely cross-cutting →
cross-system
Also check git history and the feature's plan.md (if it exists) for additional context.
Step 3: Present & Confirm (One at a Time)
For each feature, present the proposed mapping:
- y — Move this feature
- n — Let the user specify a different system
- skip — Skip this feature, move to the next
- quit — Stop migration entirely
IMPORTANT: Process ONE feature at a time. Do NOT batch-move all features without individual confirmation.
Step 4: Execute Migration
For each confirmed feature:
- Create the target directory:
mkdir -p .specify/systems/<primary-system>/features/<feature-name>/ - Copy all files from
specs/<feature-name>/to the new location (copy, not move — we preserve originals until verified) - Add frontmatter to the migrated
spec.mdif not already present:
```yaml
feature: <feature-name> primary_system: <system-folder-name> also_affects:
- <other-system>
branch: <branch-name if detectable from git> created: <date from spec or git> status: complete
```
- Log the migration to
.smith/vault/sessions/(current session log if active)
Step 5: Summary
After processing all features (or quitting), display:
Flags
--dry-run— Show proposed mappings for all features without moving anything--all— Skip individual confirmations and move all features using auto-detected systems (use with caution)
Important Notes
- This action copies files rather than moving them. The originals in
specs/remain untouched as a safety measure. - After verifying the migration is correct, the user can manually remove the originals from
specs/. - Features that already exist in
.specify/systems/are skipped automatically. - The vault infrastructure (Phase 1A) must be in place for session logging to work.
- Do NOT modify the constitution.md or any vault hooks during migration.
Security
- Security scanPassed, 100 of 100Pattern checks on the skill's files.
- Model reviewNot runA model review is scheduled for the next rescan.
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills/smith-migrate-specs/SKILL.md
Popularity
- Repository stars
- 51
- Repository forks
- 8
- 7-day trend score
- 20
Stars and forks are for the whole GitHub repository, not this skill alone. Refreshed 24 Aug 2026, 2 months ago.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/attckdigital/smith/smith-migrate-specs)