| name | template-extract |
| description | Use when: extracting domain-specific page templates from existing project pages and contributing them to skills/core/page-codegen/templates/domains/. Triggers on: 提取模板, 抽取模板, 沉淀模板, 模板贡献, extract template, contribute template. |
Skill: 模板提取(template-extract)
从现有项目的成熟页面提取领域模板,沉淀到 .wl-skills/skills/core/page-codegen/templates/domains/,扩充团队 AI 模板库。
核心理念:模板贡献门槛极低 — 开发者只需说出一个页面目录路径,AI 完成 90% 的分析和写作。
触发词
提取模板 / 抽取模板 / 沉淀模板 / 模板贡献 / extract template
Pre-flight 声明
🚀 已触发技能 template-extract/SKILL.md → 从现有页面提取领域模板
✅ 已读取 template-extract/SKILL.md → 提取流程主规则
✅ 已读取 templates/_index.md → 已有模板清单(避免重复)
✅ 已读取 standards/02-code-structure.md → 模板必须遵循的代码结构
✅ 已读取 standards/13-platform-components.md → 模板必须遵循的平台组件合规
执行流程
步骤 1:开发者指定目标
开发者提供一个目录路径:
"提取模板,目标页:src/views/produce/sjgl/mmwr-rolling-management/"
步骤 2:AI 读取目标页文件
✅ 读取 {target}/index.vue
✅ 读取 {target}/data.ts
✅ 读取 {target}/index.scss
✅ 读取 {target}/api.md(如存在)
步骤 3:AI 自动识别交互模式
输出识别结论:
🔍 识别结果
- 页面包含:{2 个 BaseTable / 1 个内联 BaseForm / 4 个操作按钮}
- 交互模式:{双清单联动 + 内联表单 + 条件按钮}
- 与已有 TPL 对比:
✅ 接近 TPL-OPERATION-STATION(domains/produce/)
❌ 不符合 TPL-LIST / TPL-MASTER-DETAIL / TPL-RECORD-FORM
- 结论建议:本页面**已有相似模板**,可能是 TPL-OPERATION-STATION 的变体,
建议考虑增强现有模板而非新建。
(或:本页面是**独立新模式**,建议提取为 TPL-XXX)
步骤 4:AI 问答确认(最多 4 个问题)
❓ 问题 1:领域归属?
选项:A. produce(生产) B. sale(销售) C. 其他(请说明)
❓ 问题 2:建议的模板命名?
AI 建议:TPL-{XXX-XXX}
如不满意请提出替代
❓ 问题 3:是否有需要脱敏/抽象的业务特定内容?
- 业务字段名(建议保留作为占位符 [字段名])
- 业务接口路径(建议改为 [服务缩写]/[资源名]/{action} 占位)
- 硬编码字典码(建议改为占位符或注释说明)
❓ 问题 4:是否合并到已有模板?
仅当步骤 3 识别为「相似模板」时才问。
选项:A. 增强现有模板(追加章节) B. 提取为独立新模板
步骤 5:生成 TPL 文件
按 templates/domains/_CONTRIBUTING.md 格式生成,必须包含:
- 适用场景说明
- 识别规则(5 条以内)
- 完整 index.vue / data.ts / index.scss 代码(脱敏后)
- 注意事项
步骤 6:写入并注册
✅ 写入 templates/domains/{domain}/TPL-{NAME}.md
✅ 更新 templates/_index.md(追加注册条目)
步骤 7:输出后续步骤
📦 模板提取完成
────────────────────────────────────────────────
✅ 已生成 templates/domains/{domain}/TPL-{NAME}.md
✅ 已更新 templates/_index.md 注册表
────────────────────────────────────────────────
📌 后续步骤:
1. 人工 review 模板内容(脱敏完整性 / 占位符正确性)
2. 提交:git cz → feat(template): 新增领域模板 TPL-{NAME}
3. PR 评审 → CHENY 合入
────────────────────────────────────────────────
提取质量校验(AI 自检)
生成 TPL 文件后,AI 必须自检:
边界情况
| 情况 | 处理 |
|---|
| 目标页代码不符合 standards/ 规范 | 拒绝提取,输出审计建议("目标页本身不合规,建议先整改") |
| 目标页过于业务特化,无法抽象 | 反问开发者:"此页面业务耦合较深,提取后通用性差,是否继续?" |
| 已有 TPL 高度重合 | 优先建议增强现有模板,不建议新建 |
| 开发者指定的命名不符合规范 | 给出建议命名,请开发者确认 |