Skill v1.0.1
currentAutomated scan100/1006 files
version: "1.0.1" name: ln-720-structure-migrator description: "Scaffolds new or restructures existing projects to Clean Architecture. Use when setting up project structure." license: MIT
Paths: File paths (references/,../ln-*) are relative to this skill directory.
ln-720-structure-migrator
Type: L2 Domain Coordinator Category: 7XX Project Bootstrap Parent: ln-700-project-bootstrap
Coordinates project restructuring to Clean Architecture. Mode-aware: delegates to workers with appropriate mode parameters based on CREATE/TRANSFORM pipeline.
Purpose & Scope
| Aspect | Description | |
|---|---|---|
| Input | Current project structure + mode (CREATE/TRANSFORM) from ln-700 | |
| Output | Restructured project with Clean Architecture | |
| Workers | See Workers table below |
Workers
| Worker | Role | CREATE mode | TRANSFORM mode | |
|---|---|---|---|---|
| ln-721 | Frontend structure | SCAFFOLD (generate starter) | RESTRUCTURE (migrate monolith) | |
| ln-722 | Backend generator | RUN (generate backend) | RUN (generate backend) | |
| ln-723 | Seed data | GENERATE (from entities) | MIGRATE (from ORM schemas) | |
| ln-724 | Artifact cleaner | SKIP (no artifacts) | CONDITIONAL (only if platform detected) |
Scope boundaries:
- Analyzes current project structure (TRANSFORM) or accepts target config (CREATE)
- Generates migration plan or scaffold plan
- Delegates to specialized workers via Agent tool
- Verifies final result
Workflow
| Phase | Name | CREATE mode | TRANSFORM mode | |
|---|---|---|---|---|
| 1 | Analyze | Receive target stack config | Scan structure, detect framework, map files | |
| 2 | Plan | Calculate scaffold actions | Calculate moves, identify conflicts | |
| 3 | Execute | Delegate: ln-721 SCAFFOLD → ln-722 → ln-723 GENERATE | Delegate: ln-724 (conditional) → ln-721 RESTRUCTURE → ln-722 → ln-723 MIGRATE | |
| 4 | Verify | Check file structure, validate configs | Run builds, check imports, validate structure |
Target Structures
Frontend (React)
src/frontend/├── public/├── src/│ ├── components/│ │ ├── layout/ # AppLayout, Header, Sidebar│ │ └── ui/ # Reusable UI components│ ├── contexts/ # React contexts│ ├── hooks/ # Custom hooks│ ├── lib/ # Utilities, API clients│ ├── pages/ # Page components│ │ └── {Feature}/ # Feature-specific files│ ├── App.tsx│ ├── main.tsx│ └── index.css├── package.json├── vite.config.ts└── tsconfig.json
Backend (.NET Clean Architecture)
src/├── {Project}.Api/│ ├── Controllers/│ ├── DTOs/│ ├── Middleware/│ ├── MockData/│ ├── Extensions/│ ├── Program.cs│ └── appsettings.json├── {Project}.Domain/│ ├── Entities/│ ├── Enums/│ └── Common/├── {Project}.Services/│ └── Interfaces/├── {Project}.Repositories/│ └── Interfaces/└── {Project}.Shared/
Delegation Protocol
To ln-724 (Artifact Cleaner)
When to invoke: TRANSFORM mode AND platform artifacts detected (.replit, .stackblitzrc, sandbox.config.json, glitch.json). Skip conditions: CREATE mode OR no platform config files found.
Context:projectPath: /projectskipPreview: falseOptions:# ln-724 auto-detects platform, no need to specifycleanConfigFiles: truecleanDirectories: truecleanPackages: truecleanBuildConfig: truecleanCodeComments: truecleanGitignore: true
To ln-721 (Frontend)
Context:mode: SCAFFOLD | RESTRUCTURE # From pipeline mode# SCAFFOLD mode:targetPath: /project/src/frontendprojectName: MyApp# RESTRUCTURE mode:sourcePath: /project/clienttargetPath: /project/src/frontendframework: reactfeatures:- Dashboard- Settings- ProfileOptions:# RESTRUCTURE only:splitMonolithicFiles: trueextractConstants: trueextractTypes: truecreateComponentLibrary: true
To ln-722 (Backend)
Context:projectName: MyApptargetPath: /project/srctargetFramework: net10.0features:- Dashboard- UsersOptions:createMockData: trueaddSwagger: trueaddHealthChecks: true
To ln-723 (Seed Data)
Context:mode: MIGRATE | GENERATE # From pipeline modetargetFormat: csharp | typescript | python | json | sql# MIGRATE mode:sourceORM: auto # Auto-detect (drizzle/prisma/typeorm/efcore/sqlalchemy/django)sourcePath: /project/references/schema.ts# GENERATE mode:entities: # Optional — if empty, starter template used- name: Userfields: [id, name, email, role, createdAt]- name: Rolefields: [id, name, description]targetPath: /project/src/MyApp.Api/MockData
Critical Rules
- Orchestrator Pattern: Analyze and delegate via Skill tool, do not execute transformations directly
- Mode Awareness: Pass correct mode to all workers — CREATE vs TRANSFORM determines worker behavior
- Conditional Workers: ln-724 runs ONLY in TRANSFORM mode when platform artifacts detected; SKIP otherwise
- Sequential Workers: Execute in order (ln-724 conditional → ln-721 → ln-722 → ln-723)
- Pre-flight Checks: Verify git status clean, target paths available
- No Data Loss: Copy before delete, verify before removing source (TRANSFORM mode)
- Build Verification: All builds must pass (
npm run build,dotnet build) - Rollback Ready: Keep backup branch until verification complete (TRANSFORM mode)
Invocations:
Skill(skill: "ln-724-artifact-cleaner", args: "{projectPath}") # TRANSFORM only, conditionalSkill(skill: "ln-721-frontend-restructure", args: "{projectPath} --mode {SCAFFOLD|RESTRUCTURE}")Skill(skill: "ln-722-backend-generator", args: "{projectPath}")Skill(skill: "ln-723-seed-data-generator", args: "{projectPath} --mode {GENERATE|MIGRATE}")
TodoWrite format (mandatory):
- Invoke ln-724-artifact-cleaner (conditional TRANSFORM) (pending)- Invoke ln-721-frontend-restructure (pending)- Invoke ln-722-backend-generator (pending)- Invoke ln-723-seed-data-generator (pending)- Verify structure and builds (pending)
Worker Invocation (MANDATORY)
Host Skill Invocation: Skill(skill: "...", args: "...") is mandatory delegation.
- Claude: call the Skill tool exactly as shown.
- Codex: if no Skill tool exists, locate the named skill in available skills, read its
SKILL.md, treatargsas$ARGUMENTS, execute that skill workflow, then return here with its result/artifact. - Do not inline worker logic or mark the worker complete without executing the target skill.
| Phase | Worker | Context | |
|---|---|---|---|
| 3a | ln-724-artifact-cleaner | Shared (Skill tool) — remove platform artifacts (TRANSFORM only, conditional) | |
| 3b | ln-721-frontend-restructure | Shared (Skill tool) — scaffold or restructure frontend | |
| 3c | ln-722-backend-generator | Shared (Skill tool) — generate backend project structure | |
| 3d | ln-723-seed-data-generator | Shared (Skill tool) — generate or migrate seed data |
All workers: Invoke via Skill tool — workers see coordinator context.
Definition of Done
CREATE mode:
- [ ] Target stack config received from ln-700
- [ ] ln-721 completed: Frontend scaffolded (SCAFFOLD mode)
- [ ] ln-722 completed: Backend generated
- [ ] ln-723 completed: Seed data generated (GENERATE mode)
- [ ] File structure matches target templates
- [ ] All configs valid (package.json, tsconfig.json, .csproj)
TRANSFORM mode:
- [ ] Current structure analyzed and documented
- [ ] Migration plan generated
- [ ] ln-724 completed: Platform artifacts removed (if applicable)
- [ ] ln-721 completed: Frontend restructured (RESTRUCTURE mode)
- [ ] ln-722 completed: Backend generated
- [ ] ln-723 completed: Seed data migrated (MIGRATE mode)
- [ ] Frontend builds successfully (
npm run build) - [ ] Backend builds successfully (
dotnet build) - [ ] No orphan files in old locations
- [ ] All imports resolve correctly
- [ ] Migration report generated
Risk Mitigation
| Risk | Detection | Mitigation | |
|---|---|---|---|
| Uncommitted changes | git status not clean | Require clean working directory | |
| Build failure (frontend) | npm run build fails | Rollback, delegate to ln-721 for fix | |
| Build failure (backend) | dotnet build fails | Rollback, delegate to ln-722 for fix | |
| Lost files | Files missing after migration | Restore from backup branch | |
| Import errors | Module not found | Re-run import update phase | |
| Partial migration | Worker fails mid-execution | Atomic: complete all or rollback all | |
| Wrong worker mode | Mode mismatch | Validate mode parameter before delegation |
Reference Files
| File | Purpose | |
|---|---|---|
references/clean_architecture_dotnet.md | .NET project structure template | |
references/frontend_structure.md | React project structure template |
Meta-Analysis
Optional reference: load references/meta_analysis_protocol.md only when the user asks for post-run meta-analysis or protocol-formatted run reflection.
Skill type: execution-orchestrator. When requested, run after all phases complete. Output to chat using the execution-orchestrator format.
Version: 3.0.0 Last Updated: 2026-02-07