@mison/ling 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (268) hide show
  1. package/.agents/.shared/ui-ux-pro-max/data/charts.csv +26 -0
  2. package/.agents/.shared/ui-ux-pro-max/data/colors.csv +97 -0
  3. package/.agents/.shared/ui-ux-pro-max/data/icons.csv +101 -0
  4. package/.agents/.shared/ui-ux-pro-max/data/landing.csv +31 -0
  5. package/.agents/.shared/ui-ux-pro-max/data/products.csv +97 -0
  6. package/.agents/.shared/ui-ux-pro-max/data/prompts.csv +24 -0
  7. package/.agents/.shared/ui-ux-pro-max/data/react-performance.csv +45 -0
  8. package/.agents/.shared/ui-ux-pro-max/data/stacks/flutter.csv +53 -0
  9. package/.agents/.shared/ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -0
  10. package/.agents/.shared/ui-ux-pro-max/data/stacks/jetpack-compose.csv +53 -0
  11. package/.agents/.shared/ui-ux-pro-max/data/stacks/nextjs.csv +53 -0
  12. package/.agents/.shared/ui-ux-pro-max/data/stacks/nuxt-ui.csv +51 -0
  13. package/.agents/.shared/ui-ux-pro-max/data/stacks/nuxtjs.csv +59 -0
  14. package/.agents/.shared/ui-ux-pro-max/data/stacks/react-native.csv +52 -0
  15. package/.agents/.shared/ui-ux-pro-max/data/stacks/react.csv +54 -0
  16. package/.agents/.shared/ui-ux-pro-max/data/stacks/shadcn.csv +61 -0
  17. package/.agents/.shared/ui-ux-pro-max/data/stacks/svelte.csv +54 -0
  18. package/.agents/.shared/ui-ux-pro-max/data/stacks/swiftui.csv +51 -0
  19. package/.agents/.shared/ui-ux-pro-max/data/stacks/vue.csv +50 -0
  20. package/.agents/.shared/ui-ux-pro-max/data/styles.csv +59 -0
  21. package/.agents/.shared/ui-ux-pro-max/data/typography.csv +58 -0
  22. package/.agents/.shared/ui-ux-pro-max/data/ui-reasoning.csv +101 -0
  23. package/.agents/.shared/ui-ux-pro-max/data/ux-guidelines.csv +100 -0
  24. package/.agents/.shared/ui-ux-pro-max/data/web-interface.csv +31 -0
  25. package/.agents/.shared/ui-ux-pro-max/scripts/core.py +258 -0
  26. package/.agents/.shared/ui-ux-pro-max/scripts/design_system.py +1067 -0
  27. package/.agents/.shared/ui-ux-pro-max/scripts/search.py +106 -0
  28. package/.agents/ARCHITECTURE.md +285 -0
  29. package/.agents/agents/backend-specialist.md +268 -0
  30. package/.agents/agents/code-archaeologist.md +106 -0
  31. package/.agents/agents/database-architect.md +225 -0
  32. package/.agents/agents/debugger.md +225 -0
  33. package/.agents/agents/devops-engineer.md +242 -0
  34. package/.agents/agents/documentation-writer.md +104 -0
  35. package/.agents/agents/explorer-agent.md +73 -0
  36. package/.agents/agents/frontend-specialist.md +618 -0
  37. package/.agents/agents/game-developer.md +162 -0
  38. package/.agents/agents/mobile-developer.md +382 -0
  39. package/.agents/agents/orchestrator.md +436 -0
  40. package/.agents/agents/penetration-tester.md +188 -0
  41. package/.agents/agents/performance-optimizer.md +187 -0
  42. package/.agents/agents/product-manager.md +112 -0
  43. package/.agents/agents/product-owner.md +95 -0
  44. package/.agents/agents/project-planner.md +405 -0
  45. package/.agents/agents/qa-automation-engineer.md +103 -0
  46. package/.agents/agents/security-auditor.md +170 -0
  47. package/.agents/agents/seo-specialist.md +111 -0
  48. package/.agents/agents/test-engineer.md +158 -0
  49. package/.agents/mcp_config.json +22 -0
  50. package/.agents/rules/GEMINI.md +273 -0
  51. package/.agents/scripts/auto_preview.py +148 -0
  52. package/.agents/scripts/checklist.py +217 -0
  53. package/.agents/scripts/session_manager.py +120 -0
  54. package/.agents/scripts/verify_all.py +327 -0
  55. package/.agents/skills/api-patterns/SKILL.md +84 -0
  56. package/.agents/skills/api-patterns/api-style.md +42 -0
  57. package/.agents/skills/api-patterns/auth.md +24 -0
  58. package/.agents/skills/api-patterns/documentation.md +26 -0
  59. package/.agents/skills/api-patterns/graphql.md +41 -0
  60. package/.agents/skills/api-patterns/rate-limiting.md +31 -0
  61. package/.agents/skills/api-patterns/response.md +37 -0
  62. package/.agents/skills/api-patterns/rest.md +40 -0
  63. package/.agents/skills/api-patterns/scripts/api_validator.py +211 -0
  64. package/.agents/skills/api-patterns/security-testing.md +122 -0
  65. package/.agents/skills/api-patterns/trpc.md +41 -0
  66. package/.agents/skills/api-patterns/versioning.md +22 -0
  67. package/.agents/skills/app-builder/SKILL.md +75 -0
  68. package/.agents/skills/app-builder/agent-coordination.md +74 -0
  69. package/.agents/skills/app-builder/feature-building.md +53 -0
  70. package/.agents/skills/app-builder/project-detection.md +34 -0
  71. package/.agents/skills/app-builder/scaffolding.md +118 -0
  72. package/.agents/skills/app-builder/tech-stack.md +40 -0
  73. package/.agents/skills/app-builder/templates/SKILL.md +39 -0
  74. package/.agents/skills/app-builder/templates/astro-static/TEMPLATE.md +76 -0
  75. package/.agents/skills/app-builder/templates/chrome-extension/TEMPLATE.md +92 -0
  76. package/.agents/skills/app-builder/templates/cli-tool/TEMPLATE.md +88 -0
  77. package/.agents/skills/app-builder/templates/electron-desktop/TEMPLATE.md +88 -0
  78. package/.agents/skills/app-builder/templates/express-api/TEMPLATE.md +83 -0
  79. package/.agents/skills/app-builder/templates/flutter-app/TEMPLATE.md +90 -0
  80. package/.agents/skills/app-builder/templates/monorepo-turborepo/TEMPLATE.md +90 -0
  81. package/.agents/skills/app-builder/templates/nextjs-fullstack/TEMPLATE.md +122 -0
  82. package/.agents/skills/app-builder/templates/nextjs-saas/TEMPLATE.md +122 -0
  83. package/.agents/skills/app-builder/templates/nextjs-static/TEMPLATE.md +169 -0
  84. package/.agents/skills/app-builder/templates/nuxt-app/TEMPLATE.md +134 -0
  85. package/.agents/skills/app-builder/templates/python-fastapi/TEMPLATE.md +83 -0
  86. package/.agents/skills/app-builder/templates/react-native-app/TEMPLATE.md +119 -0
  87. package/.agents/skills/architecture/SKILL.md +57 -0
  88. package/.agents/skills/architecture/context-discovery.md +43 -0
  89. package/.agents/skills/architecture/examples.md +94 -0
  90. package/.agents/skills/architecture/pattern-selection.md +68 -0
  91. package/.agents/skills/architecture/patterns-reference.md +50 -0
  92. package/.agents/skills/architecture/trade-off-analysis.md +77 -0
  93. package/.agents/skills/bash-linux/SKILL.md +201 -0
  94. package/.agents/skills/behavioral-modes/SKILL.md +264 -0
  95. package/.agents/skills/brainstorming/SKILL.md +164 -0
  96. package/.agents/skills/brainstorming/dynamic-questioning.md +359 -0
  97. package/.agents/skills/clean-code/SKILL.md +200 -0
  98. package/.agents/skills/code-review-checklist/SKILL.md +125 -0
  99. package/.agents/skills/database-design/SKILL.md +54 -0
  100. package/.agents/skills/database-design/database-selection.md +43 -0
  101. package/.agents/skills/database-design/indexing.md +39 -0
  102. package/.agents/skills/database-design/migrations.md +50 -0
  103. package/.agents/skills/database-design/optimization.md +36 -0
  104. package/.agents/skills/database-design/orm-selection.md +30 -0
  105. package/.agents/skills/database-design/schema-design.md +56 -0
  106. package/.agents/skills/database-design/scripts/schema_validator.py +172 -0
  107. package/.agents/skills/deployment-procedures/SKILL.md +241 -0
  108. package/.agents/skills/doc.md +177 -0
  109. package/.agents/skills/documentation-templates/SKILL.md +194 -0
  110. package/.agents/skills/frontend-design/SKILL.md +418 -0
  111. package/.agents/skills/frontend-design/animation-guide.md +331 -0
  112. package/.agents/skills/frontend-design/color-system.md +307 -0
  113. package/.agents/skills/frontend-design/decision-trees.md +418 -0
  114. package/.agents/skills/frontend-design/motion-graphics.md +306 -0
  115. package/.agents/skills/frontend-design/scripts/accessibility_checker.py +183 -0
  116. package/.agents/skills/frontend-design/scripts/ux_audit.py +727 -0
  117. package/.agents/skills/frontend-design/typography-system.md +345 -0
  118. package/.agents/skills/frontend-design/ux-psychology.md +1118 -0
  119. package/.agents/skills/frontend-design/visual-effects.md +383 -0
  120. package/.agents/skills/game-development/2d-games/SKILL.md +119 -0
  121. package/.agents/skills/game-development/3d-games/SKILL.md +135 -0
  122. package/.agents/skills/game-development/SKILL.md +167 -0
  123. package/.agents/skills/game-development/game-art/SKILL.md +185 -0
  124. package/.agents/skills/game-development/game-audio/SKILL.md +190 -0
  125. package/.agents/skills/game-development/game-design/SKILL.md +129 -0
  126. package/.agents/skills/game-development/mobile-games/SKILL.md +108 -0
  127. package/.agents/skills/game-development/multiplayer/SKILL.md +132 -0
  128. package/.agents/skills/game-development/pc-games/SKILL.md +144 -0
  129. package/.agents/skills/game-development/vr-ar/SKILL.md +123 -0
  130. package/.agents/skills/game-development/web-games/SKILL.md +150 -0
  131. package/.agents/skills/geo-fundamentals/SKILL.md +155 -0
  132. package/.agents/skills/geo-fundamentals/scripts/geo_checker.py +289 -0
  133. package/.agents/skills/i18n-localization/SKILL.md +154 -0
  134. package/.agents/skills/i18n-localization/scripts/i18n_checker.py +241 -0
  135. package/.agents/skills/intelligent-routing/SKILL.md +335 -0
  136. package/.agents/skills/lint-and-validate/SKILL.md +44 -0
  137. package/.agents/skills/lint-and-validate/scripts/lint_runner.py +184 -0
  138. package/.agents/skills/lint-and-validate/scripts/type_coverage.py +173 -0
  139. package/.agents/skills/mcp-builder/SKILL.md +176 -0
  140. package/.agents/skills/mobile-design/SKILL.md +394 -0
  141. package/.agents/skills/mobile-design/decision-trees.md +516 -0
  142. package/.agents/skills/mobile-design/mobile-backend.md +491 -0
  143. package/.agents/skills/mobile-design/mobile-color-system.md +420 -0
  144. package/.agents/skills/mobile-design/mobile-debugging.md +122 -0
  145. package/.agents/skills/mobile-design/mobile-design-thinking.md +355 -0
  146. package/.agents/skills/mobile-design/mobile-navigation.md +458 -0
  147. package/.agents/skills/mobile-design/mobile-performance.md +767 -0
  148. package/.agents/skills/mobile-design/mobile-testing.md +356 -0
  149. package/.agents/skills/mobile-design/mobile-typography.md +432 -0
  150. package/.agents/skills/mobile-design/platform-android.md +666 -0
  151. package/.agents/skills/mobile-design/platform-ios.md +561 -0
  152. package/.agents/skills/mobile-design/scripts/mobile_audit.py +670 -0
  153. package/.agents/skills/mobile-design/touch-psychology.md +537 -0
  154. package/.agents/skills/nextjs-react-expert/1-async-eliminating-waterfalls.md +311 -0
  155. package/.agents/skills/nextjs-react-expert/2-bundle-bundle-size-optimization.md +241 -0
  156. package/.agents/skills/nextjs-react-expert/3-server-server-side-performance.md +489 -0
  157. package/.agents/skills/nextjs-react-expert/4-client-client-side-data-fetching.md +263 -0
  158. package/.agents/skills/nextjs-react-expert/5-rerender-re-render-optimization.md +581 -0
  159. package/.agents/skills/nextjs-react-expert/6-rendering-rendering-performance.md +431 -0
  160. package/.agents/skills/nextjs-react-expert/7-js-javascript-performance.md +683 -0
  161. package/.agents/skills/nextjs-react-expert/8-advanced-advanced-patterns.md +149 -0
  162. package/.agents/skills/nextjs-react-expert/SKILL.md +286 -0
  163. package/.agents/skills/nextjs-react-expert/scripts/convert_rules.py +222 -0
  164. package/.agents/skills/nextjs-react-expert/scripts/react_performance_checker.py +252 -0
  165. package/.agents/skills/nodejs-best-practices/SKILL.md +333 -0
  166. package/.agents/skills/parallel-agents/SKILL.md +193 -0
  167. package/.agents/skills/performance-profiling/SKILL.md +149 -0
  168. package/.agents/skills/performance-profiling/scripts/lighthouse_audit.py +120 -0
  169. package/.agents/skills/plan-writing/SKILL.md +152 -0
  170. package/.agents/skills/powershell-windows/SKILL.md +166 -0
  171. package/.agents/skills/python-patterns/SKILL.md +441 -0
  172. package/.agents/skills/red-team-tactics/SKILL.md +203 -0
  173. package/.agents/skills/refactoring-patterns/SKILL.md +43 -0
  174. package/.agents/skills/rust-pro/SKILL.md +190 -0
  175. package/.agents/skills/seo-fundamentals/SKILL.md +135 -0
  176. package/.agents/skills/seo-fundamentals/scripts/seo_checker.py +215 -0
  177. package/.agents/skills/server-management/SKILL.md +161 -0
  178. package/.agents/skills/systematic-debugging/SKILL.md +114 -0
  179. package/.agents/skills/tailwind-patterns/SKILL.md +269 -0
  180. package/.agents/skills/tdd-workflow/SKILL.md +149 -0
  181. package/.agents/skills/testing-patterns/SKILL.md +178 -0
  182. package/.agents/skills/testing-patterns/scripts/test_runner.py +219 -0
  183. package/.agents/skills/vulnerability-scanner/SKILL.md +276 -0
  184. package/.agents/skills/vulnerability-scanner/checklists.md +131 -0
  185. package/.agents/skills/vulnerability-scanner/scripts/__pycache__/security_scan.cpython-310.pyc +0 -0
  186. package/.agents/skills/vulnerability-scanner/scripts/security_scan.py +524 -0
  187. package/.agents/skills/web-design-guidelines/SKILL.md +57 -0
  188. package/.agents/skills/webapp-testing/SKILL.md +187 -0
  189. package/.agents/skills/webapp-testing/scripts/playwright_runner.py +173 -0
  190. package/.agents/workflows/brainstorm.md +113 -0
  191. package/.agents/workflows/create.md +59 -0
  192. package/.agents/workflows/debug.md +103 -0
  193. package/.agents/workflows/deploy.md +176 -0
  194. package/.agents/workflows/enhance.md +63 -0
  195. package/.agents/workflows/orchestrate.md +242 -0
  196. package/.agents/workflows/plan.md +89 -0
  197. package/.agents/workflows/preview.md +80 -0
  198. package/.agents/workflows/restore-localize-compat.md +525 -0
  199. package/.agents/workflows/status.md +86 -0
  200. package/.agents/workflows/test.md +144 -0
  201. package/.agents/workflows/ui-ux-pro-max.md +295 -0
  202. package/.spec/profiles/codex/AGENTS.spec.md +7 -0
  203. package/.spec/profiles/codex/ling.spec.rules.md +4 -0
  204. package/.spec/profiles/gemini/GEMINI.spec.md +5 -0
  205. package/.spec/references/README.md +36 -0
  206. package/.spec/references/cse-quickstart.md +96 -0
  207. package/.spec/references/gda-framework.md +394 -0
  208. package/.spec/references/harness-engineering-digest.md +93 -0
  209. package/.spec/skills/cybernetic-systems-engineering/SKILL.md +792 -0
  210. package/.spec/skills/cybernetic-systems-engineering/agents/openai.yaml +5 -0
  211. package/.spec/skills/cybernetic-systems-engineering/assets/quickstart.md +96 -0
  212. package/.spec/skills/cybernetic-systems-engineering/references/README.md +36 -0
  213. package/.spec/skills/cybernetic-systems-engineering/references/gda-framework.md +394 -0
  214. package/.spec/skills/cybernetic-systems-engineering/scripts/issues.csv +20 -0
  215. package/.spec/skills/harness-engineering/SKILL.md +100 -0
  216. package/.spec/skills/harness-engineering/agents/openai.yaml +4 -0
  217. package/.spec/skills/harness-engineering/references/harness-engineering-digest.md +93 -0
  218. package/.spec/templates/driver-prompt.md +7 -0
  219. package/.spec/templates/handoff.md +9 -0
  220. package/.spec/templates/issues.template.csv +2 -0
  221. package/.spec/templates/phase-acceptance.md +9 -0
  222. package/.spec/templates/review-report.md +9 -0
  223. package/AGENT_FLOW.md +609 -0
  224. package/CHANGELOG.md +43 -0
  225. package/LICENSE +21 -0
  226. package/README.md +359 -0
  227. package/bin/adapters/base.js +63 -0
  228. package/bin/adapters/codex.js +421 -0
  229. package/bin/adapters/gemini.js +157 -0
  230. package/bin/ag-kit.js +2266 -0
  231. package/bin/core/builder.js +80 -0
  232. package/bin/core/generator.js +59 -0
  233. package/bin/core/resource-loader.js +64 -0
  234. package/bin/core/transformer.js +208 -0
  235. package/bin/interactive.js +65 -0
  236. package/bin/ling.js +3 -0
  237. package/bin/utils/atomic-writer.js +97 -0
  238. package/bin/utils/git-helper.js +68 -0
  239. package/bin/utils/managed-block.js +65 -0
  240. package/bin/utils/manifest.js +244 -0
  241. package/bin/utils.js +89 -0
  242. package/docs/PLAN.md +54 -0
  243. package/docs/TECH.md +191 -0
  244. package/package.json +56 -0
  245. package/scripts/ci-verify.js +110 -0
  246. package/scripts/clean.js +123 -0
  247. package/scripts/health-check.js +143 -0
  248. package/scripts/health-check.sh +6 -0
  249. package/scripts/postinstall-check.js +112 -0
  250. package/scripts/run-tests.js +49 -0
  251. package/tests/atomic-writer.test.js +47 -0
  252. package/tests/clean-script.test.js +77 -0
  253. package/tests/cli-smoke.test.js +479 -0
  254. package/tests/codex-adapter.test.js +132 -0
  255. package/tests/doctor.test.js +94 -0
  256. package/tests/gemini-adapter.test.js +30 -0
  257. package/tests/generator.test.js +48 -0
  258. package/tests/git-helper.test.js +53 -0
  259. package/tests/global-sync.test.js +133 -0
  260. package/tests/health-check-script.test.js +34 -0
  261. package/tests/managed-block.test.js +41 -0
  262. package/tests/manifest.test.js +97 -0
  263. package/tests/package-tarball.test.js +33 -0
  264. package/tests/phase-c.test.js +107 -0
  265. package/tests/spec-profile.test.js +86 -0
  266. package/tests/standards-compliance.test.js +303 -0
  267. package/tests/transformer.test.js +74 -0
  268. package/tests/versioning.test.js +51 -0
package/README.md ADDED
@@ -0,0 +1,359 @@
1
+ # 灵轨(Ling)
2
+
3
+ [![npm version](https://img.shields.io/npm/v/%40mison%2Fling?logo=npm)](https://www.npmjs.com/package/@mison/ling)
4
+ [![npm downloads](https://img.shields.io/npm/dm/%40mison%2Fling?logo=npm)](https://www.npmjs.com/package/@mison/ling)
5
+ [![license](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE)
6
+
7
+ > 面向 Gemini CLI、Antigravity 与 Codex 的中文 AI Agent 模板工具包,提供 Skills、Agents、Workflows 与 CLI 的一键安装、更新和治理。
8
+
9
+ ## 致谢
10
+
11
+ 本项目吸收并整合了社区项目的经验与资产,感谢:
12
+
13
+ - [vudovn/antigravity-kit](https://github.com/vudovn/antigravity-kit)
14
+ - [2217173240/Coding-Agent-prompt-best-practice](https://github.com/2217173240/Coding-Agent-prompt-best-practice)
15
+
16
+ ## 快速安装
17
+
18
+ ```bash
19
+ npm install -g @mison/ling
20
+ ```
21
+
22
+ 或使用 Bun:
23
+
24
+ ```bash
25
+ bun install -g @mison/ling
26
+ ```
27
+
28
+ 然后在你的目标项目中初始化:
29
+
30
+ ```bash
31
+ cd /path/to/your-project
32
+ ling init --target gemini # 安装 Gemini 结构(.agent)
33
+ ling init --target codex # 安装 Codex 结构(.agents + 托管规则注入)
34
+ # 或者直接 ling init,在交互中选择目标
35
+ ```
36
+
37
+ 说明:
38
+ - npm 安装的主命令入口为 `ling`。
39
+ - 为兼容历史用法与上游文档,本包仍提供 `ag-kit` 命令别名。
40
+
41
+ 可选:不做全局安装,直接在仓库目录执行:
42
+
43
+ ```bash
44
+ cd /path/to/Ling
45
+ node bin/ling.js init --target codex --path /path/to/your-project
46
+ ```
47
+
48
+ 如需源码开发安装:
49
+
50
+ ```bash
51
+ git clone https://github.com/MisonL/Ling.git
52
+ cd Ling
53
+ npm install -g .
54
+ ```
55
+
56
+ 这会把所选目标结构安装到你的项目中(`gemini -> .agent`,`codex -> .agents`),并把 Codex 托管内容注入工作区 `AGENTS.md` 与 `ling.rules`(说明性托管区块,不是 Codex 官方 `.rules` 审批策略文件)。
57
+
58
+ ### 全局安装(跨项目复用 Skills)
59
+
60
+ 为区分“项目安装”和“全局安装”,提供专用命令面:
61
+
62
+ - 项目安装:`ling init` / `ling update`(功能最完整)
63
+ - 全局安装:`ling global sync`(仅同步 Skills,跨项目复用)
64
+ - 默认行为:`ling global sync` 未指定 `--target/--targets` 时,同步 `codex + gemini`
65
+ - 真实落盘:
66
+ - `codex` -> `~/.codex/skills/`
67
+ - `gemini` -> 同时写入 `~/.gemini/skills/` 与 `~/.gemini/antigravity/skills/`
68
+
69
+ 示例:
70
+
71
+ ```bash
72
+ ling global sync
73
+ ling global sync --target codex
74
+ ling global sync --target gemini
75
+ ling global status
76
+ ```
77
+
78
+ 全局安装只同步 Skills,不写入 Rules/Agents/Workflows,避免全局副作用。
79
+ 覆盖同名 Skill 前会自动备份;手动回滚方式见 `docs/TECH.md`。
80
+
81
+ 规划与边界细节见:`docs/PLAN.md`(规划)与 `docs/TECH.md`(技术)。
82
+
83
+ 版本与发布约定:
84
+ - npm 包版本遵循 SemVer(`package.json`)
85
+ - git tag 与 CLI `--version` 显示使用 `ling-<SemVer>`(例如 `ling-1.0.0`)
86
+
87
+ ### Spec Profile(可选进阶能力)
88
+
89
+ - 默认关闭,不随 `ling init / update / global sync` 自动安装
90
+ - 当前已落地全局层命令:
91
+ - `ling spec status`
92
+ - `ling spec enable`
93
+ - `ling spec disable`
94
+ - 默认目标:`ling spec enable` 未指定目标时,会启用 `codex + gemini`
95
+ - 当前全局层会安装:
96
+ - Skills:`harness-engineering`、`cybernetic-systems-engineering`
97
+ - Spec 运行模板:写入 `~/.ling/spec/templates/`
98
+ - Spec 参考资料:写入 `~/.ling/spec/references/`
99
+ - 目标平台落盘:
100
+ - `codex` -> `~/.codex/skills/`
101
+ - `gemini` -> 同时写入 `~/.gemini/skills/` 与 `~/.gemini/antigravity/skills/`
102
+
103
+ 示例:
104
+
105
+ ```bash
106
+ ling spec status
107
+ ling spec enable --target codex
108
+ ling spec disable --target codex
109
+ ```
110
+
111
+ 说明:
112
+
113
+ - `spec enable` 会在覆盖同名 Skill 前自动备份到 `~/.ling/backups/spec/<timestamp>/...`
114
+ - `spec disable` 会优先恢复启用前快照;若启用前不存在同名资源,则删除由 Spec 安装的资源
115
+ - 项目级 `spec init/remove/doctor` 仍处于后续阶段,本版本尚未开放
116
+
117
+ ### Codex 规则边界说明
118
+
119
+ - `ling.rules`:本项目生成并注入的托管说明文件,用于记录受管资源与运维约束。
120
+ - `.rules`(如 `~/.codex/rules/default.rules`):Codex 官方的命令审批/执行策略文件(Starlark 规则,支持 `prefix_rule()`)。
121
+ - 默认行为:本项目不会自动写入你的全局 `~/.codex/rules`,避免引入不可预期的全局副作用。
122
+ - 如需启用官方 `.rules` 审批策略,请参考 `docs/TECH.md` 的「Codex 官方 `.rules`(手动配置)」小节。
123
+
124
+ ### 跨平台与文本编码约束
125
+
126
+ - 编码与换行:分发到用户项目与全局目录的模板资源使用 UTF-8 与 LF。
127
+ - 终端可读性:模板文本与脚本输出避免使用 Emoji 或装饰性 Unicode 字符,统一采用纯 ASCII 标记,提升 Windows/WSL/Linux/macOS 的显示一致性。
128
+
129
+ ### 注意:关于 `.gitignore` 的重要说明
130
+
131
+ 如果你正在使用 **Cursor** 或 **Windsurf** 等 AI 编辑器,将 `.agent/`、`.agents/` 添加到 `.gitignore` 可能会阻止 IDE 索引工作流,导致斜杠命令(如 `/plan`、`/debug`)无法出现在对话建议中。
132
+
133
+ **推荐方案:**
134
+ 1. 确保 `.agent/`、`.agents/` **不要** 出现在项目的 `.gitignore` 中。
135
+ 2. 作为替代方案,将其加入本地排除文件:`.git/info/exclude`。
136
+
137
+ ## 包含内容
138
+
139
+ | 组件 | 数量 | 描述 |
140
+ | --- | --- | --- |
141
+ | Agents(智能体) | 20 | 专家级 AI 人设(前端、后端、安全、产品、QA 等) |
142
+ | Skills(技能) | 37 | 特定领域的知识模块 |
143
+ | Workflows(工作流) | 12 | 斜杠命令流程 |
144
+
145
+ ## 使用方法
146
+
147
+ ### 使用智能体
148
+
149
+ **无需显式提及智能体!** 系统会自动检测并应用合适专家:
150
+
151
+ ```
152
+ 你:"添加 JWT 认证"
153
+ AI:正在应用 @security-auditor + @backend-specialist...
154
+
155
+ 你:"修复深色模式按钮"
156
+ AI:正在使用 @frontend-specialist...
157
+
158
+ 你:"登录返回 500 错误"
159
+ AI:正在使用 @debugger 进行系统化分析...
160
+ ```
161
+
162
+ **工作原理:**
163
+
164
+ - 静默分析请求
165
+ - 自动检测领域(前端、后端、安全等)
166
+ - 选择最佳专家
167
+ - 告知你正在应用哪方面的专业知识
168
+ - 无需了解系统架构即可获得专家级响应
169
+
170
+ **优势:**
171
+
172
+ - 零学习曲线:描述需求即可
173
+ - 始终获得专家响应
174
+ - 透明:显示正在使用的智能体
175
+ - 仍可显式提及智能体进行覆盖
176
+
177
+ ### 使用工作流
178
+
179
+ 使用斜杠命令调用工作流:
180
+
181
+ | 命令 | 描述 |
182
+ | --- | --- |
183
+ | `/brainstorm` | 在实施前探索方案 |
184
+ | `/create` | 创建新功能或应用 |
185
+ | `/debug` | 系统化调试 |
186
+ | `/deploy` | 部署应用 |
187
+ | `/enhance` | 改进现有代码 |
188
+ | `/orchestrate` | 多智能体协同 |
189
+ | `/plan` | 创建任务拆解 |
190
+ | `/preview` | 本地预览变更 |
191
+ | `/restore-localize-compat` | 文档机制对齐与语义汉化流程(维护工作流) |
192
+ | `/status` | 检查项目状态 |
193
+ | `/test` | 生成并运行测试 |
194
+ | `/ui-ux-pro-max` | 50 种风格的设计 |
195
+
196
+ 示例:
197
+
198
+ ```
199
+ /brainstorm 认证系统
200
+ /create 带 Hero 部分的着陆页
201
+ /debug 为什么登录失败
202
+ ```
203
+
204
+ ### 使用技能
205
+
206
+ 技能会根据任务上下文自动加载。AI 会阅读技能描述并应用相关知识。
207
+
208
+ ## CLI 工具
209
+
210
+ CLI(命令行界面)工具:
211
+
212
+ | 命令 | 描述 |
213
+ | --- | --- |
214
+ | `ling init` | 安装指定目标:gemini/codex |
215
+ | `ling update` | 更新当前项目已安装目标 |
216
+ | `ling update-all` | 批量更新所有已登记工作区 |
217
+ | `ling doctor` | 诊断安装完整性(可 `--fix` 自愈) |
218
+ | `ling global sync` | 全局同步 Skills(默认同步 codex + gemini;其中 gemini 同步到 gemini-cli 与 antigravity) |
219
+ | `ling global status` | 查看全局 Skills 安装状态 |
220
+ | `ling exclude` | 管理全局索引排除清单 |
221
+ | `ling status` | 检查安装状态 |
222
+
223
+ ### 常用选项
224
+
225
+ ```bash
226
+ ling init --target gemini --path ./myapp # 安装 Gemini 到指定目录
227
+ ling init --target codex --path ./myapp # 安装 Codex 到指定目录
228
+ ling init --targets gemini,codex --path ./myapp # 一次安装多个目标
229
+ ling init --non-interactive --target codex # 非交互模式必须显式指定目标
230
+ ling init --target codex --no-index --path ./tmp-workspace # 安装但不写入全局索引
231
+ ling init --branch dev --force # 覆盖安装并指定分支
232
+ ling init --quiet --dry-run # 预览操作而不执行
233
+ ling update --target codex --path ./myapp # 更新指定目标(默认会刷新索引)
234
+ ling update --target codex --no-index --path ./myapp # 更新但不刷新索引
235
+ ling doctor --target codex --fix --path ./myapp # 检查并自动修复
236
+ ling update-all --targets codex # 批量更新所有登记工作区里的 codex 目标
237
+ ling update-all --prune-missing # 清理索引中已失效的路径
238
+ ling exclude list # 查看排除清单
239
+ ling exclude add --path /path/to/dir # 新增排除路径
240
+ ling exclude remove --path /path/to/dir # 删除排除路径
241
+ ```
242
+
243
+ ### 状态命令约定
244
+
245
+ - `ling status --quiet`:输出 `installed` / `broken` / `missing`
246
+ - `ling global status --quiet`:输出 `installed` / `broken` / `missing`
247
+ - 退出码:`0=installed`,`1=broken`,`2=missing`
248
+ - `status` 面向自动化健康判断;如需问题明细,使用 `ling doctor`
249
+
250
+ ### 批量更新机制
251
+
252
+ - 执行 `ling init` / `ling update` 时,会把工作区路径登记到全局索引文件:
253
+ - macOS / Linux / WSL: `~/.ling/workspaces.json`
254
+ - Windows PowerShell / CMD: `%USERPROFILE%\.ling\workspaces.json`
255
+ - 默认会自动排除灵轨工具包源码目录和系统临时目录(如 macOS `/var/folders/...`、`/tmp`、`/private/tmp`,Linux `/tmp`,Windows `%TEMP%`)。
256
+ - 可通过 `--no-index` 让 `init/update` 跳过索引登记(适合临时验证目录)。
257
+ - `ling update` 只依赖当前目录(或 `--path` 指定目录)的已安装目标,不依赖全局索引。
258
+ - 执行 `ling update-all` 时,会遍历索引并批量更新每个工作区(可通过 `--targets` 限定目标)。
259
+ - 可用 `--prune-missing` 自动移除索引里已失效的工作区路径。
260
+ - 对于历史项目(尚未登记,或曾经 `--no-index` 跳过登记),可在该项目执行一次不带 `--no-index` 的 `ling update`(或 `ling init --force`)后纳入索引。
261
+ - 可通过 `ling exclude add/remove/list` 维护自定义排除路径(支持排除整棵目录树)。
262
+ - 也可通过环境变量 `LING_INDEX_PATH` 指定自定义索引路径。
263
+
264
+ ### 开发维护命令
265
+
266
+ ```bash
267
+ bun run clean # 清理本地生成产物(如 web/.next、web/node_modules)
268
+ bun run clean:dry-run # 预览将被清理的路径
269
+ bun run test # 只执行 tests/ 目录下测试
270
+ bun run health-check # 一键执行全链路健康复检
271
+ ```
272
+
273
+ 如果你在 `web/` 子项目内开发,可按需执行:
274
+
275
+ ```bash
276
+ bun install --cwd web
277
+ bun run lint --cwd web
278
+ ```
279
+
280
+ > 说明:若你通过 `bun install -g` 安装 CLI,Bun 默认会阻止本包 `postinstall`。上游同名包冲突提示会在首次执行 `ling init/update/update-all/global sync` 时给出。
281
+
282
+ ## 卸载
283
+
284
+ ### 卸载本机全局 CLI
285
+
286
+ ```bash
287
+ npm uninstall -g @mison/ling
288
+ ```
289
+
290
+ 如果你之前安装过旧包:`@mison/ag-kit-cn`(已停止维护),可一并清理:
291
+
292
+ ```bash
293
+ npm uninstall -g @mison/ag-kit-cn
294
+ ```
295
+
296
+ 如果你还安装过上游英文版,可一并清理:
297
+
298
+ ```bash
299
+ npm uninstall -g antigravity-kit @vudovn/ag-kit
300
+ ```
301
+
302
+ ### 卸载某个项目内的灵轨
303
+
304
+ macOS / Linux / WSL:
305
+
306
+ ```bash
307
+ cd /path/to/your-project
308
+ rm -rf .agent .agents .agents-backup .codex
309
+ ```
310
+
311
+ Windows PowerShell:
312
+
313
+ ```powershell
314
+ Set-Location C:\path\to\your-project
315
+ Remove-Item .agent,.agents,.agents-backup,.codex -Recurse -Force -ErrorAction SilentlyContinue
316
+ ```
317
+
318
+ Windows CMD:
319
+
320
+ ```cmd
321
+ cd /d C:\path\to\your-project
322
+ rmdir /s /q .agent
323
+ rmdir /s /q .agents
324
+ rmdir /s /q .agents-backup
325
+ rmdir /s /q .codex
326
+ ```
327
+
328
+ ### 清理批量更新索引(可选)
329
+
330
+ ```bash
331
+ ling exclude add --path /path/to/your-project
332
+ ```
333
+
334
+ 说明:全局卸载只会移除 `ling` 命令;兼容入口 `ag-kit` 也会一并消失,但不会删除你本地 clone 的源码目录。
335
+
336
+ ## 请我喝咖啡
337
+
338
+ > 本项目由 **Mison** 进行汉化处理与额外功能开发。
339
+
340
+ <table>
341
+ <tr>
342
+ <td align="center" width="50%">
343
+ <strong>支持 Mison(本仓库维护者)</strong><br />
344
+ <img src="image/README/mison-wechat-pay.jpg" alt="Mison 微信赞赏码" width="260" /><br />
345
+ <sub>微信赞赏码</sub>
346
+ </td>
347
+ <td align="center" width="50%">
348
+ <strong>感谢上游作者 vudovn 创建并维护 Antigravity-Kit</strong><br />
349
+ <a href="https://buymeacoffee.com/vudovn">
350
+ <img src="https://img.shields.io/badge/Buy%20Me%20a%20Coffee-ffdd00?style=for-the-badge&logo=buy-me-a-coffee&logoColor=black" alt="Buy Me a Coffee" />
351
+ </a><br />
352
+ <img src="https://img.vietqr.io/image/mbbank-0779440918-compact.jpg" alt="Upstream donation channel" width="200" />
353
+ </td>
354
+ </tr>
355
+ </table>
356
+
357
+ ## 许可证
358
+
359
+ MIT © Vudovn, Mison
@@ -0,0 +1,63 @@
1
+ const fs = require("fs");
2
+ const path = require("path");
3
+
4
+ class BaseAdapter {
5
+ constructor(workspaceRoot, options) {
6
+ this.workspaceRoot = path.resolve(workspaceRoot);
7
+ this.options = options || {};
8
+ }
9
+
10
+ /**
11
+ * @returns {string} Target name (e.g., 'gemini', 'codex')
12
+ */
13
+ get targetName() {
14
+ throw new Error("Adapter must implement targetName getter");
15
+ }
16
+
17
+ /**
18
+ * @returns {string} Installed version or null if not installed
19
+ */
20
+ getInstalledVersion() {
21
+ throw new Error("Adapter must implement getInstalledVersion");
22
+ }
23
+
24
+ /**
25
+ * Install the target to the workspace
26
+ * @param {string} sourceDir - Path to bundled resources
27
+ */
28
+ install(sourceDir) {
29
+ throw new Error("Adapter must implement install");
30
+ }
31
+
32
+ /**
33
+ * Update the target
34
+ * @param {string} sourceDir - Path to bundled resources
35
+ */
36
+ update(sourceDir) {
37
+ throw new Error("Adapter must implement update");
38
+ }
39
+
40
+ /**
41
+ * Check integrity of the installation
42
+ * @returns {object} status: 'ok'|'broken'|'drift', issues: []
43
+ */
44
+ checkIntegrity() {
45
+ throw new Error("Adapter must implement checkIntegrity");
46
+ }
47
+
48
+ /**
49
+ * Fix integrity issues
50
+ * @returns {object} fixed: boolean, summary: string
51
+ */
52
+ fixIntegrity() {
53
+ throw new Error("Adapter must implement fixIntegrity");
54
+ }
55
+
56
+ log(message) {
57
+ if (!this.options.quiet) {
58
+ console.log(message);
59
+ }
60
+ }
61
+ }
62
+
63
+ module.exports = BaseAdapter;