ln-720-structure-migrator by levnikolaevich/claude-code-skills
npx skills add https://github.com/levnikolaevich/claude-code-skills --skill ln-720-structure-migrator路径说明: 文件路径(
shared/、references/、../ln-*)是相对于技能仓库根目录的。如果在当前工作目录(CWD)中未找到,请定位此 SKILL.md 文件所在的目录,然后向上返回一级以找到仓库根目录。如果缺少shared/目录,请通过 WebFetch 从https://raw.githubusercontent.com/levnikolaevich/claude-code-skills/master/skills/{path}获取文件。
类型: L2 领域协调器 类别: 7XX 项目引导 父级: ln-700-project-bootstrap
协调项目重构以遵循整洁架构。模式感知:根据 CREATE/TRANSFORM 流水线,将任务委托给具有相应模式参数的执行器。
| 方面 | 描述 |
|---|---|
广告位招租
在这里展示您的产品或服务
触达数万 AI 开发者,精准高效
| 当前项目结构 + 来自 ln-700 的模式(CREATE/TRANSFORM) |
| 输出 | 遵循整洁架构的重构后项目 |
| 执行器 | 参见下方的执行器表格 |
| 执行器 | 角色 | CREATE 模式 | TRANSFORM 模式 |
|---|---|---|---|
| ln-721 | 前端结构 | SCAFFOLD(生成初始结构) | RESTRUCTURE(迁移单体应用) |
| ln-722 | 后端生成器 | RUN(生成后端) | RUN(生成后端) |
| ln-723 | 种子数据 | GENERATE(从实体生成) | MIGRATE(从 ORM 模式迁移) |
| ln-724 | 产物清理器 | SKIP(无产物) | CONDITIONAL(仅在检测到平台时执行) |
范围边界:
| 阶段 | 名称 | CREATE 模式 | TRANSFORM 模式 |
|---|---|---|---|
| 1 | 分析 | 接收目标技术栈配置 | 扫描结构,检测框架,映射文件 |
| 2 | 计划 | 计算脚手架操作 | 计算移动操作,识别冲突 |
| 3 | 执行 | 委托:ln-721 SCAFFOLD → ln-722 → ln-723 GENERATE | 委托:ln-724(条件性) → ln-721 RESTRUCTURE → ln-722 → ln-723 MIGRATE |
| 4 | 验证 | 检查文件结构,验证配置 | 运行构建,检查导入,验证结构 |
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
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/
调用时机: TRANSFORM 模式 且 检测到平台产物(.replit、.stackblitzrc、sandbox.config.json、glitch.json)。跳过条件: CREATE 模式 或 未找到平台配置文件。
Context:
projectPath: /project
skipPreview: false
Options:
# ln-724 自动检测平台,无需指定
cleanConfigFiles: true
cleanDirectories: true
cleanPackages: true
cleanBuildConfig: true
cleanCodeComments: true
cleanGitignore: true
Context:
mode: SCAFFOLD | RESTRUCTURE # 来自流水线模式
# SCAFFOLD 模式:
targetPath: /project/src/frontend
projectName: MyApp
# RESTRUCTURE 模式:
sourcePath: /project/client
targetPath: /project/src/frontend
framework: react
features:
- Dashboard
- Settings
- Profile
Options:
# 仅限 RESTRUCTURE:
splitMonolithicFiles: true
extractConstants: true
extractTypes: true
createComponentLibrary: true
Context:
projectName: MyApp
targetPath: /project/src
targetFramework: net10.0
features:
- Dashboard
- Users
Options:
createMockData: true
addSwagger: true
addHealthChecks: true
Context:
mode: MIGRATE | GENERATE # 来自流水线模式
targetFormat: csharp | typescript | python | json | sql
# MIGRATE 模式:
sourceORM: auto # 自动检测(drizzle/prisma/typeorm/efcore/sqlalchemy/django)
sourcePath: /project/shared/schema.ts
# GENERATE 模式:
entities: # 可选 — 如果为空,则使用起始模板
- name: User
fields: [id, name, email, role, createdAt]
- name: Role
fields: [id, name, description]
targetPath: /project/src/MyApp.Api/MockData
npm run build、dotnet build)调用方式:
Skill(skill: "ln-724-artifact-cleaner", args: "{projectPath}") # 仅限 TRANSFORM,条件性
Skill(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 格式(强制要求):
- 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)
| 阶段 | 执行器 | 上下文 |
|---|---|---|
| 3a | ln-724-artifact-cleaner | Shared(Skill 工具)— 移除平台产物(仅限 TRANSFORM,条件性) |
| 3b | ln-721-frontend-restructure | Shared(Skill 工具)— 搭建脚手架或重构前端 |
| 3c | ln-722-backend-generator | Shared(Skill 工具)— 生成后端项目结构 |
| 3d | ln-723-seed-data-generator | Shared(Skill 工具)— 生成或迁移种子数据 |
所有执行器: 通过 Skill 工具调用 — 执行器可以看到协调器的上下文。
CREATE 模式:
TRANSFORM 模式:
npm run build)dotnet build)| 风险 | 检测方法 | 缓解措施 |
|---|---|---|
| 未提交的更改 | git status 不干净 | 要求工作目录干净 |
| 构建失败(前端) | npm run build 失败 | 回滚,委托给 ln-721 修复 |
| 构建失败(后端) | dotnet build 失败 | 回滚,委托给 ln-722 修复 |
| 文件丢失 | 迁移后文件缺失 | 从备份分支恢复 |
| 导入错误 | 模块未找到 | 重新运行导入更新阶段 |
| 部分迁移 | 执行器执行中途失败 | 原子性:要么全部完成,要么全部回滚 |
| 错误的执行器模式 | 模式不匹配 | 在委托前验证模式参数 |
| 文件 | 用途 |
|---|---|
references/clean_architecture_dotnet.md | .NET 项目结构模板 |
references/frontend_structure.md | React 项目结构模板 |
强制阅读: 加载 shared/references/meta_analysis_protocol.md
技能类型:execution-orchestrator。在所有阶段完成后运行。使用 execution-orchestrator 格式将输出发送到聊天。
版本: 3.0.0 最后更新: 2026-02-07
每周安装次数
149
仓库
GitHub 星标数
245
首次出现
2026年1月24日
安全审计
安装于
claude-code136
codex133
gemini-cli133
cursor133
opencode133
github-copilot128
Paths: File paths (
shared/,references/,../ln-*) are relative to skills repo root. If not found at CWD, locate this SKILL.md directory and go up one level for repo root. Ifshared/is missing, fetch files via WebFetch fromhttps://raw.githubusercontent.com/levnikolaevich/claude-code-skills/master/skills/{path}.
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.
| Aspect | Description |
|---|---|
| Input | Current project structure + mode (CREATE/TRANSFORM) from ln-700 |
| Output | Restructured project with Clean Architecture |
| Workers | See Workers table below |
| 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:
| 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 |
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
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/
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: /project
skipPreview: false
Options:
# ln-724 auto-detects platform, no need to specify
cleanConfigFiles: true
cleanDirectories: true
cleanPackages: true
cleanBuildConfig: true
cleanCodeComments: true
cleanGitignore: true
Context:
mode: SCAFFOLD | RESTRUCTURE # From pipeline mode
# SCAFFOLD mode:
targetPath: /project/src/frontend
projectName: MyApp
# RESTRUCTURE mode:
sourcePath: /project/client
targetPath: /project/src/frontend
framework: react
features:
- Dashboard
- Settings
- Profile
Options:
# RESTRUCTURE only:
splitMonolithicFiles: true
extractConstants: true
extractTypes: true
createComponentLibrary: true
Context:
projectName: MyApp
targetPath: /project/src
targetFramework: net10.0
features:
- Dashboard
- Users
Options:
createMockData: true
addSwagger: true
addHealthChecks: true
Context:
mode: MIGRATE | GENERATE # From pipeline mode
targetFormat: csharp | typescript | python | json | sql
# MIGRATE mode:
sourceORM: auto # Auto-detect (drizzle/prisma/typeorm/efcore/sqlalchemy/django)
sourcePath: /project/shared/schema.ts
# GENERATE mode:
entities: # Optional — if empty, starter template used
- name: User
fields: [id, name, email, role, createdAt]
- name: Role
fields: [id, name, description]
targetPath: /project/src/MyApp.Api/MockData
npm run build, dotnet build)Invocations:
Skill(skill: "ln-724-artifact-cleaner", args: "{projectPath}") # TRANSFORM only, conditional
Skill(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)
| 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.
CREATE mode:
TRANSFORM mode:
npm run build)dotnet build)| 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 |
| File | Purpose |
|---|---|
references/clean_architecture_dotnet.md | .NET project structure template |
references/frontend_structure.md | React project structure template |
MANDATORY READ: Load shared/references/meta_analysis_protocol.md
Skill type: execution-orchestrator. Run after all phases complete. Output to chat using the execution-orchestrator format.
Version: 3.0.0 Last Updated: 2026-02-07
Weekly Installs
149
Repository
GitHub Stars
245
First Seen
Jan 24, 2026
Security Audits
Gen Agent Trust HubPassSocketPassSnykWarn
Installed on
claude-code136
codex133
gemini-cli133
cursor133
opencode133
github-copilot128
通过 LiteLLM 代理让 Claude Code 对接 GitHub Copilot 运行 | 高级变通方案指南
36,300 周安装
| Wrong worker mode | Mode mismatch | Validate mode parameter before delegation |