devrites 3.0.5 → 3.0.7

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 (744) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/README.md +282 -533
  3. package/SECURITY.md +26 -26
  4. package/docs/adr/README.md +7 -9
  5. package/docs/agents/domain.md +5 -5
  6. package/docs/agents/issue-driven-rites.md +1 -1
  7. package/docs/agents/issue-tracker.md +1 -1
  8. package/docs/agents/triage-labels.md +2 -2
  9. package/docs/architecture.md +45 -45
  10. package/docs/cli.md +11 -11
  11. package/docs/command-map.md +33 -33
  12. package/docs/engine/agent-contract.md +6 -6
  13. package/docs/engine/commands.md +66 -65
  14. package/docs/engine/state-schema.md +15 -15
  15. package/docs/engine/workspace-schema.md +7 -7
  16. package/docs/extensions.md +17 -17
  17. package/docs/flow.md +17 -17
  18. package/docs/harness-compliance.md +2 -2
  19. package/docs/orchestration.md +21 -20
  20. package/docs/release.md +22 -5
  21. package/docs/research/go-authoritative-workflow-schema-and-quality-2026-07-20.md +3 -3
  22. package/docs/skills.md +77 -52
  23. package/docs/usage.md +33 -32
  24. package/engine/Makefile +2 -2
  25. package/engine/commands.go +3 -3
  26. package/engine/harnessmatrix.go +2 -2
  27. package/engine/hookpolicy.go +9 -9
  28. package/engine/hooks.go +11 -11
  29. package/engine/hooks_workspace.go +11 -11
  30. package/engine/internal/doctor/doctor.go +7 -7
  31. package/engine/internal/gate/gate.go +11 -11
  32. package/engine/internal/harness/compliance.go +1 -1
  33. package/engine/internal/harness/harness.go +7 -7
  34. package/engine/internal/install/install.go +95 -24
  35. package/engine/internal/install/install_test.go +111 -3
  36. package/engine/internal/iohooks/detach_unix.go +1 -1
  37. package/engine/internal/iohooks/iohooks.go +8 -8
  38. package/engine/internal/lib/adoption.go +1 -1
  39. package/engine/internal/lib/analyze.go +15 -15
  40. package/engine/internal/lib/archivesearch.go +3 -3
  41. package/engine/internal/lib/budget.go +3 -3
  42. package/engine/internal/lib/buildreadiness.go +6 -6
  43. package/engine/internal/lib/checkacceptance.go +10 -10
  44. package/engine/internal/lib/closeout.go +5 -5
  45. package/engine/internal/lib/conventions.go +3 -3
  46. package/engine/internal/lib/coverage.go +4 -4
  47. package/engine/internal/lib/doubtcoverage.go +9 -9
  48. package/engine/internal/lib/evidencefresh.go +6 -6
  49. package/engine/internal/lib/extensions.go +9 -9
  50. package/engine/internal/lib/footprint.go +13 -13
  51. package/engine/internal/lib/jsonout.go +2 -2
  52. package/engine/internal/lib/lanes.go +2 -2
  53. package/engine/internal/lib/learnings.go +9 -9
  54. package/engine/internal/lib/ledger.go +8 -8
  55. package/engine/internal/lib/ledger_test.go +5 -5
  56. package/engine/internal/lib/mutationgate.go +4 -4
  57. package/engine/internal/lib/overrides.go +9 -9
  58. package/engine/internal/lib/overrides_test.go +2 -2
  59. package/engine/internal/lib/packageexistence.go +5 -5
  60. package/engine/internal/lib/preamble.go +6 -6
  61. package/engine/internal/lib/progress.go +5 -5
  62. package/engine/internal/lib/reconcile.go +80 -20
  63. package/engine/internal/lib/reconcile_test.go +13 -5
  64. package/engine/internal/lib/resolve.go +3 -3
  65. package/engine/internal/lib/reviewerstats.go +2 -2
  66. package/engine/internal/lib/reviewintegrity.go +13 -13
  67. package/engine/internal/lib/reviewintegrity_test.go +6 -6
  68. package/engine/internal/lib/runbook.go +1 -1
  69. package/engine/internal/lib/session.go +1 -1
  70. package/engine/internal/lib/session_test.go +2 -2
  71. package/engine/internal/lib/specparse.go +4 -4
  72. package/engine/internal/lib/specskeleton.go +2 -2
  73. package/engine/internal/lib/specvalidate.go +13 -13
  74. package/engine/internal/lib/stuck.go +13 -13
  75. package/engine/internal/lib/templates/conventions_ledger_header.md +1 -1
  76. package/engine/internal/lib/templates/conventions_orient_header.txt +1 -1
  77. package/engine/internal/lib/testintegrity.go +9 -9
  78. package/engine/internal/lib/tickafk.go +4 -4
  79. package/engine/internal/migrate/migrate.go +2 -2
  80. package/engine/internal/migrate/migrate_test.go +1 -0
  81. package/engine/internal/orient/firstrun.go +8 -8
  82. package/engine/internal/orient/orient.go +5 -5
  83. package/engine/internal/state/concurrency_test.go +4 -4
  84. package/engine/internal/state/feature.go +6 -6
  85. package/engine/internal/state/lock_unix.go +1 -1
  86. package/engine/internal/state/schema.go +1 -1
  87. package/engine/internal/state/snapshot.go +2 -2
  88. package/engine/internal/state/write.go +1 -1
  89. package/engine/internal/version/version.go +1 -1
  90. package/engine/main.go +5 -5
  91. package/engine/subagent_orient_context.txt +4 -4
  92. package/engine/testdata/golden/TestParityA1Guard/source-edit-enforce-denies.golden +1 -1
  93. package/engine/testdata/golden/TestParityAnalyze/slug=covered.golden +2 -2
  94. package/engine/testdata/golden/TestParityAnalyze/slug=dangling.golden +3 -3
  95. package/engine/testdata/golden/TestParityAnalyze/slug=noac.golden +2 -2
  96. package/engine/testdata/golden/TestParityAnalyze/slug=order.golden +4 -4
  97. package/engine/testdata/golden/TestParityAnalyze/slug=orphan.golden +3 -3
  98. package/engine/testdata/golden/TestParityAnalyze/slug=uncovered.golden +3 -3
  99. package/engine/testdata/golden/TestParityBudget/extra-md.golden +1 -1
  100. package/engine/testdata/golden/TestParityBudget/over-advisory.golden +1 -1
  101. package/engine/testdata/golden/TestParityBudget/over-strict.golden +1 -1
  102. package/engine/testdata/golden/TestParityBuildReadiness/arg=approved.golden +1 -1
  103. package/engine/testdata/golden/TestParityBuildReadiness/arg=emptystatus.golden +1 -1
  104. package/engine/testdata/golden/TestParityBuildReadiness/arg=trailhash.golden +1 -1
  105. package/engine/testdata/golden/TestParityBuildReadiness/arg=trailpipe.golden +1 -1
  106. package/engine/testdata/golden/TestParityCheckAcceptance/arg=flat-ok.golden +1 -1
  107. package/engine/testdata/golden/TestParityCheckAcceptance/arg=id-ok.golden +1 -1
  108. package/engine/testdata/golden/TestParityCloseOut/active_pointed_elsewhere.golden +1 -1
  109. package/engine/testdata/golden/TestParityCoverage/arg=speconly.golden +2 -2
  110. package/engine/testdata/golden/TestParityCursor/bare.golden +1 -1
  111. package/engine/testdata/golden/TestParityCursor/full-afk.golden +1 -1
  112. package/engine/testdata/golden/TestParityCursor/full-hitl.golden +1 -1
  113. package/engine/testdata/golden/TestParityCursor/red.golden +2 -2
  114. package/engine/testdata/golden/TestParityCursor/zerogates.golden +1 -1
  115. package/engine/testdata/golden/TestParityDoubtCoverage/arg=ghost.golden +1 -1
  116. package/engine/testdata/golden/TestParityDoubtCoverage/arg=inline.golden +1 -1
  117. package/engine/testdata/golden/TestParityDoubtCoverage/arg=missing-inline.golden +1 -1
  118. package/engine/testdata/golden/TestParityDoubtCoverage/arg=missing.golden +1 -1
  119. package/engine/testdata/golden/TestParityDoubtCoverage/arg=nodoubt.golden +1 -1
  120. package/engine/testdata/golden/TestParityDoubtCoverage/arg=nolog.golden +1 -1
  121. package/engine/testdata/golden/TestParityLearnings/mine-no-archive.golden +1 -1
  122. package/engine/testdata/golden/TestParityLearnings/mine.golden +1 -1
  123. package/engine/testdata/golden/TestParityLearnings/nudge.golden +1 -1
  124. package/engine/testdata/golden/TestParityMutationGate/active-slug.golden +1 -1
  125. package/engine/testdata/golden/TestParityMutationGate/explicit-slug.golden +1 -1
  126. package/engine/testdata/golden/TestParityPackageExistence/declared.golden +1 -1
  127. package/engine/testdata/golden/TestParityPackageExistence/default-import-subpath.golden +1 -1
  128. package/engine/testdata/golden/TestParityReconcile/check-clean.golden +1 -1
  129. package/engine/testdata/golden/TestParityRedwatch/fail-writes-red.golden +1 -1
  130. package/engine/testdata/golden/TestParityResolve/answer/state.md.golden +1 -1
  131. package/engine/testdata/golden/TestParityResolve/batch.golden +1 -1
  132. package/engine/testdata/golden/TestParityReviewerReadonly/agent-required-devrites-agent-denies.golden +1 -1
  133. package/engine/testdata/golden/TestParityReviewerReadonly/enforce-deny-git-commit.golden +1 -1
  134. package/engine/testdata/golden/TestParityReviewerReadonly/enforce-deny-mutating.golden +1 -1
  135. package/engine/testdata/golden/TestParitySpecValidate/arg=flat.golden +1 -1
  136. package/engine/testdata/golden/TestParitySpecValidate/arg=valid/spec.md.golden +1 -1
  137. package/engine/testdata/golden/TestParitySpecValidate/arg=valid.golden +1 -1
  138. package/engine/testdata/golden/TestParityStuckCheck/custom-window-2.golden +1 -1
  139. package/engine/testdata/golden/TestParityStuckCheck/dominant.golden +1 -1
  140. package/engine/testdata/golden/TestParityStuckCheck/few.golden +1 -1
  141. package/engine/testdata/golden/TestParityStuckCheck/ghost.golden +1 -1
  142. package/engine/testdata/golden/TestParityStuckCheck/identical.golden +1 -1
  143. package/engine/testdata/golden/TestParityStuckCheck/nolog.golden +1 -1
  144. package/engine/testdata/golden/TestParityStuckCheck/pingpong.golden +1 -1
  145. package/engine/testdata/golden/TestParityStuckCheck/varied.golden +1 -1
  146. package/engine/testdata/golden/TestParityStuckCheck/window-04-identical.golden +1 -1
  147. package/engine/testdata/golden/TestParityStuckCheck/window-2.5-varied4.golden +1 -1
  148. package/engine/testdata/golden/TestParityStuckCheck/window-4x-varied4.golden +1 -1
  149. package/engine/testdata/golden/TestParityStuckCheck/window-leadspace-varied4.golden +1 -1
  150. package/engine/testdata/golden/TestParityStuckCheck/window-plus4-identical.golden +1 -1
  151. package/engine/testdata/golden/TestParitySubagentOrient/devrites-agent-subagent-type-key.golden +1 -1
  152. package/engine/testdata/golden/TestParitySubagentOrient/devrites-agent.golden +1 -1
  153. package/engine/testdata/golden/TestParityTestIntegrity/clean.golden +1 -1
  154. package/engine/testdata/golden/TestParityTickAfk/missingField.golden +1 -1
  155. package/engine/testdata/golden/TestParityTickAfk/none.golden +1 -1
  156. package/engine/testdata/golden/TestParityWrightScope/out-of-scope-enforce-denies.golden +1 -1
  157. package/engine/testdata/golden/TestSpecSkeleton/missing-some.golden +1 -1
  158. package/engine/testdata/golden/TestSpecSkeleton/present-all.golden +1 -1
  159. package/engine/tests/adr_0004_required_by_phase_test.go +2 -2
  160. package/engine/tests/adr_0006_clock_seam_test.go +1 -1
  161. package/engine/tests/budget_test.go +1 -1
  162. package/engine/tests/canonical_ac_ids_test.go +2 -2
  163. package/engine/tests/cli_test.go +1 -1
  164. package/engine/tests/concurrency_cli_test.go +1 -1
  165. package/engine/tests/gate_test.go +4 -4
  166. package/engine/tests/hook_test.go +3 -3
  167. package/engine/tests/hooks_io_test.go +1 -1
  168. package/engine/tests/lib_parity_test.go +29 -29
  169. package/engine/tests/meta_test.go +2 -2
  170. package/engine/tests/parity_closeout_test.go +1 -1
  171. package/engine/tests/parity_learnings_test.go +2 -2
  172. package/engine/tests/parity_mutationgate_test.go +2 -2
  173. package/engine/tests/parity_resolve_test.go +1 -1
  174. package/engine/tests/parity_test.go +3 -3
  175. package/engine/tests/parity_tickafk_test.go +1 -1
  176. package/engine/validatepack.go +5 -5
  177. package/engine/validatepackskills.go +9 -9
  178. package/pack/.claude/agents/devrites-code-reviewer.md +21 -22
  179. package/pack/.claude/agents/devrites-devex-reviewer.md +17 -17
  180. package/pack/.claude/agents/devrites-doubt-reviewer.md +6 -6
  181. package/pack/.claude/agents/devrites-forge-judge.md +26 -26
  182. package/pack/.claude/agents/devrites-frontend-reviewer.md +17 -17
  183. package/pack/.claude/agents/devrites-performance-reviewer.md +19 -18
  184. package/pack/.claude/agents/devrites-plan-reviewer.md +29 -27
  185. package/pack/.claude/agents/devrites-retrospector.md +19 -19
  186. package/pack/.claude/agents/devrites-security-auditor.md +15 -15
  187. package/pack/.claude/agents/devrites-simplifier-reviewer.md +14 -14
  188. package/pack/.claude/agents/devrites-slice-wright.md +52 -51
  189. package/pack/.claude/agents/devrites-spec-reviewer.md +11 -11
  190. package/pack/.claude/agents/devrites-strategy-reviewer.md +21 -21
  191. package/pack/.claude/agents/devrites-test-analyst.md +13 -13
  192. package/pack/.claude/settings.json +1 -1
  193. package/pack/.claude/skills/devrites-api-interface/SKILL.md +12 -12
  194. package/pack/.claude/skills/devrites-audit/SKILL.md +7 -7
  195. package/pack/.claude/skills/devrites-browser-proof/SKILL.md +16 -16
  196. package/pack/.claude/skills/devrites-debug-recovery/SKILL.md +14 -14
  197. package/pack/.claude/skills/devrites-debug-recovery/reference/build-the-loop.md +16 -16
  198. package/pack/.claude/skills/devrites-debug-recovery/reference/cleanup-and-classify.md +2 -2
  199. package/pack/.claude/skills/devrites-debug-recovery/reference/hypotheses.md +2 -2
  200. package/pack/.claude/skills/devrites-debug-recovery/reference/regression-test.md +3 -3
  201. package/pack/.claude/skills/devrites-debug-recovery/reference/trace.md +4 -4
  202. package/pack/.claude/skills/devrites-doubt/SKILL.md +14 -14
  203. package/pack/.claude/skills/devrites-frontend-craft/SKILL.md +18 -18
  204. package/pack/.claude/skills/devrites-frontend-craft/reference/craft.md +17 -17
  205. package/pack/.claude/skills/devrites-frontend-craft/reference/design-references.md +25 -25
  206. package/pack/.claude/skills/devrites-frontend-craft/reference/fullstack.md +6 -6
  207. package/pack/.claude/skills/devrites-frontend-craft/reference/quality-standards.md +44 -44
  208. package/pack/.claude/skills/devrites-frontend-craft/reference/reuse-first.md +9 -9
  209. package/pack/.claude/skills/devrites-frontend-craft/reference/shape.md +13 -13
  210. package/pack/.claude/skills/devrites-interview/SKILL.md +27 -27
  211. package/pack/.claude/skills/devrites-lib/SKILL.md +18 -18
  212. package/pack/.claude/skills/devrites-lib/reference/model-tiers.md +5 -5
  213. package/pack/.claude/skills/devrites-lib/reference/parallel-dispatch.md +36 -36
  214. package/pack/.claude/skills/devrites-lib/reference/standards/README.md +10 -10
  215. package/pack/.claude/skills/devrites-lib/reference/standards/afk-hitl.md +33 -33
  216. package/pack/.claude/skills/devrites-lib/reference/standards/agents.md +37 -37
  217. package/pack/.claude/skills/devrites-lib/reference/standards/anti-patterns.md +9 -9
  218. package/pack/.claude/skills/devrites-lib/reference/standards/ci-cd.md +12 -12
  219. package/pack/.claude/skills/devrites-lib/reference/standards/code-review.md +40 -40
  220. package/pack/.claude/skills/devrites-lib/reference/standards/coding-style.md +7 -7
  221. package/pack/.claude/skills/devrites-lib/reference/standards/context-hygiene.md +24 -25
  222. package/pack/.claude/skills/devrites-lib/reference/standards/core.md +23 -23
  223. package/pack/.claude/skills/devrites-lib/reference/standards/definition-of-done.md +1 -1
  224. package/pack/.claude/skills/devrites-lib/reference/standards/deprecation.md +18 -18
  225. package/pack/.claude/skills/devrites-lib/reference/standards/developer-experience.md +29 -29
  226. package/pack/.claude/skills/devrites-lib/reference/standards/development-workflow.md +10 -10
  227. package/pack/.claude/skills/devrites-lib/reference/standards/documentation.md +4 -4
  228. package/pack/.claude/skills/devrites-lib/reference/standards/edge-case-trace.md +1 -1
  229. package/pack/.claude/skills/devrites-lib/reference/standards/elicitation.md +26 -26
  230. package/pack/.claude/skills/devrites-lib/reference/standards/error-handling.md +4 -4
  231. package/pack/.claude/skills/devrites-lib/reference/standards/git-workflow.md +9 -9
  232. package/pack/.claude/skills/devrites-lib/reference/standards/hooks.md +3 -3
  233. package/pack/.claude/skills/devrites-lib/reference/standards/observability.md +15 -15
  234. package/pack/.claude/skills/devrites-lib/reference/standards/patterns.md +8 -8
  235. package/pack/.claude/skills/devrites-lib/reference/standards/performance.md +5 -5
  236. package/pack/.claude/skills/devrites-lib/reference/standards/principles.md +31 -31
  237. package/pack/.claude/skills/devrites-lib/reference/standards/prose-style.md +25 -25
  238. package/pack/.claude/skills/devrites-lib/reference/standards/security.md +30 -30
  239. package/pack/.claude/skills/devrites-lib/reference/standards/skill-authoring.md +11 -11
  240. package/pack/.claude/skills/devrites-lib/reference/standards/spec-grammar.md +30 -30
  241. package/pack/.claude/skills/devrites-lib/reference/standards/testing.md +40 -40
  242. package/pack/.claude/skills/devrites-lib/reference/standards/tooling.md +26 -26
  243. package/pack/.claude/skills/devrites-prose-craft/SKILL.md +5 -5
  244. package/pack/.claude/skills/devrites-refresh-indexes/SKILL.md +6 -6
  245. package/pack/.claude/skills/devrites-source-driven/SKILL.md +8 -8
  246. package/pack/.claude/skills/devrites-ux-shape/SKILL.md +33 -33
  247. package/pack/.claude/skills/devrites-ux-shape/reference/brief-template.md +6 -6
  248. package/pack/.claude/skills/devrites-ux-shape/reference/visual-direction-probe.md +9 -9
  249. package/pack/.claude/skills/rite/SKILL.md +7 -7
  250. package/pack/.claude/skills/rite/reference/menu.md +6 -6
  251. package/pack/.claude/skills/rite-adopt/SKILL.md +15 -15
  252. package/pack/.claude/skills/rite-adopt/reference/adoption.md +9 -9
  253. package/pack/.claude/skills/rite-adopt/reference/anti-patterns.md +6 -6
  254. package/pack/.claude/skills/rite-autocomplete/SKILL.md +14 -14
  255. package/pack/.claude/skills/rite-autocomplete/reference/decision-policy.md +4 -4
  256. package/pack/.claude/skills/rite-autocomplete/reference/loop.md +7 -7
  257. package/pack/.claude/skills/rite-autocomplete/reference/stop-conditions.md +7 -7
  258. package/pack/.claude/skills/rite-build/SKILL.md +22 -22
  259. package/pack/.claude/skills/rite-build/reference/afk-discipline.md +9 -9
  260. package/pack/.claude/skills/rite-build/reference/anti-patterns.md +6 -6
  261. package/pack/.claude/skills/rite-build/reference/checkpoint-protocol.md +14 -14
  262. package/pack/.claude/skills/rite-build/reference/checkpoint.md +8 -8
  263. package/pack/.claude/skills/rite-build/reference/evidence-standard.md +1 -1
  264. package/pack/.claude/skills/rite-build/reference/forge.md +28 -29
  265. package/pack/.claude/skills/rite-build/reference/frontend-trigger.md +2 -2
  266. package/pack/.claude/skills/rite-build/reference/one-slice-cycle.md +3 -3
  267. package/pack/.claude/skills/rite-build/reference/output.md +1 -1
  268. package/pack/.claude/skills/rite-build/reference/phase-contract.md +44 -44
  269. package/pack/.claude/skills/rite-build/reference/spec-drift-guard.md +1 -1
  270. package/pack/.claude/skills/rite-build/reference/tdd.md +6 -6
  271. package/pack/.claude/skills/rite-build/reference/wright-dispatch.md +23 -23
  272. package/pack/.claude/skills/rite-converge/SKILL.md +17 -17
  273. package/pack/.claude/skills/rite-converge/reference/anti-patterns.md +7 -7
  274. package/pack/.claude/skills/rite-converge/reference/convergence-assessment.md +14 -14
  275. package/pack/.claude/skills/rite-customize/SKILL.md +2 -2
  276. package/pack/.claude/skills/rite-define/SKILL.md +25 -25
  277. package/pack/.claude/skills/rite-define/reference/anti-patterns.md +5 -5
  278. package/pack/.claude/skills/rite-define/reference/gates.md +13 -13
  279. package/pack/.claude/skills/rite-define/reference/plan-template.md +1 -1
  280. package/pack/.claude/skills/rite-doctor/SKILL.md +11 -11
  281. package/pack/.claude/skills/rite-dogfood/SKILL.md +2 -2
  282. package/pack/.claude/skills/rite-explain/SKILL.md +22 -22
  283. package/pack/.claude/skills/rite-explain/reference/intake.md +16 -16
  284. package/pack/.claude/skills/rite-frame/SKILL.md +22 -22
  285. package/pack/.claude/skills/rite-frame/reference/failure-modes.md +13 -13
  286. package/pack/.claude/skills/rite-handoff/SKILL.md +12 -12
  287. package/pack/.claude/skills/rite-learn/SKILL.md +23 -23
  288. package/pack/.claude/skills/rite-plan/SKILL.md +21 -21
  289. package/pack/.claude/skills/rite-plan/reference/anti-patterns.md +3 -3
  290. package/pack/.claude/skills/rite-plan/reference/dependency-graph.md +1 -1
  291. package/pack/.claude/skills/rite-plan/reference/replan-and-repair.md +3 -3
  292. package/pack/.claude/skills/rite-plan/reference/slicing.md +9 -9
  293. package/pack/.claude/skills/rite-plan/reference/task-breakdown.md +3 -3
  294. package/pack/.claude/skills/rite-polish/SKILL.md +11 -11
  295. package/pack/.claude/skills/rite-polish/reference/anti-patterns.md +8 -8
  296. package/pack/.claude/skills/rite-polish/reference/backend-polish.md +13 -13
  297. package/pack/.claude/skills/rite-polish/reference/browser-polish-evidence.md +4 -4
  298. package/pack/.claude/skills/rite-polish/reference/code.md +26 -26
  299. package/pack/.claude/skills/rite-polish/reference/harden-checklist.md +31 -31
  300. package/pack/.claude/skills/rite-polish/reference/ui.md +23 -23
  301. package/pack/.claude/skills/rite-pov/SKILL.md +3 -3
  302. package/pack/.claude/skills/rite-pr-feedback/SKILL.md +2 -2
  303. package/pack/.claude/skills/rite-pressure-test/SKILL.md +14 -14
  304. package/pack/.claude/skills/rite-prototype/SKILL.md +13 -13
  305. package/pack/.claude/skills/rite-prove/SKILL.md +17 -17
  306. package/pack/.claude/skills/rite-prove/reference/anti-patterns.md +4 -4
  307. package/pack/.claude/skills/rite-prove/reference/browser-proof.md +2 -2
  308. package/pack/.claude/skills/rite-prove/reference/failure-triage.md +4 -4
  309. package/pack/.claude/skills/rite-prove/reference/proof-ladder.md +6 -6
  310. package/pack/.claude/skills/rite-prove/reference/test-command-discovery.md +1 -1
  311. package/pack/.claude/skills/rite-quick/SKILL.md +22 -22
  312. package/pack/.claude/skills/rite-resolve/SKILL.md +18 -18
  313. package/pack/.claude/skills/rite-resolve/reference/answer-protocol.md +7 -7
  314. package/pack/.claude/skills/rite-review/SKILL.md +34 -34
  315. package/pack/.claude/skills/rite-review/reference/anti-patterns.md +4 -4
  316. package/pack/.claude/skills/rite-review/reference/cognitive-load.md +22 -22
  317. package/pack/.claude/skills/rite-review/reference/feature-scoped-review.md +2 -2
  318. package/pack/.claude/skills/rite-review/reference/five-axis-review.md +8 -8
  319. package/pack/.claude/skills/rite-review/reference/nielsen-heuristics.md +14 -14
  320. package/pack/.claude/skills/rite-review/reference/performance-checklist.md +14 -14
  321. package/pack/.claude/skills/rite-review/reference/security-review.md +9 -9
  322. package/pack/.claude/skills/rite-seal/SKILL.md +26 -26
  323. package/pack/.claude/skills/rite-seal/reference/anti-patterns.md +8 -8
  324. package/pack/.claude/skills/rite-seal/reference/conventions-ledger.md +8 -8
  325. package/pack/.claude/skills/rite-seal/reference/final-evidence.md +9 -9
  326. package/pack/.claude/skills/rite-seal/reference/go-no-go.md +9 -9
  327. package/pack/.claude/skills/rite-seal/reference/phase-contract.md +43 -43
  328. package/pack/.claude/skills/rite-ship/SKILL.md +12 -12
  329. package/pack/.claude/skills/rite-ship/reference/anti-patterns.md +5 -5
  330. package/pack/.claude/skills/rite-ship/reference/close-out.md +2 -2
  331. package/pack/.claude/skills/rite-ship/reference/design-memory.md +22 -22
  332. package/pack/.claude/skills/rite-ship/reference/git-ship.md +10 -10
  333. package/pack/.claude/skills/rite-ship/reference/ledger.md +9 -9
  334. package/pack/.claude/skills/rite-ship/reference/rollout.md +11 -11
  335. package/pack/.claude/skills/rite-ship/reference/ship-template.md +1 -1
  336. package/pack/.claude/skills/rite-spec/SKILL.md +45 -45
  337. package/pack/.claude/skills/rite-spec/reference/acceptance-criteria.md +4 -4
  338. package/pack/.claude/skills/rite-spec/reference/anti-patterns.md +6 -6
  339. package/pack/.claude/skills/rite-spec/reference/interview-patterns.md +3 -3
  340. package/pack/.claude/skills/rite-spec/reference/investigation.md +21 -21
  341. package/pack/.claude/skills/rite-spec/reference/question-protocol.md +9 -9
  342. package/pack/.claude/skills/rite-spec/reference/references-intake.md +8 -8
  343. package/pack/.claude/skills/rite-spec/reference/spec-checklists.md +19 -19
  344. package/pack/.claude/skills/rite-status/SKILL.md +13 -13
  345. package/pack/.claude/skills/rite-temper/SKILL.md +29 -29
  346. package/pack/.claude/skills/rite-temper/reference/anti-patterns.md +11 -11
  347. package/pack/.claude/skills/rite-temper/reference/review-dimensions.md +20 -20
  348. package/pack/.claude/skills/rite-temper/reference/scope-modes.md +16 -16
  349. package/pack/.claude/skills/rite-temper/reference/significance.md +10 -10
  350. package/pack/.claude/skills/rite-temper/reference/strategy-template.md +14 -14
  351. package/pack/.claude/skills/rite-vet/SKILL.md +31 -31
  352. package/pack/.claude/skills/rite-vet/reference/anti-patterns.md +14 -14
  353. package/pack/.claude/skills/rite-vet/reference/artifacts.md +10 -10
  354. package/pack/.claude/skills/rite-vet/reference/cross-model.md +9 -9
  355. package/pack/.claude/skills/rite-vet/reference/depth.md +14 -14
  356. package/pack/.claude/skills/rite-vet/reference/eng-lenses.md +9 -9
  357. package/pack/.claude/skills/rite-vet/reference/review-axes.md +28 -28
  358. package/pack/.claude/skills/rite-zoom-out/SKILL.md +18 -18
  359. package/pack/generated/claude/agents/devrites-code-reviewer.md +21 -22
  360. package/pack/generated/claude/agents/devrites-devex-reviewer.md +17 -17
  361. package/pack/generated/claude/agents/devrites-doubt-reviewer.md +6 -6
  362. package/pack/generated/claude/agents/devrites-forge-judge.md +26 -26
  363. package/pack/generated/claude/agents/devrites-frontend-reviewer.md +17 -17
  364. package/pack/generated/claude/agents/devrites-performance-reviewer.md +19 -18
  365. package/pack/generated/claude/agents/devrites-plan-reviewer.md +29 -27
  366. package/pack/generated/claude/agents/devrites-retrospector.md +19 -19
  367. package/pack/generated/claude/agents/devrites-security-auditor.md +15 -15
  368. package/pack/generated/claude/agents/devrites-simplifier-reviewer.md +14 -14
  369. package/pack/generated/claude/agents/devrites-slice-wright.md +52 -51
  370. package/pack/generated/claude/agents/devrites-spec-reviewer.md +11 -11
  371. package/pack/generated/claude/agents/devrites-strategy-reviewer.md +21 -21
  372. package/pack/generated/claude/agents/devrites-test-analyst.md +13 -13
  373. package/pack/generated/claude/settings.json +1 -1
  374. package/pack/generated/claude/skills/devrites-api-interface/SKILL.md +12 -12
  375. package/pack/generated/claude/skills/devrites-audit/SKILL.md +7 -7
  376. package/pack/generated/claude/skills/devrites-browser-proof/SKILL.md +16 -16
  377. package/pack/generated/claude/skills/devrites-debug-recovery/SKILL.md +14 -14
  378. package/pack/generated/claude/skills/devrites-debug-recovery/reference/build-the-loop.md +16 -16
  379. package/pack/generated/claude/skills/devrites-debug-recovery/reference/cleanup-and-classify.md +2 -2
  380. package/pack/generated/claude/skills/devrites-debug-recovery/reference/hypotheses.md +2 -2
  381. package/pack/generated/claude/skills/devrites-debug-recovery/reference/regression-test.md +3 -3
  382. package/pack/generated/claude/skills/devrites-debug-recovery/reference/trace.md +4 -4
  383. package/pack/generated/claude/skills/devrites-doubt/SKILL.md +14 -14
  384. package/pack/generated/claude/skills/devrites-frontend-craft/SKILL.md +18 -18
  385. package/pack/generated/claude/skills/devrites-frontend-craft/reference/craft.md +17 -17
  386. package/pack/generated/claude/skills/devrites-frontend-craft/reference/design-references.md +25 -25
  387. package/pack/generated/claude/skills/devrites-frontend-craft/reference/fullstack.md +6 -6
  388. package/pack/generated/claude/skills/devrites-frontend-craft/reference/quality-standards.md +44 -44
  389. package/pack/generated/claude/skills/devrites-frontend-craft/reference/reuse-first.md +9 -9
  390. package/pack/generated/claude/skills/devrites-frontend-craft/reference/shape.md +13 -13
  391. package/pack/generated/claude/skills/devrites-interview/SKILL.md +27 -27
  392. package/pack/generated/claude/skills/devrites-lib/SKILL.md +18 -18
  393. package/pack/generated/claude/skills/devrites-lib/reference/model-tiers.md +5 -5
  394. package/pack/generated/claude/skills/devrites-lib/reference/parallel-dispatch.md +36 -36
  395. package/pack/generated/claude/skills/devrites-lib/reference/standards/README.md +10 -10
  396. package/pack/generated/claude/skills/devrites-lib/reference/standards/afk-hitl.md +33 -33
  397. package/pack/generated/claude/skills/devrites-lib/reference/standards/agents.md +37 -37
  398. package/pack/generated/claude/skills/devrites-lib/reference/standards/anti-patterns.md +9 -9
  399. package/pack/generated/claude/skills/devrites-lib/reference/standards/ci-cd.md +12 -12
  400. package/pack/generated/claude/skills/devrites-lib/reference/standards/code-review.md +40 -40
  401. package/pack/generated/claude/skills/devrites-lib/reference/standards/coding-style.md +7 -7
  402. package/pack/generated/claude/skills/devrites-lib/reference/standards/context-hygiene.md +24 -25
  403. package/pack/generated/claude/skills/devrites-lib/reference/standards/core.md +23 -23
  404. package/pack/generated/claude/skills/devrites-lib/reference/standards/definition-of-done.md +1 -1
  405. package/pack/generated/claude/skills/devrites-lib/reference/standards/deprecation.md +18 -18
  406. package/pack/generated/claude/skills/devrites-lib/reference/standards/developer-experience.md +29 -29
  407. package/pack/generated/claude/skills/devrites-lib/reference/standards/development-workflow.md +10 -10
  408. package/pack/generated/claude/skills/devrites-lib/reference/standards/documentation.md +4 -4
  409. package/pack/generated/claude/skills/devrites-lib/reference/standards/edge-case-trace.md +1 -1
  410. package/pack/generated/claude/skills/devrites-lib/reference/standards/elicitation.md +26 -26
  411. package/pack/generated/claude/skills/devrites-lib/reference/standards/error-handling.md +4 -4
  412. package/pack/generated/claude/skills/devrites-lib/reference/standards/git-workflow.md +9 -9
  413. package/pack/generated/claude/skills/devrites-lib/reference/standards/hooks.md +3 -3
  414. package/pack/generated/claude/skills/devrites-lib/reference/standards/observability.md +15 -15
  415. package/pack/generated/claude/skills/devrites-lib/reference/standards/patterns.md +8 -8
  416. package/pack/generated/claude/skills/devrites-lib/reference/standards/performance.md +5 -5
  417. package/pack/generated/claude/skills/devrites-lib/reference/standards/principles.md +31 -31
  418. package/pack/generated/claude/skills/devrites-lib/reference/standards/prose-style.md +25 -25
  419. package/pack/generated/claude/skills/devrites-lib/reference/standards/security.md +30 -30
  420. package/pack/generated/claude/skills/devrites-lib/reference/standards/skill-authoring.md +11 -11
  421. package/pack/generated/claude/skills/devrites-lib/reference/standards/spec-grammar.md +30 -30
  422. package/pack/generated/claude/skills/devrites-lib/reference/standards/testing.md +40 -40
  423. package/pack/generated/claude/skills/devrites-lib/reference/standards/tooling.md +26 -26
  424. package/pack/generated/claude/skills/devrites-prose-craft/SKILL.md +5 -5
  425. package/pack/generated/claude/skills/devrites-refresh-indexes/SKILL.md +6 -6
  426. package/pack/generated/claude/skills/devrites-source-driven/SKILL.md +8 -8
  427. package/pack/generated/claude/skills/devrites-ux-shape/SKILL.md +33 -33
  428. package/pack/generated/claude/skills/devrites-ux-shape/reference/brief-template.md +6 -6
  429. package/pack/generated/claude/skills/devrites-ux-shape/reference/visual-direction-probe.md +9 -9
  430. package/pack/generated/claude/skills/rite/SKILL.md +7 -7
  431. package/pack/generated/claude/skills/rite/reference/menu.md +6 -6
  432. package/pack/generated/claude/skills/rite-adopt/SKILL.md +15 -15
  433. package/pack/generated/claude/skills/rite-adopt/reference/adoption.md +9 -9
  434. package/pack/generated/claude/skills/rite-adopt/reference/anti-patterns.md +6 -6
  435. package/pack/generated/claude/skills/rite-autocomplete/SKILL.md +14 -14
  436. package/pack/generated/claude/skills/rite-autocomplete/reference/decision-policy.md +4 -4
  437. package/pack/generated/claude/skills/rite-autocomplete/reference/loop.md +7 -7
  438. package/pack/generated/claude/skills/rite-autocomplete/reference/stop-conditions.md +7 -7
  439. package/pack/generated/claude/skills/rite-build/SKILL.md +22 -22
  440. package/pack/generated/claude/skills/rite-build/reference/afk-discipline.md +9 -9
  441. package/pack/generated/claude/skills/rite-build/reference/anti-patterns.md +6 -6
  442. package/pack/generated/claude/skills/rite-build/reference/checkpoint-protocol.md +14 -14
  443. package/pack/generated/claude/skills/rite-build/reference/checkpoint.md +8 -8
  444. package/pack/generated/claude/skills/rite-build/reference/evidence-standard.md +1 -1
  445. package/pack/generated/claude/skills/rite-build/reference/forge.md +28 -29
  446. package/pack/generated/claude/skills/rite-build/reference/frontend-trigger.md +2 -2
  447. package/pack/generated/claude/skills/rite-build/reference/one-slice-cycle.md +3 -3
  448. package/pack/generated/claude/skills/rite-build/reference/output.md +1 -1
  449. package/pack/generated/claude/skills/rite-build/reference/phase-contract.md +44 -44
  450. package/pack/generated/claude/skills/rite-build/reference/spec-drift-guard.md +1 -1
  451. package/pack/generated/claude/skills/rite-build/reference/tdd.md +6 -6
  452. package/pack/generated/claude/skills/rite-build/reference/wright-dispatch.md +23 -23
  453. package/pack/generated/claude/skills/rite-converge/SKILL.md +17 -17
  454. package/pack/generated/claude/skills/rite-converge/reference/anti-patterns.md +7 -7
  455. package/pack/generated/claude/skills/rite-converge/reference/convergence-assessment.md +14 -14
  456. package/pack/generated/claude/skills/rite-customize/SKILL.md +2 -2
  457. package/pack/generated/claude/skills/rite-define/SKILL.md +25 -25
  458. package/pack/generated/claude/skills/rite-define/reference/anti-patterns.md +5 -5
  459. package/pack/generated/claude/skills/rite-define/reference/gates.md +13 -13
  460. package/pack/generated/claude/skills/rite-define/reference/plan-template.md +1 -1
  461. package/pack/generated/claude/skills/rite-doctor/SKILL.md +11 -11
  462. package/pack/generated/claude/skills/rite-dogfood/SKILL.md +2 -2
  463. package/pack/generated/claude/skills/rite-explain/SKILL.md +22 -22
  464. package/pack/generated/claude/skills/rite-explain/reference/intake.md +16 -16
  465. package/pack/generated/claude/skills/rite-frame/SKILL.md +22 -22
  466. package/pack/generated/claude/skills/rite-frame/reference/failure-modes.md +13 -13
  467. package/pack/generated/claude/skills/rite-handoff/SKILL.md +12 -12
  468. package/pack/generated/claude/skills/rite-learn/SKILL.md +23 -23
  469. package/pack/generated/claude/skills/rite-plan/SKILL.md +21 -21
  470. package/pack/generated/claude/skills/rite-plan/reference/anti-patterns.md +3 -3
  471. package/pack/generated/claude/skills/rite-plan/reference/dependency-graph.md +1 -1
  472. package/pack/generated/claude/skills/rite-plan/reference/replan-and-repair.md +3 -3
  473. package/pack/generated/claude/skills/rite-plan/reference/slicing.md +9 -9
  474. package/pack/generated/claude/skills/rite-plan/reference/task-breakdown.md +3 -3
  475. package/pack/generated/claude/skills/rite-polish/SKILL.md +11 -11
  476. package/pack/generated/claude/skills/rite-polish/reference/anti-patterns.md +8 -8
  477. package/pack/generated/claude/skills/rite-polish/reference/backend-polish.md +13 -13
  478. package/pack/generated/claude/skills/rite-polish/reference/browser-polish-evidence.md +4 -4
  479. package/pack/generated/claude/skills/rite-polish/reference/code.md +26 -26
  480. package/pack/generated/claude/skills/rite-polish/reference/harden-checklist.md +31 -31
  481. package/pack/generated/claude/skills/rite-polish/reference/ui.md +23 -23
  482. package/pack/generated/claude/skills/rite-pov/SKILL.md +3 -3
  483. package/pack/generated/claude/skills/rite-pr-feedback/SKILL.md +2 -2
  484. package/pack/generated/claude/skills/rite-pressure-test/SKILL.md +14 -14
  485. package/pack/generated/claude/skills/rite-prototype/SKILL.md +13 -13
  486. package/pack/generated/claude/skills/rite-prove/SKILL.md +17 -17
  487. package/pack/generated/claude/skills/rite-prove/reference/anti-patterns.md +4 -4
  488. package/pack/generated/claude/skills/rite-prove/reference/browser-proof.md +2 -2
  489. package/pack/generated/claude/skills/rite-prove/reference/failure-triage.md +4 -4
  490. package/pack/generated/claude/skills/rite-prove/reference/proof-ladder.md +6 -6
  491. package/pack/generated/claude/skills/rite-prove/reference/test-command-discovery.md +1 -1
  492. package/pack/generated/claude/skills/rite-quick/SKILL.md +22 -22
  493. package/pack/generated/claude/skills/rite-resolve/SKILL.md +18 -18
  494. package/pack/generated/claude/skills/rite-resolve/reference/answer-protocol.md +7 -7
  495. package/pack/generated/claude/skills/rite-review/SKILL.md +34 -34
  496. package/pack/generated/claude/skills/rite-review/reference/anti-patterns.md +4 -4
  497. package/pack/generated/claude/skills/rite-review/reference/cognitive-load.md +22 -22
  498. package/pack/generated/claude/skills/rite-review/reference/feature-scoped-review.md +2 -2
  499. package/pack/generated/claude/skills/rite-review/reference/five-axis-review.md +8 -8
  500. package/pack/generated/claude/skills/rite-review/reference/nielsen-heuristics.md +14 -14
  501. package/pack/generated/claude/skills/rite-review/reference/performance-checklist.md +14 -14
  502. package/pack/generated/claude/skills/rite-review/reference/security-review.md +9 -9
  503. package/pack/generated/claude/skills/rite-seal/SKILL.md +26 -26
  504. package/pack/generated/claude/skills/rite-seal/reference/anti-patterns.md +8 -8
  505. package/pack/generated/claude/skills/rite-seal/reference/conventions-ledger.md +8 -8
  506. package/pack/generated/claude/skills/rite-seal/reference/final-evidence.md +9 -9
  507. package/pack/generated/claude/skills/rite-seal/reference/go-no-go.md +9 -9
  508. package/pack/generated/claude/skills/rite-seal/reference/phase-contract.md +43 -43
  509. package/pack/generated/claude/skills/rite-ship/SKILL.md +12 -12
  510. package/pack/generated/claude/skills/rite-ship/reference/anti-patterns.md +5 -5
  511. package/pack/generated/claude/skills/rite-ship/reference/close-out.md +2 -2
  512. package/pack/generated/claude/skills/rite-ship/reference/design-memory.md +22 -22
  513. package/pack/generated/claude/skills/rite-ship/reference/git-ship.md +10 -10
  514. package/pack/generated/claude/skills/rite-ship/reference/ledger.md +9 -9
  515. package/pack/generated/claude/skills/rite-ship/reference/rollout.md +11 -11
  516. package/pack/generated/claude/skills/rite-ship/reference/ship-template.md +1 -1
  517. package/pack/generated/claude/skills/rite-spec/SKILL.md +45 -45
  518. package/pack/generated/claude/skills/rite-spec/reference/acceptance-criteria.md +4 -4
  519. package/pack/generated/claude/skills/rite-spec/reference/anti-patterns.md +6 -6
  520. package/pack/generated/claude/skills/rite-spec/reference/interview-patterns.md +3 -3
  521. package/pack/generated/claude/skills/rite-spec/reference/investigation.md +21 -21
  522. package/pack/generated/claude/skills/rite-spec/reference/question-protocol.md +9 -9
  523. package/pack/generated/claude/skills/rite-spec/reference/references-intake.md +8 -8
  524. package/pack/generated/claude/skills/rite-spec/reference/spec-checklists.md +19 -19
  525. package/pack/generated/claude/skills/rite-status/SKILL.md +13 -13
  526. package/pack/generated/claude/skills/rite-temper/SKILL.md +29 -29
  527. package/pack/generated/claude/skills/rite-temper/reference/anti-patterns.md +11 -11
  528. package/pack/generated/claude/skills/rite-temper/reference/review-dimensions.md +20 -20
  529. package/pack/generated/claude/skills/rite-temper/reference/scope-modes.md +16 -16
  530. package/pack/generated/claude/skills/rite-temper/reference/significance.md +10 -10
  531. package/pack/generated/claude/skills/rite-temper/reference/strategy-template.md +14 -14
  532. package/pack/generated/claude/skills/rite-vet/SKILL.md +31 -31
  533. package/pack/generated/claude/skills/rite-vet/reference/anti-patterns.md +14 -14
  534. package/pack/generated/claude/skills/rite-vet/reference/artifacts.md +10 -10
  535. package/pack/generated/claude/skills/rite-vet/reference/cross-model.md +9 -9
  536. package/pack/generated/claude/skills/rite-vet/reference/depth.md +14 -14
  537. package/pack/generated/claude/skills/rite-vet/reference/eng-lenses.md +9 -9
  538. package/pack/generated/claude/skills/rite-vet/reference/review-axes.md +28 -28
  539. package/pack/generated/claude/skills/rite-zoom-out/SKILL.md +18 -18
  540. package/pack/generated/codex/agents/devrites-code-reviewer.toml +21 -22
  541. package/pack/generated/codex/agents/devrites-devex-reviewer.toml +17 -17
  542. package/pack/generated/codex/agents/devrites-doubt-reviewer.toml +6 -6
  543. package/pack/generated/codex/agents/devrites-forge-judge.toml +26 -26
  544. package/pack/generated/codex/agents/devrites-frontend-reviewer.toml +17 -17
  545. package/pack/generated/codex/agents/devrites-performance-reviewer.toml +19 -18
  546. package/pack/generated/codex/agents/devrites-plan-reviewer.toml +29 -27
  547. package/pack/generated/codex/agents/devrites-retrospector.toml +19 -19
  548. package/pack/generated/codex/agents/devrites-security-auditor.toml +15 -15
  549. package/pack/generated/codex/agents/devrites-simplifier-reviewer.toml +14 -14
  550. package/pack/generated/codex/agents/devrites-slice-wright.toml +52 -51
  551. package/pack/generated/codex/agents/devrites-spec-reviewer.toml +11 -11
  552. package/pack/generated/codex/agents/devrites-strategy-reviewer.toml +21 -21
  553. package/pack/generated/codex/agents/devrites-test-analyst.toml +13 -13
  554. package/pack/generated/codex/skills/devrites-api-interface/SKILL.md +15 -15
  555. package/pack/generated/codex/skills/devrites-audit/SKILL.md +10 -10
  556. package/pack/generated/codex/skills/devrites-browser-proof/SKILL.md +19 -19
  557. package/pack/generated/codex/skills/devrites-debug-recovery/SKILL.md +17 -17
  558. package/pack/generated/codex/skills/devrites-debug-recovery/reference/build-the-loop.md +16 -16
  559. package/pack/generated/codex/skills/devrites-debug-recovery/reference/cleanup-and-classify.md +2 -2
  560. package/pack/generated/codex/skills/devrites-debug-recovery/reference/hypotheses.md +2 -2
  561. package/pack/generated/codex/skills/devrites-debug-recovery/reference/regression-test.md +3 -3
  562. package/pack/generated/codex/skills/devrites-debug-recovery/reference/trace.md +4 -4
  563. package/pack/generated/codex/skills/devrites-doubt/SKILL.md +17 -17
  564. package/pack/generated/codex/skills/devrites-frontend-craft/SKILL.md +20 -20
  565. package/pack/generated/codex/skills/devrites-frontend-craft/reference/craft.md +17 -17
  566. package/pack/generated/codex/skills/devrites-frontend-craft/reference/design-references.md +25 -25
  567. package/pack/generated/codex/skills/devrites-frontend-craft/reference/fullstack.md +6 -6
  568. package/pack/generated/codex/skills/devrites-frontend-craft/reference/quality-standards.md +44 -44
  569. package/pack/generated/codex/skills/devrites-frontend-craft/reference/reuse-first.md +9 -9
  570. package/pack/generated/codex/skills/devrites-frontend-craft/reference/shape.md +13 -13
  571. package/pack/generated/codex/skills/devrites-interview/SKILL.md +30 -30
  572. package/pack/generated/codex/skills/devrites-lib/SKILL.md +21 -21
  573. package/pack/generated/codex/skills/devrites-lib/reference/model-tiers.md +5 -5
  574. package/pack/generated/codex/skills/devrites-lib/reference/parallel-dispatch.md +36 -36
  575. package/pack/generated/codex/skills/devrites-lib/reference/standards/README.md +10 -10
  576. package/pack/generated/codex/skills/devrites-lib/reference/standards/afk-hitl.md +33 -33
  577. package/pack/generated/codex/skills/devrites-lib/reference/standards/agents.md +37 -37
  578. package/pack/generated/codex/skills/devrites-lib/reference/standards/anti-patterns.md +9 -9
  579. package/pack/generated/codex/skills/devrites-lib/reference/standards/ci-cd.md +12 -12
  580. package/pack/generated/codex/skills/devrites-lib/reference/standards/code-review.md +40 -40
  581. package/pack/generated/codex/skills/devrites-lib/reference/standards/coding-style.md +7 -7
  582. package/pack/generated/codex/skills/devrites-lib/reference/standards/context-hygiene.md +24 -25
  583. package/pack/generated/codex/skills/devrites-lib/reference/standards/core.md +23 -23
  584. package/pack/generated/codex/skills/devrites-lib/reference/standards/definition-of-done.md +1 -1
  585. package/pack/generated/codex/skills/devrites-lib/reference/standards/deprecation.md +18 -18
  586. package/pack/generated/codex/skills/devrites-lib/reference/standards/developer-experience.md +29 -29
  587. package/pack/generated/codex/skills/devrites-lib/reference/standards/development-workflow.md +10 -10
  588. package/pack/generated/codex/skills/devrites-lib/reference/standards/documentation.md +4 -4
  589. package/pack/generated/codex/skills/devrites-lib/reference/standards/edge-case-trace.md +1 -1
  590. package/pack/generated/codex/skills/devrites-lib/reference/standards/elicitation.md +26 -26
  591. package/pack/generated/codex/skills/devrites-lib/reference/standards/error-handling.md +4 -4
  592. package/pack/generated/codex/skills/devrites-lib/reference/standards/git-workflow.md +9 -9
  593. package/pack/generated/codex/skills/devrites-lib/reference/standards/hooks.md +3 -3
  594. package/pack/generated/codex/skills/devrites-lib/reference/standards/observability.md +15 -15
  595. package/pack/generated/codex/skills/devrites-lib/reference/standards/patterns.md +8 -8
  596. package/pack/generated/codex/skills/devrites-lib/reference/standards/performance.md +5 -5
  597. package/pack/generated/codex/skills/devrites-lib/reference/standards/principles.md +31 -31
  598. package/pack/generated/codex/skills/devrites-lib/reference/standards/prose-style.md +25 -25
  599. package/pack/generated/codex/skills/devrites-lib/reference/standards/security.md +30 -30
  600. package/pack/generated/codex/skills/devrites-lib/reference/standards/skill-authoring.md +11 -11
  601. package/pack/generated/codex/skills/devrites-lib/reference/standards/spec-grammar.md +30 -30
  602. package/pack/generated/codex/skills/devrites-lib/reference/standards/testing.md +40 -40
  603. package/pack/generated/codex/skills/devrites-lib/reference/standards/tooling.md +26 -26
  604. package/pack/generated/codex/skills/devrites-prose-craft/SKILL.md +8 -8
  605. package/pack/generated/codex/skills/devrites-refresh-indexes/SKILL.md +9 -9
  606. package/pack/generated/codex/skills/devrites-source-driven/SKILL.md +11 -11
  607. package/pack/generated/codex/skills/devrites-ux-shape/SKILL.md +36 -36
  608. package/pack/generated/codex/skills/devrites-ux-shape/reference/brief-template.md +6 -6
  609. package/pack/generated/codex/skills/devrites-ux-shape/reference/visual-direction-probe.md +9 -9
  610. package/pack/generated/codex/skills/rite/SKILL.md +10 -10
  611. package/pack/generated/codex/skills/rite/reference/menu.md +6 -6
  612. package/pack/generated/codex/skills/rite-adopt/SKILL.md +18 -18
  613. package/pack/generated/codex/skills/rite-adopt/reference/adoption.md +9 -9
  614. package/pack/generated/codex/skills/rite-adopt/reference/anti-patterns.md +6 -6
  615. package/pack/generated/codex/skills/rite-autocomplete/SKILL.md +17 -17
  616. package/pack/generated/codex/skills/rite-autocomplete/reference/decision-policy.md +4 -4
  617. package/pack/generated/codex/skills/rite-autocomplete/reference/loop.md +7 -7
  618. package/pack/generated/codex/skills/rite-autocomplete/reference/stop-conditions.md +7 -7
  619. package/pack/generated/codex/skills/rite-build/SKILL.md +25 -25
  620. package/pack/generated/codex/skills/rite-build/reference/afk-discipline.md +9 -9
  621. package/pack/generated/codex/skills/rite-build/reference/anti-patterns.md +6 -6
  622. package/pack/generated/codex/skills/rite-build/reference/checkpoint-protocol.md +14 -14
  623. package/pack/generated/codex/skills/rite-build/reference/checkpoint.md +8 -8
  624. package/pack/generated/codex/skills/rite-build/reference/evidence-standard.md +1 -1
  625. package/pack/generated/codex/skills/rite-build/reference/forge.md +28 -29
  626. package/pack/generated/codex/skills/rite-build/reference/frontend-trigger.md +2 -2
  627. package/pack/generated/codex/skills/rite-build/reference/one-slice-cycle.md +3 -3
  628. package/pack/generated/codex/skills/rite-build/reference/output.md +1 -1
  629. package/pack/generated/codex/skills/rite-build/reference/phase-contract.md +44 -44
  630. package/pack/generated/codex/skills/rite-build/reference/spec-drift-guard.md +1 -1
  631. package/pack/generated/codex/skills/rite-build/reference/tdd.md +6 -6
  632. package/pack/generated/codex/skills/rite-build/reference/wright-dispatch.md +23 -23
  633. package/pack/generated/codex/skills/rite-converge/SKILL.md +20 -20
  634. package/pack/generated/codex/skills/rite-converge/reference/anti-patterns.md +7 -7
  635. package/pack/generated/codex/skills/rite-converge/reference/convergence-assessment.md +14 -14
  636. package/pack/generated/codex/skills/rite-customize/SKILL.md +5 -5
  637. package/pack/generated/codex/skills/rite-define/SKILL.md +28 -28
  638. package/pack/generated/codex/skills/rite-define/reference/anti-patterns.md +5 -5
  639. package/pack/generated/codex/skills/rite-define/reference/gates.md +13 -13
  640. package/pack/generated/codex/skills/rite-define/reference/plan-template.md +1 -1
  641. package/pack/generated/codex/skills/rite-doctor/SKILL.md +14 -14
  642. package/pack/generated/codex/skills/rite-dogfood/SKILL.md +5 -5
  643. package/pack/generated/codex/skills/rite-explain/SKILL.md +25 -25
  644. package/pack/generated/codex/skills/rite-explain/reference/intake.md +16 -16
  645. package/pack/generated/codex/skills/rite-frame/SKILL.md +25 -25
  646. package/pack/generated/codex/skills/rite-frame/reference/failure-modes.md +13 -13
  647. package/pack/generated/codex/skills/rite-handoff/SKILL.md +15 -15
  648. package/pack/generated/codex/skills/rite-learn/SKILL.md +26 -26
  649. package/pack/generated/codex/skills/rite-plan/SKILL.md +24 -24
  650. package/pack/generated/codex/skills/rite-plan/reference/anti-patterns.md +3 -3
  651. package/pack/generated/codex/skills/rite-plan/reference/dependency-graph.md +1 -1
  652. package/pack/generated/codex/skills/rite-plan/reference/replan-and-repair.md +3 -3
  653. package/pack/generated/codex/skills/rite-plan/reference/slicing.md +9 -9
  654. package/pack/generated/codex/skills/rite-plan/reference/task-breakdown.md +3 -3
  655. package/pack/generated/codex/skills/rite-polish/SKILL.md +14 -14
  656. package/pack/generated/codex/skills/rite-polish/reference/anti-patterns.md +8 -8
  657. package/pack/generated/codex/skills/rite-polish/reference/backend-polish.md +13 -13
  658. package/pack/generated/codex/skills/rite-polish/reference/browser-polish-evidence.md +4 -4
  659. package/pack/generated/codex/skills/rite-polish/reference/code.md +26 -26
  660. package/pack/generated/codex/skills/rite-polish/reference/harden-checklist.md +31 -31
  661. package/pack/generated/codex/skills/rite-polish/reference/ui.md +23 -23
  662. package/pack/generated/codex/skills/rite-pov/SKILL.md +6 -6
  663. package/pack/generated/codex/skills/rite-pr-feedback/SKILL.md +5 -5
  664. package/pack/generated/codex/skills/rite-pressure-test/SKILL.md +17 -17
  665. package/pack/generated/codex/skills/rite-prototype/SKILL.md +16 -16
  666. package/pack/generated/codex/skills/rite-prove/SKILL.md +20 -20
  667. package/pack/generated/codex/skills/rite-prove/reference/anti-patterns.md +4 -4
  668. package/pack/generated/codex/skills/rite-prove/reference/browser-proof.md +2 -2
  669. package/pack/generated/codex/skills/rite-prove/reference/failure-triage.md +4 -4
  670. package/pack/generated/codex/skills/rite-prove/reference/proof-ladder.md +6 -6
  671. package/pack/generated/codex/skills/rite-prove/reference/test-command-discovery.md +1 -1
  672. package/pack/generated/codex/skills/rite-quick/SKILL.md +25 -25
  673. package/pack/generated/codex/skills/rite-resolve/SKILL.md +21 -21
  674. package/pack/generated/codex/skills/rite-resolve/reference/answer-protocol.md +7 -7
  675. package/pack/generated/codex/skills/rite-review/SKILL.md +37 -37
  676. package/pack/generated/codex/skills/rite-review/reference/anti-patterns.md +4 -4
  677. package/pack/generated/codex/skills/rite-review/reference/cognitive-load.md +22 -22
  678. package/pack/generated/codex/skills/rite-review/reference/feature-scoped-review.md +2 -2
  679. package/pack/generated/codex/skills/rite-review/reference/five-axis-review.md +8 -8
  680. package/pack/generated/codex/skills/rite-review/reference/nielsen-heuristics.md +14 -14
  681. package/pack/generated/codex/skills/rite-review/reference/performance-checklist.md +14 -14
  682. package/pack/generated/codex/skills/rite-review/reference/security-review.md +9 -9
  683. package/pack/generated/codex/skills/rite-seal/SKILL.md +29 -29
  684. package/pack/generated/codex/skills/rite-seal/reference/anti-patterns.md +8 -8
  685. package/pack/generated/codex/skills/rite-seal/reference/conventions-ledger.md +8 -8
  686. package/pack/generated/codex/skills/rite-seal/reference/final-evidence.md +9 -9
  687. package/pack/generated/codex/skills/rite-seal/reference/go-no-go.md +9 -9
  688. package/pack/generated/codex/skills/rite-seal/reference/phase-contract.md +43 -43
  689. package/pack/generated/codex/skills/rite-ship/SKILL.md +15 -15
  690. package/pack/generated/codex/skills/rite-ship/reference/anti-patterns.md +5 -5
  691. package/pack/generated/codex/skills/rite-ship/reference/close-out.md +2 -2
  692. package/pack/generated/codex/skills/rite-ship/reference/design-memory.md +22 -22
  693. package/pack/generated/codex/skills/rite-ship/reference/git-ship.md +10 -10
  694. package/pack/generated/codex/skills/rite-ship/reference/ledger.md +9 -9
  695. package/pack/generated/codex/skills/rite-ship/reference/rollout.md +11 -11
  696. package/pack/generated/codex/skills/rite-ship/reference/ship-template.md +1 -1
  697. package/pack/generated/codex/skills/rite-spec/SKILL.md +48 -48
  698. package/pack/generated/codex/skills/rite-spec/reference/acceptance-criteria.md +4 -4
  699. package/pack/generated/codex/skills/rite-spec/reference/anti-patterns.md +6 -6
  700. package/pack/generated/codex/skills/rite-spec/reference/interview-patterns.md +3 -3
  701. package/pack/generated/codex/skills/rite-spec/reference/investigation.md +21 -21
  702. package/pack/generated/codex/skills/rite-spec/reference/question-protocol.md +9 -9
  703. package/pack/generated/codex/skills/rite-spec/reference/references-intake.md +8 -8
  704. package/pack/generated/codex/skills/rite-spec/reference/spec-checklists.md +19 -19
  705. package/pack/generated/codex/skills/rite-status/SKILL.md +16 -16
  706. package/pack/generated/codex/skills/rite-temper/SKILL.md +32 -32
  707. package/pack/generated/codex/skills/rite-temper/reference/anti-patterns.md +11 -11
  708. package/pack/generated/codex/skills/rite-temper/reference/review-dimensions.md +20 -20
  709. package/pack/generated/codex/skills/rite-temper/reference/scope-modes.md +16 -16
  710. package/pack/generated/codex/skills/rite-temper/reference/significance.md +10 -10
  711. package/pack/generated/codex/skills/rite-temper/reference/strategy-template.md +14 -14
  712. package/pack/generated/codex/skills/rite-vet/SKILL.md +34 -34
  713. package/pack/generated/codex/skills/rite-vet/reference/anti-patterns.md +14 -14
  714. package/pack/generated/codex/skills/rite-vet/reference/artifacts.md +10 -10
  715. package/pack/generated/codex/skills/rite-vet/reference/cross-model.md +9 -9
  716. package/pack/generated/codex/skills/rite-vet/reference/depth.md +14 -14
  717. package/pack/generated/codex/skills/rite-vet/reference/eng-lenses.md +9 -9
  718. package/pack/generated/codex/skills/rite-vet/reference/review-axes.md +28 -28
  719. package/pack/generated/codex/skills/rite-zoom-out/SKILL.md +21 -21
  720. package/package.json +2 -2
  721. package/scripts/build-binaries.sh +1 -1
  722. package/scripts/build-host-artifacts.sh +1 -1
  723. package/scripts/build-release-tarball.sh +1 -1
  724. package/scripts/check-cross-refs.py +8 -8
  725. package/scripts/check-invocation-integrity.py +4 -4
  726. package/scripts/check-no-global-writes.sh +2 -2
  727. package/scripts/check-reply-contract.sh +1 -1
  728. package/scripts/check-rule-uniqueness.sh +2 -2
  729. package/scripts/codex-generate.sh +5 -5
  730. package/scripts/devrites-detect.sh +33 -33
  731. package/scripts/eval-runner.py +7 -7
  732. package/scripts/grade-feature.sh +14 -14
  733. package/scripts/install-lib.sh +2 -2
  734. package/scripts/pin.sh +12 -12
  735. package/scripts/run-behavioral-evals.sh +12 -12
  736. package/scripts/run-evals.sh +1 -1
  737. package/scripts/run-outcome-evals.sh +12 -12
  738. package/scripts/scan-pack-security.py +4 -4
  739. package/scripts/scan-supply-chain-iocs.py +7 -7
  740. package/scripts/skills-inventory.mjs +7 -8
  741. package/scripts/sync-version.sh +2 -2
  742. package/scripts/validate-workflow-security.py +12 -6
  743. package/scripts/validate-workspace-schema.py +2 -2
  744. package/scripts/validate.sh +7 -7
package/README.md CHANGED
@@ -2,611 +2,360 @@
2
2
  <img src="images/logo.png" alt="DevRites">
3
3
  </p>
4
4
 
5
+ # DevRites
5
6
 
6
- **If you only remember one thing:** `SPEC -> DEFINE -> VET -> BUILD -> PROVE -> POLISH -> REVIEW -> SEAL -> SHIP`. Seal decides; Ship mutates git. Build one slice at a time; Autocomplete is opt-in and starts from a clean baseline. DevRites installs via `npx devrites ...`; Claude/Codex support is generated project-local surface, not plugin distribution.
7
-
8
- **Per-feature workspace on disk.** Every feature gets its own `.devrites/work/<slug>/`
9
- directory: a compact workspace map → `brief.md` + `spec.md` → (`strategy.md`) →
10
- `architecture.md` + `plan.md` + `tasks.md` + `traceability.md` → (`eng-review.md` +
11
- `test-plan.md`) → `state.md` → `evidence.md` (plus `decisions.md`, `assumptions.md`,
12
- `drift.md`, `questions.md`, `touched-files.md`, `design-brief.md`,
13
- `browser-evidence.md`, `review.md`, `seal.md`, `ship.md`, `handoff.md`, and
14
- `references/`; `strategy.md` is from the optional `/rite-temper`, `eng-review.md` +
15
- `test-plan.md` from `/rite-vet`). When the task ships it is archived intact to
16
- `.devrites/archive/<slug>/`. When you `/clear`, the next agent picks up from those
17
- files — no chat-context summary required. **Spec Drift Guard** catches the wrong turn
18
- before it costs you a day. **AFK mode** runs unattended without silently accepting
19
- destructive migrations, auth changes, or red tests. **`type-GO`** demands a literal
20
- typed confirmation before any irreversible commit / push / tag. **Project principles**
21
- (`.devrites/principles.md`) — the invariants you declare once ("money in integer cents",
22
- "no PII in logs", "never break the v1 API") — then gate every plan, build, and seal, with a
23
- recorded-exception escape hatch instead of silent work-arounds.
7
+ DevRites is a repository-local workflow for building software with Claude Code
8
+ or Codex. It turns a feature request into a spec, a sliced plan, working code,
9
+ recorded proof, a release decision, and an explicit ship step.
24
10
 
25
- ```
26
- .devrites/
27
- ACTIVE # which feature is active
28
- AFK # presence = AFK mode; YAML body sets max_slices / notify / allow_gates
29
- principles.md # project invariants — authored, prescriptive, GATING (the 4th knowledge layer)
30
- conventions.md # learned project idioms — descriptive, an untrusted prior
31
- learnings.md # dismissed-finding classes + dead ends — suppresses recurring false positives
32
- work/<slug>/
33
- README.md brief.md spec.md references.md references/ # workspace map + spec
34
- strategy.md # temper (optional)
35
- architecture.md flows.md plan.md tasks.md traceability.md # define
36
- eng-review.md test-plan.md # vet
37
- forge-report.md # build (only a Forge: yes slice — competed candidates → winner)
38
- state.md questions.md decisions.md assumptions.md drift.md
39
- touched-files.md evidence.md browser-evidence.md design-brief.md
40
- polish-report.md review.md seal.md ship.md handoff.md
41
- archive/<slug>/ # shipped task, moved here intact (all .md preserved)
42
- ```
43
-
44
- **Stop your AI from shipping half-baked code.** DevRites turns Claude Code or Codex into a
45
- disciplined senior engineer — one that asks the right questions before writing a line,
46
- ships features you can actually trust, and refuses to claim "done" without proof.
47
-
48
- **Two run modes, same workflow:**
49
-
50
- - **HITL** (default, human-in-the-loop) — you're at the keyboard. Slices marked
51
- `Mode: HITL` pause **before** code is written at a typed checkpoint (`advisory` /
52
- `validating` / `blocking` / `escalating`); resume on
53
- [`/rite-resolve <qid> "<answer>"`](pack/.claude/skills/rite-resolve/SKILL.md).
54
- - **AFK** (away-from-keyboard) — drop `.devrites/AFK` in the project. AFK slices run
55
- unattended; discretionary pauses downgrade to advisory entries in `questions.md` so
56
- the loop keeps moving. **Destructive migrations, auth/authz changes, public-API
57
- breaks, and red tests/types/lint always pause regardless** — AFK never silently
58
- accepts irreversible risk. Optional `max_slices` caps the loop; optional `notify:`
59
- pings your phone on a pause.
60
-
61
- Jump to the full contract → [Modes — HITL & AFK](#modes--hitl--afk).
62
-
63
- Every phase is available **two ways**: the menu form `/rite <verb>` (one entry,
64
- discoverable from `/rite`) and the direct shortcut `/rite-<verb>` (muscle
65
- memory). Both hit the same skill — `/rite spec foo` ≡ `/rite-spec foo`.
66
-
67
- | # | Phase | Menu form | Direct shortcut | Does |
68
- |---|---|---|---|---|
69
- | 1 | SPEC | `/rite spec` | [`/rite-spec`](pack/.claude/skills/rite-spec/SKILL.md) | investigate + write spec.md |
70
- | — | TEMPER | `/rite temper` | [`/rite-temper`](pack/.claude/skills/rite-temper/SKILL.md) | _optional, big features_ — strategic review: scope mode + pre-mortem, hardens the spec (always run by autocomplete) |
71
- | 2 | PLAN | `/rite define` | [`/rite-define`](pack/.claude/skills/rite-define/SKILL.md) | spec → plan + slices (each tagged AFK \| HITL + gate) |
72
- | — | VET | `/rite vet` | [`/rite-vet`](pack/.claude/skills/rite-vet/SKILL.md) | _mandatory, every plan_ — engineering review: scope · architecture · tests · perf, hardens the plan + writes `test-plan.md`; depth scales from light to full |
73
- | 3 | BUILD ×N | `/rite build` | [`/rite-build`](pack/.claude/skills/rite-build/SKILL.md) | one slice, then stop (HITL slices pause pre-code) |
74
- | — | CONVERGE | `/rite converge` | [`/rite-converge`](pack/.claude/skills/rite-converge/SKILL.md) | _recovery_ — assess live code vs intent, append the remaining work as new slices (resumed / adopted / stalled feature) |
75
- | 4 | PROVE | `/rite prove` | [`/rite-prove`](pack/.claude/skills/rite-prove/SKILL.md) | tests + browser proof |
76
- | 5 | POLISH | `/rite polish` | [`/rite-polish`](pack/.claude/skills/rite-polish/SKILL.md) | code + UI polish |
77
- | 6 | REVIEW | `/rite review` | [`/rite-review`](pack/.claude/skills/rite-review/SKILL.md) | multi-axis, parallel |
78
- | 7 | SEAL | `/rite seal` | [`/rite-seal`](pack/.claude/skills/rite-seal/SKILL.md) | GO / NO-GO decision (no git) |
79
- | 8 | SHIP | `/rite ship` | [`/rite-ship`](pack/.claude/skills/rite-ship/SKILL.md) | type-GO + commit/push/tag, then archive + close |
80
- | — | RESUME | `/rite resolve` | [`/rite-resolve`](pack/.claude/skills/rite-resolve/SKILL.md) | answer a HITL gate, clears `Awaiting human`, resumes |
81
- | — | AUTO | `/rite autocomplete` | [`/rite-autocomplete`](pack/.claude/skills/rite-autocomplete/SKILL.md) | run the whole lifecycle unattended (`--ship` to push) |
82
-
83
- Common utilities that sit outside the main lifecycle:
84
-
85
- | Utility | Menu form | Direct shortcut | Does |
86
- |---|---|---|---|
87
- | POV | `/rite pov` | [`/rite-pov`](pack/.claude/skills/rite-pov/SKILL.md) | project-grounded adopt / switch / reject verdict for an external option |
88
- | DOGFOOD | `/rite dogfood` | [`/rite-dogfood`](pack/.claude/skills/rite-dogfood/SKILL.md) | exploratory browser QA for real user journeys |
89
- | PR FEEDBACK | `/rite pr-feedback` | [`/rite-pr-feedback`](pack/.claude/skills/rite-pr-feedback/SKILL.md) | resolve GitHub PR review threads with evidence |
90
-
91
- If implementation reveals the plan is wrong, the **Spec Drift Guard** stops
92
- the build, records the drift, asks you when product behavior changes, and
93
- routes through [`/rite-plan repair`](pack/.claude/skills/rite-plan/SKILL.md)
94
- before resuming.
95
-
96
- ```mermaid
97
- flowchart LR
98
- S[/rite-spec/] --> D[/rite-define/] --> V[/rite-vet/] --> B[/rite-build ×N/] --> P[/rite-prove/] --> Po[/rite-polish/] --> R[/rite-review/] --> Sl[/rite-seal/]
99
- S -.->|big feature| T[/rite-temper/] -.-> D
100
- Sl -->|GO| Sh[/rite-ship/]
101
- Sh -->|type-GO| Ship([ship: commit · push · tag])
102
- B -.->|resumed · adopted · stalled| C[/rite-converge/] -.-> B
103
- B -.->|Spec Drift Guard| Re[/rite-plan repair/]
104
- Re --> B
105
-
106
- classDef phase fill:#1f2937,stroke:#60a5fa,color:#f9fafb
107
- classDef ship fill:#064e3b,stroke:#34d399,color:#ecfdf5
108
- classDef repair fill:#4c1d95,stroke:#a78bfa,color:#f5f3ff
109
- class S,D,V,B,P,Po,R,Sl,Sh,T phase
110
- class Ship ship
111
- class C,Re repair
112
- ```
113
-
114
- Full diagram set (lifecycle, polish orchestrator, review fan-out, debug loop,
115
- rules carrier, workspace state, namespace map) →
116
- [`docs/flow.md`](docs/flow.md).
117
-
118
- **Status:** [`v3.0.5`](https://github.com/ViktorsBaikers/DevRites/releases/tag/v3.0.5) — see [`CHANGELOG.md`](CHANGELOG.md) for release notes.
119
-
120
- ## Contents
11
+ The work lives under `.devrites/`, not in chat history. A later session or a
12
+ different agent can read the same plan, decisions, state, and evidence before it
13
+ continues.
121
14
 
122
- - [Why distributed skills](#why-distributed-skills-not-one-engine)
123
- - [Modes — HITL & AFK](#modes--hitl--afk)
124
- - [Install](#install) — [npx / bash](#installing) · [upgrade](#upgrading-an-existing-install)
125
- - [Recommended setup](#recommended-setup-optional-but-devrites-is-much-sharper-with-it) — codegraph · graphify · Playwright MCP
126
- - [Skills](#skills) — 42 total · full catalogue in [`docs/skills.md`](docs/skills.md)
127
- - [Typical workflow](#typical-workflow) · [Worked examples](docs/usage.md)
128
- - [Engineering rules](#engineering-rules) · [Browser proof ladder](#browser-proof-ladder) · [Frontend & fullstack](#frontend--fullstack)
129
- - [Safety & scope](#safety--scope) · [Security model](#security-model)
130
- - [Layout](#layout) · [Community & quality](#community--quality) · [Release pipeline](docs/release.md) · [License](#license)
15
+ The core path is:
131
16
 
132
- **Companion docs:**
133
- [architecture](docs/architecture.md) ·
134
- [skills catalogue](docs/skills.md) ·
135
- [command map](docs/command-map.md) ·
136
- [flow diagrams](docs/flow.md) ·
137
- [orchestration](docs/orchestration.md) ·
138
- [usage examples](docs/usage.md) ·
139
- [release pipeline](docs/release.md) ·
140
- [engineering rules](pack/.claude/skills/devrites-lib/reference/standards/README.md) · [quick reference](docs/quick-reference.md)
17
+ `SPEC -> DEFINE -> VET -> BUILD -> PROVE -> POLISH -> REVIEW -> SEAL -> SHIP`
141
18
 
142
- ## Why distributed skills, not one `/engine`
19
+ Seal decides whether the feature is ready without changing git. Ship owns the
20
+ final commit, push, and tag, and it requires a typed `GO` confirmation.
21
+ Unattended runs may create local WIP checkpoint commits along the way, but only
22
+ Ship collapses and pushes them.
143
23
 
144
- A single command that does everything loads every phase's instructions at once, creates
145
- constant context pressure, and hides the intent of each step. DevRites splits the
146
- lifecycle into 21 small public skills (`rite-*`) that each own one phase and load only
147
- what that phase needs — including [`/rite-autocomplete`](pack/.claude/skills/rite-autocomplete/SKILL.md),
148
- the unattended orchestrator that drives the full cycle end-to-end — plus internal
149
- specialists (`devrites-*`) that fire on triggers.
24
+ **Status:** [`v3.0.7`](https://github.com/ViktorsBaikers/DevRites/releases/tag/v3.0.7): see [`CHANGELOG.md`](CHANGELOG.md) for release notes.
150
25
 
151
- **Naming:** the `devrites-` prefix is a **namespace** for collision avoidance against
152
- bundled Claude Code skill names (`prototype`, `handoff`, `triage`, `diagnose`, …) —
153
- it does not signal "internal." Visibility is governed by each skill's
154
- `user-invocable:` flag, while `disable-model-invocation` independently controls
155
- automatic loading. See
156
- [`docs/flow.md` § Public vs internal namespace](docs/flow.md#8-public-vs-internal-namespace).
26
+ ## Quick start
157
27
 
158
- Full rationale: [`docs/architecture.md`](docs/architecture.md).
28
+ ### 1. Install DevRites
159
29
 
160
- ## Install
161
-
162
- DevRites installs its host artifacts **into a project** — it never writes skills,
163
- agents, or hooks to `~/.claude` or `~/.codex`. Install with `npx` (recommended)
164
- or the `curl | bash` bootstrap. Both delegate to the same engine-owned install
165
- semantics and ship Claude Code/Codex skills, agents, standards, hooks, and aliases;
166
- the optional shared engine binary is the only global artifact.
167
-
168
- ### Installing
169
-
170
- **Fastest — `npx` (Node 18+):**
30
+ Run this from the root of your project. Node.js 18 or later is required.
171
31
 
172
32
  ```bash
173
- # Install the full pack into the current project
174
33
  npx devrites@latest
175
-
176
- # Into a specific project, or preview first
177
- npx devrites@latest --target /path/to/your/project
178
- npx devrites@latest --dry-run
179
-
180
- # Upgrade or remove later
181
- npx devrites@latest update
182
- npx devrites@latest uninstall
183
34
  ```
184
35
 
185
- `npx devrites` is a native Node 18+ shim over the engine-owned installer. The host
186
- payload is bundled and pinned to the package version you request (`@latest` or
187
- an exact published version). To launch the engine, the shim first tries the matching checksummed
188
- release binary, then a local Go build, then an existing `devrites-engine`. It does
189
- not invoke `install.sh` and does not require Bash. Installed Claude/Codex artifacts
190
- stay in the target project; unless `--no-binary` is set, the installer may also
191
- place the shared engine binary in the configured user/system bin directory.
192
- Prebuilt binaries ship for macOS arm64/amd64, Linux arm64/amd64, and Windows amd64.
36
+ The installer adds project-local support for Claude Code and Codex. It does not
37
+ write skills, agents, or hooks to `~/.claude` or `~/.codex`.
193
38
 
194
- **One-liner over the network** — no `git clone` or Node required:
39
+ ### 2. Start a feature
195
40
 
196
- ```bash
197
- # Install latest release into the current directory
198
- curl -fsSL https://raw.githubusercontent.com/ViktorsBaikers/DevRites/main/install.sh | bash
199
-
200
- # Install into a specific project
201
- curl -fsSL https://raw.githubusercontent.com/ViktorsBaikers/DevRites/main/install.sh | bash -s -- --target /path/to/your/project
41
+ In Claude Code:
202
42
 
203
- # Preview (no changes)
204
- curl -fsSL https://raw.githubusercontent.com/ViktorsBaikers/DevRites/main/install.sh | bash -s -- --dry-run
205
-
206
- # Pin to a specific release
207
- curl -fsSL https://raw.githubusercontent.com/ViktorsBaikers/DevRites/main/install.sh | DEVRITES_REF=vX.Y.Z bash
43
+ ```text
44
+ /rite-spec add-csv-export
208
45
  ```
209
46
 
210
- The script is self-bootstrapping: when piped through `bash` it auto-downloads the latest
211
- release tarball (or the `main` source archive as fallback) into `/tmp` and re-execs from
212
- there. Requires `curl` and `tar`. After bootstrap, install/update/uninstall semantics
213
- run through `devrites-engine`; the shell scripts only acquire a bundle/binary and pass
214
- arguments through. Agent files stay project-local and global agent homes are refused. By
215
- default the engine downloads or builds a verified `devrites-engine` control-plane binary
216
- and writes it to `/usr/local/bin` or `~/.local/bin`; use `--no-binary` or
217
- `DEVRITES_NO_BINARY=1` to skip that global bin install.
218
-
219
- **From a local checkout** (same script, no network needed):
47
+ In Codex:
220
48
 
221
- ```bash
222
- git clone https://github.com/ViktorsBaikers/DevRites devrites && cd devrites
223
- ./install.sh --target /path/to/your/project # or run from inside the project
224
- ./install.sh --dry-run # preview, change nothing
49
+ ```text
50
+ $rite-spec add-csv-export
225
51
  ```
226
52
 
227
- Common flags:
53
+ DevRites investigates the repository, asks about gaps, and writes the feature
54
+ spec under `.devrites/work/add-csv-export/`. For an existing codebase that needs
55
+ an onboarding pass first, use `/rite-adopt` in Claude Code or `$rite-adopt` in
56
+ Codex.
228
57
 
229
- | Flag | Effect |
230
- |---|---|
231
- | `--target DIR` | Install into DIR (default: current directory) |
232
- | `--dry-run` | Show planned file operations and exit |
233
- | `--force` | Overwrite existing non-DevRites files |
234
- | `--no-agents` | Skip the review subagents |
235
- | `--no-codex` | Skip Codex support files (`.agents/skills`, `.codex/agents`, `AGENTS.md`) |
236
- | `--no-skills` | Skip skills and bundled engineering standards |
237
- | `--no-binary` | Skip the global `devrites-engine` control-plane binary |
238
- | `--no-rules` | Deprecated no-op; standards ship inside `devrites-lib` |
239
- | `--rules-only` | Deprecated no-op; installs normally for compatibility |
240
- | `--short-aliases=all` | Add `/define`, `/build`, `/prove`, `/seal` short aliases (off by default) |
241
-
242
- Every installed project file is recorded in `.claude/devrites.manifest` (with the
243
- installed version and the original install flags in the header). `./uninstall.sh`
244
- removes exactly those files (and prunes empty dirs) plus the shared `devrites-engine`
245
- binary unless `--keep-binary` is passed — your feature data in `.devrites/work/` and
246
- `.devrites/ACTIVE` is preserved.
247
-
248
- ### Upgrading an existing install
249
-
250
- **One-liner over the network**:
58
+ ### 3. Follow the next recorded step
251
59
 
252
- ```bash
253
- # Upgrade the install in the current directory
254
- curl -fsSL https://raw.githubusercontent.com/ViktorsBaikers/DevRites/main/update.sh | bash
60
+ Use `/rite-status` in Claude Code or `$rite-status` in Codex. Status reads the
61
+ active workspace and reports the current phase, open questions, evidence, and
62
+ next command.
255
63
 
256
- # Upgrade an install elsewhere
257
- curl -fsSL https://raw.githubusercontent.com/ViktorsBaikers/DevRites/main/update.sh | bash -s -- --target /path/to/proj
64
+ ## How the lifecycle works
258
65
 
259
- # Just check (exit 10 = update available, 0 = current)
260
- curl -fsSL https://raw.githubusercontent.com/ViktorsBaikers/DevRites/main/update.sh | bash -s -- --check
261
- ```
262
-
263
- From a local checkout:
66
+ Claude Code supports both `/rite <verb>` and `/rite-<verb>`. Codex uses the same
67
+ forms with `$`: `$rite <verb>` and `$rite-<verb>`. The menu and direct forms run
68
+ the same skill.
264
69
 
265
- ```bash
266
- ./update.sh # upgrade install in current directory
267
- ./update.sh --target /path/to/proj # upgrade install elsewhere
268
- ./update.sh --check # report installed vs latest, change nothing
269
- ./update.sh --to vX.Y.Z # pin to a specific release tag
270
- ./update.sh --pre # allow pre-release tags
271
- ./update.sh --force # reinstall even when already current
70
+ | Stage | Direct command | What happens |
71
+ |---|---|---|
72
+ | Spec | [`/rite-spec <feature>`](pack/.claude/skills/rite-spec/SKILL.md) | Investigates the request and codebase, closes product gaps, and writes `spec.md`. |
73
+ | Define | [`/rite-define`](pack/.claude/skills/rite-define/SKILL.md) | Turns the spec into architecture, a plan, traceability, and vertical task slices. |
74
+ | Vet | [`/rite-vet`](pack/.claude/skills/rite-vet/SKILL.md) | Reviews every plan before implementation. The depth scales with the risk. |
75
+ | Build | [`/rite-build`](pack/.claude/skills/rite-build/SKILL.md) | Implements and verifies exactly one slice, then stops. Repeat for each slice. |
76
+ | Prove | [`/rite-prove`](pack/.claude/skills/rite-prove/SKILL.md) | Runs the completed feature's tests, build, runtime checks, and browser proof when UI is involved. |
77
+ | Polish | [`/rite-polish`](pack/.claude/skills/rite-polish/SKILL.md) | Cleans up the touched code and normalizes the UI when needed. |
78
+ | Review | [`/rite-review`](pack/.claude/skills/rite-review/SKILL.md) | Runs feature-scoped review across the relevant engineering axes. |
79
+ | Seal | [`/rite-seal`](pack/.claude/skills/rite-seal/SKILL.md) | Produces a final `GO` or `NO-GO` decision without changing git. |
80
+ | Ship | [`/rite-ship`](pack/.claude/skills/rite-ship/SKILL.md) | On `GO`, asks for typed confirmation, performs the approved git actions, and archives the workspace. |
81
+
82
+ Some work needs a different route:
83
+
84
+ - [`/rite-quick`](pack/.claude/skills/rite-quick/SKILL.md) handles a small,
85
+ reversible change without creating a full feature workspace.
86
+ - [`/rite-temper`](pack/.claude/skills/rite-temper/SKILL.md) challenges the
87
+ scope and failure modes of a larger spec before Define.
88
+ - [`/rite-converge`](pack/.claude/skills/rite-converge/SKILL.md) compares a
89
+ resumed, adopted, or stalled feature with the live code and adds the missing
90
+ work as new slices.
91
+ - [`/rite-autocomplete`](pack/.claude/skills/rite-autocomplete/SKILL.md) runs
92
+ the lifecycle unattended. With `--ship`, it auto-confirms the final typed
93
+ `GO`; without that flag, it stops and waits for you.
94
+ - [`/rite`](pack/.claude/skills/rite/SKILL.md) shows the command menu.
95
+
96
+ The [command map](docs/command-map.md) covers every command, trigger, input, and
97
+ output. The [worked examples](docs/usage.md) show normal features, plan drift,
98
+ UI work, backend work, and mid-flight handoffs.
99
+
100
+ ## What DevRites records
101
+
102
+ Each feature gets a directory under `.devrites/work/<slug>/`. Shipped
103
+ workspaces move intact to `.devrites/archive/<slug>/` so future work can inspect
104
+ the original decisions and proof.
105
+
106
+ ```text
107
+ .devrites/
108
+ ACTIVE # active feature slug
109
+ AFK # optional unattended-mode configuration
110
+ principles.md # project rules that gate the workflow
111
+ conventions.md # observed project patterns
112
+ learnings.md # recurring lessons and known false positives
113
+ work/<slug>/
114
+ brief.md
115
+ spec.md
116
+ architecture.md
117
+ plan.md
118
+ tasks.md
119
+ state.md
120
+ decisions.md
121
+ questions.md
122
+ traceability.md
123
+ evidence.md
124
+ review.md
125
+ seal.md
126
+ ship.md
127
+ archive/<slug>/
272
128
  ```
273
129
 
274
- `update.sh` resolves the requested/latest release during bootstrap, acquires its
275
- bundle and engine, then delegates to `devrites-engine update`. The engine replays
276
- the original flags from `.claude/devrites.manifest` with force semantics.
277
- `.devrites/` (active feature and work) is preserved because update only manages
278
- the installed artifact set.
130
+ Some phases add focused artifacts such as `strategy.md`, `test-plan.md`,
131
+ `design-brief.md`, `browser-evidence.md`, `polish-report.md`, `drift.md`, or
132
+ `handoff.md`. See the [workspace contract](docs/orchestration.md) for the full
133
+ state model.
279
134
 
280
- ### Uninstalling
135
+ ## Safety rules
281
136
 
282
- ```bash
283
- # Network one-liner
284
- curl -fsSL https://raw.githubusercontent.com/ViktorsBaikers/DevRites/main/uninstall.sh | bash
285
- curl -fsSL https://raw.githubusercontent.com/ViktorsBaikers/DevRites/main/uninstall.sh | bash -s -- --target /path
286
-
287
- # Local checkout
288
- ./uninstall.sh # remove DevRites from the current project
289
- ./uninstall.sh --target /path/to/proj
290
- ./uninstall.sh --dry-run # preview, change nothing
291
- ```
137
+ - **Plan before code.** Spec, Define, and Vet settle the intended behavior and
138
+ implementation path before Build starts.
139
+ - **Build one slice.** `/rite-build` implements one vertical slice and records
140
+ its proof before returning control.
141
+ - **Stop on drift.** If implementation no longer matches the plan, the Spec
142
+ Drift Guard records the mismatch in `drift.md` and routes through
143
+ [`/rite-plan repair`](pack/.claude/skills/rite-plan/SKILL.md).
144
+ - **Prove claims.** Tests, commands, output, and opened screenshots support
145
+ completion claims. A screenshot path by itself is not proof.
146
+ - **Separate the decision from the action.** Seal makes the release decision.
147
+ Ship performs the final git actions only after the seal passes and you type
148
+ `GO`.
149
+ - **Stay inside the feature.** Review, security, simplification, and polish do
150
+ not expand into unrelated project cleanup.
292
151
 
293
- Removes only files listed in `.claude/devrites.manifest` and prunes empty dirs,
294
- including Codex mirrors when they were installed.
295
- `.devrites/work/` (your feature data) is always preserved.
152
+ Project principles in `.devrites/principles.md` take precedence over learned
153
+ conventions and the bundled engineering standards. A feature can record a
154
+ deliberate exception instead of silently ignoring a project rule.
296
155
 
297
- ## Recommended setup (optional, but DevRites is much sharper with it)
156
+ ## HITL and AFK modes
298
157
 
299
- DevRites runs with zero extra tooling, but three tools make it meaningfully better.
300
- **Install and configure them in your project before you start** — DevRites detects each
301
- one and **degrades gracefully** when it's absent.
158
+ ### HITL is the default
302
159
 
303
- | Tool | What it gives DevRites | Set up |
304
- |---|---|---|
305
- | **codegraph** | A code-intelligence index. `/rite-spec`, `/rite-define`, and `/rite-plan` use it to understand structure, **placement**, callers, and **impact** cheaply — deeper investigation and sharper specs, at a fraction of the tokens of reading files. | Build the index in your project (e.g. `codegraph init`) so its `codegraph_*` tools / a `.codegraph/` are present. |
306
- | **graphify** | A codebase → knowledge-graph (`graphify-out/`) — same benefit for "where is X / what calls Y / what would Z break". | Generate it for your project (the `/graphify` skill). |
307
- | **[Playwright MCP](https://github.com/microsoft/playwright-mcp)** | Drives a real browser so `/rite-prove` and `/rite-polish` capture **real UI evidence** — screenshots, console, network, responsive — the top rung of the proof ladder (paired with **Chrome DevTools MCP** for Lighthouse / perf trace). | Configure the Playwright MCP server in Claude Code; DevRites detects it, never installs it. |
160
+ When DevRites needs a decision, it presents ranked options, records the chosen
161
+ answer in the workspace, and continues. If the current turn must stop, the
162
+ question remains in `questions.md`; answer it later with
163
+ [`/rite-resolve <qid> "<answer>"`](pack/.claude/skills/rite-resolve/SKILL.md).
164
+ Codex uses the equivalent `$rite-resolve` form.
308
165
 
309
- Without them, DevRites reads files instead of a code graph and uses Claude Code's built-in
310
- `/run`+`/verify` (or documented manual steps) instead of a browser. With them: deeper
311
- investigation, cheaper context, and real browser proof. None are required.
166
+ ### AFK runs the safe part unattended
312
167
 
313
- ## Skills
168
+ Create `.devrites/AFK` to let permitted gates select their recommended option
169
+ and continue:
314
170
 
315
- The pack ships **42 skills total** — the `rite` menu, 29 user-invocable `rite-*`
316
- workflow + utility skills, 11 model-invoked `devrites-*` specialists, plus the internal
317
- `devrites-lib` reference library. The installed `devrites-engine` owns workflow control;
318
- the npm `devrites` shim owns install/update/uninstall and proxies engine subcommands.
319
- `rite-*` and `devrites-*` are namespaces, not visibility rules: frontmatter is
320
- authoritative. Workspace-operating lifecycle skills read `core.md` in step 0 and disclose
321
- phase rules on demand; compact utilities keep their narrower contract local.
171
+ ```yaml
172
+ max_slices: 10
173
+ allow_gates: [advisory]
174
+ ```
322
175
 
323
- **Claude Code invocation.** Every public `rite-*` workflow responds to **both** `/rite <verb>` (through the `rite` menu/router) and `/rite-<verb>` (direct shortcut). The forms are equivalent: `/rite build slice-2` ≡ `/rite-build slice-2`. Use whichever reads more naturally. Installation merges DevRites event hooks into an existing `.claude/settings.json` without replacing user entries; an existing non-DevRites `statusLine` is preserved with a warning because Claude exposes one status-line slot.
176
+ The workflow treats this file as configuration and never rewrites it.
177
+ `max_slices` seeds the remaining budget in the active feature's `state.md`; the
178
+ engine decrements that state after each built slice. Delete `.devrites/AFK` to
179
+ return to HITL.
324
180
 
325
- **Codex invocation.** The installer mirrors the same skills to `.agents/skills/`, mirrors DevRites rules to `.agents/skills/devrites-lib/reference/standards/`, injects a Codex compatibility block after each skill's front matter, generates project custom agents in `.codex/agents/`, installs Codex hooks in `.codex/hooks.json`, and creates or merges the needed Codex guidance into `AGENTS.md`. If `AGENTS.md` already exists, DevRites adds a marked block instead of replacing your guidance. In Codex, invoke DevRites via `$rite`, `$rite-spec`, or `/skills`; if you prefer a Claude-only footprint, install with `--no-codex`. Codex must trust the project `.codex/` layer and review the hooks via `/hooks` before non-managed hooks run.
181
+ AFK still pauses for blocking or escalating gates, destructive migrations,
182
+ auth or authorization changes, public API breaks, external service contract
183
+ changes, filesystem destruction outside the workspace, and red tests, types,
184
+ or lint. The full pause and gate contract is in
185
+ [`afk-hitl.md`](pack/.claude/skills/devrites-lib/reference/standards/afk-hitl.md).
326
186
 
327
- **Rules in Codex.** DevRites engineering rules are mirrored as Markdown under
328
- `.agents/skills/devrites-lib/reference/standards/` because they are workflow/craft
329
- instructions, not Codex command-approval `.rules` files. Generated guidance points at the
330
- mirror; each skill's own contract decides whether `core.md` or a conditional standard loads.
187
+ ## Install, update, and remove
331
188
 
332
- **Custom pinned aliases** (optional). Add your own one-word shortcuts to any `rite-*` skill at runtime with `scripts/pin.sh` — useful for muscle-memory commands like `/b` → `/rite-build` or `/ship` → `/rite-ship`. The wrapper is a thin delegate (same shape the installer uses for `--short-aliases=all`); pinned aliases are manifest-tracked so `./uninstall.sh` cleans them up.
189
+ ### npm
333
190
 
334
191
  ```bash
335
- ./scripts/pin.sh add b rite-build # /b == /rite-build
336
- ./scripts/pin.sh add ship rite-ship # /ship == /rite-ship
337
- ./scripts/pin.sh list # show currently-pinned aliases
338
- ./scripts/pin.sh remove b # drop the alias
339
- ```
192
+ # Install in the current project
193
+ npx devrites@latest
340
194
 
341
- Pinned aliases live at `.claude/skills/<alias>/SKILL.md` and mirror to `.agents/skills/<alias>/SKILL.md` when Codex support is installed. The script refuses `rite-*` names, unknown targets, and global agent homes.
195
+ # Install elsewhere or preview the changes
196
+ npx devrites@latest --target /path/to/project
197
+ npx devrites@latest --dry-run
342
198
 
343
- ### Full skill + agent inventory
199
+ # Update or remove an existing installation
200
+ npx devrites@latest update
201
+ npx devrites@latest uninstall
202
+ ```
344
203
 
345
- **Public command skills (30: `rite` + 29 `rite-*`)** — slash-command surface:
204
+ Useful install flags:
346
205
 
347
- | Group | Skills |
206
+ | Flag | Effect |
348
207
  |---|---|
349
- | Core lifecycle (8) | `rite-spec` · `rite-define` · `rite-build` · `rite-prove` · `rite-polish` · `rite-review` · `rite-seal` · `rite-ship` |
350
- | On-ramp (optional) | `rite-adopt` onboard an existing codebase: reverse-derive `spec.md`, seed the conventions ledger + propose project principles, then hand off to the lifecycle |
351
- | Strategic (optional) | `rite-temper` strategic spec review between spec and define; mandatory in `rite-autocomplete` |
352
- | Engineering (every feature) | `rite-vet` engineering plan review between define and build; depth scales to stakes, never skipped; always in `rite-autocomplete` |
353
- | Recovery / replan | `rite-resolve` · `rite-plan` · `rite-converge` |
354
- | Express / pre-flight | `rite-quick` · `rite-frame` |
355
- | Utility | `rite-status` · `rite-doctor` · `rite-customize` · `rite-explain` · `rite-pov` · `rite-dogfood` · `rite-pr-feedback` · `rite-zoom-out` · `rite-prototype` · `rite-handoff` · `rite-pressure-test` · `rite-autocomplete` |
356
- | Learning (optional) | `rite-learn` cross-feature learning loop: mine shipped features for recurring mistakes + dismissed-finding classes, propose project-local lessons into `.devrites/learnings.md`, and promote recurring invariants to `.devrites/principles.md` |
357
- | Menu | `rite` |
358
-
359
- **Internal `devrites-*` specialists** — model-invoked, hidden from menu:
360
-
361
- `devrites-interview` · `devrites-source-driven` · `devrites-doubt` ·
362
- `devrites-ux-shape` · `devrites-frontend-craft` · `devrites-browser-proof` ·
363
- `devrites-debug-recovery` · `devrites-api-interface` ·
364
- `devrites-audit` (axes: `security` · `perf` · `simplify`) ·
365
- `devrites-prose-craft` · `devrites-refresh-indexes`.
366
-
367
- **Review agents (12)** — fresh-context reviewers under `.claude/agents/`:
208
+ | `--target DIR` | Use another project directory. |
209
+ | `--dry-run` | Show planned file operations without changing anything. |
210
+ | `--force` | Replace conflicting files that DevRites does not own. |
211
+ | `--no-codex` | Skip `.agents`, `.codex`, and `AGENTS.md` integration. |
212
+ | `--no-agents` | Skip the review agents. |
213
+ | `--no-skills` | Skip skills and their bundled standards. |
214
+ | `--no-binary` | Do not keep the shared `devrites-engine` binary in a user or system bin directory. |
215
+ | `--short-aliases=all` | Add `/define`, `/build`, `/prove`, and `/seal` aliases. |
368
216
 
369
- `devrites-strategy-reviewer` (pre-plan, via `/rite-temper`) ·
370
- `devrites-plan-reviewer` (pre-build, via `/rite-vet`) · `devrites-spec-reviewer` ·
371
- `devrites-code-reviewer` · `devrites-test-analyst` · `devrites-frontend-reviewer` ·
372
- `devrites-security-auditor` · `devrites-performance-reviewer` ·
373
- `devrites-devex-reviewer` (developer-facing surface, predict at `/rite-vet` + measure-the-boomerang at `/rite-seal`) ·
374
- `devrites-doubt-reviewer` · `devrites-simplifier-reviewer` ·
375
- `devrites-forge-judge` (build-time, via `/rite-build` — scores competing candidate builds on a `Forge: yes` slice, picks the winner).
217
+ Run `npx devrites@latest --help` for the full option list.
376
218
 
377
- **Cross-feature analyst (1)** — fresh-context, read-only, scope is the archive not a diff:
219
+ ### Bash bootstrap
378
220
 
379
- `devrites-retrospector` dispatched at `/rite-ship` close (cadence-gated) to mine shipped features for recurring patterns + trends and **draft** graduation candidates for `/rite-learn`; proposes, never imposes.
221
+ If Node.js is not available, use the bootstrap script. It needs `curl` and
222
+ `tar`.
380
223
 
381
- **Executor agent (1)** — fresh-context, **write-capable** writer under `.claude/agents/`:
382
-
383
- `devrites-slice-wright` — dispatched by `/rite-build` to write one slice (orient → TDD → verify, anti-AI-slop, project idiom); the write-side mirror of the read-only reviewers.
224
+ ```bash
225
+ # Install the latest release in the current project
226
+ curl -fsSL https://raw.githubusercontent.com/ViktorsBaikers/DevRites/main/install.sh | bash
384
227
 
385
- Full catalogue with per-phase tables and interactions → [`docs/skills.md`](docs/skills.md). Trigger phrases + interactions → [`docs/command-map.md`](docs/command-map.md). Diagrams (polish orchestrator, review fan-out, seal fan-out, namespace map) → [`docs/flow.md`](docs/flow.md).
228
+ # Install in another project
229
+ curl -fsSL https://raw.githubusercontent.com/ViktorsBaikers/DevRites/main/install.sh | bash -s -- --target /path/to/project
386
230
 
387
- ## Modes HITL & AFK
231
+ # Preview without writing files
232
+ curl -fsSL https://raw.githubusercontent.com/ViktorsBaikers/DevRites/main/install.sh | bash -s -- --dry-run
233
+ ```
388
234
 
389
- DevRites runs the same lifecycle two ways. The mode is per-slice (declared in
390
- `tasks.md` at planning time) and per-session (`.devrites/AFK` sentinel toggles the
391
- session-level default). Skills consult both.
235
+ The installer records every managed project file in
236
+ `.claude/devrites.manifest`. Update and uninstall use that manifest, preserve
237
+ `.devrites/`, and avoid removing files they do not own. The optional shared
238
+ `devrites-engine` binary is the only artifact that may be installed outside the
239
+ project.
392
240
 
393
- ### HITL human-in-the-loop (default)
241
+ ## Claude Code and Codex integration
394
242
 
395
- Slices marked `Mode: HITL` pause **before any code is written**. `/rite-build`
396
- renders the checkpoint, writes `Awaiting human` to `state.md`, appends the question
397
- to `questions.md`, and stops. You answer with
398
- [`/rite-resolve <qid> "<answer>"`](pack/.claude/skills/rite-resolve/SKILL.md) and the
399
- workflow resumes. The pause is pre-action by design — no half-built slice, no
400
- "approve after the fact" loop.
243
+ Claude Code receives skills under `.claude/skills/`, agents under
244
+ `.claude/agents/`, and DevRites hooks merged into `.claude/settings.json`.
245
+ Existing settings remain in place.
401
246
 
402
- Each HITL slice declares a **gate type** that controls how much it disrupts the loop:
247
+ Codex receives the same skills under `.agents/skills/`, custom agents under
248
+ `.codex/agents/`, hooks under `.codex/hooks.json`, and a marked guidance block
249
+ in `AGENTS.md`. Existing `AGENTS.md` content remains in place. Codex users
250
+ invoke skills with `$rite`, `$rite-spec`, or `/skills` and should review project
251
+ hooks through `/hooks`.
403
252
 
404
- | Gate | Stakes | Behavior | SLA |
405
- |---|---|---|---|
406
- | `advisory` | low | log + proceed; surface for audit | none |
407
- | `validating` | medium | async — build continues, merge blocks until reviewed | 4h |
408
- | `blocking` | high | synchronous pause; loop stops | 15m |
409
- | `escalating` | novel pattern | synchronous pause, route to specialist tag | 24h |
253
+ DevRites is installed through npm or the Bash bootstrap. It is not distributed
254
+ through Claude Code or Codex plugin stores.
410
255
 
411
- Full taxonomy + decision tree:
412
- [`pack/.claude/skills/rite-define/reference/gates.md`](pack/.claude/skills/rite-define/reference/gates.md).
256
+ ## Skills and agents
413
257
 
414
- ### AFK away-from-keyboard
258
+ The pack ships 42 skills: 30 public and 12 internal. The public surface contains
259
+ the `rite` menu and 29 `rite-*` workflows and utilities. Eleven `devrites-*`
260
+ specialists load when a matching task needs them; `devrites-lib` carries the
261
+ shared contracts and engineering standards.
415
262
 
416
- Drop `.devrites/AFK` in the project. AFK slices run unattended;
417
- [`devrites-doubt`](pack/.claude/skills/devrites-doubt/SKILL.md) and other
418
- discretionary pauses downgrade to advisory entries in `questions.md` so the loop
419
- keeps moving. The sentinel is plain YAML (all keys optional):
263
+ Fourteen agents ship with the pack. Thirteen are read-only reviewers or
264
+ analysts, including `devrites-retrospector`, which reads the shipped archive.
265
+ `devrites-slice-wright` is the only agent allowed to edit a feature slice.
420
266
 
421
- ```yaml
422
- # .devrites/AFK presence = AFK active.
423
- max_slices: 10 # /rite-build decrements per built slice; 0 → forced HITL stop
424
- notify: "ntfy.sh/my-topic" # shell command run on awaiting_human; qid / gate / slice in env
425
- allow_gates: [advisory, validating] # gate severities AFK may auto-handle
426
- ```
267
+ The authoritative [skills catalogue](docs/skills.md) lists every skill and
268
+ agent. The [flow diagrams](docs/flow.md) show routing, reviewer fan-out, and
269
+ namespace boundaries.
427
270
 
428
- **AFK never silently accepts irreversible risk.** Regardless of `allow_gates`, the
429
- workflow pauses on: destructive data migration · auth/authz boundary change · public
430
- API break · external-service contract change · filesystem destruction outside the
431
- workspace · red tests / types / lint at slice end. The same `blocking` + `escalating`
432
- gates always pause in AFK too — `allow_gates` only widens what's automatic, not what's
433
- irreversible.
271
+ ## Engineering standards and UI work
434
272
 
435
- ```bash
436
- # Run unattended for the next stretch:
437
- echo 'max_slices: 10' > .devrites/AFK
438
- echo 'notify: "ntfy.sh/my-topic"' >> .devrites/AFK
273
+ The stack-agnostic standards live under
274
+ `.claude/skills/devrites-lib/reference/standards/`. Every workflow loads the
275
+ small core first, then only the standards needed for that phase. Project
276
+ conventions override generic advice, and `.devrites/principles.md` overrides
277
+ both. The [standards index](pack/.claude/skills/devrites-lib/reference/standards/README.md)
278
+ maps each rule file to the phases that use it.
439
279
 
440
- # Back to HITL:
441
- rm .devrites/AFK
442
- ```
280
+ For UI work, Spec records the visual direction and required states in
281
+ `design-brief.md`. Build follows the project's existing design system, while
282
+ Prove collects runtime and browser evidence. The guidance checks WCAG 2.2 AA
283
+ and, when performance is measurable, targets LCP at or below 2.5 seconds, INP
284
+ at or below 200 milliseconds, and CLS at or below 0.1. Full-stack work starts
285
+ with the API and data contract, then builds a vertical slice through the UI.
443
286
 
444
- Recommended progression: start HITL, refine the prompt and plan over a few slices, then
445
- drop the sentinel for the bulk stretch. Always cap iterations. Full contract:
446
- [`pack/.claude/skills/devrites-lib/reference/standards/afk-hitl.md`](pack/.claude/skills/devrites-lib/reference/standards/afk-hitl.md).
287
+ DevRites works without extra tools. If available, codegraph or graphify can
288
+ answer structural questions, and
289
+ [Playwright MCP](https://github.com/microsoft/playwright-mcp) can collect
290
+ browser evidence. Chrome DevTools MCP can add Lighthouse and performance
291
+ traces. DevRites detects these tools but does not install them.
447
292
 
448
- ## Typical workflow
293
+ ## Security model
449
294
 
295
+ Installed host artifacts stay in the project. The npm shim prefers an explicitly
296
+ configured engine or a local `engine/devrites-engine`, can download a
297
+ checksummed release binary, can build a temporary engine from the local Go
298
+ source, and finally falls back to an existing `devrites-engine` on `PATH`. Use `--no-binary` or
299
+ `DEVRITES_NO_BINARY=1` if you do not want the installer to keep the shared
300
+ binary outside the project. `devrites-engine update` also prefers the
301
+ checksummed platform release binary and only builds from source as a fallback,
302
+ without reading Git metadata from the target project.
303
+
304
+ Workflow state is read through the engine rather than shell injection. The
305
+ installer never writes `defaultMode: bypassPermissions`. Skills use networked
306
+ research only through host tools you invoke or configure.
307
+
308
+ Read [`SECURITY.md`](SECURITY.md) for the threat model, managed deployment
309
+ guidance, and private reporting instructions.
310
+
311
+ ## Repository layout
312
+
313
+ ```text
314
+ bin/ npm CLI shim
315
+ engine/ Go control plane and tests
316
+ pack/.claude/ canonical skills, agents, hooks, and standards
317
+ pack/generated/ generated host payloads; do not edit by hand
318
+ scripts/ validation, generation, install, and release tooling
319
+ tests/ repository-level shell tests
320
+ docs/ architecture, usage, command, and contributor guides
321
+ evals/ routing and behavioral evaluation fixtures
450
322
  ```
451
- # start a feature
452
- /rite-spec add-csv-export # investigate deeply → spec.md (asks you; gathers design refs)
453
- /rite-define # spec → plan.md + tasks.md + state.md
454
- /rite-vet # mandatory plan review; light or full based on stakes
455
-
456
- # build loop — one slice at a time
457
- /rite-build # slice 1, stops with evidence
458
- /rite-build # slice 2 ... repeat for each slice
459
- /rite-prove # ONCE all slices built: full tests + browser proof
460
-
461
- # finish
462
- /rite-polish # code polish always + UI normalize/polish if UI in scope
463
- /rite-review # feature-scoped multi-axis (parallel Spec + Standards)
464
- /rite-seal # GO / NO-GO decision → writes seal.md (no git)
465
- /rite-ship # on GO: type-GO + commit/push/tag, then archive + close the task
466
-
467
- # or run the whole cycle unattended
468
- /rite-autocomplete # spec → … → seal → ship with no per-phase iteration (--ship to push)
469
-
470
- # check in any time
471
- /rite # menu + next command (no state read)
472
- /rite-status # full status: phase, evidence, drift, handoff readiness
473
- ```
474
-
475
- If implementation reveals the plan is wrong, the **Spec Drift Guard** stops
476
- the build, records the drift in `drift.md`, asks you when product behavior
477
- changes, and routes through `/rite-plan repair` before resuming.
478
-
479
- Worked examples (spec-then-plan, mid-build drift, UI feature with
480
- Playwright MCP, backend-only, polish modes, zoom-out, mid-flight handoff):
481
- **[docs/usage.md](docs/usage.md)**.
482
323
 
483
- ## Engineering rules
324
+ For local development:
484
325
 
485
- DevRites ships its own stack-agnostic engineering rules and installs them to
486
- `.claude/skills/devrites-lib/reference/standards/` — common rule files plus a README index. They're **common** by design
487
- (no language assumptions); a project's own conventions always win where they exist, and a
488
- project's own **principles** (`.devrites/principles.md`) outrank both. Standards ship inside
489
- the `devrites-lib` skill; the retired `--no-rules` and `--rules-only` flags are compatibility
490
- no-ops. Use `--no-skills` only when you intentionally want to skip skills and the bundled
491
- standards together. Loading model: each `rite-*` skill Reads `.claude/skills/devrites-lib/reference/standards/core.md` as its first
492
- step; the remaining rule files load on demand via `Read` from the skill body that needs them.
493
-
494
- | Always-on | On-demand |
495
- |---|---|
496
- | `core.md` | `coding-style.md` · `prose-style.md` · `error-handling.md` · `testing.md` · `spec-grammar.md` · `code-review.md` · `principles.md` · `security.md` · `performance.md` · `observability.md` · `developer-experience.md` · `patterns.md` · `git-workflow.md` · `hooks.md` · `ci-cd.md` · `documentation.md` · `development-workflow.md` · `deprecation.md` · `elicitation.md` · `agents.md` · `context-hygiene.md` · `afk-hitl.md` · `anti-patterns.md` · `tooling.md` · `skill-authoring.md` |
497
-
498
- Full index with phase mapping: [`pack/.claude/skills/devrites-lib/reference/standards/README.md`](pack/.claude/skills/devrites-lib/reference/standards/README.md);
499
- diagram: [`docs/flow.md` § Engineering-rules loading](docs/flow.md#6-engineering-rules-carrier).
500
-
501
- ## Browser proof ladder
502
-
503
- For UI work DevRites prefers real runtime evidence, top-down: **Playwright MCP** (if
504
- configured, paired with **Chrome DevTools MCP** for Lighthouse / perf trace) → Claude Code
505
- **`/run`+`/verify`** → **project-native E2E** (Playwright / Cypress / Capybara) → **manual
506
- fallback**. It detects tooling but
507
- never installs it, stops at auth walls, and treats a screenshot **path** as unproven
508
- until it's opened and described.
509
-
510
- ## Frontend & fullstack
511
-
512
- UI work is **planned before it's coded**. When `/rite-spec` detects UI, `devrites-ux-shape`
513
- turns the request + any references (screenshots, Figma, video) into a feature-level
514
- **`design-brief.md`** — design direction (color strategy · scene sentence · named anchor
515
- references), key states, interaction model, and an optional Figma/image **visual-direction
516
- probe** — and pauses for you to confirm the direction (HITL) or asserts a best guess (AFK).
517
- That brief is the **build target**, woven into spec → define → vet → build, not a separate phase.
518
-
519
- Then `devrites-frontend-craft` builds **to** the brief: detect the surface register (brand
520
- vs product), refine the brief per slice (all states — default / loading / empty / error /
521
- success / disabled), build from the existing design system, avoid generic-AI tells, and
522
- meet the **2026 quality bar** — Core Web Vitals (LCP ≤ 2.5 s / INP ≤ 200 ms / CLS ≤ 0.1)
523
- and WCAG 2.2 AA. **Fullstack features** go **contract-first**: define the API/data contract, build
524
- one **vertical slice** through the layers (DB → service → API → UI), apply the
525
- engineering rules to the backend and the craft to the UI, map every contract error to a
526
- real UI state, and **prove both layers** (contract tests + browser proof).
527
-
528
- ## Safety & scope
529
-
530
- - **Project-local host artifacts.** Never writes skills, agents, or hook settings to
531
- `~/.claude` or `~/.codex`. Install/uninstall is manifest-managed; the shared
532
- `devrites-engine` binary is the sole optional global artifact (`--no-binary` skips it).
533
- - **Feature scope only.** Review/simplify/polish/security stay within the active feature
534
- and touched files — no project-wide refactors, no drive-by cleanup.
535
- - **One slice at a time.** `/rite-build` stops after a single verified slice.
536
- - **Evidence over confidence.** Claims need recorded commands, output, or screenshots.
537
- - **Ask before danger.** Material assumptions, dependency additions, a second design
538
- system, destructive operations, and product-behavior changes are surfaced, not assumed.
539
-
540
- ## Layout
541
-
542
- ```
543
- devrites/
544
- bin/ # devrites.mjs — npx CLI entry point (acquires/proxies devrites-engine)
545
- .github/ # ci (including release job) · evals · commitlint · Dependabot automation
546
- .husky/ # commit-msg hook (Conventional Commits via commitlint)
547
- .releaserc.json # semantic-release config (CHANGELOG, version sync, tarball, GitHub Release)
548
- install.sh uninstall.sh update.sh # self-contained bundle/binary bootstrap shims
549
- scripts/ # install-lib (shim + pin helpers) · validate · validate-frontmatter · run-evals
550
- # grade-feature · run-outcome-evals · devrites-detect · check-no-global-writes
551
- # sync-version · build-release-tarball
552
- pack/.claude/ # skills/ 42 skills — 30 public + 12 internal ─┐
553
- # agents/ 13 read-only + 1 writer (slice-wright) ├─ the pack
554
- # settings.json (canonical Claude engine hook wiring) ┘
555
- # (standards live inside skills/devrites-lib/reference/standards/)
556
- installed projects # .claude/ runtime assets; .agents/skills + .codex/agents
557
- # + .codex/hooks.json + AGENTS.md for Codex
558
- evals/ # branch-shaped routing corpora + behavioral/ + golden/ outcome fixtures
559
- docs/ # user guides + engine/ contracts + agents/ process + adr/ + dated research/
560
- tests/ # auto-discovered repository shell suite (install, runtime, pack, release)
561
- dist/ # release tarballs built by semantic-release (gitignored)
562
- CHANGELOG.md SECURITY.md CODE_OF_CONDUCT.md CODEOWNERS NOTICE.md LICENSE
563
- package.json commitlint.config.js # husky/commitlint/semantic-release toolchain
326
+ ```bash
327
+ npm install
328
+ npm run validate
329
+ npm test
330
+ (cd engine && go test ./... -count=1)
564
331
  ```
565
332
 
566
- Cross-links: [architecture](docs/architecture.md) ·
567
- [skills catalogue](docs/skills.md) ·
568
- [command-map](docs/command-map.md) ·
569
- [flow diagrams](docs/flow.md) ·
570
- [usage](docs/usage.md) ·
571
- [release pipeline](docs/release.md) ·
572
- [CLI](docs/cli.md) ·
573
- [engineering rules](pack/.claude/skills/devrites-lib/reference/standards/README.md).
574
-
575
- ## Security model
576
-
577
- DevRites is auditable Markdown + a small engine binary. The complete security
578
- policy, including private vulnerability reporting and recommended managed-deployment
579
- settings, lives in [`SECURITY.md`](SECURITY.md). Highlights: **project-local host artifacts**
580
- (installer refuses global Claude/Codex agent homes; only the shared engine binary may be global);
581
- **bounded installer network access**
582
- for the release tarball and verified `devrites-engine` asset, with `--no-binary` /
583
- `DEVRITES_NO_BINARY=1` available for fully project-file-only installs; **no hidden
584
- skill-side networking** (external research goes through explicit host tools);
585
- **`!` shell injection removed** from `/rite` and `/rite-status`
586
- (state loaded via read-only engine subcommands over DevRites' own state under
587
- `.devrites/`); **model invocation is per-skill frontmatter** and bounded by body
588
- discipline + readiness gates + the interactive `type-GO` confirmation in `/rite-ship`
589
- before irreversible git actions; **no `defaultMode: bypassPermissions`** is shipped or
590
- written by the installer (cf. CVE-2026-33068).
591
-
592
- ## Community & quality
593
-
594
- - **Changelog:** [`CHANGELOG.md`](CHANGELOG.md) — Keep-a-Changelog + SemVer, regenerated by semantic-release on every release.
595
- - **Code of conduct:** [`CODE_OF_CONDUCT.md`](CODE_OF_CONDUCT.md) (Contributor Covenant 2.1).
596
- - **Code owners:** [`CODEOWNERS`](CODEOWNERS) — maintainer review covers all tracked paths.
597
- - **Notices:** [`NOTICE.md`](NOTICE.md).
598
- - **CI:** GitHub Actions runs validation, the full shell suite, routing evals,
599
- commitlint, strict Go quality/security checks, Windows tests, and release-target
600
- cross-compilation on every PR.
601
- - **Commits:** Conventional Commits enforced via husky + commitlint.
602
- - **Release pipeline:** semantic-release on every push to `main` — full details in [`docs/release.md`](docs/release.md).
603
-
604
- ## License
605
-
606
- **Free to use, with approval gating redistribution.** Personal use and *listing this
607
- repository in package registries* are permitted without approval. DevRites is installed via
608
- `npx devrites ...`, not Claude/Codex plugin marketplaces. Any other use —
609
- distributing it, distributing modified versions, mirroring as a fork, or commercial /
610
- organizational use — requires **approval on request** (ask via
611
- [the repo](https://github.com/ViktorsBaikers/DevRites)). Source-available. See
612
- [`LICENSE`](LICENSE). DevRites is independent software for use with Claude Code and Codex.
333
+ Canonical pack changes belong in `pack/.claude/`. Rebuild host payloads with
334
+ `bash scripts/build-host-artifacts.sh` instead of editing `pack/generated/`.
335
+ See [`CONTRIBUTING.md`](CONTRIBUTING.md) for the development workflow and review
336
+ requirements.
337
+
338
+ ## Documentation
339
+
340
+ - [Quick reference](docs/quick-reference.md)
341
+ - [Worked examples](docs/usage.md)
342
+ - [Command map](docs/command-map.md)
343
+ - [Skills catalogue](docs/skills.md)
344
+ - [Architecture](docs/architecture.md)
345
+ - [Lifecycle diagrams](docs/flow.md)
346
+ - [Engine CLI](docs/cli.md)
347
+ - [Release process](docs/release.md)
348
+ - [Changelog](CHANGELOG.md)
349
+ - [Releases](https://github.com/ViktorsBaikers/DevRites/releases)
350
+
351
+ ## Community and license
352
+
353
+ Please read the [contribution guide](CONTRIBUTING.md) and
354
+ [code of conduct](CODE_OF_CONDUCT.md) before opening a change. Maintainer
355
+ ownership is documented in [`CODEOWNERS`](CODEOWNERS), and third-party notices
356
+ are in [`NOTICE.md`](NOTICE.md).
357
+
358
+ DevRites is source-available software for personal use with Claude Code and
359
+ Codex. Distribution, modified distribution, fork mirrors, and commercial or
360
+ organizational use require approval. Read [`LICENSE`](LICENSE) for the full
361
+ terms.