# AI 复用操作手册(轻量化) > 目标:在“不改动现有代码”的前提下,用文档约束 AI 从本仓库抽取能力,并确保抽取结果可验证。 ## A. 选模块(先确定要什么) 在开始任何代码生成/迁移前,AI 必须先回答: - 我要复用的能力类型:`layout | component | plugin | util | store | i18n | api | mock | config` - 复用方式:`copy-snippet`(复制片段)或 `copy-module`(整目录) - 目标项目构建工具:`Vue CLI` / `Vite` / 其他 > 推荐:优先 `copy-module`(减少遗漏依赖),再做裁剪。 ## B. 定位入口(必须列出入口文件) - 全局能力:`library/index.ts`(`setupVab`) - 初始化:`src/main.ts` - 路由:`src/router/index.ts` - 状态:`src/store/index.ts` - i18n:`src/i18n/index.ts` - Mock:`mock/index.js` AI 输出中必须包含:入口文件列表 + 为什么需要它们。 ## C. 最小闭包(必须列出依赖闭包) AI 必须同时列出: - 直接依赖(import 的文件/包) - 运行时依赖(例如:全局样式、icons、插件自动加载) - 类型依赖(`types/` 目录与 `/#`) - alias 依赖(`@`、`@vab`、`~`、`/#`) > 如果依赖闭包不清晰,禁止直接迁移;应先补规格(见 `openspec-lite/`)。 ## D. 迁移后验收(必须可执行) 最低验收: - `pnpm run serve` 能启动 - 页面可渲染 - 路由能跳转 - i18n/store 能注入 - Mock(若启用)能命中 ## E. 输出格式(给 OpenSpec/AI 工具链用) 当 AI 完成一次抽取/复用任务时,输出必须包含: - **变更文件清单**(新增/修改/删除) - **复用模块清单**(从哪里来、被用在何处) - **验收命令**(lint/test/build/serve) - **风险说明**(可能破坏的点:alias、插件自动加载、生产 mock 等)