@openprd/cli 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (154) hide show
  1. package/.openprd/README.md +82 -0
  2. package/.openprd/benchmarks/evidence/milvus-io-ai-code-review-gets-better-when-models-debate-claude-vs-gemini-vs-code.md +14 -0
  3. package/.openprd/benchmarks/evidence/nolanlawson-com-using-ai-to-write-better-code-more-slowly.md +14 -0
  4. package/.openprd/benchmarks/index.md +37 -0
  5. package/.openprd/benchmarks/sources.yaml +56 -0
  6. package/.openprd/config.yaml +50 -0
  7. package/.openprd/discovery/config.json +21 -0
  8. package/.openprd/engagements/active/flows.md +30 -0
  9. package/.openprd/engagements/active/handoff.md +9 -0
  10. package/.openprd/engagements/active/intake.md +15 -0
  11. package/.openprd/engagements/active/prd.md +161 -0
  12. package/.openprd/engagements/active/review.html +61 -0
  13. package/.openprd/engagements/active/roles.md +21 -0
  14. package/.openprd/engagements/work-units/wu-20260524015648-6d33ded7.json +23 -0
  15. package/.openprd/exports/.gitkeep +0 -0
  16. package/.openprd/knowledge/index.json +7 -0
  17. package/.openprd/quality/config.json +229 -0
  18. package/.openprd/reviews/v0001.html +1256 -0
  19. package/.openprd/schema/diagram-architecture.schema.yaml +49 -0
  20. package/.openprd/schema/diagram-product-flow.schema.yaml +52 -0
  21. package/.openprd/schema/prd.schema.yaml +121 -0
  22. package/.openprd/sessions/.gitkeep +0 -0
  23. package/.openprd/standards/config.json +88 -0
  24. package/.openprd/standards/file-manual-template.md +28 -0
  25. package/.openprd/standards/folder-readme-template.md +28 -0
  26. package/.openprd/state/.gitkeep +0 -0
  27. package/.openprd/state/changes.json +12 -0
  28. package/.openprd/state/current.json +169 -0
  29. package/.openprd/state/version-index.json +15 -0
  30. package/.openprd/state/versions/.gitkeep +0 -0
  31. package/.openprd/state/versions/v0001.json +121 -0
  32. package/.openprd/state/versions/v0001.md +161 -0
  33. package/.openprd/templates/agent/intake.md +6 -0
  34. package/.openprd/templates/agent/prd.md +21 -0
  35. package/.openprd/templates/b2b/intake.md +6 -0
  36. package/.openprd/templates/b2b/prd.md +24 -0
  37. package/.openprd/templates/base/intake.md +18 -0
  38. package/.openprd/templates/base/prd.md +67 -0
  39. package/.openprd/templates/company/README.md +10 -0
  40. package/.openprd/templates/consumer/intake.md +6 -0
  41. package/.openprd/templates/consumer/prd.md +19 -0
  42. package/.openprd/templates/diagram/architecture.contract.json +53 -0
  43. package/.openprd/templates/diagram/product-flow.contract.json +76 -0
  44. package/.openprd/templates/industry/README.md +16 -0
  45. package/.openprd/templates/manifest.yaml +27 -0
  46. package/.openprd/templates/project/README.md +14 -0
  47. package/.openprd/templates/session/README.md +14 -0
  48. package/AGENTS.md +44 -0
  49. package/CONTRIBUTING.md +30 -0
  50. package/LICENSE +21 -0
  51. package/README.md +727 -0
  52. package/README_CN.md +583 -0
  53. package/SECURITY.md +23 -0
  54. package/bin/openprd.js +5 -0
  55. package/docs/assets/openprd-capability-overview-en.png +0 -0
  56. package/docs/assets/openprd-capability-overview-zh.png +0 -0
  57. package/docs/assets/openprd-learning-html.png +0 -0
  58. package/docs/assets/openprd-quality-html.png +0 -0
  59. package/docs/assets/openprd-review-html.png +0 -0
  60. package/docs/assets/openprd-scenario-overview.png +0 -0
  61. package/docs/assets/openprd-scenario-overview.svg +114 -0
  62. package/docs/assets/openprd-self-evolving-mechanisms-en.png +0 -0
  63. package/docs/assets/openprd-self-evolving-mechanisms-zh.png +0 -0
  64. package/docs/assets/openprd-visual-compare-case-study-en.png +0 -0
  65. package/docs/assets/openprd-visual-compare-case-study-zh.png +0 -0
  66. package/package.json +59 -0
  67. package/scripts/openprd-dev-check.mjs +5 -0
  68. package/scripts/openprd-review-presentation.mjs +82 -0
  69. package/skills/openprd-benchmark-router/SKILL.md +92 -0
  70. package/skills/openprd-benchmark-router/agents/openai.yaml +4 -0
  71. package/skills/openprd-benchmark-router/references/benchmark-sources.md +74 -0
  72. package/skills/openprd-benchmark-router/references/evaluation-lenses.md +66 -0
  73. package/skills/openprd-benchmark-router/references/source-policy.md +35 -0
  74. package/skills/openprd-diagram-review/SKILL.md +91 -0
  75. package/skills/openprd-diagram-review/agents/openai.yaml +4 -0
  76. package/skills/openprd-diagram-review/examples/architecture-zh.md +8 -0
  77. package/skills/openprd-diagram-review/examples/product-flow-zh.md +7 -0
  78. package/skills/openprd-diagram-review/references/cocoon-patterns.md +17 -0
  79. package/skills/openprd-diagram-review/references/diagram-contracts.md +126 -0
  80. package/skills/openprd-diagram-review/references/review-checklist.md +10 -0
  81. package/skills/openprd-discovery-loop/SKILL.md +196 -0
  82. package/skills/openprd-discovery-loop/agents/openai.yaml +3 -0
  83. package/skills/openprd-harness/SKILL.md +179 -0
  84. package/skills/openprd-harness/agents/openai.yaml +4 -0
  85. package/skills/openprd-harness/examples/full-workflow-zh.md +9 -0
  86. package/skills/openprd-harness/references/command-map.md +71 -0
  87. package/skills/openprd-harness/references/examples.md +26 -0
  88. package/skills/openprd-harness/references/usage-guide.md +335 -0
  89. package/skills/openprd-harness/references/workflow-gates.md +51 -0
  90. package/skills/openprd-learning-review/SKILL.md +75 -0
  91. package/skills/openprd-learning-review/agents/openai.yaml +4 -0
  92. package/skills/openprd-learning-review/references/content-contract.md +125 -0
  93. package/skills/openprd-learning-review/references/ebook-reader.md +46 -0
  94. package/skills/openprd-learning-review/references/evidence-manifest.md +55 -0
  95. package/skills/openprd-learning-review/references/genre-library.md +43 -0
  96. package/skills/openprd-learning-review/references/prompt-engineering.md +71 -0
  97. package/skills/openprd-learning-review/references/quality-rubric.md +28 -0
  98. package/skills/openprd-learning-review/references/retrieval-worked-example.md +40 -0
  99. package/skills/openprd-learning-review/references/style-packs/xianxia-cultivation.prompt.md +67 -0
  100. package/skills/openprd-quality/SKILL.md +101 -0
  101. package/skills/openprd-requirement-intake/SKILL.md +76 -0
  102. package/skills/openprd-requirement-intake/agents/openai.yaml +4 -0
  103. package/skills/openprd-requirement-intake/references/prd-template-lenses.md +105 -0
  104. package/skills/openprd-requirement-intake/references/routing-rubric.md +64 -0
  105. package/skills/openprd-router/SKILL.md +40 -0
  106. package/skills/openprd-shared/SKILL.md +142 -0
  107. package/skills/openprd-shared/agents/openai.yaml +4 -0
  108. package/skills/openprd-shared/references/language-and-review.md +50 -0
  109. package/skills/openprd-shared/references/operating-rules.md +65 -0
  110. package/skills/openprd-shared/references/skill-architecture.md +70 -0
  111. package/skills/openprd-standards/SKILL.md +79 -0
  112. package/skills/openprd-standards/agents/openai.yaml +4 -0
  113. package/src/agent-integration.js +1717 -0
  114. package/src/benchmark.js +873 -0
  115. package/src/cli/args.js +460 -0
  116. package/src/cli/print.js +1423 -0
  117. package/src/codex-hook-runner-template.mjs +2422 -0
  118. package/src/dev-standards.js +372 -0
  119. package/src/diagram-core.js +1047 -0
  120. package/src/diagram-workspace.js +262 -0
  121. package/src/discovery.js +709 -0
  122. package/src/fleet.js +531 -0
  123. package/src/fs-utils.js +83 -0
  124. package/src/growth.js +545 -0
  125. package/src/html-artifacts.js +3803 -0
  126. package/src/knowledge.js +668 -0
  127. package/src/language-policy.js +142 -0
  128. package/src/learning-review.js +1655 -0
  129. package/src/loop.js +1290 -0
  130. package/src/openprd.js +1136 -0
  131. package/src/openspec/change-lifecycle.js +359 -0
  132. package/src/openspec/change-validate.js +248 -0
  133. package/src/openspec/constants.js +12 -0
  134. package/src/openspec/execute.js +300 -0
  135. package/src/openspec/generate.js +692 -0
  136. package/src/openspec/paths.js +111 -0
  137. package/src/openspec/tasks.js +352 -0
  138. package/src/prd-core.js +656 -0
  139. package/src/quality-html-artifact.js +1414 -0
  140. package/src/quality-learning.js +658 -0
  141. package/src/quality.js +1262 -0
  142. package/src/review-presentation.js +240 -0
  143. package/src/run-harness.js +1470 -0
  144. package/src/self-update.js +329 -0
  145. package/src/session-binding.js +140 -0
  146. package/src/source-inventory.js +224 -0
  147. package/src/standards.js +914 -0
  148. package/src/time.js +33 -0
  149. package/src/visual-compare.js +216 -0
  150. package/src/work-unit-migration.js +232 -0
  151. package/src/work-unit.js +88 -0
  152. package/src/workspace-core.js +1706 -0
  153. package/src/workspace-registry.js +162 -0
  154. package/src/workspace-workflow.js +1797 -0
@@ -0,0 +1,229 @@
1
+ {
2
+ "version": 1,
3
+ "schema": "openprd.quality.v1",
4
+ "updatedAt": "2026-05-20 17:20:41",
5
+ "enforcement": "blocking",
6
+ "observability": {
7
+ "centralizedLoggingRequired": true,
8
+ "requiredSignals": [
9
+ "logs",
10
+ "traces",
11
+ "metrics",
12
+ "errors"
13
+ ],
14
+ "requiredCorrelationFields": [
15
+ "trace_id",
16
+ "span_id",
17
+ "request_id",
18
+ "task_id",
19
+ "user_session_id",
20
+ "error_id"
21
+ ],
22
+ "requiredSurfaces": [
23
+ "frontend",
24
+ "backend",
25
+ "agent"
26
+ ],
27
+ "redactionRequired": true,
28
+ "retentionDays": 30,
29
+ "samplingPolicy": "errors and high-risk flows are never sampled out; routine success logs may be sampled",
30
+ "queryExamplesRequired": true
31
+ },
32
+ "evalHarness": {
33
+ "smokeRequired": true,
34
+ "featureCoverageRequired": true,
35
+ "normalPerformanceRequired": true,
36
+ "extremePerformanceRequired": true,
37
+ "currentEvidenceRequired": true,
38
+ "evidenceSources": [
39
+ ".openprd/harness/test-reports",
40
+ ".openprd/quality/evidence",
41
+ "test-results",
42
+ "tests/reports",
43
+ "coverage"
44
+ ],
45
+ "scenarioProfiles": {
46
+ "core": [
47
+ "smoke",
48
+ "feature-coverage"
49
+ ],
50
+ "frontend": [
51
+ "smoke"
52
+ ],
53
+ "desktop": [
54
+ "smoke"
55
+ ],
56
+ "backend": [
57
+ "smoke",
58
+ "traceability"
59
+ ],
60
+ "businessCost": [
61
+ "business-guardrails"
62
+ ],
63
+ "security": [
64
+ "redaction"
65
+ ],
66
+ "performance": [
67
+ "normal-performance"
68
+ ],
69
+ "extreme": [
70
+ "extreme-performance"
71
+ ],
72
+ "release": [
73
+ "traceability",
74
+ "redaction",
75
+ "business-guardrails",
76
+ "smoke",
77
+ "feature-coverage",
78
+ "normal-performance",
79
+ "extreme-performance",
80
+ "knowledge"
81
+ ]
82
+ },
83
+ "reportFormat": "html",
84
+ "baselinePolicy": "agent-initialized average baseline; user may override; agent ratchet may only tighten thresholds",
85
+ "projectBaseline": {
86
+ "normal": {
87
+ "cpuPercentP95Max": 70,
88
+ "memoryMBP95Max": 512,
89
+ "pageLoadMsP95Max": 2500,
90
+ "apiLatencyMsP95Max": 500,
91
+ "errorRatePercentMax": 0.1
92
+ },
93
+ "extreme": {
94
+ "cpuPercentP95Max": 85,
95
+ "memoryMBP95Max": 1024,
96
+ "pageLoadMsP95Max": 5000,
97
+ "apiLatencyMsP95Max": 1200,
98
+ "errorRatePercentMax": 1
99
+ }
100
+ }
101
+ },
102
+ "businessGuardrails": {
103
+ "enabled": true,
104
+ "riskIndicators": [
105
+ "free user",
106
+ "free tier",
107
+ "trial",
108
+ "quota",
109
+ "usage limit",
110
+ "rate limit",
111
+ "credit",
112
+ "token",
113
+ "metered",
114
+ "cost",
115
+ "spend",
116
+ "third-party cost",
117
+ "third-party api",
118
+ "ai generation",
119
+ "model call",
120
+ "openai",
121
+ "anthropic",
122
+ "免费用户",
123
+ "免费额度",
124
+ "试用",
125
+ "额度",
126
+ "用量",
127
+ "限流",
128
+ "积分",
129
+ "点数",
130
+ "令牌",
131
+ "成本",
132
+ "消耗",
133
+ "第三方成本",
134
+ "第三方调用",
135
+ "第三方 API",
136
+ "大模型",
137
+ "模型调用",
138
+ "AI 生成",
139
+ "图像生成",
140
+ "内容生成",
141
+ "薅",
142
+ "滥用"
143
+ ],
144
+ "requiredEvidence": {
145
+ "usageLimits": [
146
+ "quota",
147
+ "usage limit",
148
+ "rate limit",
149
+ "daily limit",
150
+ "monthly limit",
151
+ "allowance",
152
+ "free tier",
153
+ "额度",
154
+ "用量限制",
155
+ "限流",
156
+ "每日上限",
157
+ "月度上限",
158
+ "免费额度"
159
+ ],
160
+ "abusePrevention": [
161
+ "abuse",
162
+ "bypass",
163
+ "fraud",
164
+ "replay",
165
+ "concurrent",
166
+ "unauthorized",
167
+ "negative test",
168
+ "越权",
169
+ "滥用",
170
+ "绕过",
171
+ "并发",
172
+ "重复请求",
173
+ "负向测试"
174
+ ],
175
+ "monitoringSignals": [
176
+ "usage metric",
177
+ "cost metric",
178
+ "billing metric",
179
+ "tokens_used",
180
+ "cost_usd",
181
+ "spend",
182
+ "dashboard",
183
+ "monitor",
184
+ "监控",
185
+ "指标",
186
+ "用量",
187
+ "成本",
188
+ "看板"
189
+ ],
190
+ "alertThresholds": [
191
+ "alert",
192
+ "alarm",
193
+ "threshold",
194
+ "budget",
195
+ "anomaly",
196
+ "报警",
197
+ "告警",
198
+ "阈值",
199
+ "预算",
200
+ "异常增长"
201
+ ],
202
+ "stopLossActions": [
203
+ "kill switch",
204
+ "feature flag",
205
+ "circuit breaker",
206
+ "disable",
207
+ "degrade",
208
+ "pause",
209
+ "shutdown",
210
+ "止损",
211
+ "关闭",
212
+ "降级",
213
+ "暂停",
214
+ "熔断"
215
+ ]
216
+ }
217
+ },
218
+ "knowledge": {
219
+ "enabled": true,
220
+ "skillGenerationRequiredFor": [
221
+ "repeated-issue",
222
+ "high-impact-fix",
223
+ "hidden-debug-knowledge",
224
+ "agent-misjudgment"
225
+ ],
226
+ "skillDir": ".openprd/knowledge/skills",
227
+ "abstractionRequired": true
228
+ }
229
+ }