{"_id":"@bx-vue/ai-skills","name":"@bx-vue/ai-skills","dist-tags":{"latest":"0.1.0"},"versions":{"0.1.0":{"name":"@bx-vue/ai-skills","version":"0.1.0","description":"Shared BRMS AI skills and project sync tooling.","type":"module","bin":{"brms-skills":"bin/brms-skills.mjs"},"scripts":{"skills:list":"node ./bin/brms-skills.mjs list","skills:status":"node ./bin/brms-skills.mjs status","skills:sync":"node ./bin/brms-skills.mjs sync","skills:clean":"node ./bin/brms-skills.mjs clean"},"engines":{"node":">=18.17.0"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/YOUR_USERNAME/brms-ai-skills.git"},"keywords":["ai","skills","brms"],"author":{"name":"池樱千幻"},"_id":"@bx-vue/ai-skills@0.1.0","gitHead":"c3096d3271d4bfe2f3dfb7f73e2afebd218b9988","bugs":{"url":"https://github.com/YOUR_USERNAME/brms-ai-skills/issues"},"homepage":"https://github.com/YOUR_USERNAME/brms-ai-skills#readme","_nodeVersion":"22.20.0","_npmVersion":"10.9.3","dist":{"integrity":"sha512-E9JyBY71gX8gLLUnVdzONLsy7M+ik/Ss5zw3bmyySu6dd5c7x6zfaKNi5ECgHYcz8jtXfyBHVD89QpUTa7Ln5w==","shasum":"26d1e8537826cbe65f3fad90e621f506b5f95dd9","tarball":"https://registry.npmjs.org/@bx-vue/ai-skills/-/ai-skills-0.1.0.tgz","fileCount":90,"unpackedSize":685778,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQD3+IeWX8Yt+N375xnm1aMVCgGWlc08i/eT8amikT8H5wIhAMnKUQs2XBECHoDTnBEoBwptVlyzlWOMXKl1nvEbqFop"}]},"_npmUser":{"name":"kyou0807","email":"1299228270@qq.com"},"directories":{},"maintainers":[{"name":"kyou0807","email":"1299228270@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/ai-skills_0.1.0_1780854797798_0.4545737165983179"},"_hasShrinkwrap":false}},"time":{"created":"2026-06-07T17:53:17.648Z","0.1.0":"2026-06-07T17:53:17.943Z","modified":"2026-06-07T17:53:18.160Z"},"maintainers":[{"name":"kyou0807","email":"1299228270@qq.com"}],"description":"Shared BRMS AI skills and project sync tooling.","homepage":"https://github.com/YOUR_USERNAME/brms-ai-skills#readme","keywords":["ai","skills","brms"],"repository":{"type":"git","url":"git+https://github.com/YOUR_USERNAME/brms-ai-skills.git"},"author":{"name":"池樱千幻"},"bugs":{"url":"https://github.com/YOUR_USERNAME/brms-ai-skills/issues"},"license":"MIT","readme":"# BRMS AI Skills\n\nBRMS 共享 AI Skill 工具包。\n\n这个仓库维护 BRMS 项目可复用的 Claude/Codex skills，并提供 `brms-skills` CLI，把包内 skills 同步到业务项目的 `.claude/skills/` 目录。\n\n## Skill 清单\n\n| Skill | 用途 |\n| --- | --- |\n| `brms-prototype-generator` | 从产品 Markdown 生成 BRMS/eplat-vue-base mock-first 原型页面。 |\n| `brms-vxe-plus-developer` | 面向真实 `project/*` 开发的 VxePlus、EiInfo、业务页面开发规则。 |\n\n包内结构：\n\n```text\n@brms/ai-skills/\n|-- bin/\n|   `-- brms-skills.mjs\n`-- skills/\n    |-- brms-prototype-generator/\n    `-- brms-vxe-plus-developer/\n```\n\n同步后的业务项目结构：\n\n```text\n<project>/.claude/skills/\n|-- brms-prototype-generator/\n|-- brms-vxe-plus-developer/\n`-- .brms-ai-skills-lock.json\n```\n\n## 命令清单\n\n在本仓库内直接运行：\n\n```bash\nnode ./bin/brms-skills.mjs list\nnode ./bin/brms-skills.mjs sync --project D:/Git/AI/eplat-vue-base\nnode ./bin/brms-skills.mjs status --project D:/Git/AI/eplat-vue-base\n```\n\n在业务项目安装依赖后运行：\n\n```bash\npnpm brms-skills list\npnpm brms-skills sync\npnpm brms-skills sync --link\npnpm brms-skills status\npnpm brms-skills clean --force\n```\n\nSkill 执行前的项目检查命令：\n\n```bash\nnode .claude/skills/brms-prototype-generator/scripts/check-project.mjs --repo-root . --target-project project/<name> --format both\nnode .claude/skills/brms-vxe-plus-developer/scripts/check-project.mjs --repo-root . --target-project project/<name> --format both\n```\n\n检查结果分为 `Blockers`、`Warnings`、`Signals`。只有 `Blockers` 需要停止执行；`Warnings` 用来提醒当前项目可能采用不同的路由、菜单或文档布局。\n如果当前仓库里有多个有效的 `project/*` 子项目，检查会阻断执行并列出候选项目；此时需要先让用户确认目标项目，再带上 `--target-project project/<name>` 重新运行。\n\n命令说明：\n\n| 命令 | 说明 |\n| --- | --- |\n| `brms-skills list` | 列出当前包内 skills。 |\n| `brms-skills sync` | 复制 skills 到当前项目 `.claude/skills/`。 |\n| `brms-skills sync --link` | 用链接模式同步，适合维护者本地调试。 |\n| `brms-skills status` | 检查当前项目 skills 是否已同步、过期或被改动。 |\n| `brms-skills clean --force` | 删除 lock 文件记录过的 managed skills。 |\n\n推荐在业务项目 `package.json` 中添加脚本：\n\n```json\n{\n  \"scripts\": {\n    \"skills:sync\": \"brms-skills sync\",\n    \"skills:status\": \"brms-skills status\"\n  }\n}\n```\n\n## 本地维护流程\n\n适用于维护 `D:/Git/AI/brms-ai-skills` 的人。\n\n先在业务项目里安装本地包：\n\n```bash\ncd D:/Git/AI/eplat-vue-base\npnpm add -D D:/Git/AI/brms-ai-skills\n```\n\n然后用 link 模式同步：\n\n```bash\npnpm brms-skills sync --link\npnpm brms-skills status\n```\n\n这时链路大致是：\n\n```text\n<project>/node_modules/@brms/ai-skills\n  -> D:/Git/AI/brms-ai-skills\n\n<project>/.claude/skills/brms-prototype-generator\n  -> <project>/node_modules/@brms/ai-skills/skills/brms-prototype-generator\n\n<project>/.claude/skills/brms-vxe-plus-developer\n  -> <project>/node_modules/@brms/ai-skills/skills/brms-vxe-plus-developer\n```\n\n之后只需要修改：\n\n```text\nD:/Git/AI/brms-ai-skills/skills/...\n```\n\n业务项目里的 `.claude/skills/...` 会立即看到变化，不需要每次重新复制。\n\n准备发布、打版本，或给其他项目正式使用前，再用复制模式做一次冒烟验证：\n\n```bash\npnpm brms-skills sync\npnpm brms-skills status\n```\n\n## 新项目接入流程\n\n适用于业务项目首次接入这套 skills。\n\n1. 安装工具包。\n\n本地调试阶段：\n\n```bash\npnpm add -D D:/Git/AI/brms-ai-skills\n```\n\n正式团队使用时，建议改成内部 npm 包、Git tag 依赖，或其他团队成员都能访问的来源：\n\n```bash\npnpm add -D @brms/ai-skills\n```\n\n2. 添加项目脚本。\n\n```json\n{\n  \"scripts\": {\n    \"skills:sync\": \"brms-skills sync\",\n    \"skills:status\": \"brms-skills status\"\n  }\n}\n```\n\n3. 添加 `.gitignore`。\n\n业务项目不要提交同步出来的 skill 内容，否则会重新变成“每个项目复制一份”的版本漂移模式。\n\n建议忽略：\n\n```gitignore\n.claude/skills/brms-prototype-generator/\n.claude/skills/brms-vxe-plus-developer/\n.claude/skills/.brms-ai-skills-lock.json\n```\n\n业务项目只提交依赖声明和锁定文件：\n\n```text\npackage.json\npnpm-lock.yaml\n```\n\n`package.json` 声明依赖和脚本；`pnpm-lock.yaml` 锁定实际安装到的精确版本或来源。\n\n4. 同步 skills。\n\n```bash\npnpm install\npnpm skills:sync\npnpm skills:status\n```\n\n团队正式使用建议走默认复制模式。复制后的 `.claude/skills/...` 是本地生成物，不进入业务项目 Git。\n\n## 同步模式\n\n默认复制模式：\n\n```bash\npnpm brms-skills sync\n```\n\n复制模式最稳。即使业务项目删除了 `node_modules`，`.claude/skills` 里的 skills 仍然可用。团队正式使用时，建议默认走复制模式。\n\n本地 link 模式：\n\n```bash\npnpm brms-skills sync --link\n```\n\nWindows 下 link 模式会创建目录 junction；macOS/Linux 下会创建目录 symlink。它适合维护者本地快速调试 skill 内容。\n\n## 锁文件和状态\n\n`sync` 会写入：\n\n```text\n.claude/skills/.brms-ai-skills-lock.json\n```\n\n锁文件记录包名、包版本、同步模式、同步时间、来源路径、目标路径和每个 skill 的内容 hash。\n\n`status` 状态说明：\n\n| 状态 | 含义 |\n| --- | --- |\n| `ok` | 目标内容和当前包版本一致。 |\n| `outdated` | 包版本或包内 skill 内容已经变化，但目标项目还没重新同步。 |\n| `modified` | 目标项目 `.claude/skills` 里的 skill 同步后被改过。 |\n| `missing` | lock 记录了该 skill，但目标目录已经不存在。 |\n| `unmanaged` | 目标目录存在 skill，但它不在 BRMS lock 里。 |\n| `not-synced` | 包里有该 skill，但目标项目还没有同步。 |\n\n## 清理\n\n`clean` 只删除 BRMS lock 文件记录过的 managed skills：\n\n```bash\npnpm brms-skills clean --force\n```\n\n该命令必须显式加 `--force`，避免误删项目文件。\n\n## 版本策略\n\n当前包仍然是：\n\n```json\n{\n  \"private\": true\n}\n```\n\n如果后续要发布到内部 npm registry，再移除 `private`，配置 registry，并按语义化版本维护：\n\n| 版本 | 场景 |\n| --- | --- |\n| `patch` | 修 skill 规则、校验器、文档、示例。 |\n| `minor` | 新增 skill，或新增向后兼容的 CLI 能力。 |\n| `major` | 改变 skill 发现方式、同步布局、命令语义等破坏性行为。 |\n","readmeFilename":"README.md","_rev":"1-788877cd50c4648b1983e9779950d168"}