@mison/ag-kit-cn 2.0.1 → 3.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 (251) hide show
  1. package/{.agent → .agents}/agents/frontend-specialist.md +2 -2
  2. package/{.agent → .agents}/agents/orchestrator.md +1 -3
  3. package/.agents/mcp_config.json +22 -0
  4. package/{.agent → .agents}/rules/GEMINI.md +2 -2
  5. package/{.agent → .agents}/skills/api-patterns/SKILL.md +2 -2
  6. package/{.agent → .agents}/skills/app-builder/project-detection.md +1 -1
  7. package/{.agent → .agents}/skills/nextjs-react-expert/SKILL.md +2 -2
  8. package/{.agent → .agents}/skills/parallel-agents/SKILL.md +0 -1
  9. package/.agents/skills/refactoring-patterns/SKILL.md +43 -0
  10. package/{.agent → .agents}/workflows/create.md +1 -1
  11. package/CHANGELOG.md +21 -0
  12. package/README.md +54 -8
  13. package/bin/adapters/codex.js +29 -6
  14. package/bin/adapters/gemini.js +23 -3
  15. package/bin/ag-kit.js +512 -17
  16. package/bin/core/builder.js +1 -1
  17. package/bin/core/resource-loader.js +2 -2
  18. package/bin/utils/manifest.js +3 -0
  19. package/bin/utils.js +10 -3
  20. package/docs/PLAN.md +39 -0
  21. package/docs/TECH.md +136 -0
  22. package/package.json +12 -10
  23. package/scripts/ci-verify.js +95 -0
  24. package/scripts/clean.js +123 -0
  25. package/scripts/health-check.js +132 -0
  26. package/scripts/health-check.sh +6 -0
  27. package/tests/atomic-writer.test.js +47 -0
  28. package/tests/clean-script.test.js +77 -0
  29. package/tests/cli-smoke.test.js +479 -0
  30. package/tests/codex-adapter.test.js +132 -0
  31. package/tests/doctor.test.js +94 -0
  32. package/tests/gemini-adapter.test.js +30 -0
  33. package/tests/generator.test.js +48 -0
  34. package/tests/git-helper.test.js +53 -0
  35. package/tests/global-sync.test.js +133 -0
  36. package/tests/health-check-script.test.js +30 -0
  37. package/tests/managed-block.test.js +41 -0
  38. package/tests/manifest.test.js +97 -0
  39. package/tests/package-tarball.test.js +27 -0
  40. package/tests/phase-c.test.js +107 -0
  41. package/tests/standards-compliance.test.js +266 -0
  42. package/tests/transformer.test.js +74 -0
  43. package/.agent/mcp_config.json +0 -12
  44. package/docs/codex-rules-template.md +0 -36
  45. package/docs/mapping-spec.md +0 -68
  46. package/docs/multi-target-adapter.md +0 -80
  47. package/docs/official/README.md +0 -53
  48. package/docs/official/antigravity/agent-modes-settings.md +0 -64
  49. package/docs/official/antigravity/rules-workflows.md +0 -96
  50. package/docs/official/antigravity/skills.md +0 -147
  51. package/docs/official/codex/agents-md.md +0 -119
  52. package/docs/official/codex/config-advanced.md +0 -358
  53. package/docs/official/codex/config-basic.md +0 -141
  54. package/docs/official/codex/config-reference.md +0 -223
  55. package/docs/official/codex/config-sample.md +0 -216
  56. package/docs/official/codex/mcp.md +0 -107
  57. package/docs/official/codex/rules.md +0 -79
  58. package/docs/official/codex/skills.md +0 -114
  59. package/docs/official/sources-index.md +0 -32
  60. package/docs/operations.md +0 -145
  61. package/docs/terminology-style-guide.md +0 -69
  62. /package/{.agent → .agents}/.shared/ui-ux-pro-max/data/charts.csv +0 -0
  63. /package/{.agent → .agents}/.shared/ui-ux-pro-max/data/colors.csv +0 -0
  64. /package/{.agent → .agents}/.shared/ui-ux-pro-max/data/icons.csv +0 -0
  65. /package/{.agent → .agents}/.shared/ui-ux-pro-max/data/landing.csv +0 -0
  66. /package/{.agent → .agents}/.shared/ui-ux-pro-max/data/products.csv +0 -0
  67. /package/{.agent → .agents}/.shared/ui-ux-pro-max/data/prompts.csv +0 -0
  68. /package/{.agent → .agents}/.shared/ui-ux-pro-max/data/react-performance.csv +0 -0
  69. /package/{.agent → .agents}/.shared/ui-ux-pro-max/data/stacks/flutter.csv +0 -0
  70. /package/{.agent → .agents}/.shared/ui-ux-pro-max/data/stacks/html-tailwind.csv +0 -0
  71. /package/{.agent → .agents}/.shared/ui-ux-pro-max/data/stacks/jetpack-compose.csv +0 -0
  72. /package/{.agent → .agents}/.shared/ui-ux-pro-max/data/stacks/nextjs.csv +0 -0
  73. /package/{.agent → .agents}/.shared/ui-ux-pro-max/data/stacks/nuxt-ui.csv +0 -0
  74. /package/{.agent → .agents}/.shared/ui-ux-pro-max/data/stacks/nuxtjs.csv +0 -0
  75. /package/{.agent → .agents}/.shared/ui-ux-pro-max/data/stacks/react-native.csv +0 -0
  76. /package/{.agent → .agents}/.shared/ui-ux-pro-max/data/stacks/react.csv +0 -0
  77. /package/{.agent → .agents}/.shared/ui-ux-pro-max/data/stacks/shadcn.csv +0 -0
  78. /package/{.agent → .agents}/.shared/ui-ux-pro-max/data/stacks/svelte.csv +0 -0
  79. /package/{.agent → .agents}/.shared/ui-ux-pro-max/data/stacks/swiftui.csv +0 -0
  80. /package/{.agent → .agents}/.shared/ui-ux-pro-max/data/stacks/vue.csv +0 -0
  81. /package/{.agent → .agents}/.shared/ui-ux-pro-max/data/styles.csv +0 -0
  82. /package/{.agent → .agents}/.shared/ui-ux-pro-max/data/typography.csv +0 -0
  83. /package/{.agent → .agents}/.shared/ui-ux-pro-max/data/ui-reasoning.csv +0 -0
  84. /package/{.agent → .agents}/.shared/ui-ux-pro-max/data/ux-guidelines.csv +0 -0
  85. /package/{.agent → .agents}/.shared/ui-ux-pro-max/data/web-interface.csv +0 -0
  86. /package/{.agent → .agents}/.shared/ui-ux-pro-max/scripts/core.py +0 -0
  87. /package/{.agent → .agents}/.shared/ui-ux-pro-max/scripts/design_system.py +0 -0
  88. /package/{.agent → .agents}/.shared/ui-ux-pro-max/scripts/search.py +0 -0
  89. /package/{.agent → .agents}/ARCHITECTURE.md +0 -0
  90. /package/{.agent → .agents}/agents/backend-specialist.md +0 -0
  91. /package/{.agent → .agents}/agents/code-archaeologist.md +0 -0
  92. /package/{.agent → .agents}/agents/database-architect.md +0 -0
  93. /package/{.agent → .agents}/agents/debugger.md +0 -0
  94. /package/{.agent → .agents}/agents/devops-engineer.md +0 -0
  95. /package/{.agent → .agents}/agents/documentation-writer.md +0 -0
  96. /package/{.agent → .agents}/agents/explorer-agent.md +0 -0
  97. /package/{.agent → .agents}/agents/game-developer.md +0 -0
  98. /package/{.agent → .agents}/agents/mobile-developer.md +0 -0
  99. /package/{.agent → .agents}/agents/penetration-tester.md +0 -0
  100. /package/{.agent → .agents}/agents/performance-optimizer.md +0 -0
  101. /package/{.agent → .agents}/agents/product-manager.md +0 -0
  102. /package/{.agent → .agents}/agents/product-owner.md +0 -0
  103. /package/{.agent → .agents}/agents/project-planner.md +0 -0
  104. /package/{.agent → .agents}/agents/qa-automation-engineer.md +0 -0
  105. /package/{.agent → .agents}/agents/security-auditor.md +0 -0
  106. /package/{.agent → .agents}/agents/seo-specialist.md +0 -0
  107. /package/{.agent → .agents}/agents/test-engineer.md +0 -0
  108. /package/{.agent → .agents}/scripts/auto_preview.py +0 -0
  109. /package/{.agent → .agents}/scripts/checklist.py +0 -0
  110. /package/{.agent → .agents}/scripts/session_manager.py +0 -0
  111. /package/{.agent → .agents}/scripts/verify_all.py +0 -0
  112. /package/{.agent → .agents}/skills/api-patterns/api-style.md +0 -0
  113. /package/{.agent → .agents}/skills/api-patterns/auth.md +0 -0
  114. /package/{.agent → .agents}/skills/api-patterns/documentation.md +0 -0
  115. /package/{.agent → .agents}/skills/api-patterns/graphql.md +0 -0
  116. /package/{.agent → .agents}/skills/api-patterns/rate-limiting.md +0 -0
  117. /package/{.agent → .agents}/skills/api-patterns/response.md +0 -0
  118. /package/{.agent → .agents}/skills/api-patterns/rest.md +0 -0
  119. /package/{.agent → .agents}/skills/api-patterns/scripts/api_validator.py +0 -0
  120. /package/{.agent → .agents}/skills/api-patterns/security-testing.md +0 -0
  121. /package/{.agent → .agents}/skills/api-patterns/trpc.md +0 -0
  122. /package/{.agent → .agents}/skills/api-patterns/versioning.md +0 -0
  123. /package/{.agent → .agents}/skills/app-builder/SKILL.md +0 -0
  124. /package/{.agent → .agents}/skills/app-builder/agent-coordination.md +0 -0
  125. /package/{.agent → .agents}/skills/app-builder/feature-building.md +0 -0
  126. /package/{.agent → .agents}/skills/app-builder/scaffolding.md +0 -0
  127. /package/{.agent → .agents}/skills/app-builder/tech-stack.md +0 -0
  128. /package/{.agent → .agents}/skills/app-builder/templates/SKILL.md +0 -0
  129. /package/{.agent → .agents}/skills/app-builder/templates/astro-static/TEMPLATE.md +0 -0
  130. /package/{.agent → .agents}/skills/app-builder/templates/chrome-extension/TEMPLATE.md +0 -0
  131. /package/{.agent → .agents}/skills/app-builder/templates/cli-tool/TEMPLATE.md +0 -0
  132. /package/{.agent → .agents}/skills/app-builder/templates/electron-desktop/TEMPLATE.md +0 -0
  133. /package/{.agent → .agents}/skills/app-builder/templates/express-api/TEMPLATE.md +0 -0
  134. /package/{.agent → .agents}/skills/app-builder/templates/flutter-app/TEMPLATE.md +0 -0
  135. /package/{.agent → .agents}/skills/app-builder/templates/monorepo-turborepo/TEMPLATE.md +0 -0
  136. /package/{.agent → .agents}/skills/app-builder/templates/nextjs-fullstack/TEMPLATE.md +0 -0
  137. /package/{.agent → .agents}/skills/app-builder/templates/nextjs-saas/TEMPLATE.md +0 -0
  138. /package/{.agent → .agents}/skills/app-builder/templates/nextjs-static/TEMPLATE.md +0 -0
  139. /package/{.agent → .agents}/skills/app-builder/templates/nuxt-app/TEMPLATE.md +0 -0
  140. /package/{.agent → .agents}/skills/app-builder/templates/python-fastapi/TEMPLATE.md +0 -0
  141. /package/{.agent → .agents}/skills/app-builder/templates/react-native-app/TEMPLATE.md +0 -0
  142. /package/{.agent → .agents}/skills/architecture/SKILL.md +0 -0
  143. /package/{.agent → .agents}/skills/architecture/context-discovery.md +0 -0
  144. /package/{.agent → .agents}/skills/architecture/examples.md +0 -0
  145. /package/{.agent → .agents}/skills/architecture/pattern-selection.md +0 -0
  146. /package/{.agent → .agents}/skills/architecture/patterns-reference.md +0 -0
  147. /package/{.agent → .agents}/skills/architecture/trade-off-analysis.md +0 -0
  148. /package/{.agent → .agents}/skills/bash-linux/SKILL.md +0 -0
  149. /package/{.agent → .agents}/skills/behavioral-modes/SKILL.md +0 -0
  150. /package/{.agent → .agents}/skills/brainstorming/SKILL.md +0 -0
  151. /package/{.agent → .agents}/skills/brainstorming/dynamic-questioning.md +0 -0
  152. /package/{.agent → .agents}/skills/clean-code/SKILL.md +0 -0
  153. /package/{.agent → .agents}/skills/code-review-checklist/SKILL.md +0 -0
  154. /package/{.agent → .agents}/skills/database-design/SKILL.md +0 -0
  155. /package/{.agent → .agents}/skills/database-design/database-selection.md +0 -0
  156. /package/{.agent → .agents}/skills/database-design/indexing.md +0 -0
  157. /package/{.agent → .agents}/skills/database-design/migrations.md +0 -0
  158. /package/{.agent → .agents}/skills/database-design/optimization.md +0 -0
  159. /package/{.agent → .agents}/skills/database-design/orm-selection.md +0 -0
  160. /package/{.agent → .agents}/skills/database-design/schema-design.md +0 -0
  161. /package/{.agent → .agents}/skills/database-design/scripts/schema_validator.py +0 -0
  162. /package/{.agent → .agents}/skills/deployment-procedures/SKILL.md +0 -0
  163. /package/{.agent → .agents}/skills/doc.md +0 -0
  164. /package/{.agent → .agents}/skills/documentation-templates/SKILL.md +0 -0
  165. /package/{.agent → .agents}/skills/frontend-design/SKILL.md +0 -0
  166. /package/{.agent → .agents}/skills/frontend-design/animation-guide.md +0 -0
  167. /package/{.agent → .agents}/skills/frontend-design/color-system.md +0 -0
  168. /package/{.agent → .agents}/skills/frontend-design/decision-trees.md +0 -0
  169. /package/{.agent → .agents}/skills/frontend-design/motion-graphics.md +0 -0
  170. /package/{.agent → .agents}/skills/frontend-design/scripts/accessibility_checker.py +0 -0
  171. /package/{.agent → .agents}/skills/frontend-design/scripts/ux_audit.py +0 -0
  172. /package/{.agent → .agents}/skills/frontend-design/typography-system.md +0 -0
  173. /package/{.agent → .agents}/skills/frontend-design/ux-psychology.md +0 -0
  174. /package/{.agent → .agents}/skills/frontend-design/visual-effects.md +0 -0
  175. /package/{.agent → .agents}/skills/game-development/2d-games/SKILL.md +0 -0
  176. /package/{.agent → .agents}/skills/game-development/3d-games/SKILL.md +0 -0
  177. /package/{.agent → .agents}/skills/game-development/SKILL.md +0 -0
  178. /package/{.agent → .agents}/skills/game-development/game-art/SKILL.md +0 -0
  179. /package/{.agent → .agents}/skills/game-development/game-audio/SKILL.md +0 -0
  180. /package/{.agent → .agents}/skills/game-development/game-design/SKILL.md +0 -0
  181. /package/{.agent → .agents}/skills/game-development/mobile-games/SKILL.md +0 -0
  182. /package/{.agent → .agents}/skills/game-development/multiplayer/SKILL.md +0 -0
  183. /package/{.agent → .agents}/skills/game-development/pc-games/SKILL.md +0 -0
  184. /package/{.agent → .agents}/skills/game-development/vr-ar/SKILL.md +0 -0
  185. /package/{.agent → .agents}/skills/game-development/web-games/SKILL.md +0 -0
  186. /package/{.agent → .agents}/skills/geo-fundamentals/SKILL.md +0 -0
  187. /package/{.agent → .agents}/skills/geo-fundamentals/scripts/geo_checker.py +0 -0
  188. /package/{.agent → .agents}/skills/i18n-localization/SKILL.md +0 -0
  189. /package/{.agent → .agents}/skills/i18n-localization/scripts/i18n_checker.py +0 -0
  190. /package/{.agent → .agents}/skills/intelligent-routing/SKILL.md +0 -0
  191. /package/{.agent → .agents}/skills/lint-and-validate/SKILL.md +0 -0
  192. /package/{.agent → .agents}/skills/lint-and-validate/scripts/lint_runner.py +0 -0
  193. /package/{.agent → .agents}/skills/lint-and-validate/scripts/type_coverage.py +0 -0
  194. /package/{.agent → .agents}/skills/mcp-builder/SKILL.md +0 -0
  195. /package/{.agent → .agents}/skills/mobile-design/SKILL.md +0 -0
  196. /package/{.agent → .agents}/skills/mobile-design/decision-trees.md +0 -0
  197. /package/{.agent → .agents}/skills/mobile-design/mobile-backend.md +0 -0
  198. /package/{.agent → .agents}/skills/mobile-design/mobile-color-system.md +0 -0
  199. /package/{.agent → .agents}/skills/mobile-design/mobile-debugging.md +0 -0
  200. /package/{.agent → .agents}/skills/mobile-design/mobile-design-thinking.md +0 -0
  201. /package/{.agent → .agents}/skills/mobile-design/mobile-navigation.md +0 -0
  202. /package/{.agent → .agents}/skills/mobile-design/mobile-performance.md +0 -0
  203. /package/{.agent → .agents}/skills/mobile-design/mobile-testing.md +0 -0
  204. /package/{.agent → .agents}/skills/mobile-design/mobile-typography.md +0 -0
  205. /package/{.agent → .agents}/skills/mobile-design/platform-android.md +0 -0
  206. /package/{.agent → .agents}/skills/mobile-design/platform-ios.md +0 -0
  207. /package/{.agent → .agents}/skills/mobile-design/scripts/mobile_audit.py +0 -0
  208. /package/{.agent → .agents}/skills/mobile-design/touch-psychology.md +0 -0
  209. /package/{.agent → .agents}/skills/nextjs-react-expert/1-async-eliminating-waterfalls.md +0 -0
  210. /package/{.agent → .agents}/skills/nextjs-react-expert/2-bundle-bundle-size-optimization.md +0 -0
  211. /package/{.agent → .agents}/skills/nextjs-react-expert/3-server-server-side-performance.md +0 -0
  212. /package/{.agent → .agents}/skills/nextjs-react-expert/4-client-client-side-data-fetching.md +0 -0
  213. /package/{.agent → .agents}/skills/nextjs-react-expert/5-rerender-re-render-optimization.md +0 -0
  214. /package/{.agent → .agents}/skills/nextjs-react-expert/6-rendering-rendering-performance.md +0 -0
  215. /package/{.agent → .agents}/skills/nextjs-react-expert/7-js-javascript-performance.md +0 -0
  216. /package/{.agent → .agents}/skills/nextjs-react-expert/8-advanced-advanced-patterns.md +0 -0
  217. /package/{.agent → .agents}/skills/nextjs-react-expert/scripts/convert_rules.py +0 -0
  218. /package/{.agent → .agents}/skills/nextjs-react-expert/scripts/react_performance_checker.py +0 -0
  219. /package/{.agent → .agents}/skills/nodejs-best-practices/SKILL.md +0 -0
  220. /package/{.agent → .agents}/skills/performance-profiling/SKILL.md +0 -0
  221. /package/{.agent → .agents}/skills/performance-profiling/scripts/lighthouse_audit.py +0 -0
  222. /package/{.agent → .agents}/skills/plan-writing/SKILL.md +0 -0
  223. /package/{.agent → .agents}/skills/powershell-windows/SKILL.md +0 -0
  224. /package/{.agent → .agents}/skills/python-patterns/SKILL.md +0 -0
  225. /package/{.agent → .agents}/skills/red-team-tactics/SKILL.md +0 -0
  226. /package/{.agent → .agents}/skills/rust-pro/SKILL.md +0 -0
  227. /package/{.agent → .agents}/skills/seo-fundamentals/SKILL.md +0 -0
  228. /package/{.agent → .agents}/skills/seo-fundamentals/scripts/seo_checker.py +0 -0
  229. /package/{.agent → .agents}/skills/server-management/SKILL.md +0 -0
  230. /package/{.agent → .agents}/skills/systematic-debugging/SKILL.md +0 -0
  231. /package/{.agent → .agents}/skills/tailwind-patterns/SKILL.md +0 -0
  232. /package/{.agent → .agents}/skills/tdd-workflow/SKILL.md +0 -0
  233. /package/{.agent → .agents}/skills/testing-patterns/SKILL.md +0 -0
  234. /package/{.agent → .agents}/skills/testing-patterns/scripts/test_runner.py +0 -0
  235. /package/{.agent → .agents}/skills/vulnerability-scanner/SKILL.md +0 -0
  236. /package/{.agent → .agents}/skills/vulnerability-scanner/checklists.md +0 -0
  237. /package/{.agent → .agents}/skills/vulnerability-scanner/scripts/security_scan.py +0 -0
  238. /package/{.agent → .agents}/skills/web-design-guidelines/SKILL.md +0 -0
  239. /package/{.agent → .agents}/skills/webapp-testing/SKILL.md +0 -0
  240. /package/{.agent → .agents}/skills/webapp-testing/scripts/playwright_runner.py +0 -0
  241. /package/{.agent → .agents}/workflows/brainstorm.md +0 -0
  242. /package/{.agent → .agents}/workflows/debug.md +0 -0
  243. /package/{.agent → .agents}/workflows/deploy.md +0 -0
  244. /package/{.agent → .agents}/workflows/enhance.md +0 -0
  245. /package/{.agent → .agents}/workflows/orchestrate.md +0 -0
  246. /package/{.agent → .agents}/workflows/plan.md +0 -0
  247. /package/{.agent → .agents}/workflows/preview.md +0 -0
  248. /package/{.agent → .agents}/workflows/restore-localize-compat.md +0 -0
  249. /package/{.agent → .agents}/workflows/status.md +0 -0
  250. /package/{.agent → .agents}/workflows/test.md +0 -0
  251. /package/{.agent → .agents}/workflows/ui-ux-pro-max.md +0 -0
@@ -1,216 +0,0 @@
1
- # 配置示例(Sample Configuration)
2
-
3
- > 来源:`https://developers.openai.com/codex/config-sample`
4
- > 同步日期:2026-02-12
5
- > 说明:本文件为官方内容的中文整理版,采用标准 Markdown 语法。
6
-
7
- 以下示例可作为 `config.toml` 起点。
8
- 按需复制你需要的键,不建议无差别全量粘贴。
9
-
10
- ```toml
11
- ################################################################################
12
- # Codex 示例配置(config.toml)
13
- # 说明:
14
- # - 根键必须位于各表定义之前
15
- # - 未设置的键会回退默认值
16
- # - 示例中部分键为可选项,按需启用
17
- ################################################################################
18
-
19
- ################################################################################
20
- # 核心模型
21
- ################################################################################
22
-
23
- model = "gpt-5.2-codex"
24
- model_provider = "openai"
25
- # review_model = "gpt-5.2-codex"
26
- # oss_provider = "ollama"
27
-
28
- ################################################################################
29
- # 推理与冗长度
30
- ################################################################################
31
-
32
- model_reasoning_effort = "medium" # minimal / low / medium / high / xhigh
33
- model_reasoning_summary = "auto" # auto / concise / detailed / none
34
- model_verbosity = "medium" # low / medium / high
35
- # model_supports_reasoning_summaries = false
36
-
37
- ################################################################################
38
- # 指令覆盖
39
- ################################################################################
40
-
41
- # developer_instructions = "额外开发指令"
42
- # instructions = "旧字段,兼容使用"
43
- # compact_prompt = "覆盖压缩提示词"
44
- # model_instructions_file = "/path/to/instructions.txt"
45
- # experimental_compact_prompt_file = "/path/to/compact_prompt.txt"
46
-
47
- ################################################################################
48
- # 审批与沙箱
49
- ################################################################################
50
-
51
- approval_policy = "on-request" # untrusted / on-request / on-failure / never
52
- sandbox_mode = "read-only" # read-only / workspace-write / danger-full-access
53
-
54
- [sandbox_workspace_write]
55
- network_access = false
56
- exclude_tmpdir_env_var = false
57
- exclude_slash_tmp = false
58
- writable_roots = []
59
-
60
- ################################################################################
61
- # 认证与登录
62
- ################################################################################
63
-
64
- cli_auth_credentials_store = "file" # file / keyring / auto
65
- # chatgpt_base_url = "https://chatgpt.com/backend-api/"
66
- # forced_chatgpt_workspace_id = ""
67
- # forced_login_method = "chatgpt" # chatgpt / api
68
- # mcp_oauth_credentials_store = "auto" # auto / file / keyring
69
- # mcp_oauth_callback_port = 4321
70
-
71
- ################################################################################
72
- # 项目文档读取策略
73
- ################################################################################
74
-
75
- project_doc_max_bytes = 32768
76
- project_doc_fallback_filenames = []
77
- project_root_markers = [".git"]
78
-
79
- ################################################################################
80
- # Web Search
81
- ################################################################################
82
-
83
- web_search = "cached" # cached / live / disabled
84
-
85
- ################################################################################
86
- # 通知与输出
87
- ################################################################################
88
-
89
- # notify = ["python3", "/path/to/notify.py"]
90
- hide_agent_reasoning = false
91
- show_raw_agent_reasoning = false
92
- file_opener = "vscode" # vscode / cursor / windsurf / none
93
- log_dir = "~/.codex/log"
94
-
95
- ################################################################################
96
- # Shell 环境变量策略
97
- ################################################################################
98
-
99
- [shell_environment_policy]
100
- inherit = "all" # all / core / none
101
- ignore_default_excludes = false
102
- exclude = []
103
- include_only = []
104
- set = {}
105
- use_login_shell = false
106
-
107
- ################################################################################
108
- # 历史记录
109
- ################################################################################
110
-
111
- [history]
112
- persistence = "save-all" # save-all / none
113
- # max_bytes = 104857600
114
-
115
- ################################################################################
116
- # TUI 配置
117
- ################################################################################
118
-
119
- [tui]
120
- notifications = true # true / false / ["agent-turn-complete"]
121
- # notification_method = "auto" # auto / osc9 / bel
122
- animations = true
123
- show_tooltips = true
124
- alternate_screen = "auto"
125
- # status_line = ["model", "context-remaining", "git-branch"]
126
-
127
- ################################################################################
128
- # 功能开关(features)
129
- ################################################################################
130
-
131
- [features]
132
- collaboration_modes = true
133
- request_rule = true
134
- shell_tool = true
135
- undo = true
136
- shell_snapshot = false
137
- unified_exec = false
138
- apply_patch_freeform = false
139
- personality = true
140
- runtime_metrics = false
141
- apps = false
142
-
143
- ################################################################################
144
- # MCP 服务器示例
145
- ################################################################################
146
-
147
- [mcp_servers.context7]
148
- enabled = true
149
- command = "npx"
150
- args = ["-y", "@upstash/context7-mcp"]
151
- startup_timeout_sec = 10.0
152
- tool_timeout_sec = 60.0
153
-
154
- [mcp_servers.github]
155
- enabled = false
156
- url = "https://github-mcp.example.com/mcp"
157
- bearer_token_env_var = "GITHUB_TOKEN"
158
- startup_timeout_sec = 10.0
159
- tool_timeout_sec = 60.0
160
-
161
- ################################################################################
162
- # Provider 示例
163
- ################################################################################
164
-
165
- [model_providers.openai]
166
- name = "OpenAI"
167
- base_url = "https://api.openai.com/v1"
168
- wire_api = "responses"
169
-
170
- [model_providers.ollama]
171
- name = "Ollama"
172
- base_url = "http://localhost:11434/v1"
173
- wire_api = "chat"
174
-
175
- [model_providers.azure]
176
- name = "Azure"
177
- base_url = "https://YOUR_PROJECT_NAME.openai.azure.com/openai"
178
- wire_api = "responses"
179
- query_params = { api-version = "2025-04-01-preview" }
180
- env_key = "AZURE_OPENAI_API_KEY"
181
-
182
- ################################################################################
183
- # 命名配置集(profiles)
184
- ################################################################################
185
-
186
- [profiles.deep-review]
187
- model = "gpt-5-pro"
188
- model_reasoning_effort = "high"
189
- approval_policy = "on-request"
190
- sandbox_mode = "read-only"
191
-
192
- [profiles.fast-local]
193
- model_provider = "ollama"
194
- model = "qwen2.5-coder:14b"
195
- approval_policy = "never"
196
- sandbox_mode = "workspace-write"
197
-
198
- ################################################################################
199
- # 其他策略开关
200
- ################################################################################
201
-
202
- [analytics]
203
- enabled = true
204
-
205
- [feedback]
206
- enabled = true
207
-
208
- [projects."/absolute/path/to/project"]
209
- trust_level = "trusted" # trusted / untrusted
210
- ```
211
-
212
- ## 使用建议
213
-
214
- 1. 先写最小配置:`model`、`approval_policy`、`sandbox_mode`。
215
- 2. 再按场景补充:`features`、`mcp_servers`、`model_providers`。
216
- 3. 团队协作时统一 `requirements.toml` 约束,避免配置越权。
@@ -1,107 +0,0 @@
1
- # 模型上下文协议(MCP)
2
-
3
- > 来源:`https://developers.openai.com/codex/mcp`
4
- > 同步日期:2026-02-12
5
- > 说明:本文件为官方内容的中文整理版,采用标准 Markdown 语法。
6
-
7
- MCP(Model Context Protocol)用于把模型连接到外部工具与上下文。
8
- 在 Codex 中,你可以通过 MCP 让 Agent 访问第三方文档、浏览器工具、设计工具等。
9
-
10
- Codex CLI 与 IDE 扩展都支持 MCP,且共用同一份配置。
11
-
12
- ## 支持的 MCP 类型
13
-
14
- - `STDIO` 服务器(本地进程)
15
- - 支持环境变量注入
16
- - `Streamable HTTP` 服务器(远程地址)
17
- - 支持 Bearer Token
18
- - 支持 OAuth(若服务器支持)
19
-
20
- ## MCP 配置位置
21
-
22
- 默认写入:
23
-
24
- ```text
25
- ~/.codex/config.toml
26
- ```
27
-
28
- 也可在项目内配置:
29
-
30
- ```text
31
- <repo>/.codex/config.toml
32
- ```
33
-
34
- 注意:项目级配置仅在“受信任项目”中生效。
35
-
36
- ## 使用 CLI 配置 MCP
37
-
38
- ### 添加服务器
39
-
40
- ```bash
41
- codex mcp add <server-name> -- <stdio-command>
42
- ```
43
-
44
- 示例(Context7):
45
-
46
- ```bash
47
- codex mcp add context7 -- npx -y @upstash/context7-mcp
48
- ```
49
-
50
- ### 查看帮助与状态
51
-
52
- ```bash
53
- codex mcp --help
54
- codex mcp list
55
- codex mcp get <server-name>
56
- ```
57
-
58
- 在 Codex TUI 中,可用 `/mcp` 查看当前会话可用服务器。
59
-
60
- ## 通过 `config.toml` 手动配置
61
-
62
- ### STDIO 示例
63
-
64
- ```toml
65
- [mcp_servers.context7]
66
- command = "npx"
67
- args = ["-y", "@upstash/context7-mcp"]
68
- ```
69
-
70
- ### HTTP 示例
71
-
72
- ```toml
73
- [mcp_servers.docs_remote]
74
- url = "https://example.com/mcp"
75
- bearer_token_env_var = "DOCS_TOKEN"
76
- ```
77
-
78
- 常见可选字段:
79
-
80
- - `enabled`:是否启用
81
- - `required`:启动失败时是否阻断会话
82
- - `env` / `env_vars`:注入环境变量
83
- - `http_headers` / `env_http_headers`:HTTP 头
84
- - `startup_timeout_sec`:启动超时
85
- - `tool_timeout_sec`:工具调用超时
86
- - `enabled_tools` / `disabled_tools`:工具白名单/黑名单
87
-
88
- ## OAuth 登录(按需)
89
-
90
- 若远程 MCP 支持 OAuth,可执行:
91
-
92
- ```bash
93
- codex mcp login <server-name>
94
- ```
95
-
96
- ## 常见 MCP 场景
97
-
98
- - 文档检索:接入官方 API/SDK 文档
99
- - 浏览器自动化:页面检查、交互、抓取
100
- - 设计协作:Figma 等上下文接入
101
- - 内部平台:接入公司内部服务与知识库
102
-
103
- ## 安全建议
104
-
105
- - 默认最小权限:只配置必要服务器和必要工具。
106
- - Token 使用环境变量注入,不写死在仓库。
107
- - 对高风险服务器设置 `required = false`,避免启动失败阻断主流程。
@@ -1,79 +0,0 @@
1
- # 规则(命令审批规则)
2
-
3
- > 来源:`https://developers.openai.com/codex/rules`
4
- > 同步日期:2026-02-12
5
- > 说明:本文件为官方内容的中文整理版,采用标准 Markdown 语法。
6
-
7
- Codex Rules 用于控制“哪些命令允许在沙箱外执行”,属于安全与审批策略层。
8
- 该能力为实验特性,后续可能调整。
9
-
10
- ## 创建规则文件
11
-
12
- 1. 在 `./codex/rules/` 下创建 `.rules` 文件(例如 `~/.codex/rules/default.rules`)。
13
- 2. 写入规则。
14
-
15
- 示例:在沙箱外执行 `gh pr view` 前必须提示审批。
16
-
17
- ```python
18
- prefix_rule(
19
- pattern = ["gh", "pr", "view"],
20
- decision = "prompt",
21
- justification = "查看 PR 需要人工确认",
22
- match = [
23
- "gh pr view 7888",
24
- "gh pr view --repo openai/codex",
25
- ],
26
- not_match = [
27
- "gh pr list",
28
- ],
29
- )
30
- ```
31
-
32
- ## 规则字段说明
33
-
34
- `prefix_rule(...)` 常用字段:
35
-
36
- - `pattern`:命令前缀(按 token 匹配)
37
- - `decision`:命中后的动作
38
- - `justification`:规则说明(可选)
39
- - `match`:应命中的测试样例(可选)
40
- - `not_match`:不应命中的测试样例(可选)
41
-
42
- `decision` 常见值:
43
-
44
- - `prompt`:询问用户
45
- - `allow`:允许
46
- - `deny`:拒绝
47
-
48
- ## 关于 shell 包装命令与复合命令
49
-
50
- 常见包装命令包括:
51
-
52
- - `bash -lc "..."`
53
- - `sh -c "..."`
54
- - `zsh -lc "..."`
55
- - `python -c "..."`
56
-
57
- 在可安全拆分时,Codex 可能提取出真实命令做前缀匹配;
58
- 在不可安全拆分时,会把整体当作一个命令匹配。
59
-
60
- ### 可安全拆分的典型情况
61
-
62
- - 单一命令、无复杂重定向/管道/变量展开
63
- - 命令结构明确,不会因拆分改变语义
64
-
65
- ### 不拆分的典型情况
66
-
67
- - 包含复杂 shell 语法(多条命令、重定向、条件、子 shell 等)
68
- - 拆分后可能造成语义偏差或安全风险
69
-
70
- ## 测试规则文件
71
-
72
- 建议每条规则都写 `match` / `not_match` 示例,作为“内联单元测试”。
73
- 这样可以在维护规则时快速验证匹配行为,减少误放行或误阻断。
74
-
75
- ## 规则语言边界
76
-
77
- - Rules 只负责命令级审批策略,不负责业务逻辑说明。
78
- - 业务约束建议放在 `AGENTS.md` 或项目文档中。
79
- - 高风险命令建议默认 `prompt` 或 `deny`,再按需要放开。
@@ -1,114 +0,0 @@
1
- # Agent 技能(Codex)
2
-
3
- > 来源:`https://developers.openai.com/codex/skills`
4
- > 同步日期:2026-02-12
5
- > 说明:本文件为官方内容的中文整理版,采用标准 Markdown 语法。
6
-
7
- Skills 用于给 Codex 增加任务专用能力。
8
- 一个 Skill 通常打包了指令、参考资料以及可选脚本,便于 Agent 稳定复用某类流程。
9
-
10
- Skills 适用于 Codex CLI、IDE 扩展和 Codex App。
11
-
12
- ## Skill 基本结构
13
-
14
- 一个 Skill 目录至少包含 `SKILL.md`:
15
-
16
- ```text
17
- my-skill/
18
- ├── SKILL.md # 必需:元信息 + 指令
19
- ├── scripts/ # 可选:可执行脚本
20
- ├── references/ # 可选:参考文档
21
- └── assets/ # 可选:模板/资源
22
- ```
23
-
24
- `SKILL.md` 需包含 `name` 与 `description`:
25
-
26
- ```markdown
27
- ---
28
- name: skill-name
29
- description: 说明该 skill 的用途与触发场景
30
- metadata:
31
- short-description: 可选的简短说明
32
- ---
33
-
34
- # Skill 标题
35
-
36
- 在此编写可执行指令。
37
- ```
38
-
39
- ## Codex 如何使用 Skills
40
-
41
- Codex 采用“渐进式加载”:
42
-
43
- 1. 会话开始时先读取各 Skill 的元信息(`name`、`description`、路径等)。
44
- 2. 仅当某 Skill 与当前任务相关时,才读取完整 `SKILL.md`。
45
- 3. 执行过程中按 Skill 指令调用脚本/引用资料。
46
-
47
- ## 创建 Skill
48
-
49
- 两种方式:
50
-
51
- - 使用内置 Skill(例如 `$skill-creator`)辅助生成
52
- - 手动创建目录与 `SKILL.md`
53
-
54
- 手动创建建议流程:
55
-
56
- 1. 创建目录 `my-skill/`
57
- 2. 写好 `SKILL.md` 的 frontmatter
58
- 3. 按需补充 `scripts/`、`references/`、`assets/`
59
-
60
- ## Skill 存放位置
61
-
62
- 常见位置:
63
-
64
- - 全局:`$HOME/.agents/skills/`
65
- - 项目:从当前工作目录开始,向上到仓库根目录,按链路扫描 `.agents/skills/`
66
-
67
- 实践建议:
68
-
69
- - 跨项目复用放全局
70
- - 项目专属流程放仓库内并随代码版本管理
71
-
72
- ## 安装与管理
73
-
74
- 可通过 CLI 管理技能开关与列表(实际命令以当前版本为准):
75
-
76
- ```bash
77
- codex skills list
78
- codex skills enable <skill-name>
79
- codex skills disable <skill-name>
80
- ```
81
-
82
- 对于 App/Server 场景,也可通过 API 传入 Skill 项。
83
-
84
- ## 可选元数据
85
-
86
- 除必填字段外,可在 frontmatter 增加元数据(如 `short-description`),用于改善 UI 展示和匹配体验。
87
- 但不要把业务逻辑藏在元数据里,核心行为应写在正文指令区。
88
-
89
- ## 编写最佳实践
90
-
91
- ### 1. 描述要能触发
92
-
93
- `description` 建议写清:
94
-
95
- - 做什么
96
- - 何时用
97
- - 不适用场景
98
-
99
- ### 2. 单一职责
100
-
101
- 一个 Skill 解决一类问题,不要做“万能包”。
102
-
103
- ### 3. 脚本优先可执行
104
-
105
- 把复杂流程写进 `scripts/`,在 `SKILL.md` 中说明参数与调用方式。
106
- 避免要求 Agent 反复阅读大段脚本源码。
107
-
108
- ### 4. 给出决策分支
109
-
110
- 复杂任务建议提供“条件 -> 路径”决策表,降低误用率。
111
-
112
- ### 5. 保持可迁移
113
-
114
- 尽量避免绑定私有路径与私有环境变量,必要时在 `references/` 说明依赖前置条件。
@@ -1,32 +0,0 @@
1
- # 官方来源证据索引
2
-
3
- > 用途:为 `docs/official` 中文整理文档提供可机器校验的最小证据层(来源 URL + 拉取时间 + 快照哈希)。
4
-
5
- ## Antigravity
6
-
7
- | 本地文件 | 来源 URL | 拉取时间 (UTC) | SHA256 |
8
- | --- | --- | --- | --- |
9
- | `docs/official/antigravity/agent-modes-settings.md` | `https://antigravity.google/assets/docs/agent/agent-modes-settings.md` | `2026-02-12T12:56:22Z` | `614174f8c730a0db8b290dede16b294a9535cef7b9ddca9c108dc2ef583b2919` |
10
- | `docs/official/antigravity/rules-workflows.md` | `https://antigravity.google/assets/docs/agent/rules-workflows.md` | `2026-02-12T12:56:22Z` | `063b2e9c86555f0103d0fafee5f71caf330cd95fb25257841efe32d36ee9667b` |
11
- | `docs/official/antigravity/skills.md` | `https://antigravity.google/assets/docs/agent/skills.md` | `2026-02-12T12:56:22Z` | `2176fc1968c2188daed75b064f8771e4516b4b462cc5c1b98553e05cfab055fa` |
12
-
13
- ## Codex
14
-
15
- | 本地文件 | 来源 URL | 拉取时间 (UTC) | SHA256 |
16
- | --- | --- | --- | --- |
17
- | `docs/official/codex/config-basic.md` | `https://developers.openai.com/codex/config-basic.md` | `2026-02-12T12:56:22Z` | `9a270e83da4e3467c117166cc69684cace72037c97c96f0f05f212d28ccf0809` |
18
- | `docs/official/codex/config-advanced.md` | `https://developers.openai.com/codex/config-advanced.md` | `2026-02-12T12:56:22Z` | `ed1ebb5ad918fd9043ebeb176d1f29654d76547c4ae896eb4718db320f98a1af` |
19
- | `docs/official/codex/config-reference.md` | `https://developers.openai.com/codex/config-reference.md` | `2026-02-12T12:56:22Z` | `e23bc1439e3f4cb907d165e6980ece03070d69484f74c4cb3dd95068c519a91c` |
20
- | `docs/official/codex/config-sample.md` | `https://developers.openai.com/codex/config-sample.md` | `2026-02-12T12:56:22Z` | `80af7755383b5f3956b3288435bca81ef02062f6dd988aa6205fe1ae95a3660b` |
21
- | `docs/official/codex/rules.md` | `https://developers.openai.com/codex/rules.md` | `2026-02-12T12:56:22Z` | `c9ca3c8bf4fa68ccf85c831388ea360b6e2108bcfcfcc0b7bd7e2ab5df173af1` |
22
- | `docs/official/codex/agents-md.md` | `https://developers.openai.com/codex/guides/agents-md.md` | `2026-02-12T12:56:22Z` | `ed8fd0bdb19826d907424d313d38b37fe9a60c78b96692f409e1f15373817aac` |
23
- | `docs/official/codex/mcp.md` | `https://developers.openai.com/codex/mcp.md` | `2026-02-12T12:56:22Z` | `bb7d0e864ed572a11067505f9cd673972610d2d53997db3647b309da00763fa2` |
24
- | `docs/official/codex/skills.md` | `https://developers.openai.com/codex/skills.md` | `2026-02-12T12:56:22Z` | `8ca8093fa07e50d302a76a6693789995bb733208fd3e89022e2ebd2328b3b64c` |
25
-
26
- ## 校验方法
27
-
28
- ```bash
29
- shasum -a 256 docs/official/codex/skills.md
30
- ```
31
-
32
- 将输出哈希与本表对比即可。
@@ -1,145 +0,0 @@
1
- # Ag-Kit(命令行工具)运维手册
2
-
3
- 本文面向维护 Ag-Kit 及其管理的 Agent(智能体)资源的 DevOps(运维)或高级用户。
4
-
5
- ## 1. 目录结构详解
6
-
7
- ### 1.1 项目根目录
8
-
9
- ```text
10
- /my-project
11
- ├── .agent/ # Legacy(旧版)Gemini 模式直连目录(使用 Gemini 时)
12
- ├── .agents/ # Codex 托管上游目录(只读/自动管理)
13
- │ ├── manifest.json # 完整性清单,用于漂移检测
14
- │ ├── AGENTS.md # 核心规则源(由构建器生成)
15
- │ ├── antigravity.rules # 风险控制源(由构建器生成)
16
- │ └── skills/ # 编译后的技能
17
- ├── .agents-backup/ # Codex 自动备份目录(发生漂移覆盖时生成)
18
- ├── .codex/ # Legacy 历史目录(更新/doctor 时自动迁移清理)
19
- ├── AGENTS.md # 工作区主入口(保留用户内容 + 托管区块注入)
20
- ├── antigravity.rules # 工作区托管说明(保留用户内容 + 托管区块注入)
21
- └── .gitignore # 自动管理的忽略规则
22
- ```
23
-
24
- > 说明:`antigravity.rules` 是本项目的托管说明文件,不等同于 Codex 官方 `.rules` 审批策略文件。
25
- > Codex 官方策略文件通常位于 `~/.codex/rules/default.rules`,本项目不会自动写入该全局路径。
26
-
27
- ### 1.2 全局数据
28
-
29
- - **macOS / Linux**: `~/.ag-kit/workspaces.json`
30
- - **Windows**: `%USERPROFILE%\.ag-kit\workspaces.json`
31
- - 默认不会把系统临时目录写入索引(如 macOS `/var/folders/...`、`/tmp`、`/private/tmp`,Linux `/tmp`,Windows `%TEMP%`)。
32
- - 对临时验证场景,可在 `init/update` 时加 `--no-index` 完全跳过索引登记。
33
- - `ag-kit update` 仅处理当前目录(或 `--path` 指定目录),不依赖全局索引。
34
- - `ag-kit update-all` 仅处理索引内工作区;若项目曾使用 `--no-index`,可在项目内执行一次不带 `--no-index` 的 `ag-kit update` 重新纳入索引。
35
-
36
- ## 2. 故障排查
37
-
38
- ### 2.1 更新失败或中断
39
-
40
- 当前版本已引入 Atomic Update(原子更新)机制。
41
-
42
- - 更新过程先在临时目录准备,最后通过一次 `rename` 操作生效。
43
- - **现象**: 如果进程在更新阶段被中断,项目目录不会出现半写状态,可能残留临时目录(例如 `/tmp/ag-kit-*`)。
44
- - **解决**: 无需手动干预,重新运行 update 即可。
45
-
46
- ### 2.2 漂移检测警告
47
-
48
- 当 `ag-kit update` 或 `ag-kit doctor` 报告 Drift(漂移)时:
49
-
50
- - **原因**: 用户手动修改了 `.agents` 目录下的受管文件。
51
- - **后果**: 更新时会强制覆盖这些修改。
52
- - **自动备份**: 覆盖前,Ag-Kit 会将修改过的文件备份到 `.agents-backup/<timestamp>/`。
53
- - **智能覆盖**: 仅当文件确实是“用户修改且与新版本不同”时才备份;如果本地文件已与新版本一致,不会重复备份。
54
- - **解决**: 检查备份,将需要的修改迁移到上游源码或通过 Overlay(覆盖层)机制实现。
55
-
56
- ### 2.3 Windows 权限问题
57
-
58
- - 如果遇到 `EPERM` 或 `EBUSY`:
59
- - 确保没有 IDE 或终端占用 `.agents` 目录。
60
- - 关闭占用后重新执行 `ag-kit update` 或 `ag-kit doctor --fix`。
61
-
62
- ### 2.4 Doctor 自愈
63
-
64
- ```bash
65
- ag-kit doctor --fix
66
- ```
67
-
68
- - **功能**:
69
- - 如果 `manifest.json` 丢失,会对照当前文件状态重新生成(注意:这会假设当前状态是正确的)。
70
- - 会重同步 `AGENTS.md` 和 `antigravity.rules` 的托管区块。
71
- - Gemini 目标当前不支持自动修复,建议执行 `ag-kit update --target gemini`。
72
-
73
- ## 3. 升级流程
74
-
75
- ### 3.0 Codex 官方 `.rules`(可选)
76
-
77
- 如果你需要启用 Codex 官方命令审批策略(`prefix_rule()` 等),请手动配置 `~/.codex/rules/default.rules`。
78
- 可直接参考:`docs/codex-rules-template.md`。
79
-
80
- ### 3.1 客户端升级
81
-
82
- ```bash
83
- npm install -g @mison/ag-kit-cn@latest
84
- ```
85
-
86
- 若你以源码方式安装过,也可以继续使用源码升级:
87
-
88
- ```bash
89
- git -C /path/to/antigravity-kit-cn pull
90
- cd /path/to/antigravity-kit-cn
91
- npm install -g .
92
- ```
93
-
94
- ### 3.2 资源库迁移:Gemini -> Codex
95
-
96
- 1. 在项目根目录执行:
97
- ```bash
98
- ag-kit init --target codex --force
99
- ```
100
- 2. 系统会自动识别旧版 `.agent`,将其编译为 `.agents` 结构。
101
- 3. 确认 `.agents` 生成无误。
102
- 4. 移除旧版 `.agent`(可选):
103
- ```bash
104
- rm -rf .agent
105
- ```
106
-
107
- ## 4. 日常维护
108
-
109
- ### 4.1 清理本地生成产物
110
-
111
- 在仓库根目录执行:
112
-
113
- ```bash
114
- npm run clean
115
- ```
116
-
117
- - 会清理常见生成目录:`.temp_ag_kit`、`coverage`、`web/.next`、`web/node_modules`、`web/out`、`web/.turbo`。
118
- - 只想预览,不实际删除:
119
-
120
- ```bash
121
- npm run clean:dry-run
122
- ```
123
-
124
- ### 4.2 回归检查
125
-
126
- ```bash
127
- npm test
128
- ```
129
-
130
- - 当前测试命令仅扫描 `tests/` 目录,避免误执行 `web/.next` 等构建产物中的文件。
131
- - 若需要检查前端代码规范(可选),先安装依赖再执行:
132
-
133
- ```bash
134
- npm install --prefix web
135
- npm run lint --prefix web
136
- ```
137
-
138
- ### 4.3 一键健康复检
139
-
140
- ```bash
141
- npm run health-check
142
- ```
143
-
144
- - 会顺序执行:`npm test`、CLI 临时工作区链路验证(`init/status/doctor/update/update-all/exclude`)、`npm run clean:dry-run`。
145
- - 适合升级后或准备发布前的快速回归确认。