@icebreakers/monorepo-templates 1.3.0 → 1.3.2

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 (213) hide show
  1. package/README.md +6 -0
  2. package/README.zh-CN.md +6 -0
  3. package/assets/.github/workflows/ci.yml +11 -0
  4. package/assets/.github/workflows/release-intent-check.yml +57 -0
  5. package/assets/CONTRIBUTING.md +3 -1
  6. package/assets/package.json +57 -14
  7. package/assets/pnpm-workspace.yaml +13 -0
  8. package/assets/repoctl.config.ts +6 -1
  9. package/assets/turbo.json +16 -0
  10. package/package.json +4 -4
  11. package/templates/client/eslint.config.js +1 -1
  12. package/templates/client/package.json +13 -13
  13. package/templates/client/worker-configuration.d.ts +763 -217
  14. package/templates/server/package.json +3 -3
  15. package/templates/server/worker-configuration.d.ts +763 -217
  16. package/templates/vitepress/.vitepress/config.ts +17 -7
  17. package/templates/vitepress/.vitepress/home/content.ts +64 -156
  18. package/templates/vitepress/.vitepress/home/types.ts +18 -34
  19. package/templates/vitepress/.vitepress/navigation/routes.ts +89 -81
  20. package/templates/vitepress/.vitepress/seo.ts +16 -2
  21. package/templates/vitepress/.vitepress/theme/Layout.vue +27 -0
  22. package/templates/vitepress/.vitepress/theme/components/HomePage.vue +66 -88
  23. package/templates/vitepress/.vitepress/theme/home/foundation.css +161 -104
  24. package/templates/vitepress/.vitepress/theme/home/responsive.css +113 -20
  25. package/templates/vitepress/.vitepress/theme/home/sections.css +179 -100
  26. package/templates/vitepress/.vitepress/theme/index.ts +2 -0
  27. package/templates/vitepress/learn/index.md +18 -0
  28. package/templates/vitepress/{monorepo → learn/monorepo}/commands.md +1 -1
  29. package/templates/vitepress/{monorepo → learn/monorepo}/index.md +3 -3
  30. package/templates/vitepress/{monorepo → learn/monorepo}/templates.md +1 -1
  31. package/templates/vitepress/{why/what-is-npm-package.md → learn/packages/index.md} +1 -1
  32. package/templates/vitepress/{why → learn/packages}/modern/index.md +2 -2
  33. package/templates/vitepress/{why → learn/packages}/modern/typescript.md +1 -1
  34. package/templates/vitepress/{why/index.md → learn/packages/modern-overview.md} +1 -1
  35. package/templates/vitepress/{why/publish-basic-npm-package.md → learn/packages/publish.md} +1 -1
  36. package/templates/vitepress/{why/how-to-reuse-js-code.md → learn/packages/reuse-javascript.md} +2 -2
  37. package/templates/vitepress/{why/js-keywords.md → learn/packages/runtime-globals.md} +2 -2
  38. package/templates/vitepress/{repoctl/index.md → learn/repoctl-model.md} +8 -8
  39. package/templates/vitepress/{tools → learn/tools}/changeset.md +3 -3
  40. package/templates/vitepress/{tools → learn/tools}/husky.md +2 -2
  41. package/templates/vitepress/{tools → learn/tools}/lint-staged.md +2 -2
  42. package/templates/vitepress/{tools → learn/tools}/llms-txt.md +1 -1
  43. package/templates/vitepress/{tools → learn/tools}/pnpm.md +2 -2
  44. package/templates/vitepress/{tools → learn/tools}/renovate.md +2 -2
  45. package/templates/vitepress/{tools → learn/tools}/turborepo.md +2 -2
  46. package/templates/vitepress/package.json +7 -7
  47. package/templates/vitepress/public/brand/apple-touch-icon.png +0 -0
  48. package/templates/vitepress/public/brand/favicon.ico +0 -0
  49. package/templates/vitepress/public/brand/repoctl-lockup-dark.svg +6 -0
  50. package/templates/vitepress/public/brand/repoctl-lockup.svg +20 -0
  51. package/templates/vitepress/public/brand/repoctl-mark-192.png +0 -0
  52. package/templates/vitepress/public/brand/repoctl-mark-dark.svg +13 -0
  53. package/templates/vitepress/public/brand/repoctl-mark.svg +13 -0
  54. package/templates/vitepress/public/brand/repoctl-social-en.png +0 -0
  55. package/templates/vitepress/public/brand/repoctl-social-en.webp +0 -0
  56. package/templates/vitepress/public/brand/repoctl-social-zh.png +0 -0
  57. package/templates/vitepress/public/brand/repoctl-social-zh.webp +0 -0
  58. package/templates/vitepress/public/favicon.ico +0 -0
  59. package/templates/vitepress/public/logo.jpg +0 -0
  60. package/templates/vitepress/{repoctl → reference}/commands.md +2 -2
  61. package/templates/vitepress/reference/index.md +15 -0
  62. package/templates/vitepress/reference/output.md +37 -0
  63. package/templates/vitepress/{repoctl → reference}/templates.md +2 -2
  64. package/templates/vitepress/scripts/check-locales.ts +35 -1
  65. package/templates/vitepress/start/choose-next.md +14 -0
  66. package/templates/vitepress/start/first-run.md +39 -0
  67. package/templates/vitepress/start/index.md +26 -0
  68. package/templates/vitepress/{repoctl/getting-started.md → start/install.md} +5 -5
  69. package/templates/vitepress/{repoctl → tasks}/adopt-existing.md +30 -4
  70. package/templates/vitepress/{repoctl → tasks}/checks.md +27 -1
  71. package/templates/vitepress/{repoctl/workflows.md → tasks/ci.md} +30 -4
  72. package/templates/vitepress/tasks/create-project.md +37 -0
  73. package/templates/vitepress/{repoctl/scenarios.md → tasks/index.md} +8 -8
  74. package/templates/vitepress/tasks/release.md +31 -0
  75. package/templates/vitepress/{repoctl → tasks}/reports.md +25 -0
  76. package/templates/vitepress/{repoctl → tasks}/troubleshooting.md +30 -4
  77. package/templates/vitepress/zh/ai/llms-txt.md +6 -6
  78. package/templates/vitepress/zh/learn/index.md +18 -0
  79. package/templates/vitepress/zh/{monorepo → learn/monorepo}/commands.md +3 -3
  80. package/templates/vitepress/zh/{monorepo → learn/monorepo}/manage.md +4 -4
  81. package/templates/vitepress/zh/{monorepo → learn/monorepo}/templates.md +2 -2
  82. package/templates/vitepress/zh/{monorepo → learn/monorepo}/troubleshooting.md +2 -2
  83. package/templates/vitepress/zh/{why → learn/packages}/modern/index.md +1 -1
  84. package/templates/vitepress/zh/{why/index.md → learn/packages/modern-overview.md} +2 -2
  85. package/templates/vitepress/zh/{repoctl/index.md → learn/repoctl-model.md} +19 -19
  86. package/templates/vitepress/zh/{tools → learn/tools}/husky.md +1 -1
  87. package/templates/vitepress/zh/{tools → learn/tools}/lint-staged.md +1 -1
  88. package/templates/vitepress/zh/{tools → learn/tools}/llms-txt.md +1 -1
  89. package/templates/vitepress/zh/{tools → learn/tools}/pnpm.md +1 -1
  90. package/templates/vitepress/zh/{tools → learn/tools}/turborepo.md +11 -11
  91. package/templates/vitepress/zh/{repoctl → reference}/commands.md +4 -4
  92. package/templates/vitepress/zh/{repoctl → reference}/config.md +1 -1
  93. package/templates/vitepress/zh/reference/index.md +15 -0
  94. package/templates/vitepress/zh/reference/output.md +37 -0
  95. package/templates/vitepress/zh/{repoctl → reference}/templates.md +4 -4
  96. package/templates/vitepress/zh/start/choose-next.md +14 -0
  97. package/templates/vitepress/zh/{repoctl/doctor.md → start/diagnose.md} +1 -1
  98. package/templates/vitepress/zh/start/first-run.md +39 -0
  99. package/templates/vitepress/zh/start/index.md +26 -0
  100. package/templates/vitepress/zh/{repoctl/getting-started.md → start/install.md} +5 -5
  101. package/templates/vitepress/zh/{repoctl → tasks}/adopt-existing.md +30 -4
  102. package/templates/vitepress/zh/{repoctl → tasks}/checks.md +27 -1
  103. package/templates/vitepress/zh/{repoctl/workflows.md → tasks/ci.md} +38 -12
  104. package/templates/vitepress/zh/tasks/create-project.md +37 -0
  105. package/templates/vitepress/zh/{repoctl/scenarios.md → tasks/index.md} +8 -8
  106. package/templates/vitepress/zh/tasks/release.md +31 -0
  107. package/templates/vitepress/zh/{repoctl → tasks}/reports.md +25 -0
  108. package/templates/vitepress/zh/{repoctl → tasks}/troubleshooting.md +39 -13
  109. package/templates/vue-lib/package.json +5 -5
  110. package/templates/vitepress/getting-started.md +0 -11
  111. package/templates/vitepress/knowledge/index.md +0 -26
  112. package/templates/vitepress/thinking.md +0 -22
  113. package/templates/vitepress/zh/getting-started.md +0 -40
  114. package/templates/vitepress/zh/knowledge/index.md +0 -50
  115. package/templates/vitepress/zh/thinking.md +0 -91
  116. /package/templates/vitepress/{monorepo → learn/monorepo}/manage.md +0 -0
  117. /package/templates/vitepress/{monorepo → learn/monorepo}/publish.md +0 -0
  118. /package/templates/vitepress/{monorepo → learn/monorepo}/troubleshooting.md +0 -0
  119. /package/templates/vitepress/{why → learn/packages}/assets/npm-dt.svg +0 -0
  120. /package/templates/vitepress/{why → learn/packages}/assets/npm-ts.svg +0 -0
  121. /package/templates/vitepress/{why → learn/packages}/examples/0.npm-basic-package/index.js +0 -0
  122. /package/templates/vitepress/{why → learn/packages}/examples/0.npm-basic-package/package.json +0 -0
  123. /package/templates/vitepress/{why → learn/packages}/examples/1.npm-basic-package/index.cjs +0 -0
  124. /package/templates/vitepress/{why → learn/packages}/examples/1.npm-basic-package/index.d.ts +0 -0
  125. /package/templates/vitepress/{why → learn/packages}/examples/1.npm-basic-package/index.js +0 -0
  126. /package/templates/vitepress/{why → learn/packages}/examples/1.npm-basic-package/package.json +0 -0
  127. /package/templates/vitepress/{why → learn/packages}/examples/2.npm-basic-package/README.md +0 -0
  128. /package/templates/vitepress/{why → learn/packages}/examples/2.npm-basic-package/package-lock.json +0 -0
  129. /package/templates/vitepress/{why → learn/packages}/examples/2.npm-basic-package/package.json +0 -0
  130. /package/templates/vitepress/{why → learn/packages}/examples/2.npm-basic-package/rename-ext.js +0 -0
  131. /package/templates/vitepress/{why → learn/packages}/examples/2.npm-basic-package/src/index.ts +0 -0
  132. /package/templates/vitepress/{why → learn/packages}/examples/2.npm-basic-package/tsconfig.cjs.json +0 -0
  133. /package/templates/vitepress/{why → learn/packages}/examples/2.npm-basic-package/tsconfig.esm.json +0 -0
  134. /package/templates/vitepress/{why → learn/packages}/examples/2.npm-basic-package/tsconfig.json +0 -0
  135. /package/templates/vitepress/{why → learn/packages}/examples/3.npm-basic-package/README.md +0 -0
  136. /package/templates/vitepress/{why → learn/packages}/examples/3.npm-basic-package/package-lock.json +0 -0
  137. /package/templates/vitepress/{why → learn/packages}/examples/3.npm-basic-package/package.json +0 -0
  138. /package/templates/vitepress/{why → learn/packages}/examples/3.npm-basic-package/src/index.ts +0 -0
  139. /package/templates/vitepress/{why → learn/packages}/examples/3.npm-basic-package/tsconfig.json +0 -0
  140. /package/templates/vitepress/{why → learn/packages}/examples/3.npm-basic-package/tsdown.config.ts +0 -0
  141. /package/templates/vitepress/{why → learn/packages}/examples/usage-cjs/cjs.cjs +0 -0
  142. /package/templates/vitepress/{why → learn/packages}/examples/usage-cjs/esm.mjs +0 -0
  143. /package/templates/vitepress/{why → learn/packages}/examples/usage-cjs/index.js +0 -0
  144. /package/templates/vitepress/{why → learn/packages}/examples/usage-cjs/package-lock.json +0 -0
  145. /package/templates/vitepress/{why → learn/packages}/examples/usage-cjs/package.json +0 -0
  146. /package/templates/vitepress/{why → learn/packages}/examples/usage-esm/cjs.cjs +0 -0
  147. /package/templates/vitepress/{why → learn/packages}/examples/usage-esm/createRequire.js +0 -0
  148. /package/templates/vitepress/{why → learn/packages}/examples/usage-esm/esm.mjs +0 -0
  149. /package/templates/vitepress/{why → learn/packages}/examples/usage-esm/index.js +0 -0
  150. /package/templates/vitepress/{why → learn/packages}/examples/usage-esm/package-lock.json +0 -0
  151. /package/templates/vitepress/{why → learn/packages}/examples/usage-esm/package.json +0 -0
  152. /package/templates/vitepress/{why → learn/packages}/modern/bundlers.md +0 -0
  153. /package/templates/vitepress/{why → learn/packages}/modern/dts.md +0 -0
  154. /package/templates/vitepress/{why → learn/packages}/modern/esm-vs-cjs.md +0 -0
  155. /package/templates/vitepress/{why → learn/packages}/modern/package-entry-points.md +0 -0
  156. /package/templates/vitepress/{why/js-cjs-mjs.md → learn/packages/module-extensions.md} +0 -0
  157. /package/templates/vitepress/{tools → learn/tools}/index.md +0 -0
  158. /package/templates/vitepress/{repoctl → reference}/aliases.md +0 -0
  159. /package/templates/vitepress/{repoctl → reference}/config.md +0 -0
  160. /package/templates/vitepress/{repoctl → reference}/execution-model.md +0 -0
  161. /package/templates/vitepress/{repoctl → reference}/template-assets.md +0 -0
  162. /package/templates/vitepress/{repoctl/doctor.md → start/diagnose.md} +0 -0
  163. /package/templates/vitepress/zh/{monorepo → learn/monorepo}/index.md +0 -0
  164. /package/templates/vitepress/zh/{monorepo → learn/monorepo}/publish.md +0 -0
  165. /package/templates/vitepress/zh/{why → learn/packages}/assets/npm-dt.svg +0 -0
  166. /package/templates/vitepress/zh/{why → learn/packages}/assets/npm-ts.svg +0 -0
  167. /package/templates/vitepress/zh/{why → learn/packages}/examples/0.npm-basic-package/index.js +0 -0
  168. /package/templates/vitepress/zh/{why → learn/packages}/examples/0.npm-basic-package/package.json +0 -0
  169. /package/templates/vitepress/zh/{why → learn/packages}/examples/1.npm-basic-package/index.cjs +0 -0
  170. /package/templates/vitepress/zh/{why → learn/packages}/examples/1.npm-basic-package/index.d.ts +0 -0
  171. /package/templates/vitepress/zh/{why → learn/packages}/examples/1.npm-basic-package/index.js +0 -0
  172. /package/templates/vitepress/zh/{why → learn/packages}/examples/1.npm-basic-package/package.json +0 -0
  173. /package/templates/vitepress/zh/{why → learn/packages}/examples/2.npm-basic-package/README.md +0 -0
  174. /package/templates/vitepress/zh/{why → learn/packages}/examples/2.npm-basic-package/package-lock.json +0 -0
  175. /package/templates/vitepress/zh/{why → learn/packages}/examples/2.npm-basic-package/package.json +0 -0
  176. /package/templates/vitepress/zh/{why → learn/packages}/examples/2.npm-basic-package/rename-ext.js +0 -0
  177. /package/templates/vitepress/zh/{why → learn/packages}/examples/2.npm-basic-package/src/index.ts +0 -0
  178. /package/templates/vitepress/zh/{why → learn/packages}/examples/2.npm-basic-package/tsconfig.cjs.json +0 -0
  179. /package/templates/vitepress/zh/{why → learn/packages}/examples/2.npm-basic-package/tsconfig.esm.json +0 -0
  180. /package/templates/vitepress/zh/{why → learn/packages}/examples/2.npm-basic-package/tsconfig.json +0 -0
  181. /package/templates/vitepress/zh/{why → learn/packages}/examples/3.npm-basic-package/README.md +0 -0
  182. /package/templates/vitepress/zh/{why → learn/packages}/examples/3.npm-basic-package/package-lock.json +0 -0
  183. /package/templates/vitepress/zh/{why → learn/packages}/examples/3.npm-basic-package/package.json +0 -0
  184. /package/templates/vitepress/zh/{why → learn/packages}/examples/3.npm-basic-package/src/index.ts +0 -0
  185. /package/templates/vitepress/zh/{why → learn/packages}/examples/3.npm-basic-package/tsconfig.json +0 -0
  186. /package/templates/vitepress/zh/{why → learn/packages}/examples/3.npm-basic-package/tsdown.config.ts +0 -0
  187. /package/templates/vitepress/zh/{why → learn/packages}/examples/usage-cjs/cjs.cjs +0 -0
  188. /package/templates/vitepress/zh/{why → learn/packages}/examples/usage-cjs/esm.mjs +0 -0
  189. /package/templates/vitepress/zh/{why → learn/packages}/examples/usage-cjs/index.js +0 -0
  190. /package/templates/vitepress/zh/{why → learn/packages}/examples/usage-cjs/package-lock.json +0 -0
  191. /package/templates/vitepress/zh/{why → learn/packages}/examples/usage-cjs/package.json +0 -0
  192. /package/templates/vitepress/zh/{why → learn/packages}/examples/usage-esm/cjs.cjs +0 -0
  193. /package/templates/vitepress/zh/{why → learn/packages}/examples/usage-esm/createRequire.js +0 -0
  194. /package/templates/vitepress/zh/{why → learn/packages}/examples/usage-esm/esm.mjs +0 -0
  195. /package/templates/vitepress/zh/{why → learn/packages}/examples/usage-esm/index.js +0 -0
  196. /package/templates/vitepress/zh/{why → learn/packages}/examples/usage-esm/package-lock.json +0 -0
  197. /package/templates/vitepress/zh/{why → learn/packages}/examples/usage-esm/package.json +0 -0
  198. /package/templates/vitepress/zh/{why/what-is-npm-package.md → learn/packages/index.md} +0 -0
  199. /package/templates/vitepress/zh/{why → learn/packages}/modern/bundlers.md +0 -0
  200. /package/templates/vitepress/zh/{why → learn/packages}/modern/dts.md +0 -0
  201. /package/templates/vitepress/zh/{why → learn/packages}/modern/esm-vs-cjs.md +0 -0
  202. /package/templates/vitepress/zh/{why → learn/packages}/modern/package-entry-points.md +0 -0
  203. /package/templates/vitepress/zh/{why → learn/packages}/modern/typescript.md +0 -0
  204. /package/templates/vitepress/zh/{why/js-cjs-mjs.md → learn/packages/module-extensions.md} +0 -0
  205. /package/templates/vitepress/zh/{why/publish-basic-npm-package.md → learn/packages/publish.md} +0 -0
  206. /package/templates/vitepress/zh/{why/how-to-reuse-js-code.md → learn/packages/reuse-javascript.md} +0 -0
  207. /package/templates/vitepress/zh/{why/js-keywords.md → learn/packages/runtime-globals.md} +0 -0
  208. /package/templates/vitepress/zh/{tools → learn/tools}/changeset.md +0 -0
  209. /package/templates/vitepress/zh/{tools → learn/tools}/index.md +0 -0
  210. /package/templates/vitepress/zh/{tools → learn/tools}/renovate.md +0 -0
  211. /package/templates/vitepress/zh/{repoctl → reference}/aliases.md +0 -0
  212. /package/templates/vitepress/zh/{repoctl → reference}/execution-model.md +0 -0
  213. /package/templates/vitepress/zh/{repoctl → reference}/template-assets.md +0 -0
@@ -4,6 +4,31 @@ outline: deep
4
4
 
5
5
  # Reports and Automation Output
6
6
 
7
+ ## When To Use
8
+
9
+ Use this task when a person, CI job, or support request needs a durable record of what repoctl found or planned.
10
+
11
+ ## Prerequisites
12
+
13
+ - Choose a `reports/` directory that is ignored or uploaded as a CI artifact.
14
+ - Use `--redact` before sharing environment details outside the repository.
15
+
16
+ ## Smallest Command
17
+
18
+ ```bash
19
+ repo env support --markdown --redact --out reports/support.md
20
+ ```
21
+
22
+ ## Expected Output
23
+
24
+ The output file contains stable headings and command results that can be attached to a pull request or issue.
25
+
26
+ ## Common Branches
27
+
28
+ - Another tool consumes the result: use JSON with `--json`.
29
+ - You only need to inspect a plan: combine `--dry-run` with the desired format.
30
+ - A report contains a local path or token: regenerate it with `--redact`.
31
+
7
32
  repoctl commands expose human-readable text for terminals, Markdown for issues and pull requests, and stable JSON for automation.
8
33
 
9
34
  ## Common Options
@@ -1,4 +1,30 @@
1
- # Troubleshooting
1
+ # Troubleshoot
2
+
3
+ ## When To Use
4
+
5
+ Use this task when initialization, checks, templates, or automation stop with an unexpected result.
6
+
7
+ ## Prerequisites
8
+
9
+ - Run the command from the repository root.
10
+ - Keep the original error and the repository revision available.
11
+ - Remove secrets before sharing command output.
12
+
13
+ ## Smallest Command
14
+
15
+ ```bash
16
+ repo doctor --markdown --redact --out reports/doctor.md
17
+ ```
18
+
19
+ ## Expected Output
20
+
21
+ The report identifies the repository root, package manager, workspace configuration, tooling, and the first failing check.
22
+
23
+ ## Common Branches
24
+
25
+ - The command is run from a child directory: change to the workspace root.
26
+ - A config file conflicts with a managed asset: inspect the plan before overwriting.
27
+ - A template key is unknown: list templates with `repo templates`.
2
28
 
3
29
  repoctl focuses on reports that can be reproduced, saved, and shared.
4
30
 
@@ -91,6 +117,6 @@ repo check --json --out reports/check-plan.json
91
117
 
92
118
  ## Keep Reading
93
119
 
94
- - [Workflows and CI](./workflows.md)
95
- - [Command Reference](./commands.md)
96
- - [Command Aliases](./aliases.md)
120
+ - [Add checks to CI](/tasks/ci)
121
+ - [Command Reference](/reference/commands)
122
+ - [Command Aliases](/reference/aliases)
@@ -34,9 +34,9 @@ description: 说明这个页面解决的问题和适用场景。
34
34
 
35
35
  AI 入口应该保持显眼,但不要替代正常文档结构:
36
36
 
37
- | 页面类型 | 推荐位置 |
38
- | -------------------------------------- | ------------------------------------ |
39
- | repoctl 命令、校验、诊断、报告 | `/repoctl/` |
40
- | monorepo 和 npm 包基础知识 | `/knowledge/`、`/monorepo/`、`/why/` |
41
- | pnpm、Turborepo、versioning 等工具专题 | `/tools/` |
42
- | llms.txt 和 AI 工具读取约定 | `/ai/` |
37
+ | 页面类型 | 推荐位置 |
38
+ | -------------------------------------- | ------------------------------------------------- |
39
+ | repoctl 命令、校验、诊断、报告 | `/start/` |
40
+ | monorepo 和 npm 包基础知识 | `/learn/`、`/learn/monorepo/`、`/learn/packages/` |
41
+ | pnpm、Turborepo、versioning 等工具专题 | `/learn/tools/` |
42
+ | llms.txt 和 AI 工具读取约定 | `/ai/` |
@@ -0,0 +1,18 @@
1
+ # 理解这套系统
2
+
3
+ 第一次流程跑通后,再进入 Learn。这里解释 repoctl、monorepo、包、模板和底层工具之间的边界。
4
+
5
+ ## 核心概念
6
+
7
+ - [repoctl 如何融入仓库](./repoctl-model)
8
+ - [Monorepo 基础](./monorepo/)
9
+ - [现代 npm 包](./packages/)
10
+ - [模板体系](./monorepo/templates)
11
+
12
+ ## 工具
13
+
14
+ [工具专题](/zh/learn/tools/)解释 pnpm、Turborepo、版本管理、hooks、暂存区校验和依赖自动化。
15
+
16
+ ## 建议阅读顺序
17
+
18
+ 先了解仓库模型,再按需要选择 monorepo 基础或包发布。需要可执行步骤时,回到[任务](/zh/tasks/)章节。
@@ -2,9 +2,9 @@
2
2
 
3
3
  repoctl 现在是这套文档的主线。完整命令说明请阅读:
4
4
 
5
- - [repoctl 命令速查](../repoctl/commands.md)
6
- - [repoctl 模板与创建](../repoctl/templates.md)
7
- - [repoctl 排障与报告](../repoctl/troubleshooting.md)
5
+ - [repoctl 命令速查](/zh/reference/commands)
6
+ - [repoctl 模板与创建](/zh/reference/templates)
7
+ - [repoctl 排障](/zh/tasks/troubleshooting)
8
8
 
9
9
  ## monorepo 知识点:为什么要统一命令入口
10
10
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  这一页是 repoctl 文档后面的知识库页面。它不再重新解释所有命令参数,而是解释:为什么这些命令能让 monorepo 日常管理变简单。
4
4
 
5
- 如果你只想查命令,直接看 [repoctl 工作流与 CI](../repoctl/workflows.md) 或 [repoctl 命令速查](../repoctl/commands.md)。
5
+ 如果你只想查命令,直接看 [把校验加入 CI](/zh/tasks/ci) 或 [repoctl 命令速查](/zh/reference/commands)。
6
6
 
7
7
  ## 先记住默认工作流
8
8
 
@@ -237,7 +237,7 @@ pnpm test
237
237
 
238
238
  ## 继续阅读
239
239
 
240
- - [repoctl 工作流与 CI](../repoctl/workflows.md)
241
- - [repoctl 命令速查](../repoctl/commands.md)
242
- - [repoctl 排障与报告](../repoctl/troubleshooting.md)
240
+ - [把校验加入 CI](/zh/tasks/ci)
241
+ - [repoctl 命令速查](/zh/reference/commands)
242
+ - [repoctl 排障](/zh/tasks/troubleshooting)
243
243
  - [发包与变更日志](./publish.md)
@@ -2,8 +2,8 @@
2
2
 
3
3
  模板创建已经收敛到 repoctl 文档:
4
4
 
5
- - [repoctl 模板与创建](../repoctl/templates.md)
6
- - [repoctl 快速开始](../repoctl/getting-started.md)
5
+ - [repoctl 模板与创建](/zh/reference/templates)
6
+ - [repoctl 快速开始](/zh/start/install)
7
7
 
8
8
  ## monorepo 知识点:模板为什么重要
9
9
 
@@ -2,8 +2,8 @@
2
2
 
3
3
  repoctl 排障文档已经集中到:
4
4
 
5
- - [repoctl 排障与报告](../repoctl/troubleshooting.md)
6
- - [repoctl 命令速查](../repoctl/commands.md)
5
+ - [repoctl 排障](/zh/tasks/troubleshooting)
6
+ - [repoctl 命令速查](/zh/reference/commands)
7
7
 
8
8
  ## monorepo 知识点:先区分问题类型
9
9
 
@@ -14,7 +14,7 @@ outline: [2, 4]
14
14
 
15
15
  为此我们需要提升包的质量,具体的手段如下
16
16
 
17
- 此代码的演变用例见 [examples](https://github.com/sonofmagic/repoctl/tree/main/templates/vitepress/why/examples)
17
+ 此代码的演变用例见 [examples](https://github.com/sonofmagic/repoctl/tree/main/templates/vitepress/learn/packages/examples)
18
18
 
19
19
  ## 确定包的模块入口点
20
20
 
@@ -34,5 +34,5 @@ README.md 安装和使用契约
34
34
 
35
35
  ## 继续阅读
36
36
 
37
- - [什么是 npm 包](./what-is-npm-package.md)
38
- - [发布 npm 包](./publish-basic-npm-package.md)
37
+ - [什么是 npm 包](/zh/learn/packages/)
38
+ - [发布 npm 包](/zh/learn/packages/publish)
@@ -67,12 +67,12 @@ repoctl 把 monorepo 里最容易分散的动作收敛为五条主线:
67
67
 
68
68
  ## 新人和维护者的边界
69
69
 
70
- | 角色 | 推荐只记住 | 需要深入时再看 |
71
- | ---------- | ------------------------------------------------------------------ | ----------------------------------------------------------- |
72
- | 新成员 | `pnpm run repo:doctor`、`pnpm run repo:new`、`pnpm run repo:check` | [按场景选命令](./scenarios.md) |
73
- | 包维护者 | `repo templates`、`repo new --template`、`repo check --full` | [模板资产治理](./template-assets.md) |
74
- | CI 维护者 | `repo doctor --strict`、`repo check --full`、`repo env support` | [报告与自动化输出](./reports.md) |
75
- | 平台维护者 | `repo init`、`repo upgrade`、`repo config inspect` | [执行模型](./execution-model.md) 和 [配置文件](./config.md) |
70
+ | 角色 | 推荐只记住 | 需要深入时再看 |
71
+ | ---------- | ------------------------------------------------------------------ | ----------------------------------------------------------------------------- |
72
+ | 新成员 | `pnpm run repo:doctor`、`pnpm run repo:new`、`pnpm run repo:check` | [任务索引](/zh/tasks/) |
73
+ | 包维护者 | `repo templates`、`repo new --template`、`repo check --full` | [模板资产治理](/zh/reference/template-assets) |
74
+ | CI 维护者 | `repo doctor --strict`、`repo check --full`、`repo env support` | [报告与自动化输出](/zh/tasks/reports) |
75
+ | 平台维护者 | `repo init`、`repo upgrade`、`repo config inspect` | [执行模型](/zh/reference/execution-model) 和 [配置文件](/zh/reference/config) |
76
76
 
77
77
  ## 命令入口
78
78
 
@@ -87,16 +87,16 @@ pnpm exec repoctl new
87
87
 
88
88
  ## 下一步
89
89
 
90
- - 第一次接入:[快速开始](./getting-started.md)
91
- - 不知道用哪个命令:[按场景选命令](./scenarios.md)
92
- - 理解 CLI 怎么执行:[执行模型](./execution-model.md)
93
- - 查命令参数:[命令速查](./commands.md)
94
- - 理解本地校验:[校验链路](./checks.md)
95
- - 看 doctor 具体检查项:[doctor 诊断](./doctor.md)
96
- - 固化团队默认值:[配置文件](./config.md)
97
- - 看可创建的模板:[模板与创建](./templates.md)
98
- - 治理模板资产:[模板资产治理](./template-assets.md)
99
- - 接入 CI 和本地流程:[工作流与 CI](./workflows.md)
100
- - 生成机器可读报告:[报告与自动化输出](./reports.md)
101
- - 排查常见问题:[排障与报告](./troubleshooting.md)
102
- - 熟悉短命令:[命令别名](./aliases.md)
90
+ - 第一次接入:[安装并初始化](/zh/start/install)
91
+ - 不知道用哪个命令:[任务索引](/zh/tasks/)
92
+ - 理解 CLI 怎么执行:[执行模型](/zh/reference/execution-model)
93
+ - 查命令参数:[命令速查](/zh/reference/commands)
94
+ - 理解本地校验:[运行校验](/zh/tasks/checks)
95
+ - 看 doctor 具体检查项:[doctor 诊断](/zh/start/diagnose)
96
+ - 固化团队默认值:[配置文件](/zh/reference/config)
97
+ - 看可创建的模板:[模板与创建](/zh/reference/templates)
98
+ - 治理模板资产:[模板资产治理](/zh/reference/template-assets)
99
+ - 接入 CI 和本地流程:[把校验加入 CI](/zh/tasks/ci)
100
+ - 生成机器可读报告:[报告与自动化输出](/zh/tasks/reports)
101
+ - 排查常见问题:[排障](/zh/tasks/troubleshooting)
102
+ - 熟悉短命令:[命令别名](/zh/reference/aliases)
@@ -15,7 +15,7 @@ repo check --staged
15
15
  repo check --full
16
16
  ```
17
17
 
18
- 继续看:[repoctl 工作流与 CI](../repoctl/workflows.md)。
18
+ 继续看:[把校验加入 CI](/zh/tasks/ci)。
19
19
 
20
20
  ## 1. 什么是 Husky?
21
21
 
@@ -8,7 +8,7 @@ repo verify staged-typecheck packages/app/src/main.ts
8
8
  repo check --staged
9
9
  ```
10
10
 
11
- 继续看:[repoctl 工作流与 CI](../repoctl/workflows.md)。
11
+ 继续看:[把校验加入 CI](/zh/tasks/ci)。
12
12
 
13
13
  ## 1. 什么是 lint-staged?
14
14
 
@@ -6,4 +6,4 @@ description: llms.txt 说明页已移动到独立的 AI 文档栏目。
6
6
 
7
7
  llms.txt 现在放在独立的 AI 文档栏目中维护。
8
8
 
9
- 请阅读:[AI 文档入口:llms.txt](../ai/llms-txt.md)。
9
+ 请阅读:[AI 文档入口:llms.txt](/zh/ai/llms-txt)。
@@ -24,7 +24,7 @@ pnpm check
24
24
  | `pnpm new` | 通过根脚本运行 `repo new` |
25
25
  | `pnpm check` | 通过根脚本运行 `repo check` |
26
26
 
27
- 继续看:[repoctl 快速开始](../repoctl/getting-started.md)。
27
+ 继续看:[repoctl 快速开始](/zh/start/install)。
28
28
 
29
29
  ## 1. 什么是 pnpm?
30
30
 
@@ -15,7 +15,7 @@ pnpm exec repo check --json --out reports/check-plan.json
15
15
  | 根脚本 `pnpm build` / `pnpm test` | 调用 `turbo run build` / `turbo run test` |
16
16
  | `turbo.json` | 定义任务依赖、缓存输出和执行策略 |
17
17
 
18
- 继续看:[repoctl 工作流与 CI](../repoctl/workflows.md)。
18
+ 继续看:[把校验加入 CI](/zh/tasks/ci)。
19
19
 
20
20
  ## 1. 什么是 Turborepo?
21
21
 
@@ -147,17 +147,17 @@ npx turbo link
147
147
 
148
148
  ## Turborepo vs Lerna vs Nx
149
149
 
150
- | 特性 / 工具 | **Turborepo** | **Lerna** | **Nx** |
151
- | ----------------- | ---------------------------------------- | ------------------------------------------- | ----------------------------------------------- |
152
- | **定位** | 高性能构建系统,专注缓存、并行和增量构建 | 最早的 JS monorepo 工具,专注版本管理和发布 | 企业级开发平台,集成构建、测试、代码生成等功能 |
150
+ | 特性 / 工具 | **Turborepo** | **Lerna** | **Nx** |
151
+ | ----------------- | ---------------------------------------- | ------------------------------------------- | ---------------------------------------------- |
152
+ | **定位** | 高性能构建系统,专注缓存、并行和增量构建 | 最早的 JS monorepo 工具,专注版本管理和发布 | 企业级开发平台,集成构建、测试、代码生成等功能 |
153
153
  | **核心优势** | ⚡ 高速缓存(本地 & 远程)、并行任务执行 | 📦 包版本管理(独立/统一模式)、发布到 npm | 🛠 丰富的插件生态、代码生成器、强大的依赖图分析 |
154
- | **依赖管理** | 基于 pnpm/yarn/npm workspaces | 基于 npm/yarn workspaces | 内置强依赖图(project graph)管理 |
155
- | **构建/缓存机制** | ✅ 智能缓存 & 增量构建 | ❌ 无缓存机制 | ✅ 强大缓存 & 增量构建(类似 Bazel) |
156
- | **任务编排** | pipeline 模式(`turbo.json`) | 简单顺序执行 | 高度可配置任务调度器(依赖感知) |
157
- | **语言支持** | 主要是 JS/TS 生态 | 主要是 JS/TS 生态 | 多语言支持(JS/TS/Go/Rust/Python 等) |
158
- | **学习成本** | ⭐⭐ 低(配置简洁,前端友好) | ⭐⭐ 低(老牌工具,功能单一) | ⭐⭐⭐ 高(功能多,配置复杂) |
159
- | **社区活跃度** | 🚀 高(Vercel 维护,发展迅速) | ⚠️ 中等(已过巅峰,更多用于发布流程) | 🚀 高(企业应用广泛,社区和插件丰富) |
160
- | **适合场景** | 前端/全栈项目,追求构建速度 & CI/CD 效率 | 多包库发布(如 npm 包集合项目) | 大型企业级 monorepo,跨语言/跨团队复杂项目 |
154
+ | **依赖管理** | 基于 pnpm/yarn/npm workspaces | 基于 npm/yarn workspaces | 内置强依赖图(project graph)管理 |
155
+ | **构建/缓存机制** | ✅ 智能缓存 & 增量构建 | ❌ 无缓存机制 | ✅ 强大缓存 & 增量构建(类似 Bazel) |
156
+ | **任务编排** | pipeline 模式(`turbo.json`) | 简单顺序执行 | 高度可配置任务调度器(依赖感知) |
157
+ | **语言支持** | 主要是 JS/TS 生态 | 主要是 JS/TS 生态 | 多语言支持(JS/TS/Go/Rust/Python 等) |
158
+ | **学习成本** | ⭐⭐ 低(配置简洁,前端友好) | ⭐⭐ 低(老牌工具,功能单一) | ⭐⭐⭐ 高(功能多,配置复杂) |
159
+ | **社区活跃度** | 🚀 高(Vercel 维护,发展迅速) | ⚠️ 中等(已过巅峰,更多用于发布流程) | 🚀 高(企业应用广泛,社区和插件丰富) |
160
+ | **适合场景** | 前端/全栈项目,追求构建速度 & CI/CD 效率 | 多包库发布(如 npm 包集合项目) | 大型企业级 monorepo,跨语言/跨团队复杂项目 |
161
161
 
162
162
  ## 对比总结
163
163
 
@@ -161,8 +161,8 @@ repo skills sync --codex
161
161
  ## 继续阅读
162
162
 
163
163
  - [执行模型](./execution-model.md)
164
- - [校验链路](./checks.md)
165
- - [doctor 诊断](./doctor.md)
166
- - [工作流与 CI](./workflows.md)
167
- - [报告与自动化输出](./reports.md)
164
+ - [运行校验](/zh/tasks/checks)
165
+ - [doctor 诊断](/zh/start/diagnose)
166
+ - [把校验加入 CI](/zh/tasks/ci)
167
+ - [报告与自动化输出](/zh/tasks/reports)
168
168
  - [命令别名](./aliases.md)
@@ -87,4 +87,4 @@ repo cfg i --markdown --redact --out reports/config.md
87
87
  - [执行模型](./execution-model.md)
88
88
  - [模板与创建](./templates.md)
89
89
  - [模板资产治理](./template-assets.md)
90
- - [报告与自动化输出](./reports.md)
90
+ - [报告与自动化输出](/zh/tasks/reports)
@@ -0,0 +1,15 @@
1
+ # 参考
2
+
3
+ 当你已经知道要做什么,只需要确认命令、参数、配置键或输出规则时,进入参考章节。
4
+
5
+ ## 命令与配置
6
+
7
+ - [命令参考](./commands.md)
8
+ - [配置文件](./config.md)
9
+ - [执行模型](./execution-model.md)
10
+ - [输出格式](./output.md)
11
+ - [命令别名](./aliases.md)
12
+ - [模板](./templates.md)
13
+ - [受管模板资产](./template-assets.md)
14
+
15
+ 新手章节会先隐藏高级分组命令,等它们真正有用时再展开。这里记录完整命令面,不会改变 CLI 的命令名称。
@@ -0,0 +1,37 @@
1
+ # 输出格式
2
+
3
+ repoctl 可以输出到终端,也可以保存为供自动化使用的稳定产物。选择命令边界的输出格式,同一项任务就能服务人和 CI。
4
+
5
+ ## 终端
6
+
7
+ 默认输出适合人阅读,会显示计划、选中的命令和最终状态。
8
+
9
+ ## JSON
10
+
11
+ 其他工具需要结构化字段时使用 JSON:
12
+
13
+ ```bash
14
+ repo check --full --dry-run --json --out reports/check-plan.json
15
+ ```
16
+
17
+ 后续 job 需要检查计划时,可以把文件作为 CI 产物保存。
18
+
19
+ ## Markdown
20
+
21
+ 代码评审和支持请求适合使用 Markdown:
22
+
23
+ ```bash
24
+ repo env support --markdown --redact --out reports/support.md
25
+ ```
26
+
27
+ `--redact` 会在分享前移除本地路径和敏感值。
28
+
29
+ ## 常见分支
30
+
31
+ - 需要比较两次运行:分别写入不同文件,再比较 JSON。
32
+ - 需要安全的排障包:使用 `repo env support --redact`。
33
+ - 只需要命令计划:把 `--dry-run` 和目标输出格式一起使用。
34
+
35
+ ## 下一步
36
+
37
+ 完整支持流程请看[报告与输出任务](/zh/tasks/reports)。
@@ -2,7 +2,7 @@
2
2
 
3
3
  repoctl 的模板由 `@icebreakers/monorepo-templates` 维护。CLI、脚手架和文档都复用同一份模板元数据。
4
4
 
5
- 更偏维护者视角的模板元数据、健康检查和自定义模板说明见:[模板资产治理](./template-assets.md)。
5
+ 更偏维护者视角的模板元数据、健康检查和自定义模板说明见:[模板资产治理](/zh/reference/template-assets)。
6
6
 
7
7
  ## 内置模板
8
8
 
@@ -153,7 +153,7 @@ repo templates --check --json
153
153
 
154
154
  ## 继续阅读
155
155
 
156
- - [接入已有仓库](./adopt-existing.md)
157
- - [工作流与 CI](./workflows.md)
156
+ - [接入已有 workspace](/zh/tasks/adopt-existing)
157
+ - [把校验加入 CI](/zh/tasks/ci)
158
158
  - [配置文件](./config.md)
159
- - [模板资产治理](./template-assets.md)
159
+ - [模板资产治理](/zh/reference/template-assets)
@@ -0,0 +1,14 @@
1
+ # 选择下一项任务
2
+
3
+ 先按你要得到的结果选择任务。每个任务页都包含适用场景、前置条件、最小命令、预期输出、常见分支和下一步。
4
+
5
+ | 目标 | 进入 |
6
+ | ----------------------------- | ---------------------------------------------- |
7
+ | 把 repoctl 接入已有 workspace | [接入已有 workspace](/zh/tasks/adopt-existing) |
8
+ | 创建包、应用、服务或文档站 | [创建包或应用](/zh/tasks/create-project) |
9
+ | 提交前运行本地校验 | [运行校验](/zh/tasks/checks) |
10
+ | 保存评审或排障需要的输出 | [报告与输出](/zh/tasks/reports) |
11
+ | 把同一套流程接入 CI | [把校验加入 CI](/zh/tasks/ci) |
12
+ | 准备发布包 | [发布包](/zh/tasks/release) |
13
+
14
+ 参数和分组命令请查看[命令参考](/zh/reference/commands)。想了解命令为什么这样执行,可以阅读[repoctl 执行模型](/zh/reference/execution-model)。
@@ -83,4 +83,4 @@ repo doctor
83
83
  3. 然后补根脚本、hook 和 lint-staged。
84
84
  4. 最后整理 workspace patterns 与 tooling imports。
85
85
 
86
- 如果不确定报告能否安全分享,使用 [报告与自动化输出](./reports.md) 里的 `--redact` 和 `env support`。
86
+ 如果不确定报告能否安全分享,使用 [报告与自动化输出](/zh/tasks/reports) 里的 `--redact` 和 `env support`。
@@ -0,0 +1,39 @@
1
+ # 第一次运行
2
+
3
+ 这是最小的完整 repoctl 流程。它先做一次可审查的变更,保存证据,再给出下一步。
4
+
5
+ ## 安装
6
+
7
+ ```bash
8
+ pnpm add -D repoctl
9
+ ```
10
+
11
+ ## 初始化
12
+
13
+ ```bash
14
+ pnpm exec repo init
15
+ ```
16
+
17
+ 接受写入前先检查计划。如果仓库已有自己的约定,先阅读接入指南,再决定是否替换文件。
18
+
19
+ ## 诊断
20
+
21
+ ```bash
22
+ pnpm exec repo doctor
23
+ ```
24
+
25
+ 报告会检查仓库根目录、包管理器、workspace 结构、任务运行器、hooks 和发布元数据。先修复第一个阻塞项,再重新执行命令。
26
+
27
+ ## 规划校验
28
+
29
+ ```bash
30
+ pnpm exec repo check --dry-run
31
+ ```
32
+
33
+ 这会列出 lint、类型检查、构建、测试和包检查将要执行的命令。确认计划符合仓库约定后,再执行完整校验。
34
+
35
+ ## 下一步
36
+
37
+ - 新建仓库:[创建包或应用](/zh/tasks/create-project)。
38
+ - 已有仓库:[接入已有 workspace](/zh/tasks/adopt-existing)。
39
+ - 配置 CI:[把校验加入 CI](/zh/tasks/ci)。
@@ -0,0 +1,26 @@
1
+ # 从这里开始
2
+
3
+ 如果你第一次使用 repoctl,请从这一节开始。最短的有效路径是安装 CLI,执行 `repo init`,再执行 `repo doctor`。
4
+
5
+ ## 选择第一次操作
6
+
7
+ - 如果还没有运行过命令,阅读[安装并初始化](./install.md)。
8
+ - 如果已经安装 repoctl,直接[运行第一次诊断](./diagnose.md)。
9
+ - 得到诊断结果后,进入[选择下一项任务](./choose-next.md)。
10
+
11
+ ## repoctl 做什么
12
+
13
+ repoctl 把常见 monorepo 工作收敛为一组容易记忆的命令:
14
+
15
+ | 需求 | 命令 |
16
+ | ---------------- | ---------------------- |
17
+ | 加入仓库约定 | `repo init` |
18
+ | 检查仓库健康状态 | `repo doctor` |
19
+ | 创建包或应用 | `repo new` |
20
+ | 执行前规划校验 | `repo check --dry-run` |
21
+
22
+ CLI 支持 pnpm workspace,并能理解 Turborepo 任务图,但不会替代这两个工具。
23
+
24
+ ## 开始前确认
25
+
26
+ 你需要 Node.js 22.12 或更新版本,并确保 pnpm 在 PATH 中。从仓库根目录执行命令,这样 repoctl 才能读取 workspace 配置。
@@ -1,4 +1,4 @@
1
- # 快速开始
1
+ # 安装并初始化
2
2
 
3
3
  这一页按“把 repoctl 接进一个仓库”的顺序写。你不需要先理解所有工具,先让仓库能被诊断、能创建包、能跑提交前校验。
4
4
 
@@ -116,7 +116,7 @@ pnpm exec repo upgrade --yes
116
116
 
117
117
  ## 常见下一步
118
118
 
119
- - 已有仓库渐进接入:阅读 [接入已有仓库](./adopt-existing.md)。
120
- - 想固定默认模板:阅读 [配置文件](./config.md)。
121
- - 想查看所有模板:阅读 [模板与创建](./templates.md)。
122
- - 想把诊断结果发给同事:阅读 [排障与报告](./troubleshooting.md)。
119
+ - 已有仓库渐进接入:阅读 [接入已有仓库](/zh/tasks/adopt-existing)。
120
+ - 想固定默认模板:阅读 [配置文件](/zh/reference/config)。
121
+ - 想查看所有模板:阅读 [模板与创建](/zh/reference/templates)。
122
+ - 想把诊断结果发给同事:阅读 [排障](/zh/tasks/troubleshooting)。
@@ -1,4 +1,30 @@
1
- # 接入已有仓库
1
+ # 接入已有 workspace
2
+
3
+ ## 适用场景
4
+
5
+ 当 workspace 已经有脚本、hooks 或配置,需要保留现有约定并逐步接入 repoctl 时,使用这个任务。
6
+
7
+ ## 前置条件
8
+
9
+ - 在 workspace 根目录执行命令。
10
+ - 提交或暂存与本次接入无关的本地改动。
11
+ - 确认 Node.js 22.12 或更新版本以及 pnpm 可用。
12
+
13
+ ## 最小命令
14
+
15
+ ```bash
16
+ repo doctor --markdown --redact --out reports/baseline.md
17
+ ```
18
+
19
+ ## 预期输出
20
+
21
+ 报告会记录包管理器、workspace 结构、任务运行器、工具文件和发布设置,并隐藏本地路径。
22
+
23
+ ## 常见分支
24
+
25
+ - 现有约定健康:保留它们,只补齐缺少的受管资产。
26
+ - 文件已经由本地管理:使用 `repo upgrade --no-overwrite` 并检查差异。
27
+ - tooling 分散在多个 loader:先统一 loader,再重新运行诊断。
2
28
 
3
29
  repoctl 不只适合新模板仓库。它也可以渐进接入已有 pnpm workspace,用诊断报告和非覆盖同步把风险降下来。
4
30
 
@@ -130,6 +156,6 @@ pnpm exec repo init --yes
130
156
 
131
157
  ## 下一步
132
158
 
133
- - [工作流与 CI](./workflows.md)
134
- - [排障与报告](./troubleshooting.md)
135
- - [配置文件](./config.md)
159
+ - [把校验加入 CI](/zh/tasks/ci)
160
+ - [排障](/zh/tasks/troubleshooting)
161
+ - [配置文件](/zh/reference/config)
@@ -2,7 +2,33 @@
2
2
  description: 说明 repoctl check 和 verify 的校验模式、pre-commit、staged typecheck、pre-push 与 commit-msg 链路。
3
3
  ---
4
4
 
5
- # repoctl 校验链路
5
+ # 运行校验
6
+
7
+ ## 适用场景
8
+
9
+ 提交、创建 pull request 或需要在本地复现 CI 计划前,使用这个任务。
10
+
11
+ ## 前置条件
12
+
13
+ - 在 workspace 根目录运行 `repo doctor`。
14
+ - 使用仓库锁定的 pnpm 版本安装依赖。
15
+ - 先决定需要快速校验还是完整交付门禁。
16
+
17
+ ## 最小命令
18
+
19
+ ```bash
20
+ repo check --dry-run
21
+ ```
22
+
23
+ ## 预期输出
24
+
25
+ repoctl 会列出选中的任务和将要执行的确切命令。确认计划符合仓库策略后,再移除 `--dry-run`。
26
+
27
+ ## 常见分支
28
+
29
+ - 只检查暂存文件:使用 `repo check --staged`。
30
+ - CI 需要产物:加入 `--json --out reports/check-plan.json`。
31
+ - 准备发布:快速校验通过后,再执行 `repo check --full`。
6
32
 
7
33
  `repo check` 是给人使用的统一入口,`repo verify` 是给 hook、CI 和脚本复用的底层入口。
8
34