coding-agent-harness 1.0.1 → 1.0.4

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 (262) hide show
  1. package/CHANGELOG.md +44 -0
  2. package/CONTRIBUTING.md +98 -0
  3. package/README.en-US.md +14 -0
  4. package/README.md +230 -80
  5. package/README.zh-CN.md +290 -0
  6. package/SKILL.md +132 -198
  7. package/docs-release/README.md +80 -9
  8. package/docs-release/architecture/overview.md +298 -28
  9. package/docs-release/architecture/overview.zh-CN.md +292 -0
  10. package/docs-release/assets/dashboard-overview.png +0 -0
  11. package/docs-release/assets/harness-architecture.svg +163 -0
  12. package/docs-release/assets/harness-workflow.svg +64 -0
  13. package/docs-release/guides/agent-installation.en-US.md +237 -0
  14. package/docs-release/guides/agent-installation.md +149 -27
  15. package/docs-release/guides/contributing.md +100 -0
  16. package/docs-release/guides/contributing.zh-CN.md +99 -0
  17. package/docs-release/guides/document-audience-and-surfaces.en-US.md +113 -0
  18. package/docs-release/guides/document-audience-and-surfaces.md +113 -0
  19. package/docs-release/guides/full-legacy-migration-subagent-strategy.md +334 -0
  20. package/docs-release/guides/full-legacy-migration-subagent-strategy.zh-CN.md +334 -0
  21. package/docs-release/guides/legacy-migration-agent-prompt.md +373 -0
  22. package/docs-release/guides/legacy-migration-agent-prompt.zh-CN.md +350 -0
  23. package/docs-release/guides/migration-playbook.en-US.md +324 -0
  24. package/docs-release/guides/migration-playbook.md +328 -0
  25. package/docs-release/guides/parent-control-repository-pattern.en-US.md +254 -0
  26. package/docs-release/guides/parent-control-repository-pattern.md +254 -0
  27. package/docs-release/guides/preset-development.md +214 -0
  28. package/docs-release/guides/repository-operating-models.en-US.md +197 -0
  29. package/docs-release/guides/repository-operating-models.md +197 -0
  30. package/docs-release/guides/task-state-machine.en-US.md +207 -0
  31. package/docs-release/guides/task-state-machine.md +214 -0
  32. package/docs-release/intl/README.md +15 -0
  33. package/docs-release/intl/de-DE.md +18 -0
  34. package/docs-release/intl/en-US.md +18 -0
  35. package/docs-release/intl/es-ES.md +18 -0
  36. package/docs-release/intl/fr-FR.md +18 -0
  37. package/docs-release/intl/ja-JP.md +18 -0
  38. package/docs-release/intl/ko-KR.md +18 -0
  39. package/docs-release/intl/zh-CN.md +18 -0
  40. package/examples/minimal-project/docs/09-PLANNING/TASKS/demo-task/brief.md +13 -0
  41. package/examples/minimal-project/docs/09-PLANNING/TASKS/demo-task/findings.md +7 -0
  42. package/examples/minimal-project/docs/09-PLANNING/TASKS/demo-task/lesson_candidates.md +24 -0
  43. package/examples/minimal-project/docs/09-PLANNING/TASKS/demo-task/progress.md +1 -1
  44. package/examples/minimal-project/docs/09-PLANNING/TASKS/demo-task/task_plan.md +4 -2
  45. package/examples/minimal-project/docs/09-PLANNING/TASKS/demo-task/{visual_roadmap.md → visual_map.md} +9 -1
  46. package/package.json +10 -3
  47. package/presets/legacy-migration/checks/preset-check.mjs +3 -0
  48. package/presets/legacy-migration/preset.yaml +134 -0
  49. package/presets/legacy-migration/scripts/plan-work-queue.mjs +4 -0
  50. package/presets/legacy-migration/scripts/scaffold-task-contracts.mjs +4 -0
  51. package/presets/legacy-migration/templates/execution_strategy.append.md +18 -0
  52. package/presets/legacy-migration/templates/findings.seed.md +17 -0
  53. package/presets/legacy-migration/templates/review.seed.md +12 -0
  54. package/presets/legacy-migration/templates/task_plan.append.md +9 -0
  55. package/presets/legacy-migration/templates/visual_map.append.md +12 -0
  56. package/presets/legacy-migration/workbench/dashboard-panels.yaml +2 -0
  57. package/presets/legacy-migration/workbench/migration-queue.schema.json +23 -0
  58. package/presets/lesson-sedimentation/preset.yaml +23 -0
  59. package/presets/lesson-sedimentation/templates/prompt.md +23 -0
  60. package/presets/module/preset.yaml +25 -0
  61. package/presets/module/templates/execution_strategy.append.md +8 -0
  62. package/presets/module/templates/task_plan.append.md +17 -0
  63. package/presets/standard-task/preset.yaml +31 -0
  64. package/presets/standard-task/templates/task_plan.append.md +7 -0
  65. package/references/adversarial-review-standard.md +2 -2
  66. package/references/agents-md-pattern.md +5 -5
  67. package/references/delivery-operating-model-standard.md +3 -3
  68. package/references/docs-directory-standard.md +53 -10
  69. package/references/external-source-intake-standard.md +75 -0
  70. package/references/harness-ledger.md +53 -94
  71. package/references/legacy-12-phase-bootstrap.md +41 -0
  72. package/references/lessons-governance.md +100 -88
  73. package/references/module-parallel-standard.md +14 -14
  74. package/references/planning-loop.md +51 -7
  75. package/references/project-onboarding-audit.md +10 -0
  76. package/references/pull-request-standard.md +118 -0
  77. package/references/repo-governance-standard.md +12 -1
  78. package/references/review-routing-standard.md +7 -1
  79. package/references/ssot-governance.md +67 -59
  80. package/references/taskr-gap-analysis.md +600 -0
  81. package/references/testing-standard.md +50 -0
  82. package/references/walkthrough-closeout.md +10 -9
  83. package/scripts/check-harness.mjs +111 -331
  84. package/scripts/commands/dashboard-command.mjs +67 -0
  85. package/scripts/commands/migration-command.mjs +96 -0
  86. package/scripts/commands/preset-command.mjs +73 -0
  87. package/scripts/commands/task-command.mjs +327 -0
  88. package/scripts/harness.mjs +106 -20
  89. package/scripts/lib/capability-registry.mjs +591 -0
  90. package/scripts/lib/check-module-parallel.mjs +237 -0
  91. package/scripts/lib/check-profiles.mjs +418 -0
  92. package/scripts/lib/check-task-contracts.mjs +47 -0
  93. package/scripts/lib/core-shared.mjs +196 -0
  94. package/scripts/lib/dashboard-data.mjs +412 -0
  95. package/scripts/lib/dashboard-workbench.mjs +257 -0
  96. package/scripts/lib/dashboard-writer.mjs +107 -4
  97. package/scripts/lib/git-status-summary.mjs +46 -0
  98. package/scripts/lib/governance-index-generator.mjs +174 -0
  99. package/scripts/lib/governance-sync.mjs +514 -0
  100. package/scripts/lib/governance-table-boundary.mjs +175 -0
  101. package/scripts/lib/harness-core.mjs +15 -1318
  102. package/scripts/lib/lesson-maintenance.mjs +152 -0
  103. package/scripts/lib/markdown-utils.mjs +158 -0
  104. package/scripts/lib/migration-planner.mjs +478 -0
  105. package/scripts/lib/migration-support.mjs +312 -0
  106. package/scripts/lib/preset-audit-contracts.mjs +37 -0
  107. package/scripts/lib/preset-engine.mjs +497 -0
  108. package/scripts/lib/preset-registry.mjs +627 -0
  109. package/scripts/lib/preset-resource-contracts.mjs +83 -0
  110. package/scripts/lib/review-confirm-git-gate.mjs +248 -0
  111. package/scripts/lib/status-dashboard-renderer.mjs +102 -0
  112. package/scripts/lib/subagent-authorization-audit.mjs +196 -0
  113. package/scripts/lib/task-completion-consistency.mjs +16 -0
  114. package/scripts/lib/task-index.mjs +93 -0
  115. package/scripts/lib/task-lesson-candidates.mjs +242 -0
  116. package/scripts/lib/task-lesson-sedimentation.mjs +326 -0
  117. package/scripts/lib/task-lifecycle/review-confirm.mjs +101 -0
  118. package/scripts/lib/task-lifecycle/review-gates.mjs +70 -0
  119. package/scripts/lib/task-lifecycle/text-utils.mjs +24 -0
  120. package/scripts/lib/task-lifecycle.mjs +649 -0
  121. package/scripts/lib/task-review-model.mjs +469 -0
  122. package/scripts/lib/task-scanner.mjs +576 -0
  123. package/scripts/lib/task-tombstone-commands.mjs +140 -0
  124. package/scripts/postinstall.mjs +14 -0
  125. package/skills/preset-creator/SKILL.md +179 -0
  126. package/skills/preset-creator/references/complex-task-skeleton/README.md +31 -0
  127. package/skills/preset-creator/references/complex-task-skeleton/artifacts/INDEX.md +12 -0
  128. package/skills/preset-creator/references/complex-task-skeleton/brief.md +32 -0
  129. package/skills/preset-creator/references/complex-task-skeleton/execution_strategy.md +71 -0
  130. package/skills/preset-creator/references/complex-task-skeleton/findings.md +24 -0
  131. package/skills/preset-creator/references/complex-task-skeleton/lesson_candidates.md +70 -0
  132. package/skills/preset-creator/references/complex-task-skeleton/long-running-task-contract.md +76 -0
  133. package/skills/preset-creator/references/complex-task-skeleton/progress.md +33 -0
  134. package/skills/preset-creator/references/complex-task-skeleton/references/INDEX.md +13 -0
  135. package/skills/preset-creator/references/complex-task-skeleton/review.md +107 -0
  136. package/skills/preset-creator/references/complex-task-skeleton/task_plan.md +111 -0
  137. package/{templates/planning/visual_roadmap.md → skills/preset-creator/references/complex-task-skeleton/visual_map.md} +24 -2
  138. package/skills/preset-creator/references/preset-package-skeleton.md +296 -0
  139. package/templates/AGENTS.md.template +51 -36
  140. package/templates/architecture/Architecture-SSoT.md +21 -0
  141. package/templates/architecture/README.md +49 -0
  142. package/templates/architecture/critical-flows.md +22 -0
  143. package/templates/architecture/local-repo-context.md +20 -0
  144. package/templates/architecture/service-catalog.md +17 -0
  145. package/templates/architecture/services/service-template.md +31 -0
  146. package/templates/architecture/system-map.md +22 -0
  147. package/templates/dashboard/assets/app-src/00-state.js +42 -0
  148. package/templates/dashboard/assets/app-src/10-router.js +77 -0
  149. package/templates/dashboard/assets/app-src/20-overview.js +241 -0
  150. package/templates/dashboard/assets/app-src/30-tasks.js +409 -0
  151. package/templates/dashboard/assets/app-src/35-task-detail.js +246 -0
  152. package/templates/dashboard/assets/app-src/40-modules.js +58 -0
  153. package/templates/dashboard/assets/app-src/45-review.js +347 -0
  154. package/templates/dashboard/assets/app-src/50-migration.js +183 -0
  155. package/templates/dashboard/assets/app-src/60-shared.js +61 -0
  156. package/templates/dashboard/assets/app-src/90-bindings.js +524 -0
  157. package/templates/dashboard/assets/app.css +3107 -300
  158. package/templates/dashboard/assets/app.css.manifest.json +9 -0
  159. package/templates/dashboard/assets/app.js +2068 -306
  160. package/templates/dashboard/assets/app.manifest.json +12 -0
  161. package/templates/dashboard/assets/css-src/00-foundation.css +342 -0
  162. package/templates/dashboard/assets/css-src/10-panels-flow.css +236 -0
  163. package/templates/dashboard/assets/css-src/20-briefs-controls.css +398 -0
  164. package/templates/dashboard/assets/css-src/30-task-index.css +739 -0
  165. package/templates/dashboard/assets/css-src/35-review-workspace.css +507 -0
  166. package/templates/dashboard/assets/css-src/40-detail-modules-migration.css +427 -0
  167. package/templates/dashboard/assets/css-src/50-responsive-overrides.css +551 -0
  168. package/templates/dashboard/assets/i18n.js +531 -44
  169. package/templates/dashboard/assets/mermaid-renderer.js +58 -8
  170. package/templates/development/README.md +52 -0
  171. package/templates/development/codebase-map.md +11 -0
  172. package/templates/development/cross-repo-debugging.md +18 -0
  173. package/templates/development/external-context/service-template.md +33 -0
  174. package/templates/development/external-source-packs/README.md +24 -0
  175. package/templates/development/external-source-packs/digest-template.md +28 -0
  176. package/templates/development/local-setup.md +16 -0
  177. package/templates/development/stubs-and-mocks.md +11 -0
  178. package/templates/integrations/README.md +40 -0
  179. package/templates/integrations/api-contract.md +42 -0
  180. package/templates/integrations/event-contract.md +46 -0
  181. package/templates/integrations/third-party/vendor-template.md +42 -0
  182. package/templates/integrations/webhook-contract.md +41 -0
  183. package/templates/ledger/Harness-Ledger.md +13 -25
  184. package/templates/lessons/lesson-arch-process-change.md +1 -1
  185. package/templates/lessons/lesson-new-doc.md +1 -1
  186. package/templates/lessons/lesson-ref-change.md +1 -1
  187. package/templates/planning/brief.md +32 -0
  188. package/templates/planning/execution_strategy.md +31 -0
  189. package/templates/planning/lesson_candidates.md +70 -0
  190. package/templates/planning/long-running-task-contract.md +7 -0
  191. package/templates/planning/module_brief.md +25 -0
  192. package/templates/planning/module_session_prompt.md +6 -0
  193. package/templates/planning/optional/artifacts/INDEX.md +3 -3
  194. package/templates/planning/optional/references/INDEX.md +3 -3
  195. package/templates/planning/review.md +59 -0
  196. package/templates/planning/task_plan.md +40 -15
  197. package/templates/planning/visual_map.md +50 -0
  198. package/templates/reference/docs-library-standard.md +31 -0
  199. package/templates/reference/execution-workflow-standard.md +5 -2
  200. package/templates/reference/external-source-intake-standard.md +82 -0
  201. package/templates/reference/harness-ledger-standard.md +1 -0
  202. package/templates/reference/pull-request-standard.md +80 -0
  203. package/templates/reference/repo-governance-standard.md +8 -5
  204. package/templates/reference/review-routing-standard.md +6 -0
  205. package/templates/reference/walkthrough-standard.md +3 -1
  206. package/templates/verifier/verifier-output.md +1 -1
  207. package/templates/walkthrough/walkthrough-template.md +2 -2
  208. package/templates-zh-CN/AGENTS.md.template +73 -70
  209. package/templates-zh-CN/architecture/Architecture-SSoT.md +21 -0
  210. package/templates-zh-CN/architecture/README.md +51 -0
  211. package/templates-zh-CN/architecture/critical-flows.md +24 -0
  212. package/templates-zh-CN/architecture/local-repo-context.md +20 -0
  213. package/templates-zh-CN/architecture/service-catalog.md +17 -0
  214. package/templates-zh-CN/architecture/services/service-template.md +31 -0
  215. package/templates-zh-CN/architecture/system-map.md +22 -0
  216. package/templates-zh-CN/development/README.md +54 -0
  217. package/templates-zh-CN/development/codebase-map.md +11 -0
  218. package/templates-zh-CN/development/cross-repo-debugging.md +18 -0
  219. package/templates-zh-CN/development/external-context/service-template.md +33 -0
  220. package/templates-zh-CN/development/external-source-packs/README.md +24 -0
  221. package/templates-zh-CN/development/external-source-packs/digest-template.md +28 -0
  222. package/templates-zh-CN/development/local-setup.md +16 -0
  223. package/templates-zh-CN/development/stubs-and-mocks.md +11 -0
  224. package/templates-zh-CN/integrations/README.md +42 -0
  225. package/templates-zh-CN/integrations/api-contract.md +42 -0
  226. package/templates-zh-CN/integrations/event-contract.md +46 -0
  227. package/templates-zh-CN/integrations/third-party/vendor-template.md +42 -0
  228. package/templates-zh-CN/integrations/webhook-contract.md +41 -0
  229. package/templates-zh-CN/ledger/Harness-Ledger.md +17 -40
  230. package/templates-zh-CN/planning/brief.md +32 -0
  231. package/templates-zh-CN/planning/execution_strategy.md +30 -0
  232. package/templates-zh-CN/planning/lesson_candidates.md +70 -0
  233. package/templates-zh-CN/planning/long-running-task-contract.md +1 -1
  234. package/templates-zh-CN/planning/module_brief.md +25 -0
  235. package/templates-zh-CN/planning/module_plan.md +2 -2
  236. package/templates-zh-CN/planning/module_session_prompt.md +4 -3
  237. package/templates-zh-CN/planning/review.md +59 -1
  238. package/templates-zh-CN/planning/task_plan.md +37 -11
  239. package/templates-zh-CN/planning/{visual_roadmap.md → visual_map.md} +21 -2
  240. package/templates-zh-CN/reference/adversarial-review-standard.md +1 -1
  241. package/templates-zh-CN/reference/docs-library-standard.md +36 -1
  242. package/templates-zh-CN/reference/execution-workflow-standard.md +10 -2
  243. package/templates-zh-CN/reference/external-source-intake-standard.md +82 -0
  244. package/templates-zh-CN/reference/harness-ledger-standard.md +7 -4
  245. package/templates-zh-CN/reference/pull-request-standard.md +106 -0
  246. package/templates-zh-CN/reference/repo-governance-standard.md +4 -1
  247. package/templates-zh-CN/reference/review-routing-standard.md +8 -1
  248. package/templates-zh-CN/reference/walkthrough-standard.md +6 -5
  249. package/templates-zh-CN/walkthrough/Closeout-SSoT.md +2 -2
  250. package/templates-zh-CN/walkthrough/walkthrough-template.md +2 -2
  251. package/scripts/smoke-dashboard.mjs +0 -70
  252. package/scripts/test-harness.mjs +0 -483
  253. package/templates/ssot/Feature-SSoT.md +0 -43
  254. package/templates/ssot/Lessons-SSoT.md +0 -44
  255. package/templates-zh-CN/dashboard/assets/app.css +0 -399
  256. package/templates-zh-CN/dashboard/assets/app.js +0 -435
  257. package/templates-zh-CN/dashboard/assets/i18n.js +0 -47
  258. package/templates-zh-CN/dashboard/assets/markdown-reader.js +0 -116
  259. package/templates-zh-CN/dashboard/assets/mermaid-renderer.js +0 -59
  260. package/templates-zh-CN/dashboard/index.html +0 -18
  261. package/templates-zh-CN/ssot/Feature-SSoT.md +0 -49
  262. package/templates-zh-CN/ssot/Lessons-SSoT.md +0 -49
package/CHANGELOG.md CHANGED
@@ -1,5 +1,49 @@
1
1
  # Changelog
2
2
 
3
+ ## 1.0.4
4
+
5
+ - Seed bundled presets into user preset storage during npm/user installation and
6
+ into project preset storage during `harness init`.
7
+ - Added `harness preset seed` for idempotent bundled preset repair/re-run flows.
8
+ - Included bundled presets in user-level Skill installation and `doctor-user`
9
+ validation.
10
+ - Updated agent-facing installation guidance to require preset discovery before
11
+ choosing task presets.
12
+
13
+ ## 1.0.3
14
+
15
+ - Added lesson sedimentation follow-up task creation through CLI, preset, and
16
+ Dashboard actions, using task-local candidates and promoted lesson detail
17
+ docs instead of a shared Lessons table.
18
+ - Added git-backed review confirmation audit validation so forged committed
19
+ Markdown blocks cannot satisfy human review confirmation.
20
+ - Added governance table entropy checks for shared governance table boundaries.
21
+ - Bounded lifecycle queue cards and review document panels for long task and
22
+ review content.
23
+ - Split lifecycle review gates, review-confirm writer, and lifecycle test
24
+ suites into dedicated module folders.
25
+ - Added a bilingual pull request standard and PR template, and routed generated
26
+ `AGENTS.md` files to the PR standard.
27
+
28
+ ## 1.0.2
29
+
30
+ - Added the dashboard workbench, review queue, migration rails, lifecycle gates,
31
+ lesson candidate governance, and refreshed public installation guidance.
32
+ - Added bilingual README coverage and restored Star History in the public
33
+ project README.
34
+ - Slimmed the generated `AGENTS.md` templates back to charter and routing
35
+ content instead of install instructions.
36
+ - Removed source-checkout and private maintainer instructions from
37
+ target-facing reports and public install guidance.
38
+ - Replaced old 12-phase labels in the Skill reference/template indexes with
39
+ v1.0 capability and task-context routing.
40
+ - Added README architecture diagrams and separated human CLI commands from
41
+ agent-facing setup prompts.
42
+ - Expanded the public architecture overview with Mermaid diagrams for package
43
+ boundaries, CLI surfaces, dashboard data flow, lifecycle state, migration
44
+ rails, release docs boundaries, and runtime safety.
45
+ - Added a Simplified Chinese mirror for the public architecture overview.
46
+
3
47
  ## 1.0.0
4
48
 
5
49
  - Added the `harness` CLI with `check`, `status`, `dashboard`, `init`, and
@@ -0,0 +1,98 @@
1
+ # Contributing
2
+
3
+ Thanks for helping improve Coding Agent Harness. This repository contains the public CLI, templates, presets, Skills, examples, documentation, and the optional GUI submodule.
4
+
5
+ ## Before You Start
6
+
7
+ - Use Node.js 18 or newer. CI currently runs on Node.js 20.
8
+ - Install root dependencies with `npm install` from the repository root.
9
+ - If you change `harness-gui`, also run `npm ci` inside `harness-gui/`.
10
+ - Keep pull requests focused. Separate documentation, CLI/runtime, template, preset, and GUI work when the changes are independent.
11
+
12
+ ## Repository Layout
13
+
14
+ | Path | Purpose |
15
+ | --- | --- |
16
+ | `scripts/` | Public CLI and implementation modules. |
17
+ | `tests/` | Root package tests and dashboard smoke tests. |
18
+ | `templates/`, `templates-zh-CN/` | Harness templates installed into target projects. |
19
+ | `presets/` | Bundled Harness preset packages. |
20
+ | `skills/`, `SKILL.md` | Agent Skill entrypoints and nested Skills. |
21
+ | `docs-release/` | Public documentation for users and maintainers. |
22
+ | `examples/` | Minimal target projects and fixtures used by tests. |
23
+ | `harness-gui/` | Optional GUI submodule with its own package and checks. |
24
+
25
+ Do not commit local generated dashboards, temporary output directories, credentials, editor files, or machine-specific environment files.
26
+
27
+ ## Branches And Commits
28
+
29
+ - Create a branch from the latest `main`.
30
+ - Use a descriptive branch name such as `codex/fix-task-state-docs` or `feat/preset-validation`.
31
+ - Keep commit messages short and concrete.
32
+ - Do not include unrelated formatting churn or generated artifacts in the same PR.
33
+
34
+ ## What To Run
35
+
36
+ Run the checks that match your change. For a small docs-only PR, start with the
37
+ docs row. For larger PRs or when you are unsure, run the full root suite.
38
+
39
+ | Change type | Minimum local checks |
40
+ | --- | --- |
41
+ | Docs only | `git diff --check` |
42
+ | CLI/runtime | `npm test`, `npm run check`, `git diff --check` |
43
+ | Templates or examples | `npm test`, `node scripts/harness.mjs check --profile target-project examples/minimal-project`, `git diff --check` |
44
+ | Dashboard | `npm test`, `npm run smoke:dashboard`, `git diff --check` |
45
+ | Package surface | `npm test`, `npm run pack:dry-run`, `git diff --check` |
46
+ | GUI submodule | `cd harness-gui && npm ci && npm run typecheck && npm test && npm run build` |
47
+
48
+ Full root suite:
49
+
50
+ ```bash
51
+ npm install
52
+ npm test
53
+ npm run smoke:dashboard
54
+ npm run check
55
+ node scripts/harness.mjs check --profile target-project examples/minimal-project
56
+ npm run pack:dry-run
57
+ git diff --check
58
+ ```
59
+
60
+ GUI submodule setup and checks:
61
+
62
+ ```bash
63
+ cd harness-gui
64
+ npm ci
65
+ npm run typecheck
66
+ npm test
67
+ npm run build
68
+ ```
69
+
70
+ If a check is not relevant or cannot run in your environment, explain that in the PR template.
71
+
72
+ ## Change-Specific Guidance
73
+
74
+ - CLI/runtime changes usually need root tests in `tests/` and source-package validation.
75
+ - Template changes should prove that a target project still passes `check --profile target-project`.
76
+ - Dashboard changes should run `npm run smoke:dashboard`.
77
+ - Preset changes should include preset validation and at least one task creation path when behavior changes.
78
+ - Documentation-only changes should still run `git diff --check` and any targeted link or spelling checks you use.
79
+ - GUI changes must be made in the `harness-gui` submodule and validated with the GUI commands above.
80
+
81
+ ## Pull Requests
82
+
83
+ Every PR should include:
84
+
85
+ - What changed and why.
86
+ - The user or maintainer impact.
87
+ - Whether the package version changes. Use "no version change" for docs, CI-only, and internal maintenance unless release behavior changes.
88
+ - Verification commands and outcomes.
89
+ - Any checks not run, with a reason.
90
+ - Known residual risk.
91
+
92
+ Use draft PRs for work that still needs design review, incomplete checks, or follow-up fixes. Mark the PR ready only after the relevant checks pass and review feedback is addressed.
93
+
94
+ ## CI Expectations
95
+
96
+ GitHub Actions validates the root package, source/package boundary, minimal target project, dashboard smoke path, npm package dry run, and GUI submodule typecheck/test/build path. A local run should match the CI commands closely enough that failures are reproducible.
97
+
98
+ Repository owners may configure branch protection and required checks separately in GitHub. Contributors do not need to manage those settings.
@@ -0,0 +1,14 @@
1
+ # Coding Agent Harness
2
+
3
+ The English README is now the canonical GitHub entry:
4
+
5
+ [`README.md`](README.md)
6
+
7
+ Other language entries:
8
+
9
+ - [简体中文](README.zh-CN.md)
10
+ - [日本語](docs-release/intl/ja-JP.md)
11
+ - [한국어](docs-release/intl/ko-KR.md)
12
+ - [Français](docs-release/intl/fr-FR.md)
13
+ - [Español](docs-release/intl/es-ES.md)
14
+ - [Deutsch](docs-release/intl/de-DE.md)
package/README.md CHANGED
@@ -2,56 +2,105 @@
2
2
 
3
3
  [![skills.sh](https://skills.sh/b/FairladyZ625/coding-agent-harness)](https://skills.sh/FairladyZ625/coding-agent-harness)
4
4
 
5
- > AI 15 万行代码不难,难的是不让它跑偏。一套经过真实项目验证的工程方法论,帮你在任意项目上构建 Coding Agent harness 体系。
5
+ English | [简体中文](README.zh-CN.md) | [日本語](docs-release/intl/ja-JP.md) | [한국어](docs-release/intl/ko-KR.md) | [Français](docs-release/intl/fr-FR.md) | [Español](docs-release/intl/es-ES.md) | [Deutsch](docs-release/intl/de-DE.md)
6
6
 
7
- ## 这是什么
7
+ ![Coding Agent Harness architecture](docs-release/assets/harness-architecture.svg)
8
8
 
9
- **Coding Agent Harness** 是一套开源的方法论和工具模板,用于规控
10
- Coding Agent(Codex、Claude Code、Gemini CLI 等)在长程项目中的表现。
9
+ > An open-source, document-native, ready-to-use Agent Harness for keeping Codex, Claude Code, Gemini CLI, and other coding agents clear, transparent, and reviewable during long-running software work.
11
10
 
12
- 它解决的核心问题:当任务持续几天、几周、上百轮迭代的时候,怎么保证 agent 不跑偏。
11
+ ![Coding Agent Harness Dashboard](docs-release/assets/dashboard-overview.png)
13
12
 
14
- ## 核心理念
13
+ ## At A Glance
15
14
 
16
- - **文档是写给 Agent 看的,不是写给人看的。**
17
- - **上下文不是越多越好,是越准越好。**
18
- - **单元测试只是底线,不是保障。**
19
- - **Repo 护栏是地基。**
20
- - **长程任务先设计合同,再开放执行。**
21
- - **对抗性审查必须有报告落点和信心挑战循环。**
22
- - **严肃项目用顶级模型。**
23
- - **强制流程优于口头约定。**
15
+ Coding Agent Harness is not another collection of chat prompts. It turns the durable facts that coding agents need into repository files: entry agreements, task plans, execution evidence, regression results, dashboards, and closeout records.
24
16
 
25
- ## 它包含什么
17
+ The smallest loop is:
26
18
 
27
- - `SKILL.md`:给 Codex、Claude Code、Gemini CLI agent 读取的执行协议。
28
- - `templates/` `templates-zh-CN/`:英文/中文两套完整项目模板。
29
- - `references/`:AGENTS 入口、Planning Loop、回归、walkthrough、worktree 等方法论。
30
- - `scripts/harness.mjs`:v1.0 CLI,支持初始化、能力声明、状态 JSON 和只读 dashboard。
31
- - `examples/minimal-project/`:最小可检查示例。
32
- - `docs-release/`:公开架构、发布计划和 agent 安装指南。
19
+ - A human states the goal, and the agent reads the repository Harness first.
20
+ - The agent follows Diagnose → Decide → Scaffold → Configure → Verify → Deliver.
21
+ - The CLI and Dashboard expose status, risk, migration plans, and review evidence.
22
+ - The next agent resumes from repository facts instead of previous chat memory.
33
23
 
34
- ## 快速开始
24
+ ![Harness workflow](docs-release/assets/harness-workflow.svg)
35
25
 
36
- ### 使用 npx 安装为 Agent Skill
26
+ ## What It Is
37
27
 
38
- 本仓库已经按开放 Agent Skills 生态的 `SKILL.md` 格式发布,可以通过
39
- [`skills`](https://github.com/vercel-labs/skills) CLI 安装到 Codex、Claude Code、
40
- Cursor、OpenClaw、Gemini CLI 等兼容 agent。
28
+ Coding Agent Harness is a project engineering framework for AI coding agents.
41
29
 
42
- 先预览仓库里可安装的 Skill:
30
+ It adds working agreements, document structure, task lifecycle, regression evidence, and review loops directly into your repository so agents can read, execute, update, and verify the project from durable local facts.
43
31
 
44
- ```bash
45
- npx skills add FairladyZ625/coding-agent-harness --list
46
- ```
32
+ ## Why It Exists
33
+
34
+ Generating a few thousand lines of code with AI is not the hard part. The hard part is keeping the agent oriented after days of work, preventing parallel agents from overwriting each other, and letting a new agent continue from repository facts instead of chat memory.
35
+
36
+ Coding Agent Harness turns those facts into part of the project.
37
+
38
+ ## Core Strengths
39
+
40
+ ### Open Source, Simple, Ready To Use
41
+
42
+ Harness runs as ordinary project files: Markdown, templates, check scripts, static dashboard snapshots, and an optional local dynamic Workbench. The core package has no third-party runtime dependencies and does not require a background service or database. When a human needs web actions, `harness dev` starts a temporary localhost-only workbench.
43
+
44
+ Give the installation prompt to your agent, and it can initialize, scan, migrate, and verify the target project.
45
+
46
+ ### Compatible With Coding Agents
47
+
48
+ Any agent that can read files, write files, and run commands can use this Harness. It works with Codex, Claude Code, Gemini CLI, Cursor-style agents, OpenClaw, and similar coding agents.
49
+
50
+ ### Document-Native And Transparent
51
+
52
+ Important project state stays visible in the repository:
53
+
54
+ - what the current task is
55
+ - why it matters
56
+ - how it should be executed
57
+ - where the evidence is
58
+ - whether regression passed
59
+ - what residual risks remain
60
+ - which tasks are complete and which still need work
61
+
62
+ Humans can read briefs, dashboards, and migration reports. Agents can read structured docs, task contracts, and check results.
63
+
64
+ ### Built For Long-Running Work
65
+
66
+ Harness covers the continuity layer of real development: task lifecycle, Brief, Execution Strategy, Visual Map, Progress Log, Review, Regression Evidence, Closeout, and Lessons.
67
+
68
+ It gives each agent step context, evidence, and a finish condition.
69
+
70
+ ### Safe Migration For Existing Projects
71
+
72
+ Legacy project migration starts with a scan, a migration plan, a recommended migration mode, and user confirmation. Only then should the agent write files. Final status is proven with a dashboard and checks.
73
+
74
+ ## Good Fit
75
+
76
+ Coding Agent Harness is useful for:
47
77
 
48
- 安装到当前项目:
78
+ - teams using coding agents on real software projects;
79
+ - projects that run for days, weeks, or many iterations;
80
+ - work involving multiple agents or multiple developers;
81
+ - repositories with historical task docs, regression records, or migration notes;
82
+ - teams that want AI development to be visible, reviewable, and reusable.
83
+
84
+ ## Quick Start
85
+
86
+ ### Install The Skills
87
+
88
+ If your agent supports Skills, inspect this repository's Skill entries with `npx`.
89
+ Because the repository has a root Skill plus nested Skills, use `--full-depth`
90
+ when you want to see or install `preset-creator`:
49
91
 
50
92
  ```bash
93
+ npx skills add FairladyZ625/coding-agent-harness --list --full-depth
51
94
  npx skills add FairladyZ625/coding-agent-harness --skill coding-agent-harness
95
+ npx skills add FairladyZ625/coding-agent-harness --skill preset-creator --full-depth
52
96
  ```
53
97
 
54
- 安装到 Codex 全局 Skill 目录:
98
+ Use the Skills separately:
99
+
100
+ - `coding-agent-harness`: for installing, migrating, operating, and reviewing a Harness inside a target project.
101
+ - `preset-creator`: for authoring reusable Harness preset packages when a family of tasks shares a method, external references, artifacts, evidence requirements, or complex-task skeleton overlays. This Skill includes its own Complex Task skeleton reference, so an agent can build a correct preset without already knowing Harness internals.
102
+
103
+ Install a Skill into the global Codex skill directory:
55
104
 
56
105
  ```bash
57
106
  npx skills add FairladyZ625/coding-agent-harness \
@@ -61,76 +110,177 @@ npx skills add FairladyZ625/coding-agent-harness \
61
110
  -y
62
111
  ```
63
112
 
64
- 安装后可用下面的命令确认:
113
+ For the Preset Creator Skill:
114
+
115
+ ```bash
116
+ npx skills add FairladyZ625/coding-agent-harness \
117
+ --skill preset-creator \
118
+ --full-depth \
119
+ --agent codex \
120
+ --global \
121
+ -y
122
+ ```
123
+
124
+ The CLI is not automatically added to the target project's dependencies. Use `npx` when you need to run Harness commands. The first run downloads the package into the local npm cache; it does not write to the target project:
125
+
126
+ ```bash
127
+ npx --yes coding-agent-harness init --locale zh-CN --capabilities core,dashboard .
128
+ npx --yes coding-agent-harness dev .
129
+ npx --yes coding-agent-harness check --profile target-project .
130
+ ```
131
+
132
+ If you want to use `harness` as a long-lived system command, install it globally:
65
133
 
66
134
  ```bash
67
- npx skills list --global --agent codex
135
+ npm install -g coding-agent-harness
136
+ harness --help
68
137
  ```
69
138
 
70
- `skills` CLI 支持的常见安装位置包括:
139
+ The npm install seeds bundled presets into `~/.coding-agent-harness/presets/`.
140
+ `harness init` also seeds those presets into the target project at
141
+ `.coding-agent-harness/presets/`, so agents can discover stable task methods
142
+ with `harness preset list --json`.
71
143
 
72
- | Agent | Project 目录 | Global 目录 |
73
- | ------ | -------------- | ------------- |
74
- | Codex | `.agents/skills/` | `~/.codex/skills/` |
75
- | Claude Code | `.claude/skills/` | `~/.claude/skills/` |
76
- | OpenClaw | `skills/` | `~/.openclaw/skills/` |
77
- | Gemini CLI | `.agents/skills/` | `~/.gemini/skills/` |
144
+ Agents must not silently run a global install. They may run `npm install -g coding-agent-harness` only after the user explicitly approves changing the global npm environment. Without that approval, keep using `npx --yes coding-agent-harness ...`.
78
145
 
79
- ### Agent 直接执行
146
+ ### Commands For Humans
80
147
 
81
- 把下面这段话发给目标项目里的 Agent(Codex / Claude Code / Gemini CLI 等):
148
+ Initialize a Chinese Harness:
82
149
 
83
- ```text
84
- 请安装并读取 FairladyZ625/coding-agent-harness coding-agent-harness Skill。
85
- 按照 Diagnose → Decide → Scaffold → Configure → Verify → Deliver 六阶段,
86
- 在当前项目上搭建 harness。先确认使用中文还是英文模板;运行 init 时显式传
87
- --locale zh-CN 或 --locale en-US;如果项目已有旧 harness,只做增量迁移,不覆盖历史文档。
150
+ ```bash
151
+ npx --yes coding-agent-harness init --locale zh-CN --capabilities core,dashboard .
88
152
  ```
89
153
 
90
- 面向 agent 的完整安装细则见
91
- [`docs-release/guides/agent-installation.md`](docs-release/guides/agent-installation.md)。
154
+ Start the local dynamic Workbench:
92
155
 
93
- ## v1.0 CLI 快速看
156
+ ```bash
157
+ npx --yes coding-agent-harness dev .
158
+ ```
159
+
160
+ Generate a static Dashboard that can be opened offline:
161
+
162
+ ```bash
163
+ npx --yes coding-agent-harness dashboard --out-dir tmp/harness-dashboard .
164
+ open tmp/harness-dashboard/index.html
165
+ ```
166
+
167
+ Run target-project checks:
94
168
 
95
169
  ```bash
96
- node scripts/harness.mjs init --locale zh-CN --capabilities core,dashboard /path/to/project
97
- node scripts/harness.mjs install-user --agent codex --global
98
- node scripts/harness.mjs doctor-user --agent codex
99
- node scripts/harness.mjs add-capability safe-adoption --locale zh-CN /path/to/old-project
100
- node scripts/harness.mjs status --json /path/to/project
101
- node scripts/harness.mjs dashboard --out tmp/harness-dashboard.html /path/to/project
102
- node scripts/harness.mjs check --profile target-project /path/to/project
170
+ npx --yes coding-agent-harness check --profile target-project .
171
+ ```
172
+
173
+ ### Prompt For Agents
174
+
175
+ Send this to the agent inside your target project:
176
+
177
+ ```text
178
+ Install and read Coding Agent Harness first:
179
+
180
+ npx skills add FairladyZ625/coding-agent-harness --skill coding-agent-harness
181
+
182
+ First check whether this environment has the harness command.
183
+
184
+ If it does not, do not silently install globally. Ask me first:
185
+ "This environment does not have the harness command. May I run npm install -g coding-agent-harness?
186
+ This changes the global npm environment and then lets you use harness directly.
187
+ If you do not approve, I will use npx --yes coding-agent-harness ... temporarily and will not write to project dependencies."
188
+
189
+ Only after I explicitly approve, run:
190
+ npm install -g coding-agent-harness
191
+ harness preset list --json
192
+
193
+ If I do not approve or do not respond, run CLI commands with:
194
+ npx --yes coding-agent-harness <command>
195
+
196
+ Set up Coding Agent Harness in the current project.
197
+ Use Chinese templates by default. If the project is clearly an English team or English documentation project, ask me before switching to English.
198
+
199
+ First diagnose the project structure, then give me an initialization plan.
200
+ If this is a microservice, multi-repo, split frontend/backend, or externally integrated project, proactively ask me whether I have external architecture docs, API docs, diagrams, meeting notes, links, source paths, or exported packets.
201
+ If the external material is large, create an external-source-packs index and digests first, then project stable conclusions into 03-ARCHITECTURE / 04-DEVELOPMENT / 06-INTEGRATIONS.
202
+ After confirmation, execute Diagnose → Decide → Scaffold → Configure → Verify → Deliver.
203
+ When initializing, run:
204
+ npx --yes coding-agent-harness init --locale zh-CN --capabilities core,dashboard .
205
+ npx --yes coding-agent-harness preset list --json .
206
+
207
+ After initialization, use the dynamic web UI for daily viewing and human confirmations:
208
+ npx --yes coding-agent-harness dev .
209
+
210
+ If you only need an offline evidence snapshot, generate a static dashboard:
211
+ npx --yes coding-agent-harness dashboard --out-dir tmp/harness-dashboard .
212
+
213
+ Do not overwrite existing business docs, historical tasks, regression records, or user changes.
214
+ When finished, report created files, check results, and recommended next steps.
215
+ ```
216
+
217
+ If the target already has an older Harness, use this:
218
+
219
+ ```text
220
+ Install and read Coding Agent Harness first:
221
+
222
+ npx skills add FairladyZ625/coding-agent-harness --skill coding-agent-harness
223
+
224
+ First check whether this environment has the harness command.
225
+
226
+ If it does not, do not silently install globally. Ask me first:
227
+ "This environment does not have the harness command. May I run npm install -g coding-agent-harness?
228
+ This changes the global npm environment and then lets you use harness directly.
229
+ If you do not approve, I will use npx --yes coding-agent-harness ... temporarily and will not write to project dependencies."
230
+
231
+ Only after I explicitly approve, run:
232
+ npm install -g coding-agent-harness
233
+ harness preset list --json
234
+
235
+ If I do not approve or do not respond, run CLI commands with:
236
+ npx --yes coding-agent-harness <command>
237
+
238
+ This project already has an older Harness. Do not edit files yet.
239
+
240
+ First run a detailed scan and give me a migration plan:
241
+ 1. Check git status, Harness status, task count, brief coverage, visual_map coverage, warnings/actions/residuals, strict status, and dashboard usability.
242
+ 2. If this is a microservice, multi-repo, split frontend/backend, or externally integrated project, proactively ask me for external source material; when the material is large, create an external-source-packs index and digests before projecting facts into 03/04/06.
243
+ 3. Recommend the migration mode from project evidence:
244
+ - baseline-preserve: safe adoption first; only add necessary structure and visibility.
245
+ - status-aware-rewrite: rewrite current or reopened tasks from SSoT, Ledger, progress, review, and git evidence.
246
+ - full-semantic-rewrite: rewrite task briefs / execution_strategy / visual_map so the old project becomes v1.0-readable.
247
+ 4. Report the recommended mode, rationale, expected write scope, estimated token/time cost, risks, and whether subagents are needed.
248
+ 5. Ask me the confirmation questions you need, then wait for my confirmation before writing files.
249
+
250
+ During the scan phase, run at least:
251
+ npx --yes coding-agent-harness status --json .
252
+ npx --yes coding-agent-harness migrate-plan --json --limit 1000 .
253
+
254
+ When the migration is complete, report the dynamic workbench URL or static dashboard HTML, session.json, normal/strict checks, migrate-plan summary, and whether full-cutover verification passes. If human review confirmation is required, expose that action in the local web workbench; static dashboards are read-only evidence snapshots.
103
255
  ```
104
256
 
105
- ## Base Harness = 地基
257
+ ## Contributing
258
+
259
+ External contributors should start with [`CONTRIBUTING.md`](CONTRIBUTING.md). It covers repository layout, pull request expectations, root package checks, Dashboard smoke tests, npm package dry runs, and GUI submodule validation. The detailed public workflow also lives in [`docs-release/guides/contributing.md`](docs-release/guides/contributing.md).
106
260
 
107
- 这套 harness **base 骨架**,管的是项目级的治理框架——文档怎么组织、
108
- 任务怎么排期、回归怎么跑、worktree 怎么并行。
261
+ If you want your coding agent to make a contribution, send it this prompt:
109
262
 
110
- 它用四张 SSoT 和一张全局 Ledger 维持上下文透明:
263
+ ```text
264
+ I want to contribute a focused change to FairladyZ625/coding-agent-harness.
111
265
 
112
- - **Feature SSoT**:保存 feature / wave / implementation 的当前事实
113
- - **Delivery SSoT**:保存多人、多 agent、多仓或传统流程下的 feature block 分配、依赖和集成顺序
114
- - **Regression SSoT**:保存 regression surface、证据深度和 residual 的当前事实
115
- - **Lessons SSoT**:保存经验沉淀建议和规范演进审批状态
116
- - **Lesson Detail Docs**:每条 pending lesson 的完整说明,位于 `docs/01-GOVERNANCE/lessons/`
117
- - **Harness Ledger**:记录每轮任务是否按 SOP 维护了这些事实
118
- - **Closeout SSoT**:记录每个 closed 任务的 walkthrough、evidence、residual 或受控 skip reason
119
- - **Review Report**:保存在任务目录的 `review.md`,记录对抗性审查的 findings、no-finding 结论和残余风险
120
- - **Repo Governance**:保存 PR、branch protection、required checks、worktree concurrency 的当前 contract
121
- - **CI/CD Standard**:保存 workflow、required checks、release/CD residual 的当前事实
266
+ Start from the latest main branch and create a new feature branch. Read README.md and CONTRIBUTING.md first. Before editing files, inspect the relevant code/docs and give me a short plan.
122
267
 
123
- 详细模块说明见 [`references/`](references/)。
268
+ Keep the change scoped. Use only public repository files and do not rely on maintainer-local state, hidden workflows, credentials, generated dashboards, temporary files, or ignored local-only files.
124
269
 
125
- 你可以在这个地基上叠加任何工作流:
270
+ Run the checks that match the change. For docs-only changes, run git diff --check. For root package changes, run npm install, npm test, npm run smoke:dashboard, npm run check, node scripts/harness.mjs check --profile target-project examples/minimal-project, npm run pack:dry-run, and git diff --check as relevant. If the change touches harness-gui, also run cd harness-gui && npm ci && npm run typecheck && npm test && npm run build.
271
+
272
+ When done, summarize what changed, list verification results, call out any skipped checks with reasons, and prepare the PR using the repository template.
273
+ ```
126
274
 
127
- - [gstack](https://github.com/garrytan/gstack) — Garry Tan 的虚拟工程团队
128
- (23 个 slash command)
129
- - [everything-claude-code](https://github.com/affaan-m/everything-claude-code) —
130
- Agent harness 性能优化系统
131
- - [Superpowers](https://github.com/anthropics/superpowers) — Anthropic 官方增强工具集
275
+ ## Learn More
132
276
 
133
- 三者不冲突,可以自由组合。
277
+ - Contributor guide: [`CONTRIBUTING.md`](CONTRIBUTING.md)
278
+ - Detailed contributor guide: [`docs-release/guides/contributing.md`](docs-release/guides/contributing.md)
279
+ - Agent installation guide: [`docs-release/guides/agent-installation.en-US.md`](docs-release/guides/agent-installation.en-US.md)
280
+ - Minimal project example: [`examples/minimal-project/`](examples/minimal-project/)
281
+ - Legacy migration playbook: [`docs-release/guides/migration-playbook.en-US.md`](docs-release/guides/migration-playbook.en-US.md)
282
+ - Full legacy migration strategy: [`docs-release/guides/full-legacy-migration-subagent-strategy.md`](docs-release/guides/full-legacy-migration-subagent-strategy.md)
283
+ - Architecture overview: [`docs-release/architecture/overview.md`](docs-release/architecture/overview.md)
134
284
 
135
285
  ## Star History
136
286