devrites 3.0.4 → 3.0.6

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 (752) hide show
  1. package/CHANGELOG.md +40 -1
  2. package/README.md +280 -521
  3. package/SECURITY.md +91 -77
  4. package/docs/adr/README.md +7 -9
  5. package/docs/agents/domain.md +5 -5
  6. package/docs/agents/issue-driven-rites.md +5 -5
  7. package/docs/agents/issue-tracker.md +1 -1
  8. package/docs/agents/triage-labels.md +2 -2
  9. package/docs/architecture.md +101 -85
  10. package/docs/capability-surface-selection.md +3 -1
  11. package/docs/cli.md +20 -13
  12. package/docs/command-map.md +39 -35
  13. package/docs/engine/agent-contract.md +11 -9
  14. package/docs/engine/commands.md +92 -78
  15. package/docs/engine/state-schema.md +23 -19
  16. package/docs/engine/workspace-schema.md +12 -11
  17. package/docs/extensions.md +17 -17
  18. package/docs/flow.md +34 -23
  19. package/docs/harness-compliance.md +2 -2
  20. package/docs/orchestration.md +21 -20
  21. package/docs/porting-to-a-new-harness.md +6 -2
  22. package/docs/release.md +30 -12
  23. package/docs/research/go-authoritative-workflow-schema-and-quality-2026-07-20.md +3 -3
  24. package/docs/skills.md +77 -52
  25. package/docs/templates/CRITIC_REVIEW_PACKET_TEMPLATE.md +35 -0
  26. package/docs/usage.md +56 -45
  27. package/engine/Makefile +2 -2
  28. package/engine/commands.go +3 -3
  29. package/engine/harnessmatrix.go +2 -2
  30. package/engine/hookpolicy.go +9 -9
  31. package/engine/hooks.go +11 -11
  32. package/engine/hooks_workspace.go +11 -11
  33. package/engine/internal/doctor/doctor.go +7 -7
  34. package/engine/internal/gate/gate.go +11 -11
  35. package/engine/internal/harness/compliance.go +1 -1
  36. package/engine/internal/harness/harness.go +7 -7
  37. package/engine/internal/install/install.go +2 -0
  38. package/engine/internal/install/install_test.go +3 -3
  39. package/engine/internal/iohooks/detach_unix.go +1 -1
  40. package/engine/internal/iohooks/iohooks.go +8 -8
  41. package/engine/internal/lib/adoption.go +1 -1
  42. package/engine/internal/lib/analyze.go +15 -15
  43. package/engine/internal/lib/archivesearch.go +3 -3
  44. package/engine/internal/lib/budget.go +3 -3
  45. package/engine/internal/lib/buildreadiness.go +6 -6
  46. package/engine/internal/lib/checkacceptance.go +10 -10
  47. package/engine/internal/lib/closeout.go +5 -5
  48. package/engine/internal/lib/conventions.go +3 -3
  49. package/engine/internal/lib/coverage.go +4 -4
  50. package/engine/internal/lib/doubtcoverage.go +9 -9
  51. package/engine/internal/lib/evidencefresh.go +6 -6
  52. package/engine/internal/lib/extensions.go +9 -9
  53. package/engine/internal/lib/footprint.go +13 -13
  54. package/engine/internal/lib/jsonout.go +2 -2
  55. package/engine/internal/lib/lanes.go +2 -2
  56. package/engine/internal/lib/learnings.go +9 -9
  57. package/engine/internal/lib/ledger.go +8 -8
  58. package/engine/internal/lib/ledger_test.go +5 -5
  59. package/engine/internal/lib/mutationgate.go +4 -4
  60. package/engine/internal/lib/overrides.go +9 -9
  61. package/engine/internal/lib/overrides_test.go +2 -2
  62. package/engine/internal/lib/packageexistence.go +732 -55
  63. package/engine/internal/lib/packageexistence_test.go +343 -0
  64. package/engine/internal/lib/preamble.go +6 -6
  65. package/engine/internal/lib/progress.go +5 -5
  66. package/engine/internal/lib/reconcile.go +80 -20
  67. package/engine/internal/lib/reconcile_test.go +13 -5
  68. package/engine/internal/lib/resolve.go +3 -3
  69. package/engine/internal/lib/reviewerstats.go +2 -2
  70. package/engine/internal/lib/reviewintegrity.go +13 -13
  71. package/engine/internal/lib/reviewintegrity_test.go +6 -6
  72. package/engine/internal/lib/runbook.go +1 -1
  73. package/engine/internal/lib/session.go +1 -1
  74. package/engine/internal/lib/session_test.go +2 -2
  75. package/engine/internal/lib/specparse.go +4 -4
  76. package/engine/internal/lib/specskeleton.go +2 -2
  77. package/engine/internal/lib/specvalidate.go +13 -13
  78. package/engine/internal/lib/stuck.go +13 -13
  79. package/engine/internal/lib/templates/conventions_ledger_header.md +1 -1
  80. package/engine/internal/lib/templates/conventions_orient_header.txt +1 -1
  81. package/engine/internal/lib/testintegrity.go +9 -9
  82. package/engine/internal/lib/tickafk.go +4 -4
  83. package/engine/internal/lib/util.go +1 -1
  84. package/engine/internal/migrate/migrate.go +2 -2
  85. package/engine/internal/migrate/migrate_test.go +1 -0
  86. package/engine/internal/orient/firstrun.go +8 -8
  87. package/engine/internal/orient/orient.go +5 -5
  88. package/engine/internal/state/concurrency_test.go +4 -4
  89. package/engine/internal/state/feature.go +6 -6
  90. package/engine/internal/state/lock_unix.go +1 -1
  91. package/engine/internal/state/schema.go +1 -1
  92. package/engine/internal/state/snapshot.go +2 -2
  93. package/engine/internal/state/write.go +1 -1
  94. package/engine/internal/version/version.go +1 -1
  95. package/engine/main.go +5 -5
  96. package/engine/subagent_orient_context.txt +4 -4
  97. package/engine/testdata/golden/TestParityA1Guard/source-edit-enforce-denies.golden +1 -1
  98. package/engine/testdata/golden/TestParityAnalyze/slug=covered.golden +2 -2
  99. package/engine/testdata/golden/TestParityAnalyze/slug=dangling.golden +3 -3
  100. package/engine/testdata/golden/TestParityAnalyze/slug=noac.golden +2 -2
  101. package/engine/testdata/golden/TestParityAnalyze/slug=order.golden +4 -4
  102. package/engine/testdata/golden/TestParityAnalyze/slug=orphan.golden +3 -3
  103. package/engine/testdata/golden/TestParityAnalyze/slug=uncovered.golden +3 -3
  104. package/engine/testdata/golden/TestParityBudget/extra-md.golden +1 -1
  105. package/engine/testdata/golden/TestParityBudget/over-advisory.golden +1 -1
  106. package/engine/testdata/golden/TestParityBudget/over-strict.golden +1 -1
  107. package/engine/testdata/golden/TestParityBuildReadiness/arg=approved.golden +1 -1
  108. package/engine/testdata/golden/TestParityBuildReadiness/arg=emptystatus.golden +1 -1
  109. package/engine/testdata/golden/TestParityBuildReadiness/arg=trailhash.golden +1 -1
  110. package/engine/testdata/golden/TestParityBuildReadiness/arg=trailpipe.golden +1 -1
  111. package/engine/testdata/golden/TestParityCheckAcceptance/arg=flat-ok.golden +1 -1
  112. package/engine/testdata/golden/TestParityCheckAcceptance/arg=id-ok.golden +1 -1
  113. package/engine/testdata/golden/TestParityCloseOut/active_pointed_elsewhere.golden +1 -1
  114. package/engine/testdata/golden/TestParityCoverage/arg=speconly.golden +2 -2
  115. package/engine/testdata/golden/TestParityCursor/bare.golden +1 -1
  116. package/engine/testdata/golden/TestParityCursor/full-afk.golden +1 -1
  117. package/engine/testdata/golden/TestParityCursor/full-hitl.golden +1 -1
  118. package/engine/testdata/golden/TestParityCursor/red.golden +2 -2
  119. package/engine/testdata/golden/TestParityCursor/zerogates.golden +1 -1
  120. package/engine/testdata/golden/TestParityDoubtCoverage/arg=ghost.golden +1 -1
  121. package/engine/testdata/golden/TestParityDoubtCoverage/arg=inline.golden +1 -1
  122. package/engine/testdata/golden/TestParityDoubtCoverage/arg=missing-inline.golden +1 -1
  123. package/engine/testdata/golden/TestParityDoubtCoverage/arg=missing.golden +1 -1
  124. package/engine/testdata/golden/TestParityDoubtCoverage/arg=nodoubt.golden +1 -1
  125. package/engine/testdata/golden/TestParityDoubtCoverage/arg=nolog.golden +1 -1
  126. package/engine/testdata/golden/TestParityLearnings/mine-no-archive.golden +1 -1
  127. package/engine/testdata/golden/TestParityLearnings/mine.golden +1 -1
  128. package/engine/testdata/golden/TestParityLearnings/nudge.golden +1 -1
  129. package/engine/testdata/golden/TestParityMutationGate/active-slug.golden +1 -1
  130. package/engine/testdata/golden/TestParityMutationGate/explicit-slug.golden +1 -1
  131. package/engine/testdata/golden/TestParityPackageExistence/declared.golden +1 -1
  132. package/engine/testdata/golden/TestParityPackageExistence/default-import-subpath.golden +1 -1
  133. package/engine/testdata/golden/TestParityReconcile/check-clean.golden +1 -1
  134. package/engine/testdata/golden/TestParityRedwatch/fail-writes-red.golden +1 -1
  135. package/engine/testdata/golden/TestParityResolve/answer/state.md.golden +1 -1
  136. package/engine/testdata/golden/TestParityResolve/batch.golden +1 -1
  137. package/engine/testdata/golden/TestParityReviewerReadonly/agent-required-devrites-agent-denies.golden +1 -1
  138. package/engine/testdata/golden/TestParityReviewerReadonly/enforce-deny-git-commit.golden +1 -1
  139. package/engine/testdata/golden/TestParityReviewerReadonly/enforce-deny-mutating.golden +1 -1
  140. package/engine/testdata/golden/TestParitySpecValidate/arg=flat.golden +1 -1
  141. package/engine/testdata/golden/TestParitySpecValidate/arg=valid/spec.md.golden +1 -1
  142. package/engine/testdata/golden/TestParitySpecValidate/arg=valid.golden +1 -1
  143. package/engine/testdata/golden/TestParityStuckCheck/custom-window-2.golden +1 -1
  144. package/engine/testdata/golden/TestParityStuckCheck/dominant.golden +1 -1
  145. package/engine/testdata/golden/TestParityStuckCheck/few.golden +1 -1
  146. package/engine/testdata/golden/TestParityStuckCheck/ghost.golden +1 -1
  147. package/engine/testdata/golden/TestParityStuckCheck/identical.golden +1 -1
  148. package/engine/testdata/golden/TestParityStuckCheck/nolog.golden +1 -1
  149. package/engine/testdata/golden/TestParityStuckCheck/pingpong.golden +1 -1
  150. package/engine/testdata/golden/TestParityStuckCheck/varied.golden +1 -1
  151. package/engine/testdata/golden/TestParityStuckCheck/window-04-identical.golden +1 -1
  152. package/engine/testdata/golden/TestParityStuckCheck/window-2.5-varied4.golden +1 -1
  153. package/engine/testdata/golden/TestParityStuckCheck/window-4x-varied4.golden +1 -1
  154. package/engine/testdata/golden/TestParityStuckCheck/window-leadspace-varied4.golden +1 -1
  155. package/engine/testdata/golden/TestParityStuckCheck/window-plus4-identical.golden +1 -1
  156. package/engine/testdata/golden/TestParitySubagentOrient/devrites-agent-subagent-type-key.golden +1 -1
  157. package/engine/testdata/golden/TestParitySubagentOrient/devrites-agent.golden +1 -1
  158. package/engine/testdata/golden/TestParityTestIntegrity/clean.golden +1 -1
  159. package/engine/testdata/golden/TestParityTickAfk/missingField.golden +1 -1
  160. package/engine/testdata/golden/TestParityTickAfk/none.golden +1 -1
  161. package/engine/testdata/golden/TestParityWrightScope/out-of-scope-enforce-denies.golden +1 -1
  162. package/engine/testdata/golden/TestSpecSkeleton/missing-some.golden +1 -1
  163. package/engine/testdata/golden/TestSpecSkeleton/present-all.golden +1 -1
  164. package/engine/tests/adr_0004_required_by_phase_test.go +2 -2
  165. package/engine/tests/adr_0006_clock_seam_test.go +1 -1
  166. package/engine/tests/budget_test.go +1 -1
  167. package/engine/tests/canonical_ac_ids_test.go +2 -2
  168. package/engine/tests/cli_test.go +1 -1
  169. package/engine/tests/concurrency_cli_test.go +1 -1
  170. package/engine/tests/gate_test.go +4 -4
  171. package/engine/tests/hook_test.go +3 -3
  172. package/engine/tests/hooks_io_test.go +1 -1
  173. package/engine/tests/lib_parity_test.go +29 -29
  174. package/engine/tests/meta_test.go +2 -2
  175. package/engine/tests/parity_closeout_test.go +1 -1
  176. package/engine/tests/parity_learnings_test.go +2 -2
  177. package/engine/tests/parity_mutationgate_test.go +2 -2
  178. package/engine/tests/parity_resolve_test.go +1 -1
  179. package/engine/tests/parity_test.go +3 -3
  180. package/engine/tests/parity_tickafk_test.go +1 -1
  181. package/engine/validatepack.go +5 -5
  182. package/engine/validatepackskills.go +9 -9
  183. package/pack/.claude/agents/devrites-code-reviewer.md +21 -22
  184. package/pack/.claude/agents/devrites-devex-reviewer.md +17 -17
  185. package/pack/.claude/agents/devrites-doubt-reviewer.md +6 -6
  186. package/pack/.claude/agents/devrites-forge-judge.md +26 -26
  187. package/pack/.claude/agents/devrites-frontend-reviewer.md +17 -17
  188. package/pack/.claude/agents/devrites-performance-reviewer.md +19 -18
  189. package/pack/.claude/agents/devrites-plan-reviewer.md +29 -27
  190. package/pack/.claude/agents/devrites-retrospector.md +19 -19
  191. package/pack/.claude/agents/devrites-security-auditor.md +15 -15
  192. package/pack/.claude/agents/devrites-simplifier-reviewer.md +14 -14
  193. package/pack/.claude/agents/devrites-slice-wright.md +52 -51
  194. package/pack/.claude/agents/devrites-spec-reviewer.md +11 -11
  195. package/pack/.claude/agents/devrites-strategy-reviewer.md +21 -21
  196. package/pack/.claude/agents/devrites-test-analyst.md +13 -13
  197. package/pack/.claude/settings.json +1 -1
  198. package/pack/.claude/skills/devrites-api-interface/SKILL.md +12 -12
  199. package/pack/.claude/skills/devrites-audit/SKILL.md +7 -7
  200. package/pack/.claude/skills/devrites-browser-proof/SKILL.md +16 -16
  201. package/pack/.claude/skills/devrites-debug-recovery/SKILL.md +14 -14
  202. package/pack/.claude/skills/devrites-debug-recovery/reference/build-the-loop.md +16 -16
  203. package/pack/.claude/skills/devrites-debug-recovery/reference/cleanup-and-classify.md +2 -2
  204. package/pack/.claude/skills/devrites-debug-recovery/reference/hypotheses.md +2 -2
  205. package/pack/.claude/skills/devrites-debug-recovery/reference/regression-test.md +3 -3
  206. package/pack/.claude/skills/devrites-debug-recovery/reference/trace.md +4 -4
  207. package/pack/.claude/skills/devrites-doubt/SKILL.md +14 -14
  208. package/pack/.claude/skills/devrites-frontend-craft/SKILL.md +18 -18
  209. package/pack/.claude/skills/devrites-frontend-craft/reference/craft.md +17 -17
  210. package/pack/.claude/skills/devrites-frontend-craft/reference/design-references.md +25 -25
  211. package/pack/.claude/skills/devrites-frontend-craft/reference/fullstack.md +6 -6
  212. package/pack/.claude/skills/devrites-frontend-craft/reference/quality-standards.md +44 -44
  213. package/pack/.claude/skills/devrites-frontend-craft/reference/reuse-first.md +9 -9
  214. package/pack/.claude/skills/devrites-frontend-craft/reference/shape.md +13 -13
  215. package/pack/.claude/skills/devrites-interview/SKILL.md +27 -27
  216. package/pack/.claude/skills/devrites-lib/SKILL.md +25 -27
  217. package/pack/.claude/skills/devrites-lib/reference/model-tiers.md +5 -5
  218. package/pack/.claude/skills/devrites-lib/reference/parallel-dispatch.md +36 -36
  219. package/pack/.claude/skills/devrites-lib/reference/reply-contract.md +11 -3
  220. package/pack/.claude/skills/devrites-lib/reference/standards/README.md +10 -10
  221. package/pack/.claude/skills/devrites-lib/reference/standards/afk-hitl.md +33 -33
  222. package/pack/.claude/skills/devrites-lib/reference/standards/agents.md +37 -37
  223. package/pack/.claude/skills/devrites-lib/reference/standards/anti-patterns.md +9 -9
  224. package/pack/.claude/skills/devrites-lib/reference/standards/ci-cd.md +12 -12
  225. package/pack/.claude/skills/devrites-lib/reference/standards/code-review.md +40 -40
  226. package/pack/.claude/skills/devrites-lib/reference/standards/coding-style.md +7 -7
  227. package/pack/.claude/skills/devrites-lib/reference/standards/context-hygiene.md +24 -25
  228. package/pack/.claude/skills/devrites-lib/reference/standards/core.md +23 -23
  229. package/pack/.claude/skills/devrites-lib/reference/standards/definition-of-done.md +1 -1
  230. package/pack/.claude/skills/devrites-lib/reference/standards/deprecation.md +18 -18
  231. package/pack/.claude/skills/devrites-lib/reference/standards/developer-experience.md +29 -29
  232. package/pack/.claude/skills/devrites-lib/reference/standards/development-workflow.md +12 -13
  233. package/pack/.claude/skills/devrites-lib/reference/standards/documentation.md +4 -4
  234. package/pack/.claude/skills/devrites-lib/reference/standards/edge-case-trace.md +1 -1
  235. package/pack/.claude/skills/devrites-lib/reference/standards/elicitation.md +26 -26
  236. package/pack/.claude/skills/devrites-lib/reference/standards/error-handling.md +4 -4
  237. package/pack/.claude/skills/devrites-lib/reference/standards/git-workflow.md +9 -9
  238. package/pack/.claude/skills/devrites-lib/reference/standards/hooks.md +3 -3
  239. package/pack/.claude/skills/devrites-lib/reference/standards/observability.md +15 -15
  240. package/pack/.claude/skills/devrites-lib/reference/standards/patterns.md +8 -8
  241. package/pack/.claude/skills/devrites-lib/reference/standards/performance.md +5 -5
  242. package/pack/.claude/skills/devrites-lib/reference/standards/principles.md +31 -31
  243. package/pack/.claude/skills/devrites-lib/reference/standards/prose-style.md +25 -25
  244. package/pack/.claude/skills/devrites-lib/reference/standards/security.md +30 -30
  245. package/pack/.claude/skills/devrites-lib/reference/standards/skill-authoring.md +11 -11
  246. package/pack/.claude/skills/devrites-lib/reference/standards/spec-grammar.md +30 -30
  247. package/pack/.claude/skills/devrites-lib/reference/standards/testing.md +40 -40
  248. package/pack/.claude/skills/devrites-lib/reference/standards/tooling.md +26 -26
  249. package/pack/.claude/skills/devrites-prose-craft/SKILL.md +5 -5
  250. package/pack/.claude/skills/devrites-refresh-indexes/SKILL.md +6 -6
  251. package/pack/.claude/skills/devrites-source-driven/SKILL.md +8 -8
  252. package/pack/.claude/skills/devrites-ux-shape/SKILL.md +33 -33
  253. package/pack/.claude/skills/devrites-ux-shape/reference/brief-template.md +6 -6
  254. package/pack/.claude/skills/devrites-ux-shape/reference/visual-direction-probe.md +9 -9
  255. package/pack/.claude/skills/rite/SKILL.md +13 -14
  256. package/pack/.claude/skills/rite/reference/menu.md +10 -10
  257. package/pack/.claude/skills/rite-adopt/SKILL.md +17 -18
  258. package/pack/.claude/skills/rite-adopt/reference/adoption.md +9 -9
  259. package/pack/.claude/skills/rite-adopt/reference/anti-patterns.md +6 -6
  260. package/pack/.claude/skills/rite-autocomplete/SKILL.md +14 -14
  261. package/pack/.claude/skills/rite-autocomplete/reference/decision-policy.md +4 -4
  262. package/pack/.claude/skills/rite-autocomplete/reference/loop.md +7 -7
  263. package/pack/.claude/skills/rite-autocomplete/reference/stop-conditions.md +7 -7
  264. package/pack/.claude/skills/rite-build/SKILL.md +22 -22
  265. package/pack/.claude/skills/rite-build/reference/afk-discipline.md +9 -9
  266. package/pack/.claude/skills/rite-build/reference/anti-patterns.md +6 -6
  267. package/pack/.claude/skills/rite-build/reference/checkpoint-protocol.md +14 -14
  268. package/pack/.claude/skills/rite-build/reference/checkpoint.md +8 -8
  269. package/pack/.claude/skills/rite-build/reference/evidence-standard.md +1 -1
  270. package/pack/.claude/skills/rite-build/reference/forge.md +28 -29
  271. package/pack/.claude/skills/rite-build/reference/frontend-trigger.md +2 -2
  272. package/pack/.claude/skills/rite-build/reference/one-slice-cycle.md +3 -3
  273. package/pack/.claude/skills/rite-build/reference/output.md +1 -1
  274. package/pack/.claude/skills/rite-build/reference/phase-contract.md +44 -44
  275. package/pack/.claude/skills/rite-build/reference/spec-drift-guard.md +1 -1
  276. package/pack/.claude/skills/rite-build/reference/tdd.md +6 -6
  277. package/pack/.claude/skills/rite-build/reference/wright-dispatch.md +23 -23
  278. package/pack/.claude/skills/rite-converge/SKILL.md +17 -17
  279. package/pack/.claude/skills/rite-converge/reference/anti-patterns.md +7 -7
  280. package/pack/.claude/skills/rite-converge/reference/convergence-assessment.md +14 -14
  281. package/pack/.claude/skills/rite-customize/SKILL.md +2 -2
  282. package/pack/.claude/skills/rite-define/SKILL.md +25 -25
  283. package/pack/.claude/skills/rite-define/reference/anti-patterns.md +5 -5
  284. package/pack/.claude/skills/rite-define/reference/gates.md +13 -13
  285. package/pack/.claude/skills/rite-define/reference/plan-template.md +1 -1
  286. package/pack/.claude/skills/rite-doctor/SKILL.md +11 -11
  287. package/pack/.claude/skills/rite-dogfood/SKILL.md +2 -2
  288. package/pack/.claude/skills/rite-explain/SKILL.md +22 -22
  289. package/pack/.claude/skills/rite-explain/reference/intake.md +16 -16
  290. package/pack/.claude/skills/rite-frame/SKILL.md +22 -22
  291. package/pack/.claude/skills/rite-frame/reference/failure-modes.md +13 -13
  292. package/pack/.claude/skills/rite-handoff/SKILL.md +12 -12
  293. package/pack/.claude/skills/rite-learn/SKILL.md +23 -23
  294. package/pack/.claude/skills/rite-plan/SKILL.md +21 -21
  295. package/pack/.claude/skills/rite-plan/reference/anti-patterns.md +3 -3
  296. package/pack/.claude/skills/rite-plan/reference/dependency-graph.md +1 -1
  297. package/pack/.claude/skills/rite-plan/reference/replan-and-repair.md +3 -3
  298. package/pack/.claude/skills/rite-plan/reference/slicing.md +9 -9
  299. package/pack/.claude/skills/rite-plan/reference/task-breakdown.md +3 -3
  300. package/pack/.claude/skills/rite-polish/SKILL.md +11 -11
  301. package/pack/.claude/skills/rite-polish/reference/anti-patterns.md +8 -8
  302. package/pack/.claude/skills/rite-polish/reference/backend-polish.md +13 -13
  303. package/pack/.claude/skills/rite-polish/reference/browser-polish-evidence.md +4 -4
  304. package/pack/.claude/skills/rite-polish/reference/code.md +26 -26
  305. package/pack/.claude/skills/rite-polish/reference/harden-checklist.md +31 -31
  306. package/pack/.claude/skills/rite-polish/reference/ui.md +23 -23
  307. package/pack/.claude/skills/rite-pov/SKILL.md +3 -3
  308. package/pack/.claude/skills/rite-pr-feedback/SKILL.md +2 -2
  309. package/pack/.claude/skills/rite-pressure-test/SKILL.md +14 -14
  310. package/pack/.claude/skills/rite-prototype/SKILL.md +13 -13
  311. package/pack/.claude/skills/rite-prove/SKILL.md +17 -17
  312. package/pack/.claude/skills/rite-prove/reference/anti-patterns.md +4 -4
  313. package/pack/.claude/skills/rite-prove/reference/browser-proof.md +2 -2
  314. package/pack/.claude/skills/rite-prove/reference/failure-triage.md +4 -4
  315. package/pack/.claude/skills/rite-prove/reference/proof-ladder.md +6 -6
  316. package/pack/.claude/skills/rite-prove/reference/test-command-discovery.md +1 -1
  317. package/pack/.claude/skills/rite-quick/SKILL.md +22 -22
  318. package/pack/.claude/skills/rite-resolve/SKILL.md +18 -18
  319. package/pack/.claude/skills/rite-resolve/reference/answer-protocol.md +7 -7
  320. package/pack/.claude/skills/rite-review/SKILL.md +34 -34
  321. package/pack/.claude/skills/rite-review/reference/anti-patterns.md +4 -4
  322. package/pack/.claude/skills/rite-review/reference/cognitive-load.md +22 -22
  323. package/pack/.claude/skills/rite-review/reference/feature-scoped-review.md +2 -2
  324. package/pack/.claude/skills/rite-review/reference/five-axis-review.md +8 -8
  325. package/pack/.claude/skills/rite-review/reference/nielsen-heuristics.md +14 -14
  326. package/pack/.claude/skills/rite-review/reference/performance-checklist.md +14 -14
  327. package/pack/.claude/skills/rite-review/reference/security-review.md +9 -9
  328. package/pack/.claude/skills/rite-seal/SKILL.md +26 -26
  329. package/pack/.claude/skills/rite-seal/reference/anti-patterns.md +8 -8
  330. package/pack/.claude/skills/rite-seal/reference/conventions-ledger.md +8 -8
  331. package/pack/.claude/skills/rite-seal/reference/final-evidence.md +9 -9
  332. package/pack/.claude/skills/rite-seal/reference/go-no-go.md +9 -9
  333. package/pack/.claude/skills/rite-seal/reference/phase-contract.md +43 -43
  334. package/pack/.claude/skills/rite-ship/SKILL.md +12 -12
  335. package/pack/.claude/skills/rite-ship/reference/anti-patterns.md +5 -5
  336. package/pack/.claude/skills/rite-ship/reference/close-out.md +2 -2
  337. package/pack/.claude/skills/rite-ship/reference/design-memory.md +22 -22
  338. package/pack/.claude/skills/rite-ship/reference/git-ship.md +10 -10
  339. package/pack/.claude/skills/rite-ship/reference/ledger.md +9 -9
  340. package/pack/.claude/skills/rite-ship/reference/rollout.md +11 -11
  341. package/pack/.claude/skills/rite-ship/reference/ship-template.md +1 -1
  342. package/pack/.claude/skills/rite-spec/SKILL.md +45 -45
  343. package/pack/.claude/skills/rite-spec/reference/acceptance-criteria.md +4 -4
  344. package/pack/.claude/skills/rite-spec/reference/anti-patterns.md +6 -6
  345. package/pack/.claude/skills/rite-spec/reference/interview-patterns.md +3 -3
  346. package/pack/.claude/skills/rite-spec/reference/investigation.md +21 -21
  347. package/pack/.claude/skills/rite-spec/reference/question-protocol.md +9 -9
  348. package/pack/.claude/skills/rite-spec/reference/references-intake.md +8 -8
  349. package/pack/.claude/skills/rite-spec/reference/spec-checklists.md +19 -19
  350. package/pack/.claude/skills/rite-status/SKILL.md +13 -13
  351. package/pack/.claude/skills/rite-temper/SKILL.md +29 -29
  352. package/pack/.claude/skills/rite-temper/reference/anti-patterns.md +11 -11
  353. package/pack/.claude/skills/rite-temper/reference/review-dimensions.md +20 -20
  354. package/pack/.claude/skills/rite-temper/reference/scope-modes.md +16 -16
  355. package/pack/.claude/skills/rite-temper/reference/significance.md +10 -10
  356. package/pack/.claude/skills/rite-temper/reference/strategy-template.md +14 -14
  357. package/pack/.claude/skills/rite-vet/SKILL.md +31 -31
  358. package/pack/.claude/skills/rite-vet/reference/anti-patterns.md +14 -14
  359. package/pack/.claude/skills/rite-vet/reference/artifacts.md +10 -10
  360. package/pack/.claude/skills/rite-vet/reference/cross-model.md +9 -9
  361. package/pack/.claude/skills/rite-vet/reference/depth.md +14 -14
  362. package/pack/.claude/skills/rite-vet/reference/eng-lenses.md +9 -9
  363. package/pack/.claude/skills/rite-vet/reference/review-axes.md +28 -28
  364. package/pack/.claude/skills/rite-zoom-out/SKILL.md +18 -18
  365. package/pack/generated/claude/agents/devrites-code-reviewer.md +21 -22
  366. package/pack/generated/claude/agents/devrites-devex-reviewer.md +17 -17
  367. package/pack/generated/claude/agents/devrites-doubt-reviewer.md +6 -6
  368. package/pack/generated/claude/agents/devrites-forge-judge.md +26 -26
  369. package/pack/generated/claude/agents/devrites-frontend-reviewer.md +17 -17
  370. package/pack/generated/claude/agents/devrites-performance-reviewer.md +19 -18
  371. package/pack/generated/claude/agents/devrites-plan-reviewer.md +29 -27
  372. package/pack/generated/claude/agents/devrites-retrospector.md +19 -19
  373. package/pack/generated/claude/agents/devrites-security-auditor.md +15 -15
  374. package/pack/generated/claude/agents/devrites-simplifier-reviewer.md +14 -14
  375. package/pack/generated/claude/agents/devrites-slice-wright.md +52 -51
  376. package/pack/generated/claude/agents/devrites-spec-reviewer.md +11 -11
  377. package/pack/generated/claude/agents/devrites-strategy-reviewer.md +21 -21
  378. package/pack/generated/claude/agents/devrites-test-analyst.md +13 -13
  379. package/pack/generated/claude/settings.json +1 -1
  380. package/pack/generated/claude/skills/devrites-api-interface/SKILL.md +12 -12
  381. package/pack/generated/claude/skills/devrites-audit/SKILL.md +7 -7
  382. package/pack/generated/claude/skills/devrites-browser-proof/SKILL.md +16 -16
  383. package/pack/generated/claude/skills/devrites-debug-recovery/SKILL.md +14 -14
  384. package/pack/generated/claude/skills/devrites-debug-recovery/reference/build-the-loop.md +16 -16
  385. package/pack/generated/claude/skills/devrites-debug-recovery/reference/cleanup-and-classify.md +2 -2
  386. package/pack/generated/claude/skills/devrites-debug-recovery/reference/hypotheses.md +2 -2
  387. package/pack/generated/claude/skills/devrites-debug-recovery/reference/regression-test.md +3 -3
  388. package/pack/generated/claude/skills/devrites-debug-recovery/reference/trace.md +4 -4
  389. package/pack/generated/claude/skills/devrites-doubt/SKILL.md +14 -14
  390. package/pack/generated/claude/skills/devrites-frontend-craft/SKILL.md +18 -18
  391. package/pack/generated/claude/skills/devrites-frontend-craft/reference/craft.md +17 -17
  392. package/pack/generated/claude/skills/devrites-frontend-craft/reference/design-references.md +25 -25
  393. package/pack/generated/claude/skills/devrites-frontend-craft/reference/fullstack.md +6 -6
  394. package/pack/generated/claude/skills/devrites-frontend-craft/reference/quality-standards.md +44 -44
  395. package/pack/generated/claude/skills/devrites-frontend-craft/reference/reuse-first.md +9 -9
  396. package/pack/generated/claude/skills/devrites-frontend-craft/reference/shape.md +13 -13
  397. package/pack/generated/claude/skills/devrites-interview/SKILL.md +27 -27
  398. package/pack/generated/claude/skills/devrites-lib/SKILL.md +25 -27
  399. package/pack/generated/claude/skills/devrites-lib/reference/model-tiers.md +5 -5
  400. package/pack/generated/claude/skills/devrites-lib/reference/parallel-dispatch.md +36 -36
  401. package/pack/generated/claude/skills/devrites-lib/reference/reply-contract.md +11 -3
  402. package/pack/generated/claude/skills/devrites-lib/reference/standards/README.md +10 -10
  403. package/pack/generated/claude/skills/devrites-lib/reference/standards/afk-hitl.md +33 -33
  404. package/pack/generated/claude/skills/devrites-lib/reference/standards/agents.md +37 -37
  405. package/pack/generated/claude/skills/devrites-lib/reference/standards/anti-patterns.md +9 -9
  406. package/pack/generated/claude/skills/devrites-lib/reference/standards/ci-cd.md +12 -12
  407. package/pack/generated/claude/skills/devrites-lib/reference/standards/code-review.md +40 -40
  408. package/pack/generated/claude/skills/devrites-lib/reference/standards/coding-style.md +7 -7
  409. package/pack/generated/claude/skills/devrites-lib/reference/standards/context-hygiene.md +24 -25
  410. package/pack/generated/claude/skills/devrites-lib/reference/standards/core.md +23 -23
  411. package/pack/generated/claude/skills/devrites-lib/reference/standards/definition-of-done.md +1 -1
  412. package/pack/generated/claude/skills/devrites-lib/reference/standards/deprecation.md +18 -18
  413. package/pack/generated/claude/skills/devrites-lib/reference/standards/developer-experience.md +29 -29
  414. package/pack/generated/claude/skills/devrites-lib/reference/standards/development-workflow.md +12 -13
  415. package/pack/generated/claude/skills/devrites-lib/reference/standards/documentation.md +4 -4
  416. package/pack/generated/claude/skills/devrites-lib/reference/standards/edge-case-trace.md +1 -1
  417. package/pack/generated/claude/skills/devrites-lib/reference/standards/elicitation.md +26 -26
  418. package/pack/generated/claude/skills/devrites-lib/reference/standards/error-handling.md +4 -4
  419. package/pack/generated/claude/skills/devrites-lib/reference/standards/git-workflow.md +9 -9
  420. package/pack/generated/claude/skills/devrites-lib/reference/standards/hooks.md +3 -3
  421. package/pack/generated/claude/skills/devrites-lib/reference/standards/observability.md +15 -15
  422. package/pack/generated/claude/skills/devrites-lib/reference/standards/patterns.md +8 -8
  423. package/pack/generated/claude/skills/devrites-lib/reference/standards/performance.md +5 -5
  424. package/pack/generated/claude/skills/devrites-lib/reference/standards/principles.md +31 -31
  425. package/pack/generated/claude/skills/devrites-lib/reference/standards/prose-style.md +25 -25
  426. package/pack/generated/claude/skills/devrites-lib/reference/standards/security.md +30 -30
  427. package/pack/generated/claude/skills/devrites-lib/reference/standards/skill-authoring.md +11 -11
  428. package/pack/generated/claude/skills/devrites-lib/reference/standards/spec-grammar.md +30 -30
  429. package/pack/generated/claude/skills/devrites-lib/reference/standards/testing.md +40 -40
  430. package/pack/generated/claude/skills/devrites-lib/reference/standards/tooling.md +26 -26
  431. package/pack/generated/claude/skills/devrites-prose-craft/SKILL.md +5 -5
  432. package/pack/generated/claude/skills/devrites-refresh-indexes/SKILL.md +6 -6
  433. package/pack/generated/claude/skills/devrites-source-driven/SKILL.md +8 -8
  434. package/pack/generated/claude/skills/devrites-ux-shape/SKILL.md +33 -33
  435. package/pack/generated/claude/skills/devrites-ux-shape/reference/brief-template.md +6 -6
  436. package/pack/generated/claude/skills/devrites-ux-shape/reference/visual-direction-probe.md +9 -9
  437. package/pack/generated/claude/skills/rite/SKILL.md +13 -14
  438. package/pack/generated/claude/skills/rite/reference/menu.md +10 -10
  439. package/pack/generated/claude/skills/rite-adopt/SKILL.md +17 -18
  440. package/pack/generated/claude/skills/rite-adopt/reference/adoption.md +9 -9
  441. package/pack/generated/claude/skills/rite-adopt/reference/anti-patterns.md +6 -6
  442. package/pack/generated/claude/skills/rite-autocomplete/SKILL.md +14 -14
  443. package/pack/generated/claude/skills/rite-autocomplete/reference/decision-policy.md +4 -4
  444. package/pack/generated/claude/skills/rite-autocomplete/reference/loop.md +7 -7
  445. package/pack/generated/claude/skills/rite-autocomplete/reference/stop-conditions.md +7 -7
  446. package/pack/generated/claude/skills/rite-build/SKILL.md +22 -22
  447. package/pack/generated/claude/skills/rite-build/reference/afk-discipline.md +9 -9
  448. package/pack/generated/claude/skills/rite-build/reference/anti-patterns.md +6 -6
  449. package/pack/generated/claude/skills/rite-build/reference/checkpoint-protocol.md +14 -14
  450. package/pack/generated/claude/skills/rite-build/reference/checkpoint.md +8 -8
  451. package/pack/generated/claude/skills/rite-build/reference/evidence-standard.md +1 -1
  452. package/pack/generated/claude/skills/rite-build/reference/forge.md +28 -29
  453. package/pack/generated/claude/skills/rite-build/reference/frontend-trigger.md +2 -2
  454. package/pack/generated/claude/skills/rite-build/reference/one-slice-cycle.md +3 -3
  455. package/pack/generated/claude/skills/rite-build/reference/output.md +1 -1
  456. package/pack/generated/claude/skills/rite-build/reference/phase-contract.md +44 -44
  457. package/pack/generated/claude/skills/rite-build/reference/spec-drift-guard.md +1 -1
  458. package/pack/generated/claude/skills/rite-build/reference/tdd.md +6 -6
  459. package/pack/generated/claude/skills/rite-build/reference/wright-dispatch.md +23 -23
  460. package/pack/generated/claude/skills/rite-converge/SKILL.md +17 -17
  461. package/pack/generated/claude/skills/rite-converge/reference/anti-patterns.md +7 -7
  462. package/pack/generated/claude/skills/rite-converge/reference/convergence-assessment.md +14 -14
  463. package/pack/generated/claude/skills/rite-customize/SKILL.md +2 -2
  464. package/pack/generated/claude/skills/rite-define/SKILL.md +25 -25
  465. package/pack/generated/claude/skills/rite-define/reference/anti-patterns.md +5 -5
  466. package/pack/generated/claude/skills/rite-define/reference/gates.md +13 -13
  467. package/pack/generated/claude/skills/rite-define/reference/plan-template.md +1 -1
  468. package/pack/generated/claude/skills/rite-doctor/SKILL.md +11 -11
  469. package/pack/generated/claude/skills/rite-dogfood/SKILL.md +2 -2
  470. package/pack/generated/claude/skills/rite-explain/SKILL.md +22 -22
  471. package/pack/generated/claude/skills/rite-explain/reference/intake.md +16 -16
  472. package/pack/generated/claude/skills/rite-frame/SKILL.md +22 -22
  473. package/pack/generated/claude/skills/rite-frame/reference/failure-modes.md +13 -13
  474. package/pack/generated/claude/skills/rite-handoff/SKILL.md +12 -12
  475. package/pack/generated/claude/skills/rite-learn/SKILL.md +23 -23
  476. package/pack/generated/claude/skills/rite-plan/SKILL.md +21 -21
  477. package/pack/generated/claude/skills/rite-plan/reference/anti-patterns.md +3 -3
  478. package/pack/generated/claude/skills/rite-plan/reference/dependency-graph.md +1 -1
  479. package/pack/generated/claude/skills/rite-plan/reference/replan-and-repair.md +3 -3
  480. package/pack/generated/claude/skills/rite-plan/reference/slicing.md +9 -9
  481. package/pack/generated/claude/skills/rite-plan/reference/task-breakdown.md +3 -3
  482. package/pack/generated/claude/skills/rite-polish/SKILL.md +11 -11
  483. package/pack/generated/claude/skills/rite-polish/reference/anti-patterns.md +8 -8
  484. package/pack/generated/claude/skills/rite-polish/reference/backend-polish.md +13 -13
  485. package/pack/generated/claude/skills/rite-polish/reference/browser-polish-evidence.md +4 -4
  486. package/pack/generated/claude/skills/rite-polish/reference/code.md +26 -26
  487. package/pack/generated/claude/skills/rite-polish/reference/harden-checklist.md +31 -31
  488. package/pack/generated/claude/skills/rite-polish/reference/ui.md +23 -23
  489. package/pack/generated/claude/skills/rite-pov/SKILL.md +3 -3
  490. package/pack/generated/claude/skills/rite-pr-feedback/SKILL.md +2 -2
  491. package/pack/generated/claude/skills/rite-pressure-test/SKILL.md +14 -14
  492. package/pack/generated/claude/skills/rite-prototype/SKILL.md +13 -13
  493. package/pack/generated/claude/skills/rite-prove/SKILL.md +17 -17
  494. package/pack/generated/claude/skills/rite-prove/reference/anti-patterns.md +4 -4
  495. package/pack/generated/claude/skills/rite-prove/reference/browser-proof.md +2 -2
  496. package/pack/generated/claude/skills/rite-prove/reference/failure-triage.md +4 -4
  497. package/pack/generated/claude/skills/rite-prove/reference/proof-ladder.md +6 -6
  498. package/pack/generated/claude/skills/rite-prove/reference/test-command-discovery.md +1 -1
  499. package/pack/generated/claude/skills/rite-quick/SKILL.md +22 -22
  500. package/pack/generated/claude/skills/rite-resolve/SKILL.md +18 -18
  501. package/pack/generated/claude/skills/rite-resolve/reference/answer-protocol.md +7 -7
  502. package/pack/generated/claude/skills/rite-review/SKILL.md +34 -34
  503. package/pack/generated/claude/skills/rite-review/reference/anti-patterns.md +4 -4
  504. package/pack/generated/claude/skills/rite-review/reference/cognitive-load.md +22 -22
  505. package/pack/generated/claude/skills/rite-review/reference/feature-scoped-review.md +2 -2
  506. package/pack/generated/claude/skills/rite-review/reference/five-axis-review.md +8 -8
  507. package/pack/generated/claude/skills/rite-review/reference/nielsen-heuristics.md +14 -14
  508. package/pack/generated/claude/skills/rite-review/reference/performance-checklist.md +14 -14
  509. package/pack/generated/claude/skills/rite-review/reference/security-review.md +9 -9
  510. package/pack/generated/claude/skills/rite-seal/SKILL.md +26 -26
  511. package/pack/generated/claude/skills/rite-seal/reference/anti-patterns.md +8 -8
  512. package/pack/generated/claude/skills/rite-seal/reference/conventions-ledger.md +8 -8
  513. package/pack/generated/claude/skills/rite-seal/reference/final-evidence.md +9 -9
  514. package/pack/generated/claude/skills/rite-seal/reference/go-no-go.md +9 -9
  515. package/pack/generated/claude/skills/rite-seal/reference/phase-contract.md +43 -43
  516. package/pack/generated/claude/skills/rite-ship/SKILL.md +12 -12
  517. package/pack/generated/claude/skills/rite-ship/reference/anti-patterns.md +5 -5
  518. package/pack/generated/claude/skills/rite-ship/reference/close-out.md +2 -2
  519. package/pack/generated/claude/skills/rite-ship/reference/design-memory.md +22 -22
  520. package/pack/generated/claude/skills/rite-ship/reference/git-ship.md +10 -10
  521. package/pack/generated/claude/skills/rite-ship/reference/ledger.md +9 -9
  522. package/pack/generated/claude/skills/rite-ship/reference/rollout.md +11 -11
  523. package/pack/generated/claude/skills/rite-ship/reference/ship-template.md +1 -1
  524. package/pack/generated/claude/skills/rite-spec/SKILL.md +45 -45
  525. package/pack/generated/claude/skills/rite-spec/reference/acceptance-criteria.md +4 -4
  526. package/pack/generated/claude/skills/rite-spec/reference/anti-patterns.md +6 -6
  527. package/pack/generated/claude/skills/rite-spec/reference/interview-patterns.md +3 -3
  528. package/pack/generated/claude/skills/rite-spec/reference/investigation.md +21 -21
  529. package/pack/generated/claude/skills/rite-spec/reference/question-protocol.md +9 -9
  530. package/pack/generated/claude/skills/rite-spec/reference/references-intake.md +8 -8
  531. package/pack/generated/claude/skills/rite-spec/reference/spec-checklists.md +19 -19
  532. package/pack/generated/claude/skills/rite-status/SKILL.md +13 -13
  533. package/pack/generated/claude/skills/rite-temper/SKILL.md +29 -29
  534. package/pack/generated/claude/skills/rite-temper/reference/anti-patterns.md +11 -11
  535. package/pack/generated/claude/skills/rite-temper/reference/review-dimensions.md +20 -20
  536. package/pack/generated/claude/skills/rite-temper/reference/scope-modes.md +16 -16
  537. package/pack/generated/claude/skills/rite-temper/reference/significance.md +10 -10
  538. package/pack/generated/claude/skills/rite-temper/reference/strategy-template.md +14 -14
  539. package/pack/generated/claude/skills/rite-vet/SKILL.md +31 -31
  540. package/pack/generated/claude/skills/rite-vet/reference/anti-patterns.md +14 -14
  541. package/pack/generated/claude/skills/rite-vet/reference/artifacts.md +10 -10
  542. package/pack/generated/claude/skills/rite-vet/reference/cross-model.md +9 -9
  543. package/pack/generated/claude/skills/rite-vet/reference/depth.md +14 -14
  544. package/pack/generated/claude/skills/rite-vet/reference/eng-lenses.md +9 -9
  545. package/pack/generated/claude/skills/rite-vet/reference/review-axes.md +28 -28
  546. package/pack/generated/claude/skills/rite-zoom-out/SKILL.md +18 -18
  547. package/pack/generated/codex/agents/devrites-code-reviewer.toml +21 -22
  548. package/pack/generated/codex/agents/devrites-devex-reviewer.toml +17 -17
  549. package/pack/generated/codex/agents/devrites-doubt-reviewer.toml +6 -6
  550. package/pack/generated/codex/agents/devrites-forge-judge.toml +26 -26
  551. package/pack/generated/codex/agents/devrites-frontend-reviewer.toml +17 -17
  552. package/pack/generated/codex/agents/devrites-performance-reviewer.toml +19 -18
  553. package/pack/generated/codex/agents/devrites-plan-reviewer.toml +29 -27
  554. package/pack/generated/codex/agents/devrites-retrospector.toml +19 -19
  555. package/pack/generated/codex/agents/devrites-security-auditor.toml +15 -15
  556. package/pack/generated/codex/agents/devrites-simplifier-reviewer.toml +14 -14
  557. package/pack/generated/codex/agents/devrites-slice-wright.toml +52 -51
  558. package/pack/generated/codex/agents/devrites-spec-reviewer.toml +11 -11
  559. package/pack/generated/codex/agents/devrites-strategy-reviewer.toml +21 -21
  560. package/pack/generated/codex/agents/devrites-test-analyst.toml +13 -13
  561. package/pack/generated/codex/skills/devrites-api-interface/SKILL.md +15 -15
  562. package/pack/generated/codex/skills/devrites-audit/SKILL.md +10 -10
  563. package/pack/generated/codex/skills/devrites-browser-proof/SKILL.md +19 -19
  564. package/pack/generated/codex/skills/devrites-debug-recovery/SKILL.md +17 -17
  565. package/pack/generated/codex/skills/devrites-debug-recovery/reference/build-the-loop.md +16 -16
  566. package/pack/generated/codex/skills/devrites-debug-recovery/reference/cleanup-and-classify.md +2 -2
  567. package/pack/generated/codex/skills/devrites-debug-recovery/reference/hypotheses.md +2 -2
  568. package/pack/generated/codex/skills/devrites-debug-recovery/reference/regression-test.md +3 -3
  569. package/pack/generated/codex/skills/devrites-debug-recovery/reference/trace.md +4 -4
  570. package/pack/generated/codex/skills/devrites-doubt/SKILL.md +17 -17
  571. package/pack/generated/codex/skills/devrites-frontend-craft/SKILL.md +20 -20
  572. package/pack/generated/codex/skills/devrites-frontend-craft/reference/craft.md +17 -17
  573. package/pack/generated/codex/skills/devrites-frontend-craft/reference/design-references.md +25 -25
  574. package/pack/generated/codex/skills/devrites-frontend-craft/reference/fullstack.md +6 -6
  575. package/pack/generated/codex/skills/devrites-frontend-craft/reference/quality-standards.md +44 -44
  576. package/pack/generated/codex/skills/devrites-frontend-craft/reference/reuse-first.md +9 -9
  577. package/pack/generated/codex/skills/devrites-frontend-craft/reference/shape.md +13 -13
  578. package/pack/generated/codex/skills/devrites-interview/SKILL.md +30 -30
  579. package/pack/generated/codex/skills/devrites-lib/SKILL.md +28 -30
  580. package/pack/generated/codex/skills/devrites-lib/reference/model-tiers.md +5 -5
  581. package/pack/generated/codex/skills/devrites-lib/reference/parallel-dispatch.md +36 -36
  582. package/pack/generated/codex/skills/devrites-lib/reference/reply-contract.md +11 -3
  583. package/pack/generated/codex/skills/devrites-lib/reference/standards/README.md +10 -10
  584. package/pack/generated/codex/skills/devrites-lib/reference/standards/afk-hitl.md +33 -33
  585. package/pack/generated/codex/skills/devrites-lib/reference/standards/agents.md +37 -37
  586. package/pack/generated/codex/skills/devrites-lib/reference/standards/anti-patterns.md +9 -9
  587. package/pack/generated/codex/skills/devrites-lib/reference/standards/ci-cd.md +12 -12
  588. package/pack/generated/codex/skills/devrites-lib/reference/standards/code-review.md +40 -40
  589. package/pack/generated/codex/skills/devrites-lib/reference/standards/coding-style.md +7 -7
  590. package/pack/generated/codex/skills/devrites-lib/reference/standards/context-hygiene.md +24 -25
  591. package/pack/generated/codex/skills/devrites-lib/reference/standards/core.md +23 -23
  592. package/pack/generated/codex/skills/devrites-lib/reference/standards/definition-of-done.md +1 -1
  593. package/pack/generated/codex/skills/devrites-lib/reference/standards/deprecation.md +18 -18
  594. package/pack/generated/codex/skills/devrites-lib/reference/standards/developer-experience.md +29 -29
  595. package/pack/generated/codex/skills/devrites-lib/reference/standards/development-workflow.md +12 -13
  596. package/pack/generated/codex/skills/devrites-lib/reference/standards/documentation.md +4 -4
  597. package/pack/generated/codex/skills/devrites-lib/reference/standards/edge-case-trace.md +1 -1
  598. package/pack/generated/codex/skills/devrites-lib/reference/standards/elicitation.md +26 -26
  599. package/pack/generated/codex/skills/devrites-lib/reference/standards/error-handling.md +4 -4
  600. package/pack/generated/codex/skills/devrites-lib/reference/standards/git-workflow.md +9 -9
  601. package/pack/generated/codex/skills/devrites-lib/reference/standards/hooks.md +3 -3
  602. package/pack/generated/codex/skills/devrites-lib/reference/standards/observability.md +15 -15
  603. package/pack/generated/codex/skills/devrites-lib/reference/standards/patterns.md +8 -8
  604. package/pack/generated/codex/skills/devrites-lib/reference/standards/performance.md +5 -5
  605. package/pack/generated/codex/skills/devrites-lib/reference/standards/principles.md +31 -31
  606. package/pack/generated/codex/skills/devrites-lib/reference/standards/prose-style.md +25 -25
  607. package/pack/generated/codex/skills/devrites-lib/reference/standards/security.md +30 -30
  608. package/pack/generated/codex/skills/devrites-lib/reference/standards/skill-authoring.md +11 -11
  609. package/pack/generated/codex/skills/devrites-lib/reference/standards/spec-grammar.md +30 -30
  610. package/pack/generated/codex/skills/devrites-lib/reference/standards/testing.md +40 -40
  611. package/pack/generated/codex/skills/devrites-lib/reference/standards/tooling.md +26 -26
  612. package/pack/generated/codex/skills/devrites-prose-craft/SKILL.md +8 -8
  613. package/pack/generated/codex/skills/devrites-refresh-indexes/SKILL.md +9 -9
  614. package/pack/generated/codex/skills/devrites-source-driven/SKILL.md +11 -11
  615. package/pack/generated/codex/skills/devrites-ux-shape/SKILL.md +36 -36
  616. package/pack/generated/codex/skills/devrites-ux-shape/reference/brief-template.md +6 -6
  617. package/pack/generated/codex/skills/devrites-ux-shape/reference/visual-direction-probe.md +9 -9
  618. package/pack/generated/codex/skills/rite/SKILL.md +16 -17
  619. package/pack/generated/codex/skills/rite/reference/menu.md +10 -10
  620. package/pack/generated/codex/skills/rite-adopt/SKILL.md +20 -21
  621. package/pack/generated/codex/skills/rite-adopt/reference/adoption.md +9 -9
  622. package/pack/generated/codex/skills/rite-adopt/reference/anti-patterns.md +6 -6
  623. package/pack/generated/codex/skills/rite-autocomplete/SKILL.md +17 -17
  624. package/pack/generated/codex/skills/rite-autocomplete/reference/decision-policy.md +4 -4
  625. package/pack/generated/codex/skills/rite-autocomplete/reference/loop.md +7 -7
  626. package/pack/generated/codex/skills/rite-autocomplete/reference/stop-conditions.md +7 -7
  627. package/pack/generated/codex/skills/rite-build/SKILL.md +25 -25
  628. package/pack/generated/codex/skills/rite-build/reference/afk-discipline.md +9 -9
  629. package/pack/generated/codex/skills/rite-build/reference/anti-patterns.md +6 -6
  630. package/pack/generated/codex/skills/rite-build/reference/checkpoint-protocol.md +14 -14
  631. package/pack/generated/codex/skills/rite-build/reference/checkpoint.md +8 -8
  632. package/pack/generated/codex/skills/rite-build/reference/evidence-standard.md +1 -1
  633. package/pack/generated/codex/skills/rite-build/reference/forge.md +28 -29
  634. package/pack/generated/codex/skills/rite-build/reference/frontend-trigger.md +2 -2
  635. package/pack/generated/codex/skills/rite-build/reference/one-slice-cycle.md +3 -3
  636. package/pack/generated/codex/skills/rite-build/reference/output.md +1 -1
  637. package/pack/generated/codex/skills/rite-build/reference/phase-contract.md +44 -44
  638. package/pack/generated/codex/skills/rite-build/reference/spec-drift-guard.md +1 -1
  639. package/pack/generated/codex/skills/rite-build/reference/tdd.md +6 -6
  640. package/pack/generated/codex/skills/rite-build/reference/wright-dispatch.md +23 -23
  641. package/pack/generated/codex/skills/rite-converge/SKILL.md +20 -20
  642. package/pack/generated/codex/skills/rite-converge/reference/anti-patterns.md +7 -7
  643. package/pack/generated/codex/skills/rite-converge/reference/convergence-assessment.md +14 -14
  644. package/pack/generated/codex/skills/rite-customize/SKILL.md +5 -5
  645. package/pack/generated/codex/skills/rite-define/SKILL.md +28 -28
  646. package/pack/generated/codex/skills/rite-define/reference/anti-patterns.md +5 -5
  647. package/pack/generated/codex/skills/rite-define/reference/gates.md +13 -13
  648. package/pack/generated/codex/skills/rite-define/reference/plan-template.md +1 -1
  649. package/pack/generated/codex/skills/rite-doctor/SKILL.md +14 -14
  650. package/pack/generated/codex/skills/rite-dogfood/SKILL.md +5 -5
  651. package/pack/generated/codex/skills/rite-explain/SKILL.md +25 -25
  652. package/pack/generated/codex/skills/rite-explain/reference/intake.md +16 -16
  653. package/pack/generated/codex/skills/rite-frame/SKILL.md +25 -25
  654. package/pack/generated/codex/skills/rite-frame/reference/failure-modes.md +13 -13
  655. package/pack/generated/codex/skills/rite-handoff/SKILL.md +15 -15
  656. package/pack/generated/codex/skills/rite-learn/SKILL.md +26 -26
  657. package/pack/generated/codex/skills/rite-plan/SKILL.md +24 -24
  658. package/pack/generated/codex/skills/rite-plan/reference/anti-patterns.md +3 -3
  659. package/pack/generated/codex/skills/rite-plan/reference/dependency-graph.md +1 -1
  660. package/pack/generated/codex/skills/rite-plan/reference/replan-and-repair.md +3 -3
  661. package/pack/generated/codex/skills/rite-plan/reference/slicing.md +9 -9
  662. package/pack/generated/codex/skills/rite-plan/reference/task-breakdown.md +3 -3
  663. package/pack/generated/codex/skills/rite-polish/SKILL.md +14 -14
  664. package/pack/generated/codex/skills/rite-polish/reference/anti-patterns.md +8 -8
  665. package/pack/generated/codex/skills/rite-polish/reference/backend-polish.md +13 -13
  666. package/pack/generated/codex/skills/rite-polish/reference/browser-polish-evidence.md +4 -4
  667. package/pack/generated/codex/skills/rite-polish/reference/code.md +26 -26
  668. package/pack/generated/codex/skills/rite-polish/reference/harden-checklist.md +31 -31
  669. package/pack/generated/codex/skills/rite-polish/reference/ui.md +23 -23
  670. package/pack/generated/codex/skills/rite-pov/SKILL.md +6 -6
  671. package/pack/generated/codex/skills/rite-pr-feedback/SKILL.md +5 -5
  672. package/pack/generated/codex/skills/rite-pressure-test/SKILL.md +17 -17
  673. package/pack/generated/codex/skills/rite-prototype/SKILL.md +16 -16
  674. package/pack/generated/codex/skills/rite-prove/SKILL.md +20 -20
  675. package/pack/generated/codex/skills/rite-prove/reference/anti-patterns.md +4 -4
  676. package/pack/generated/codex/skills/rite-prove/reference/browser-proof.md +2 -2
  677. package/pack/generated/codex/skills/rite-prove/reference/failure-triage.md +4 -4
  678. package/pack/generated/codex/skills/rite-prove/reference/proof-ladder.md +6 -6
  679. package/pack/generated/codex/skills/rite-prove/reference/test-command-discovery.md +1 -1
  680. package/pack/generated/codex/skills/rite-quick/SKILL.md +25 -25
  681. package/pack/generated/codex/skills/rite-resolve/SKILL.md +21 -21
  682. package/pack/generated/codex/skills/rite-resolve/reference/answer-protocol.md +7 -7
  683. package/pack/generated/codex/skills/rite-review/SKILL.md +37 -37
  684. package/pack/generated/codex/skills/rite-review/reference/anti-patterns.md +4 -4
  685. package/pack/generated/codex/skills/rite-review/reference/cognitive-load.md +22 -22
  686. package/pack/generated/codex/skills/rite-review/reference/feature-scoped-review.md +2 -2
  687. package/pack/generated/codex/skills/rite-review/reference/five-axis-review.md +8 -8
  688. package/pack/generated/codex/skills/rite-review/reference/nielsen-heuristics.md +14 -14
  689. package/pack/generated/codex/skills/rite-review/reference/performance-checklist.md +14 -14
  690. package/pack/generated/codex/skills/rite-review/reference/security-review.md +9 -9
  691. package/pack/generated/codex/skills/rite-seal/SKILL.md +29 -29
  692. package/pack/generated/codex/skills/rite-seal/reference/anti-patterns.md +8 -8
  693. package/pack/generated/codex/skills/rite-seal/reference/conventions-ledger.md +8 -8
  694. package/pack/generated/codex/skills/rite-seal/reference/final-evidence.md +9 -9
  695. package/pack/generated/codex/skills/rite-seal/reference/go-no-go.md +9 -9
  696. package/pack/generated/codex/skills/rite-seal/reference/phase-contract.md +43 -43
  697. package/pack/generated/codex/skills/rite-ship/SKILL.md +15 -15
  698. package/pack/generated/codex/skills/rite-ship/reference/anti-patterns.md +5 -5
  699. package/pack/generated/codex/skills/rite-ship/reference/close-out.md +2 -2
  700. package/pack/generated/codex/skills/rite-ship/reference/design-memory.md +22 -22
  701. package/pack/generated/codex/skills/rite-ship/reference/git-ship.md +10 -10
  702. package/pack/generated/codex/skills/rite-ship/reference/ledger.md +9 -9
  703. package/pack/generated/codex/skills/rite-ship/reference/rollout.md +11 -11
  704. package/pack/generated/codex/skills/rite-ship/reference/ship-template.md +1 -1
  705. package/pack/generated/codex/skills/rite-spec/SKILL.md +48 -48
  706. package/pack/generated/codex/skills/rite-spec/reference/acceptance-criteria.md +4 -4
  707. package/pack/generated/codex/skills/rite-spec/reference/anti-patterns.md +6 -6
  708. package/pack/generated/codex/skills/rite-spec/reference/interview-patterns.md +3 -3
  709. package/pack/generated/codex/skills/rite-spec/reference/investigation.md +21 -21
  710. package/pack/generated/codex/skills/rite-spec/reference/question-protocol.md +9 -9
  711. package/pack/generated/codex/skills/rite-spec/reference/references-intake.md +8 -8
  712. package/pack/generated/codex/skills/rite-spec/reference/spec-checklists.md +19 -19
  713. package/pack/generated/codex/skills/rite-status/SKILL.md +16 -16
  714. package/pack/generated/codex/skills/rite-temper/SKILL.md +32 -32
  715. package/pack/generated/codex/skills/rite-temper/reference/anti-patterns.md +11 -11
  716. package/pack/generated/codex/skills/rite-temper/reference/review-dimensions.md +20 -20
  717. package/pack/generated/codex/skills/rite-temper/reference/scope-modes.md +16 -16
  718. package/pack/generated/codex/skills/rite-temper/reference/significance.md +10 -10
  719. package/pack/generated/codex/skills/rite-temper/reference/strategy-template.md +14 -14
  720. package/pack/generated/codex/skills/rite-vet/SKILL.md +34 -34
  721. package/pack/generated/codex/skills/rite-vet/reference/anti-patterns.md +14 -14
  722. package/pack/generated/codex/skills/rite-vet/reference/artifacts.md +10 -10
  723. package/pack/generated/codex/skills/rite-vet/reference/cross-model.md +9 -9
  724. package/pack/generated/codex/skills/rite-vet/reference/depth.md +14 -14
  725. package/pack/generated/codex/skills/rite-vet/reference/eng-lenses.md +9 -9
  726. package/pack/generated/codex/skills/rite-vet/reference/review-axes.md +28 -28
  727. package/pack/generated/codex/skills/rite-zoom-out/SKILL.md +21 -21
  728. package/package.json +2 -2
  729. package/scripts/build-binaries.sh +1 -1
  730. package/scripts/build-host-artifacts.sh +1 -1
  731. package/scripts/build-release-tarball.sh +1 -1
  732. package/scripts/check-cross-refs.py +8 -8
  733. package/scripts/check-invocation-integrity.py +4 -4
  734. package/scripts/check-no-global-writes.sh +2 -2
  735. package/scripts/check-reply-contract.sh +1 -1
  736. package/scripts/check-rule-uniqueness.sh +2 -2
  737. package/scripts/codex-generate.sh +5 -5
  738. package/scripts/devrites-detect.sh +33 -33
  739. package/scripts/eval-runner.py +7 -7
  740. package/scripts/grade-feature.sh +14 -14
  741. package/scripts/install-lib.sh +2 -2
  742. package/scripts/pin.sh +12 -12
  743. package/scripts/run-behavioral-evals.sh +12 -12
  744. package/scripts/run-evals.sh +1 -1
  745. package/scripts/run-outcome-evals.sh +12 -12
  746. package/scripts/scan-pack-security.py +4 -4
  747. package/scripts/scan-supply-chain-iocs.py +7 -7
  748. package/scripts/skills-inventory.mjs +21 -4
  749. package/scripts/sync-version.sh +2 -2
  750. package/scripts/validate-workflow-security.py +12 -6
  751. package/scripts/validate-workspace-schema.py +2 -2
  752. package/scripts/validate.sh +7 -7
package/README.md CHANGED
@@ -2,599 +2,358 @@
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 (mandatory in 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) | _recommended, every feature_ — engineering plan review: scope · architecture · tests · perf, hardens the plan + writes `test-plan.md`; depth scales to stakes, never skipped (always in autocomplete) |
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/] --> 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
- D -.->|every feature| V[/rite-vet/] -.-> B
101
- Sl -->|GO| Sh[/rite-ship/]
102
- Sh -->|type-GO| Ship([ship: commit · push · tag])
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,B,P,Po,R,Sl,Sh,T phase
110
- class Ship ship
111
- class 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.4`](https://github.com/ViktorsBaikers/DevRites/releases/tag/v3.0.4) — 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.6`](https://github.com/ViktorsBaikers/DevRites/releases/tag/v3.0.6): 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, not by the prefix. See
155
- [`docs/flow.md` § Public vs internal namespace](docs/flow.md#8-public-vs-internal-namespace).
26
+ ## Quick start
156
27
 
157
- Full rationale: [`docs/architecture.md`](docs/architecture.md).
28
+ ### 1. Install DevRites
158
29
 
159
- ## Install
160
-
161
- DevRites installs **into a project** (project-local only — it never writes to
162
- `~/.claude` or `~/.codex`). Install with `npx` (recommended) or the `curl | bash`
163
- one-liner — both run the same installer and ship Claude Code skills, Codex skills,
164
- agents, **rules**, and aliases.
165
-
166
- ### Installing
167
-
168
- **Fastest — `npx` (Node 18+):**
30
+ Run this from the root of your project. Node.js 18 or later is required.
169
31
 
170
32
  ```bash
171
- # Install the full pack into the current project
172
33
  npx devrites@latest
173
-
174
- # Into a specific project, or preview first
175
- npx devrites@latest --target /path/to/your/project
176
- npx devrites@latest --dry-run
177
-
178
- # Upgrade or remove later
179
- npx devrites@latest update
180
- npx devrites@latest uninstall
181
34
  ```
182
35
 
183
- `npx devrites` is a thin wrapper over the same installer below the pack is bundled in the
184
- package, so the install runs **offline** and is **pinned** to the version you request
185
- (`@latest`, `@1.18.0`, …). It accepts every flag the bash installer does and is still
186
- project-local (it never writes to `~/.claude` or `~/.codex`). Requires `bash` — built in on macOS/Linux;
187
- on Windows run it inside Git Bash or WSL, or use the `curl | bash` one-liner below.
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`.
188
38
 
189
- **One-liner over the network** — no `git clone` or Node required:
39
+ ### 2. Start a feature
190
40
 
191
- ```bash
192
- # Install latest release into the current directory
193
- curl -fsSL https://raw.githubusercontent.com/ViktorsBaikers/DevRites/main/install.sh | bash
194
-
195
- # Install into a specific project
196
- curl -fsSL https://raw.githubusercontent.com/ViktorsBaikers/DevRites/main/install.sh | bash -s -- --target /path/to/your/project
41
+ In Claude Code:
197
42
 
198
- # Preview (no changes)
199
- curl -fsSL https://raw.githubusercontent.com/ViktorsBaikers/DevRites/main/install.sh | bash -s -- --dry-run
200
-
201
- # Pin to a specific release
202
- curl -fsSL https://raw.githubusercontent.com/ViktorsBaikers/DevRites/main/install.sh | DEVRITES_REF=v0.1.0 bash
43
+ ```text
44
+ /rite-spec add-csv-export
203
45
  ```
204
46
 
205
- The script is self-bootstrapping: when piped through `bash` it auto-downloads the latest
206
- release tarball (or the `main` source archive as fallback) into `/tmp` and re-execs from
207
- there. Requires `curl` and `tar`. After bootstrap, install/update/uninstall semantics
208
- run through `devrites-engine`; the shell scripts only acquire a bundle/binary and pass
209
- arguments through. Agent files stay project-local and global agent homes are refused. By
210
- default the engine downloads or builds a verified `devrites-engine` control-plane binary
211
- and writes it to `/usr/local/bin` or `~/.local/bin`; use `--no-binary` or
212
- `DEVRITES_NO_BINARY=1` to skip that global bin install.
213
-
214
- **From a local checkout** (same script, no network needed):
47
+ In Codex:
215
48
 
216
- ```bash
217
- git clone https://github.com/ViktorsBaikers/DevRites devrites && cd devrites
218
- ./install.sh --target /path/to/your/project # or run from inside the project
219
- ./install.sh --dry-run # preview, change nothing
49
+ ```text
50
+ $rite-spec add-csv-export
220
51
  ```
221
52
 
222
- 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.
223
57
 
224
- | Flag | Effect |
225
- |---|---|
226
- | `--target DIR` | Install into DIR (default: current directory) |
227
- | `--dry-run` | Show planned file operations and exit |
228
- | `--force` | Overwrite existing non-DevRites files |
229
- | `--no-agents` | Skip the review subagents |
230
- | `--no-codex` | Skip Codex support files (`.agents/skills`, `.codex/agents`, `AGENTS.md`) |
231
- | `--no-skills` | Skip skills and bundled engineering standards |
232
- | `--no-binary` | Skip the global `devrites-engine` control-plane binary |
233
- | `--no-rules` | Deprecated no-op; standards ship inside `devrites-lib` |
234
- | `--rules-only` | Deprecated no-op; installs normally for compatibility |
235
- | `--short-aliases=all` | Add `/define`, `/build`, `/prove`, `/seal` short aliases (off by default) |
236
-
237
- Every installed project file is recorded in `.claude/devrites.manifest` (with the
238
- installed version and the original install flags in the header). `./uninstall.sh`
239
- removes exactly those files (and prunes empty dirs) plus the shared `devrites-engine`
240
- binary unless `--keep-binary` is passed — your feature data in `.devrites/work/` and
241
- `.devrites/ACTIVE` is preserved.
242
-
243
- ### Upgrading an existing install
244
-
245
- **One-liner over the network**:
58
+ ### 3. Follow the next recorded step
246
59
 
247
- ```bash
248
- # Upgrade the install in the current directory
249
- 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.
250
63
 
251
- # Upgrade an install elsewhere
252
- curl -fsSL https://raw.githubusercontent.com/ViktorsBaikers/DevRites/main/update.sh | bash -s -- --target /path/to/proj
64
+ ## How the lifecycle works
253
65
 
254
- # Just check (exit 10 = update available, 0 = current)
255
- curl -fsSL https://raw.githubusercontent.com/ViktorsBaikers/DevRites/main/update.sh | bash -s -- --check
256
- ```
257
-
258
- 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.
259
69
 
260
- ```bash
261
- ./update.sh # upgrade install in current directory
262
- ./update.sh --target /path/to/proj # upgrade install elsewhere
263
- ./update.sh --check # report installed vs latest, change nothing
264
- ./update.sh --to v0.2.0 # pin to a specific tag
265
- ./update.sh --pre # allow pre-release tags
266
- ./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>/
267
128
  ```
268
129
 
269
- `update.sh` reads the installed version + original flags from
270
- `.claude/devrites.manifest`, asks the GitHub API for the latest release tag,
271
- downloads the release tarball, and re-runs the bundled `install.sh` with the
272
- same flags + `--force`. `.devrites/` (active feature, work) is preserved
273
- because the installer only touches manifest-tracked paths.
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.
274
134
 
275
- ### Uninstalling
135
+ ## Safety rules
276
136
 
277
- ```bash
278
- # Network one-liner
279
- curl -fsSL https://raw.githubusercontent.com/ViktorsBaikers/DevRites/main/uninstall.sh | bash
280
- curl -fsSL https://raw.githubusercontent.com/ViktorsBaikers/DevRites/main/uninstall.sh | bash -s -- --target /path
281
-
282
- # Local checkout
283
- ./uninstall.sh # remove DevRites from the current project
284
- ./uninstall.sh --target /path/to/proj
285
- ./uninstall.sh --dry-run # preview, change nothing
286
- ```
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.
287
151
 
288
- Removes only files listed in `.claude/devrites.manifest` and prunes empty dirs,
289
- including Codex mirrors when they were installed.
290
- `.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.
291
155
 
292
- ## Recommended setup (optional, but DevRites is much sharper with it)
156
+ ## HITL and AFK modes
293
157
 
294
- DevRites runs with zero extra tooling, but three tools make it meaningfully better.
295
- **Install and configure them in your project before you start** — DevRites detects each
296
- one and **degrades gracefully** when it's absent.
158
+ ### HITL is the default
297
159
 
298
- | Tool | What it gives DevRites | Set up |
299
- |---|---|---|
300
- | **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. |
301
- | **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). |
302
- | **[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.
303
165
 
304
- Without them, DevRites reads files instead of a code graph and uses Claude Code's built-in
305
- `/run`+`/verify` (or documented manual steps) instead of a browser. With them: deeper
306
- investigation, cheaper context, and real browser proof. None are required.
166
+ ### AFK runs the safe part unattended
307
167
 
308
- ## Skills
168
+ Create `.devrites/AFK` to let permitted gates select their recommended option
169
+ and continue:
309
170
 
310
- The pack ships **42 skills total** — the `rite` menu, 29 user-invocable `rite-*`
311
- workflow + utility skills, 11 model-invoked `devrites-*` specialists, plus the internal
312
- `devrites-lib` reference library. The installed `devrites-engine` owns workflow control;
313
- the npm `devrites` shim owns install/update/uninstall and proxies engine subcommands.
314
- `rite-*` and `devrites-*` are namespaces, not visibility rules: frontmatter is
315
- authoritative. Workspace-operating lifecycle skills read `core.md` in step 0 and disclose
316
- phase rules on demand; compact utilities keep their narrower contract local.
171
+ ```yaml
172
+ max_slices: 10
173
+ allow_gates: [advisory]
174
+ ```
317
175
 
318
- **Claude Code invocation.** Every user-invocable skill responds to **both** `/rite <verb>` (menu form — type `/rite` to discover) and `/rite-<verb>` (direct shortcut — muscle memory). 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.
319
180
 
320
- **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).
321
186
 
322
- **Rules in Codex.** DevRites engineering rules are mirrored as Markdown under
323
- `.agents/skills/devrites-lib/reference/standards/` because they are workflow/craft
324
- instructions, not Codex command-approval `.rules` files. Generated guidance points at the
325
- mirror; each skill's own contract decides whether `core.md` or a conditional standard loads.
187
+ ## Install, update, and remove
326
188
 
327
- **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
328
190
 
329
191
  ```bash
330
- ./scripts/pin.sh add b rite-build # /b == /rite-build
331
- ./scripts/pin.sh add ship rite-ship # /ship == /rite-ship
332
- ./scripts/pin.sh list # show currently-pinned aliases
333
- ./scripts/pin.sh remove b # drop the alias
334
- ```
192
+ # Install in the current project
193
+ npx devrites@latest
335
194
 
336
- 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
337
198
 
338
- ### Full skill + agent inventory
199
+ # Update or remove an existing installation
200
+ npx devrites@latest update
201
+ npx devrites@latest uninstall
202
+ ```
339
203
 
340
- **Public `rite-*` skills (29)** — slash-command surface:
204
+ Useful install flags:
341
205
 
342
- | Group | Skills |
206
+ | Flag | Effect |
343
207
  |---|---|
344
- | Lifecycle (8) | `rite-spec` · `rite-define` · `rite-build` · `rite-prove` · `rite-polish` · `rite-review` · `rite-seal` · `rite-ship` |
345
- | 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 |
346
- | Strategic (optional) | `rite-temper` strategic spec review between spec and define; mandatory in `rite-autocomplete` |
347
- | Engineering (every feature) | `rite-vet` engineering plan review between define and build; depth scales to stakes, never skipped; always in `rite-autocomplete` |
348
- | Resume / replan | `rite-resolve` · `rite-plan` |
349
- | Utility | `rite-status` · `rite-doctor` · `rite-customize` · `rite-pov` · `rite-dogfood` · `rite-pr-feedback` · `rite-zoom-out` · `rite-prototype` · `rite-handoff` · `rite-pressure-test` · `rite-autocomplete` |
350
- | 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` |
351
- | Menu | `rite` |
352
-
353
- **Internal `devrites-*` specialists** — model-invoked, hidden from menu:
354
-
355
- `devrites-interview` · `devrites-source-driven` · `devrites-doubt` ·
356
- `devrites-ux-shape` · `devrites-frontend-craft` · `devrites-browser-proof` ·
357
- `devrites-debug-recovery` · `devrites-api-interface` ·
358
- `devrites-audit` (axes: `security` · `perf` · `simplify`) ·
359
- `devrites-prose-craft` · `devrites-refresh-indexes`.
360
-
361
- **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. |
362
216
 
363
- `devrites-strategy-reviewer` (pre-plan, via `/rite-temper`) ·
364
- `devrites-plan-reviewer` (pre-build, via `/rite-vet`) · `devrites-spec-reviewer` ·
365
- `devrites-code-reviewer` · `devrites-test-analyst` · `devrites-frontend-reviewer` ·
366
- `devrites-security-auditor` · `devrites-performance-reviewer` ·
367
- `devrites-devex-reviewer` (developer-facing surface, predict at `/rite-vet` + measure-the-boomerang at `/rite-seal`) ·
368
- `devrites-doubt-reviewer` · `devrites-simplifier-reviewer` ·
369
- `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.
370
218
 
371
- **Cross-feature analyst (1)** — fresh-context, read-only, scope is the archive not a diff:
219
+ ### Bash bootstrap
372
220
 
373
- `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`.
374
223
 
375
- **Executor agent (1)** — fresh-context, **write-capable** writer under `.claude/agents/`:
376
-
377
- `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
378
227
 
379
- 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
380
230
 
381
- ## 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
+ ```
382
234
 
383
- DevRites runs the same lifecycle two ways. The mode is per-slice (declared in
384
- `tasks.md` at planning time) and per-session (`.devrites/AFK` sentinel toggles the
385
- 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.
386
240
 
387
- ### HITL human-in-the-loop (default)
241
+ ## Claude Code and Codex integration
388
242
 
389
- Slices marked `Mode: HITL` pause **before any code is written**. `/rite-build`
390
- renders the checkpoint, writes `Awaiting human` to `state.md`, appends the question
391
- to `questions.md`, and stops. You answer with
392
- [`/rite-resolve <qid> "<answer>"`](pack/.claude/skills/rite-resolve/SKILL.md) and the
393
- workflow resumes. The pause is pre-action by design — no half-built slice, no
394
- "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.
395
246
 
396
- 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`.
397
252
 
398
- | Gate | Stakes | Behavior | SLA |
399
- |---|---|---|---|
400
- | `advisory` | low | log + proceed; surface for audit | none |
401
- | `validating` | medium | async — build continues, merge blocks until reviewed | 4h |
402
- | `blocking` | high | synchronous pause; loop stops | 15m |
403
- | `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.
404
255
 
405
- Full taxonomy + decision tree:
406
- [`pack/.claude/skills/rite-define/reference/gates.md`](pack/.claude/skills/rite-define/reference/gates.md).
256
+ ## Skills and agents
407
257
 
408
- ### 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.
409
262
 
410
- Drop `.devrites/AFK` in the project. AFK slices run unattended;
411
- [`devrites-doubt`](pack/.claude/skills/devrites-doubt/SKILL.md) and other
412
- discretionary pauses downgrade to advisory entries in `questions.md` so the loop
413
- 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.
414
266
 
415
- ```yaml
416
- # .devrites/AFK presence = AFK active.
417
- max_slices: 10 # /rite-build decrements per built slice; 0 → forced HITL stop
418
- notify: "ntfy.sh/my-topic" # shell command run on awaiting_human; qid / gate / slice in env
419
- allow_gates: [advisory, validating] # gate severities AFK may auto-handle
420
- ```
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.
421
270
 
422
- **AFK never silently accepts irreversible risk.** Regardless of `allow_gates`, the
423
- workflow pauses on: destructive data migration · auth/authz boundary change · public
424
- API break · external-service contract change · filesystem destruction outside the
425
- workspace · red tests / types / lint at slice end. The same `blocking` + `escalating`
426
- gates always pause in AFK too — `allow_gates` only widens what's automatic, not what's
427
- irreversible.
271
+ ## Engineering standards and UI work
428
272
 
429
- ```bash
430
- # Run unattended for the next stretch:
431
- echo 'max_slices: 10' > .devrites/AFK
432
- 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.
433
279
 
434
- # Back to HITL:
435
- rm .devrites/AFK
436
- ```
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.
437
286
 
438
- Recommended progression: start HITL, refine the prompt and plan over a few slices, then
439
- drop the sentinel for the bulk stretch. Always cap iterations. Full contract:
440
- [`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.
441
292
 
442
- ## Typical workflow
293
+ ## Security model
443
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.
301
+
302
+ Workflow state is read through the engine rather than shell injection. The
303
+ installer never writes `defaultMode: bypassPermissions`. Skills use networked
304
+ research only through host tools you invoke or configure.
305
+
306
+ Read [`SECURITY.md`](SECURITY.md) for the threat model, managed deployment
307
+ guidance, and private reporting instructions.
308
+
309
+ ## Repository layout
310
+
311
+ ```text
312
+ bin/ npm CLI shim
313
+ engine/ Go control plane and tests
314
+ pack/.claude/ canonical skills, agents, hooks, and standards
315
+ pack/generated/ generated host payloads; do not edit by hand
316
+ scripts/ validation, generation, install, and release tooling
317
+ tests/ repository-level shell tests
318
+ docs/ architecture, usage, command, and contributor guides
319
+ evals/ routing and behavioral evaluation fixtures
444
320
  ```
445
- # start a feature
446
- /rite-spec add-csv-export # investigate deeply → spec.md (asks you; gathers design refs)
447
- /rite-define # spec → plan.md + tasks.md + state.md
448
-
449
- # build loop — one slice at a time
450
- /rite-build # slice 1, stops with evidence
451
- /rite-build # slice 2 ... repeat for each slice
452
- /rite-prove # ONCE all slices built: full tests + browser proof
453
-
454
- # finish
455
- /rite-polish # code polish always + UI normalize/polish if UI in scope
456
- /rite-review # feature-scoped multi-axis (parallel Spec + Standards)
457
- /rite-seal # GO / NO-GO decision → writes seal.md (no git)
458
- /rite-ship # on GO: type-GO + commit/push/tag, then archive + close the task
459
-
460
- # or run the whole cycle unattended
461
- /rite-autocomplete # spec → … → seal → ship with no per-phase iteration (--ship to push)
462
-
463
- # check in any time
464
- /rite # menu + next command (no state read)
465
- /rite-status # full status: phase, evidence, drift, handoff readiness
466
- ```
467
-
468
- If implementation reveals the plan is wrong, the **Spec Drift Guard** stops
469
- the build, records the drift in `drift.md`, asks you when product behavior
470
- changes, and routes through `/rite-plan repair` before resuming.
471
-
472
- Worked examples (spec-then-plan, mid-build drift, UI feature with
473
- Playwright MCP, backend-only, polish modes, zoom-out, mid-flight handoff):
474
- **[docs/usage.md](docs/usage.md)**.
475
321
 
476
- ## Engineering rules
322
+ For local development:
477
323
 
478
- DevRites ships its own stack-agnostic engineering rules and installs them to
479
- `.claude/skills/devrites-lib/reference/standards/` — common rule files plus a README index. They're **common** by design
480
- (no language assumptions); a project's own conventions always win where they exist, and a
481
- project's own **principles** (`.devrites/principles.md`) outrank both. Standards ship inside
482
- the `devrites-lib` skill; the retired `--no-rules` and `--rules-only` flags are compatibility
483
- no-ops. Use `--no-skills` only when you intentionally want to skip skills and the bundled
484
- standards together. Loading model: each `rite-*` skill Reads `.claude/skills/devrites-lib/reference/standards/core.md` as its first
485
- step; the remaining rule files load on demand via `Read` from the skill body that needs them.
486
-
487
- | Always-on | On-demand |
488
- |---|---|
489
- | `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` |
490
-
491
- Full index with phase mapping: [`pack/.claude/skills/devrites-lib/reference/standards/README.md`](pack/.claude/skills/devrites-lib/reference/standards/README.md);
492
- diagram: [`docs/flow.md` § Engineering-rules loading](docs/flow.md#6-engineering-rules-carrier).
493
-
494
- ## Browser proof ladder
495
-
496
- For UI work DevRites prefers real runtime evidence, top-down: **Playwright MCP** (if
497
- configured, paired with **Chrome DevTools MCP** for Lighthouse / perf trace) → Claude Code
498
- **`/run`+`/verify`** → **project-native E2E** (Playwright / Cypress / Capybara) → **manual
499
- fallback**. It detects tooling but
500
- never installs it, stops at auth walls, and treats a screenshot **path** as unproven
501
- until it's opened and described.
502
-
503
- ## Frontend & fullstack
504
-
505
- UI work is **planned before it's coded**. When `/rite-spec` detects UI, `devrites-ux-shape`
506
- turns the request + any references (screenshots, Figma, video) into a feature-level
507
- **`design-brief.md`** — design direction (color strategy · scene sentence · named anchor
508
- references), key states, interaction model, and an optional Figma/image **visual-direction
509
- probe** — and pauses for you to confirm the direction (HITL) or asserts a best guess (AFK).
510
- That brief is the **build target**, woven into spec → define → build, not a separate phase.
511
-
512
- Then `devrites-frontend-craft` builds **to** the brief: detect the surface register (brand
513
- vs product), refine the brief per slice (all states — default / loading / empty / error /
514
- success / disabled), build from the existing design system, avoid generic-AI tells, and
515
- meet the **2026 quality bar** — Core Web Vitals (LCP ≤ 2.5 s / INP ≤ 200 ms / CLS ≤ 0.1)
516
- and WCAG 2.2 AA. **Fullstack features** go **contract-first**: define the API/data contract, build
517
- one **vertical slice** through the layers (DB → service → API → UI), apply the
518
- engineering rules to the backend and the craft to the UI, map every contract error to a
519
- real UI state, and **prove both layers** (contract tests + browser proof).
520
-
521
- ## Safety & scope
522
-
523
- - **Project-local only.** Never writes to `~/.claude` or `~/.codex`. Manifest-managed install/uninstall.
524
- - **Feature scope only.** Review/simplify/polish/security stay within the active feature
525
- and touched files — no project-wide refactors, no drive-by cleanup.
526
- - **One slice at a time.** `/rite-build` stops after a single verified slice.
527
- - **Evidence over confidence.** Claims need recorded commands, output, or screenshots.
528
- - **Ask before danger.** Material assumptions, dependency additions, a second design
529
- system, destructive operations, and product-behavior changes are surfaced, not assumed.
530
-
531
- ## Layout
532
-
533
- ```
534
- devrites/
535
- bin/ # devrites.mjs — npx CLI entry point (acquires/proxies devrites-engine)
536
- .github/ # workflows/ (ci, release, dependabot-auto-merge) + dependabot.yml
537
- .husky/ # commit-msg hook (Conventional Commits via commitlint)
538
- .releaserc.json # semantic-release config (CHANGELOG, version sync, tarball, GitHub Release)
539
- install.sh uninstall.sh update.sh # self-contained bundle/binary bootstrap shims
540
- scripts/ # install-lib (shim + pin helpers) · validate · validate-frontmatter · run-evals
541
- # grade-feature · run-outcome-evals · devrites-detect · check-no-global-writes
542
- # sync-version · build-release-tarball
543
- pack/.claude/ # skills/ 42 skills — 30 public + 12 internal ─┐
544
- # agents/ 13 read-only + 1 writer (slice-wright) ├─ the pack
545
- # settings.json (canonical Claude engine hook wiring) ┘
546
- # (standards live inside skills/devrites-lib/reference/standards/)
547
- installed projects # .claude/ runtime assets; .agents/skills + .codex/agents
548
- # + .codex/hooks.json + AGENTS.md for Codex
549
- evals/ # trigger evals (20/skill) + golden/ outcome-eval fixtures
550
- docs/ # architecture · skills · command-map · usage · flow · release · cli
551
- internal/ # research, development notes (gitignored)
552
- tests/ # install/uninstall smoke · install fixture · pack validation
553
- dist/ # release tarballs built by semantic-release (gitignored)
554
- CHANGELOG.md SECURITY.md CODE_OF_CONDUCT.md CODEOWNERS NOTICE.md LICENSE
555
- package.json commitlint.config.js # husky/commitlint/semantic-release toolchain
324
+ ```bash
325
+ npm install
326
+ npm run validate
327
+ npm test
328
+ (cd engine && go test ./... -count=1)
556
329
  ```
557
330
 
558
- Cross-links: [architecture](docs/architecture.md) ·
559
- [skills catalogue](docs/skills.md) ·
560
- [command-map](docs/command-map.md) ·
561
- [flow diagrams](docs/flow.md) ·
562
- [usage](docs/usage.md) ·
563
- [release pipeline](docs/release.md) ·
564
- [CLI](docs/cli.md) ·
565
- [engineering rules](pack/.claude/skills/devrites-lib/reference/standards/README.md).
566
-
567
- ## Security model
568
-
569
- DevRites is auditable Markdown + a small engine binary. The complete security
570
- policy, including private vulnerability reporting and recommended managed-deployment
571
- settings, lives in [`SECURITY.md`](SECURITY.md). Highlights: **project-local only**
572
- (installer refuses global Claude/Codex agent homes); **bounded installer network access**
573
- for the release tarball and verified `devrites-engine` asset, with `--no-binary` /
574
- `DEVRITES_NO_BINARY=1` available for fully project-file-only installs; **no network
575
- access in skills**; **`!` shell injection removed** from `/rite` and `/rite-status`
576
- (state loaded via read-only engine subcommands over DevRites' own state under
577
- `.devrites/`); **auto-trigger** is a deliberate design choice mitigated by body
578
- discipline + readiness gates + the interactive `type-GO` confirmation in `/rite-ship`
579
- before irreversible git actions; **no `defaultMode: bypassPermissions`** is shipped or
580
- written by the installer (cf. CVE-2026-33068).
581
-
582
- ## Community & quality
583
-
584
- - **Changelog:** [`CHANGELOG.md`](CHANGELOG.md) Keep-a-Changelog + SemVer, regenerated by semantic-release on every release.
585
- - **Code of conduct:** [`CODE_OF_CONDUCT.md`](CODE_OF_CONDUCT.md) (Contributor Covenant 2.1).
586
- - **Code owners:** [`CODEOWNERS`](CODEOWNERS) — review required on `pack/`, `scripts/`, `install.sh`, `uninstall.sh`, `bin/`.
587
- - **Notices:** [`NOTICE.md`](NOTICE.md).
588
- - **CI:** GitHub Actions runs `scripts/validate.sh`, install/uninstall smoke, fixture install, commitlint, and the eval suite on every PR.
589
- - **Commits:** Conventional Commits enforced via husky + commitlint.
590
- - **Release pipeline:** semantic-release on every push to `main` — full details in [`docs/release.md`](docs/release.md).
591
-
592
- ## License
593
-
594
- **Free to use, with approval gating redistribution.** Personal use and *listing this
595
- repository in package registries* are permitted without approval. DevRites is installed via
596
- `npx devrites ...`, not Claude/Codex plugin marketplaces. Any other use —
597
- distributing it, distributing modified versions, mirroring as a fork, or commercial /
598
- organizational use — requires **approval on request** (ask via
599
- [the repo](https://github.com/ViktorsBaikers/DevRites)). Source-available. See
600
- [`LICENSE`](LICENSE). DevRites is independent software for use with Claude Code and Codex.
331
+ Canonical pack changes belong in `pack/.claude/`. Rebuild host payloads with
332
+ `bash scripts/build-host-artifacts.sh` instead of editing `pack/generated/`.
333
+ See [`CONTRIBUTING.md`](CONTRIBUTING.md) for the development workflow and review
334
+ requirements.
335
+
336
+ ## Documentation
337
+
338
+ - [Quick reference](docs/quick-reference.md)
339
+ - [Worked examples](docs/usage.md)
340
+ - [Command map](docs/command-map.md)
341
+ - [Skills catalogue](docs/skills.md)
342
+ - [Architecture](docs/architecture.md)
343
+ - [Lifecycle diagrams](docs/flow.md)
344
+ - [Engine CLI](docs/cli.md)
345
+ - [Release process](docs/release.md)
346
+ - [Changelog](CHANGELOG.md)
347
+ - [Releases](https://github.com/ViktorsBaikers/DevRites/releases)
348
+
349
+ ## Community and license
350
+
351
+ Please read the [contribution guide](CONTRIBUTING.md) and
352
+ [code of conduct](CODE_OF_CONDUCT.md) before opening a change. Maintainer
353
+ ownership is documented in [`CODEOWNERS`](CODEOWNERS), and third-party notices
354
+ are in [`NOTICE.md`](NOTICE.md).
355
+
356
+ DevRites is source-available software for personal use with Claude Code and
357
+ Codex. Distribution, modified distribution, fork mirrors, and commercial or
358
+ organizational use require approval. Read [`LICENSE`](LICENSE) for the full
359
+ terms.