@openprd/cli 0.1.1 → 0.1.9

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 (137) hide show
  1. package/.openprd/README.md +43 -69
  2. package/.openprd/README_EN.md +84 -0
  3. package/.openprd/benchmarks/index.md +7 -0
  4. package/.openprd/benchmarks/sources.yaml +25 -3
  5. package/.openprd/discovery/config.json +16 -2
  6. package/.openprd/engagements/active/flows.md +19 -14
  7. package/.openprd/engagements/active/handoff.md +11 -4
  8. package/.openprd/engagements/active/prd.md +99 -71
  9. package/.openprd/engagements/active/review.html +4 -4
  10. package/.openprd/engagements/active/roles.md +9 -8
  11. package/.openprd/engagements/work-units/wu-20260524015648-6d33ded7.json +4 -4
  12. package/.openprd/engagements/work-units/wu-20260602113956-a99b5b88.json +18 -0
  13. package/.openprd/engagements/work-units/wu-20260602122244-78656aaf.json +18 -0
  14. package/.openprd/engagements/work-units/wu-20260602122442-e96489e2.json +18 -0
  15. package/.openprd/engagements/work-units/wu-20260602132835-695429e8.json +18 -0
  16. package/.openprd/knowledge/candidates/candidate-turn-1780116203372-5f266a79e968c758/candidate.json +78 -0
  17. package/.openprd/knowledge/candidates/candidate-turn-1780116203372-5f266a79e968c758/diagnostic-report.json +129 -0
  18. package/.openprd/knowledge/candidates/candidate-turn-1780116203372-5f266a79e968c758/root-cause-candidates.json +41 -0
  19. package/.openprd/knowledge/candidates/candidate-turn-1780116203372-5f266a79e968c758/timeline.json +14 -0
  20. package/.openprd/knowledge/drafts/openprd-experience-diagnostic-candidate-turn-1780116203372-5f266a79e968c758/SKILL.md +49 -0
  21. package/.openprd/knowledge/index.json +44 -4
  22. package/.openprd/reviews/v0001.html +195 -129
  23. package/.openprd/reviews/v0002.html +1150 -0
  24. package/.openprd/reviews/v0003.html +1150 -0
  25. package/.openprd/reviews/v0004.html +1150 -0
  26. package/.openprd/reviews/v0005.html +1150 -0
  27. package/.openprd/standards/config.json +12 -9
  28. package/.openprd/state/changes.json +17 -2
  29. package/.openprd/state/current.json +399 -63
  30. package/.openprd/state/release-ledger.json +387 -0
  31. package/.openprd/state/version-index.json +52 -0
  32. package/.openprd/state/versions/v0002.json +264 -0
  33. package/.openprd/state/versions/v0002.md +183 -0
  34. package/.openprd/state/versions/v0003.json +269 -0
  35. package/.openprd/state/versions/v0003.md +188 -0
  36. package/.openprd/state/versions/v0004.json +274 -0
  37. package/.openprd/state/versions/v0004.md +193 -0
  38. package/.openprd/state/versions/v0005.json +299 -0
  39. package/.openprd/state/versions/v0005.md +189 -0
  40. package/.openprd/templates/agent/intake.md +5 -4
  41. package/.openprd/templates/b2b/intake.md +5 -4
  42. package/.openprd/templates/base/intake.md +10 -4
  43. package/.openprd/templates/company/README.md +9 -7
  44. package/.openprd/templates/company/README_EN.md +12 -0
  45. package/.openprd/templates/consumer/intake.md +5 -4
  46. package/.openprd/templates/industry/README.md +12 -10
  47. package/.openprd/templates/industry/README_EN.md +18 -0
  48. package/.openprd/templates/project/README.md +11 -9
  49. package/.openprd/templates/project/README_EN.md +16 -0
  50. package/.openprd/templates/session/README.md +11 -9
  51. package/.openprd/templates/session/README_EN.md +16 -0
  52. package/AGENTS.md +12 -8
  53. package/README.md +419 -438
  54. package/README_CN.md +4 -578
  55. package/README_EN.md +870 -0
  56. package/docs/assets/openprd-requirement-routing-en.png +0 -0
  57. package/docs/assets/openprd-requirement-routing-en.svg +102 -0
  58. package/docs/assets/openprd-requirement-routing-zh-refined.png +0 -0
  59. package/docs/assets/openprd-requirement-routing-zh.png +0 -0
  60. package/docs/assets/openprd-requirement-routing-zh.svg +102 -0
  61. package/package.json +6 -2
  62. package/scripts/dev-check-wrapup-copy.mjs +110 -0
  63. package/scripts/openprd-github-release-notes.mjs +99 -0
  64. package/scripts/quality-perf-check.mjs +203 -0
  65. package/skills/openprd-benchmark-router/SKILL.md +1 -0
  66. package/skills/openprd-benchmark-router/references/benchmark-sources.md +1 -0
  67. package/skills/openprd-benchmark-router/references/source-policy.md +2 -0
  68. package/skills/openprd-discovery-loop/SKILL.md +2 -2
  69. package/skills/openprd-harness/SKILL.md +47 -25
  70. package/skills/openprd-harness/references/workflow-gates.md +15 -0
  71. package/skills/openprd-quality/SKILL.md +11 -5
  72. package/skills/openprd-requirement-intake/SKILL.md +31 -20
  73. package/skills/openprd-requirement-intake/references/prd-template-lenses.md +6 -6
  74. package/skills/openprd-requirement-intake/references/routing-rubric.md +10 -2
  75. package/skills/openprd-router/SKILL.md +2 -2
  76. package/skills/openprd-shared/SKILL.md +51 -23
  77. package/skills/openprd-standards/SKILL.md +2 -1
  78. package/src/agent-integration.js +271 -71
  79. package/src/benchmark/constants.js +107 -0
  80. package/src/benchmark/operations.js +235 -0
  81. package/src/benchmark/registry.js +64 -0
  82. package/src/benchmark/render.js +115 -0
  83. package/src/benchmark/source.js +617 -0
  84. package/src/benchmark/storage.js +121 -0
  85. package/src/benchmark/verify.js +235 -0
  86. package/src/benchmark.js +50 -851
  87. package/src/change-summary.js +339 -0
  88. package/src/cli/args.js +67 -6
  89. package/src/cli/basic-print.js +365 -0
  90. package/src/cli/benchmark-print.js +91 -0
  91. package/src/cli/change-print.js +221 -0
  92. package/src/cli/doctor-print.js +268 -0
  93. package/src/cli/growth-print.js +176 -0
  94. package/src/cli/print.js +73 -1384
  95. package/src/cli/quality-print.js +284 -0
  96. package/src/cli/run-print.js +297 -0
  97. package/src/cli/shared-print.js +127 -0
  98. package/src/cli/workflow-print.js +195 -0
  99. package/src/codex-hook-runner-template.mjs +659 -124
  100. package/src/codex-runtime.js +324 -0
  101. package/src/dev-standards.js +178 -5
  102. package/src/diagram-core.js +5 -5
  103. package/src/discovery.js +2 -1
  104. package/src/execution-strategy.js +369 -0
  105. package/src/fleet.js +4 -0
  106. package/src/github-release.js +156 -0
  107. package/src/growth.js +311 -13
  108. package/src/html-artifact-utils.js +25 -0
  109. package/src/html-artifacts.js +157 -1596
  110. package/src/knowledge.js +1321 -76
  111. package/src/language-policy.js +2 -112
  112. package/src/learning-html-artifact.js +1031 -0
  113. package/src/learning-review.js +3 -2
  114. package/src/loop.js +280 -9
  115. package/src/openprd.js +341 -38
  116. package/src/openspec/change-validate.js +0 -9
  117. package/src/openspec/execute.js +79 -3
  118. package/src/openspec/generate.js +33 -20
  119. package/src/openspec/tasks.js +33 -2
  120. package/src/prd-core.js +10 -9
  121. package/src/product-type-copy.js +69 -0
  122. package/src/quality-html-artifact.js +108 -9
  123. package/src/quality-learning.js +30 -0
  124. package/src/quality-visual-review.js +237 -0
  125. package/src/quality.js +329 -43
  126. package/src/registry-hygiene.js +54 -0
  127. package/src/release-ledger.js +413 -0
  128. package/src/review-presentation.js +12 -6
  129. package/src/run-harness.js +722 -48
  130. package/src/session-binding.js +40 -3
  131. package/src/session-registry.js +159 -0
  132. package/src/standards.js +5 -3
  133. package/src/test-strategy.js +386 -0
  134. package/src/visual-compare.js +915 -34
  135. package/src/work-unit-migration.js +5 -1
  136. package/src/workspace-core.js +343 -19
  137. package/src/workspace-workflow.js +538 -134
@@ -0,0 +1,41 @@
1
+ [
2
+ {
3
+ "title": "Inspect src/workspace-core.js"
4
+ },
5
+ {
6
+ "title": "Inspect src/openprd.js"
7
+ },
8
+ {
9
+ "title": "Inspect src/fleet.js"
10
+ },
11
+ {
12
+ "title": "Inspect src/standards.js"
13
+ },
14
+ {
15
+ "title": "Inspect test/helpers/openprd-test-helpers.js"
16
+ },
17
+ {
18
+ "title": "Inspect test/openprd-run-fleet.test.js"
19
+ },
20
+ {
21
+ "title": "Inspect test/openprd-quality-standards.test.js"
22
+ },
23
+ {
24
+ "title": "Inspect test/openprd-agent-integration.test.js"
25
+ },
26
+ {
27
+ "title": "Inspect test/openprd-benchmark-knowledge.test.js"
28
+ },
29
+ {
30
+ "title": "Inspect test/openprd.test.js"
31
+ },
32
+ {
33
+ "title": "Inspect test/openprd-workspace-flow.test.js"
34
+ },
35
+ {
36
+ "title": "Inspect test/openprd-discovery-changes.test.js"
37
+ },
38
+ {
39
+ "title": "Inspect test/openprd-github-release.test.js"
40
+ }
41
+ ]
@@ -0,0 +1,14 @@
1
+ [
2
+ {
3
+ "event": "run-verify",
4
+ "message": "run verify passed",
5
+ "status": "pass",
6
+ "at": "2026-06-05 09:05:29"
7
+ },
8
+ {
9
+ "event": "dev-check",
10
+ "message": "dev-check attention=9, warning=1",
11
+ "status": "pass",
12
+ "at": "2026-06-05 09:04:20"
13
+ }
14
+ ]
@@ -0,0 +1,49 @@
1
+ ---
2
+ name: openprd-experience-diagnostic-candidate-turn-1780116203372-5f266a79e968c758
3
+ description: OpenPrd 在本轮回顾时自动生成的待确认项目经验草案。
4
+ ---
5
+
6
+ # openprd-experience-diagnostic-candidate-turn-1780116203372-5f266a79e968c758
7
+
8
+ > 状态:draft
9
+ > 候选目录:`.openprd/knowledge/candidates/candidate-turn-1780116203372-5f266a79e968c758`
10
+ > Promote:`openprd quality . --learn --from .openprd/knowledge/candidates/candidate-turn-1780116203372-5f266a79e968c758`
11
+
12
+ ## 为什么值得沉淀
13
+
14
+ - 本轮结果里已经出现可复用的症状、排查线索或根因模式,不应该只留在当前对话里。
15
+ - 这次改动直接影响 Agent / harness / hook / skill 行为,后续很容易再次踩到同类判断问题。
16
+ - 这次修复已经带有验证或收尾证据,适合尽快抽象成项目级研发经验。
17
+ - 症状: 本轮项目回顾
18
+ - run-verify: run verify passed
19
+ - dev-check: dev-check attention=9, warning=1 | touched: src/workspace-core.js, src/openprd.js, src/fleet.js, src/standards.js, test/helpers/openprd-test-helpers.js, test/openprd-run-fleet.test.js
20
+
21
+ ## 下次触发时先看什么
22
+
23
+ - `src/workspace-core.js`
24
+ - `src/openprd.js`
25
+ - `src/fleet.js`
26
+ - `src/standards.js`
27
+ - `test/helpers/openprd-test-helpers.js`
28
+ - `test/openprd-run-fleet.test.js`
29
+ - `test/openprd-quality-standards.test.js`
30
+ - `test/openprd-agent-integration.test.js`
31
+ - `test/openprd-benchmark-knowledge.test.js`
32
+ - `test/openprd.test.js`
33
+ - `test/openprd-workspace-flow.test.js`
34
+ - `test/openprd-discovery-changes.test.js`
35
+ - `test/openprd-github-release.test.js`
36
+ - `.openprd/harness/turn-state.json`
37
+
38
+ ## 可复用模式
39
+
40
+ - 先按本轮诊断线索复走一次,再补最小必要证据。
41
+
42
+ ## 验证方式
43
+
44
+ - run verify passed
45
+ - dev-check attention=9, warning=1
46
+ - 复现一次同类路径,确认新的诊断包仍能导出 runtime-events、timeline、root-cause-candidates 和 diagnostic-report。
47
+ - 重点核对 run-verify -> quality-verify -> dev-check 的顺序是否符合预期。
48
+ - 修复后再次执行同一路径,确认时间线不再在历史失败断点中断。
49
+ - 把最终诊断包与质量报告一起归档,确保后续 Agent 能直接复用已有排查路径。
@@ -1,7 +1,47 @@
1
1
  {
2
2
  "version": 1,
3
- "updatedAt": "2026-05-13 14:08:50",
4
- "incidents": [],
5
- "patterns": [],
6
- "skills": []
3
+ "updatedAt": "2026-06-05 09:05:29",
4
+ "incidents": [
5
+ {
6
+ "incidentId": "incident-candidate-turn-1780116203372-5f266a79e968c758",
7
+ "path": "/Users/chaojifeng/Projects/harness-engineer/openprd/.openprd/knowledge/incidents/incident-candidate-turn-1780116203372-5f266a79e968c758.json",
8
+ "sourceKind": "diagnostic-bundle",
9
+ "sourceRef": "candidate-turn-1780116203372-5f266a79e968c758"
10
+ }
11
+ ],
12
+ "patterns": [
13
+ {
14
+ "patternId": "diagnostic-candidate-turn-1780116203372-5f266a79e968c758",
15
+ "path": "/Users/chaojifeng/Projects/harness-engineer/openprd/.openprd/knowledge/patterns/diagnostic-candidate-turn-1780116203372-5f266a79e968c758.json",
16
+ "sourceKind": "diagnostic-bundle",
17
+ "sourceRef": "candidate-turn-1780116203372-5f266a79e968c758"
18
+ }
19
+ ],
20
+ "skills": [
21
+ {
22
+ "skillName": "openprd-experience-diagnostic-candidate-turn-1780116203372-5f266a79e968c758",
23
+ "path": "/Users/chaojifeng/Projects/harness-engineer/openprd/.openprd/knowledge/skills/openprd-experience-diagnostic-candidate-turn-1780116203372-5f266a79e968c758/SKILL.md",
24
+ "sourceKind": "diagnostic-bundle",
25
+ "sourceRef": "candidate-turn-1780116203372-5f266a79e968c758"
26
+ }
27
+ ],
28
+ "candidates": [
29
+ {
30
+ "candidateId": "candidate-turn-1780116203372-5f266a79e968c758",
31
+ "status": "promoted",
32
+ "path": "/Users/chaojifeng/Projects/harness-engineer/.worktrees/openprd-release-0.1.5-publish/.openprd/knowledge/candidates/candidate-turn-1780116203372-5f266a79e968c758/candidate.json",
33
+ "sourceKind": "diagnostic-report",
34
+ "sourceRef": "candidate-turn-1780116203372-5f266a79e968c758",
35
+ "title": "本轮项目回顾",
36
+ "draftSkillPath": "/Users/chaojifeng/Projects/harness-engineer/.worktrees/openprd-release-0.1.5-publish/.openprd/knowledge/drafts/openprd-experience-diagnostic-candidate-turn-1780116203372-5f266a79e968c758/SKILL.md"
37
+ }
38
+ ],
39
+ "drafts": [
40
+ {
41
+ "skillName": "openprd-experience-diagnostic-candidate-turn-1780116203372-5f266a79e968c758",
42
+ "path": "/Users/chaojifeng/Projects/harness-engineer/.worktrees/openprd-release-0.1.5-publish/.openprd/knowledge/drafts/openprd-experience-diagnostic-candidate-turn-1780116203372-5f266a79e968c758/SKILL.md",
43
+ "candidateId": "candidate-turn-1780116203372-5f266a79e968c758",
44
+ "status": "promoted"
45
+ }
46
+ ]
7
47
  }