devrites 5.10.1 → 5.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (296) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/README.md +24 -10
  3. package/bin/devrites.mjs +2 -0
  4. package/docs/cli.md +4 -1
  5. package/docs/command-map.md +7 -5
  6. package/docs/engine/commands.md +7 -5
  7. package/docs/orchestration.md +5 -2
  8. package/docs/skills.md +10 -4
  9. package/docs/usage.md +3 -1
  10. package/engine/commands.go +3 -0
  11. package/engine/help.go +190 -0
  12. package/engine/help_test.go +98 -0
  13. package/engine/internal/devritespaths/paths.go +2 -0
  14. package/engine/internal/hostpack/hostpack.go +39 -5
  15. package/engine/internal/hostpack/hostpack_test.go +27 -13
  16. package/engine/internal/install/apply.go +17 -4
  17. package/engine/internal/install/install.go +9 -2
  18. package/engine/internal/install/install_test.go +15 -2
  19. package/engine/internal/install/preflight.go +8 -2
  20. package/engine/internal/install/update.go +1 -1
  21. package/engine/internal/parallel/cli.go +90 -32
  22. package/engine/internal/parallel/cli_test.go +32 -0
  23. package/engine/main.go +15 -8
  24. package/engine/root_routing_test.go +4 -0
  25. package/install.sh +4 -1
  26. package/pack/.claude/skills/devrites-lib/reference/standards/afk-hitl.md +15 -8
  27. package/pack/.claude/skills/rite-autocomplete/SKILL.md +10 -5
  28. package/pack/.claude/skills/rite-autocomplete/reference/loop.md +12 -7
  29. package/pack/.claude/skills/rite-build/SKILL.md +3 -1
  30. package/pack/.claude/skills/rite-build/reference/afk-discipline.md +4 -3
  31. package/pack/.claude/skills/rite-build/reference/parallel-batch.md +3 -1
  32. package/pack/.claude/skills/rite-define/reference/plan-template.md +1 -1
  33. package/pack/generated/README.md +4 -2
  34. package/pack/generated/claude/skills/devrites-lib/reference/standards/afk-hitl.md +15 -8
  35. package/pack/generated/claude/skills/rite-autocomplete/SKILL.md +10 -5
  36. package/pack/generated/claude/skills/rite-autocomplete/reference/loop.md +12 -7
  37. package/pack/generated/claude/skills/rite-build/SKILL.md +3 -1
  38. package/pack/generated/claude/skills/rite-build/reference/afk-discipline.md +4 -3
  39. package/pack/generated/claude/skills/rite-build/reference/parallel-batch.md +3 -1
  40. package/pack/generated/claude/skills/rite-define/reference/plan-template.md +1 -1
  41. package/pack/generated/codex/skills/devrites-lib/reference/standards/afk-hitl.md +15 -8
  42. package/pack/generated/codex/skills/rite-autocomplete/SKILL.md +10 -5
  43. package/pack/generated/codex/skills/rite-autocomplete/reference/loop.md +12 -7
  44. package/pack/generated/codex/skills/rite-build/SKILL.md +3 -1
  45. package/pack/generated/codex/skills/rite-build/reference/afk-discipline.md +4 -3
  46. package/pack/generated/codex/skills/rite-build/reference/parallel-batch.md +3 -1
  47. package/pack/generated/codex/skills/rite-define/reference/plan-template.md +1 -1
  48. package/pack/generated/devin/AGENTS.md +23 -0
  49. package/pack/generated/devin/agents/devrites-code-reviewer.md +145 -0
  50. package/pack/generated/devin/agents/devrites-devex-reviewer.md +126 -0
  51. package/pack/generated/devin/agents/devrites-doubt-reviewer.md +91 -0
  52. package/pack/generated/devin/agents/devrites-evidence-scout.md +77 -0
  53. package/pack/generated/devin/agents/devrites-frontend-reviewer.md +119 -0
  54. package/pack/generated/devin/agents/devrites-performance-reviewer.md +117 -0
  55. package/pack/generated/devin/agents/devrites-plan-drafter.md +102 -0
  56. package/pack/generated/devin/agents/devrites-plan-reviewer.md +144 -0
  57. package/pack/generated/devin/agents/devrites-proof-runner.md +76 -0
  58. package/pack/generated/devin/agents/devrites-retrospector.md +64 -0
  59. package/pack/generated/devin/agents/devrites-security-auditor.md +112 -0
  60. package/pack/generated/devin/agents/devrites-simplifier-reviewer.md +97 -0
  61. package/pack/generated/devin/agents/devrites-slice-wright.md +219 -0
  62. package/pack/generated/devin/agents/devrites-spec-reviewer.md +99 -0
  63. package/pack/generated/devin/agents/devrites-strategy-reviewer.md +102 -0
  64. package/pack/generated/devin/agents/devrites-test-analyst.md +97 -0
  65. package/pack/generated/devin/agents/devrites-upgrade-planner.md +91 -0
  66. package/pack/generated/devin/skills/devrites-api-interface/SKILL.md +64 -0
  67. package/pack/generated/devin/skills/devrites-audit/SKILL.md +51 -0
  68. package/pack/generated/devin/skills/devrites-browser-proof/SKILL.md +77 -0
  69. package/pack/generated/devin/skills/devrites-browser-proof/reference/browser-performance.md +15 -0
  70. package/pack/generated/devin/skills/devrites-browser-proof/reference/visual-verdict.md +34 -0
  71. package/pack/generated/devin/skills/devrites-debug-recovery/SKILL.md +97 -0
  72. package/pack/generated/devin/skills/devrites-debug-recovery/reference/build-the-loop.md +58 -0
  73. package/pack/generated/devin/skills/devrites-debug-recovery/reference/cleanup-and-classify.md +34 -0
  74. package/pack/generated/devin/skills/devrites-debug-recovery/reference/hypotheses.md +17 -0
  75. package/pack/generated/devin/skills/devrites-debug-recovery/reference/instrumentation.md +21 -0
  76. package/pack/generated/devin/skills/devrites-debug-recovery/reference/regression-test.md +30 -0
  77. package/pack/generated/devin/skills/devrites-debug-recovery/reference/trace.md +25 -0
  78. package/pack/generated/devin/skills/devrites-doubt/SKILL.md +80 -0
  79. package/pack/generated/devin/skills/devrites-frontend-craft/SKILL.md +87 -0
  80. package/pack/generated/devin/skills/devrites-frontend-craft/reference/craft.md +63 -0
  81. package/pack/generated/devin/skills/devrites-frontend-craft/reference/design-references.md +116 -0
  82. package/pack/generated/devin/skills/devrites-frontend-craft/reference/fullstack.md +46 -0
  83. package/pack/generated/devin/skills/devrites-frontend-craft/reference/quality-standards.md +294 -0
  84. package/pack/generated/devin/skills/devrites-frontend-craft/reference/reuse-first.md +53 -0
  85. package/pack/generated/devin/skills/devrites-frontend-craft/reference/shape.md +56 -0
  86. package/pack/generated/devin/skills/devrites-interview/SKILL.md +103 -0
  87. package/pack/generated/devin/skills/devrites-lib/SKILL.md +57 -0
  88. package/pack/generated/devin/skills/devrites-lib/reference/candidate-integrity.md +42 -0
  89. package/pack/generated/devin/skills/devrites-lib/reference/intent-map.md +64 -0
  90. package/pack/generated/devin/skills/devrites-lib/reference/orchestration-profiles.md +27 -0
  91. package/pack/generated/devin/skills/devrites-lib/reference/parallel-dispatch.md +73 -0
  92. package/pack/generated/devin/skills/devrites-lib/reference/reply-contract.md +88 -0
  93. package/pack/generated/devin/skills/devrites-lib/reference/standards/README.md +60 -0
  94. package/pack/generated/devin/skills/devrites-lib/reference/standards/acceptance-preserving-reslice.md +30 -0
  95. package/pack/generated/devin/skills/devrites-lib/reference/standards/afk-hitl.md +415 -0
  96. package/pack/generated/devin/skills/devrites-lib/reference/standards/agents.md +99 -0
  97. package/pack/generated/devin/skills/devrites-lib/reference/standards/anti-patterns.md +48 -0
  98. package/pack/generated/devin/skills/devrites-lib/reference/standards/browser-proof-checklist.md +24 -0
  99. package/pack/generated/devin/skills/devrites-lib/reference/standards/ci-cd.md +50 -0
  100. package/pack/generated/devin/skills/devrites-lib/reference/standards/code-navigation.md +43 -0
  101. package/pack/generated/devin/skills/devrites-lib/reference/standards/code-review.md +108 -0
  102. package/pack/generated/devin/skills/devrites-lib/reference/standards/coding-style.md +48 -0
  103. package/pack/generated/devin/skills/devrites-lib/reference/standards/context-hygiene.md +109 -0
  104. package/pack/generated/devin/skills/devrites-lib/reference/standards/core.md +167 -0
  105. package/pack/generated/devin/skills/devrites-lib/reference/standards/data-integrity.md +118 -0
  106. package/pack/generated/devin/skills/devrites-lib/reference/standards/debug-recovery.md +28 -0
  107. package/pack/generated/devin/skills/devrites-lib/reference/standards/definition-of-done.md +19 -0
  108. package/pack/generated/devin/skills/devrites-lib/reference/standards/deprecation.md +31 -0
  109. package/pack/generated/devin/skills/devrites-lib/reference/standards/developer-experience.md +119 -0
  110. package/pack/generated/devin/skills/devrites-lib/reference/standards/development-workflow.md +29 -0
  111. package/pack/generated/devin/skills/devrites-lib/reference/standards/documentation.md +43 -0
  112. package/pack/generated/devin/skills/devrites-lib/reference/standards/edge-case-trace.md +92 -0
  113. package/pack/generated/devin/skills/devrites-lib/reference/standards/elicitation.md +85 -0
  114. package/pack/generated/devin/skills/devrites-lib/reference/standards/error-handling.md +47 -0
  115. package/pack/generated/devin/skills/devrites-lib/reference/standards/git-workflow.md +49 -0
  116. package/pack/generated/devin/skills/devrites-lib/reference/standards/hooks.md +25 -0
  117. package/pack/generated/devin/skills/devrites-lib/reference/standards/integration-reliability.md +102 -0
  118. package/pack/generated/devin/skills/devrites-lib/reference/standards/loop-operations.md +85 -0
  119. package/pack/generated/devin/skills/devrites-lib/reference/standards/observability.md +88 -0
  120. package/pack/generated/devin/skills/devrites-lib/reference/standards/one-shot-actions.md +97 -0
  121. package/pack/generated/devin/skills/devrites-lib/reference/standards/patterns.md +68 -0
  122. package/pack/generated/devin/skills/devrites-lib/reference/standards/performance.md +51 -0
  123. package/pack/generated/devin/skills/devrites-lib/reference/standards/principles.md +42 -0
  124. package/pack/generated/devin/skills/devrites-lib/reference/standards/prose-style.md +123 -0
  125. package/pack/generated/devin/skills/devrites-lib/reference/standards/release/ship-checklist.md +8 -0
  126. package/pack/generated/devin/skills/devrites-lib/reference/standards/repository-topology.md +80 -0
  127. package/pack/generated/devin/skills/devrites-lib/reference/standards/review-checklist.md +12 -0
  128. package/pack/generated/devin/skills/devrites-lib/reference/standards/security-checklist.md +25 -0
  129. package/pack/generated/devin/skills/devrites-lib/reference/standards/security.md +202 -0
  130. package/pack/generated/devin/skills/devrites-lib/reference/standards/skill-authoring.md +209 -0
  131. package/pack/generated/devin/skills/devrites-lib/reference/standards/spec-grammar.md +197 -0
  132. package/pack/generated/devin/skills/devrites-lib/reference/standards/test-proof-checklist.md +13 -0
  133. package/pack/generated/devin/skills/devrites-lib/reference/standards/testing.md +212 -0
  134. package/pack/generated/devin/skills/devrites-lib/reference/standards/tooling.md +92 -0
  135. package/pack/generated/devin/skills/devrites-lib/reference/standards/workflow-artifacts.md +427 -0
  136. package/pack/generated/devin/skills/devrites-lib/reference/visual-playbooks/code.md +44 -0
  137. package/pack/generated/devin/skills/devrites-lib/reference/visual-playbooks/comparison.md +42 -0
  138. package/pack/generated/devin/skills/devrites-lib/reference/visual-playbooks/diagram.md +51 -0
  139. package/pack/generated/devin/skills/devrites-lib/reference/visual-playbooks/index.md +66 -0
  140. package/pack/generated/devin/skills/devrites-lib/reference/visual-playbooks/input.md +46 -0
  141. package/pack/generated/devin/skills/devrites-lib/reference/visual-playbooks/outline-template.md +106 -0
  142. package/pack/generated/devin/skills/devrites-lib/reference/visual-playbooks/plan.md +48 -0
  143. package/pack/generated/devin/skills/devrites-lib/reference/visual-playbooks/slides.md +40 -0
  144. package/pack/generated/devin/skills/devrites-lib/reference/visual-playbooks/table.md +42 -0
  145. package/pack/generated/devin/skills/devrites-lib/reference/workspace-artifact-schema.md +267 -0
  146. package/pack/generated/devin/skills/devrites-prose-craft/SKILL.md +74 -0
  147. package/pack/generated/devin/skills/devrites-prose-craft/reference/banned-phrases.md +132 -0
  148. package/pack/generated/devin/skills/devrites-prose-craft/reference/examples.md +131 -0
  149. package/pack/generated/devin/skills/devrites-prose-craft/reference/structures.md +196 -0
  150. package/pack/generated/devin/skills/devrites-source-driven/SKILL.md +53 -0
  151. package/pack/generated/devin/skills/devrites-ux-shape/SKILL.md +135 -0
  152. package/pack/generated/devin/skills/devrites-ux-shape/reference/brief-template.md +108 -0
  153. package/pack/generated/devin/skills/devrites-ux-shape/reference/visual-direction-probe.md +48 -0
  154. package/pack/generated/devin/skills/rite/SKILL.md +148 -0
  155. package/pack/generated/devin/skills/rite/reference/menu.md +48 -0
  156. package/pack/generated/devin/skills/rite-adopt/SKILL.md +51 -0
  157. package/pack/generated/devin/skills/rite-adopt/reference/adoption.md +19 -0
  158. package/pack/generated/devin/skills/rite-adopt/reference/anti-patterns.md +19 -0
  159. package/pack/generated/devin/skills/rite-autocomplete/SKILL.md +142 -0
  160. package/pack/generated/devin/skills/rite-autocomplete/reference/decision-policy.md +43 -0
  161. package/pack/generated/devin/skills/rite-autocomplete/reference/loop.md +151 -0
  162. package/pack/generated/devin/skills/rite-autocomplete/reference/stop-conditions.md +97 -0
  163. package/pack/generated/devin/skills/rite-build/SKILL.md +102 -0
  164. package/pack/generated/devin/skills/rite-build/reference/afk-discipline.md +148 -0
  165. package/pack/generated/devin/skills/rite-build/reference/anti-patterns.md +27 -0
  166. package/pack/generated/devin/skills/rite-build/reference/checkpoint-protocol.md +120 -0
  167. package/pack/generated/devin/skills/rite-build/reference/checkpoint.md +56 -0
  168. package/pack/generated/devin/skills/rite-build/reference/frontend-trigger.md +39 -0
  169. package/pack/generated/devin/skills/rite-build/reference/one-slice-cycle.md +51 -0
  170. package/pack/generated/devin/skills/rite-build/reference/output.md +33 -0
  171. package/pack/generated/devin/skills/rite-build/reference/parallel-batch.md +214 -0
  172. package/pack/generated/devin/skills/rite-build/reference/phase-contract.md +89 -0
  173. package/pack/generated/devin/skills/rite-build/reference/spec-drift-guard.md +84 -0
  174. package/pack/generated/devin/skills/rite-build/reference/tdd.md +27 -0
  175. package/pack/generated/devin/skills/rite-build/reference/wright-dispatch.md +96 -0
  176. package/pack/generated/devin/skills/rite-clarify/SKILL.md +98 -0
  177. package/pack/generated/devin/skills/rite-clarify/reference/anti-patterns.md +24 -0
  178. package/pack/generated/devin/skills/rite-clarify/reference/decision-coverage.md +55 -0
  179. package/pack/generated/devin/skills/rite-converge/SKILL.md +144 -0
  180. package/pack/generated/devin/skills/rite-converge/reference/anti-patterns.md +35 -0
  181. package/pack/generated/devin/skills/rite-converge/reference/convergence-assessment.md +65 -0
  182. package/pack/generated/devin/skills/rite-customize/SKILL.md +60 -0
  183. package/pack/generated/devin/skills/rite-define/SKILL.md +168 -0
  184. package/pack/generated/devin/skills/rite-define/reference/anti-patterns.md +26 -0
  185. package/pack/generated/devin/skills/rite-define/reference/gates.md +159 -0
  186. package/pack/generated/devin/skills/rite-define/reference/plan-template.md +149 -0
  187. package/pack/generated/devin/skills/rite-doctor/SKILL.md +68 -0
  188. package/pack/generated/devin/skills/rite-dogfood/SKILL.md +55 -0
  189. package/pack/generated/devin/skills/rite-explain/SKILL.md +152 -0
  190. package/pack/generated/devin/skills/rite-explain/reference/intake.md +89 -0
  191. package/pack/generated/devin/skills/rite-frame/SKILL.md +114 -0
  192. package/pack/generated/devin/skills/rite-frame/reference/failure-modes.md +66 -0
  193. package/pack/generated/devin/skills/rite-handoff/SKILL.md +97 -0
  194. package/pack/generated/devin/skills/rite-handoff/reference/handoff-template.md +44 -0
  195. package/pack/generated/devin/skills/rite-learn/SKILL.md +72 -0
  196. package/pack/generated/devin/skills/rite-plan/SKILL.md +185 -0
  197. package/pack/generated/devin/skills/rite-plan/reference/anti-patterns.md +34 -0
  198. package/pack/generated/devin/skills/rite-plan/reference/dependency-graph.md +48 -0
  199. package/pack/generated/devin/skills/rite-plan/reference/replan-and-repair.md +105 -0
  200. package/pack/generated/devin/skills/rite-plan/reference/slicing.md +168 -0
  201. package/pack/generated/devin/skills/rite-plan/reference/task-breakdown.md +42 -0
  202. package/pack/generated/devin/skills/rite-polish/SKILL.md +105 -0
  203. package/pack/generated/devin/skills/rite-polish/reference/adr-promotion.md +11 -0
  204. package/pack/generated/devin/skills/rite-polish/reference/anti-ai-slop.md +187 -0
  205. package/pack/generated/devin/skills/rite-polish/reference/anti-patterns.md +30 -0
  206. package/pack/generated/devin/skills/rite-polish/reference/backend-polish.md +80 -0
  207. package/pack/generated/devin/skills/rite-polish/reference/browser-polish-evidence.md +33 -0
  208. package/pack/generated/devin/skills/rite-polish/reference/code.md +82 -0
  209. package/pack/generated/devin/skills/rite-polish/reference/design-memory.md +117 -0
  210. package/pack/generated/devin/skills/rite-polish/reference/design-system-discovery.md +8 -0
  211. package/pack/generated/devin/skills/rite-polish/reference/harden-checklist.md +109 -0
  212. package/pack/generated/devin/skills/rite-polish/reference/ledger.md +65 -0
  213. package/pack/generated/devin/skills/rite-polish/reference/ui.md +137 -0
  214. package/pack/generated/devin/skills/rite-pov/SKILL.md +57 -0
  215. package/pack/generated/devin/skills/rite-pr-feedback/SKILL.md +54 -0
  216. package/pack/generated/devin/skills/rite-pressure-test/SKILL.md +66 -0
  217. package/pack/generated/devin/skills/rite-prototype/SKILL.md +104 -0
  218. package/pack/generated/devin/skills/rite-prove/SKILL.md +122 -0
  219. package/pack/generated/devin/skills/rite-prove/reference/acceptance-proof.md +88 -0
  220. package/pack/generated/devin/skills/rite-prove/reference/anti-patterns.md +25 -0
  221. package/pack/generated/devin/skills/rite-prove/reference/browser-proof.md +51 -0
  222. package/pack/generated/devin/skills/rite-prove/reference/failure-triage.md +43 -0
  223. package/pack/generated/devin/skills/rite-prove/reference/proof-ladder.md +28 -0
  224. package/pack/generated/devin/skills/rite-prove/reference/test-command-discovery.md +30 -0
  225. package/pack/generated/devin/skills/rite-quick/SKILL.md +81 -0
  226. package/pack/generated/devin/skills/rite-resolve/SKILL.md +98 -0
  227. package/pack/generated/devin/skills/rite-resolve/reference/answer-protocol.md +118 -0
  228. package/pack/generated/devin/skills/rite-review/SKILL.md +171 -0
  229. package/pack/generated/devin/skills/rite-review/reference/anti-patterns.md +32 -0
  230. package/pack/generated/devin/skills/rite-review/reference/cognitive-load.md +90 -0
  231. package/pack/generated/devin/skills/rite-review/reference/feature-scoped-review.md +26 -0
  232. package/pack/generated/devin/skills/rite-review/reference/five-axis-review.md +66 -0
  233. package/pack/generated/devin/skills/rite-review/reference/nielsen-heuristics.md +126 -0
  234. package/pack/generated/devin/skills/rite-review/reference/performance-checklist.md +80 -0
  235. package/pack/generated/devin/skills/rite-review/reference/performance-review.md +14 -0
  236. package/pack/generated/devin/skills/rite-review/reference/security-review.md +42 -0
  237. package/pack/generated/devin/skills/rite-seal/SKILL.md +74 -0
  238. package/pack/generated/devin/skills/rite-seal/reference/anti-patterns.md +29 -0
  239. package/pack/generated/devin/skills/rite-seal/reference/final-evidence.md +41 -0
  240. package/pack/generated/devin/skills/rite-seal/reference/go-no-go.md +29 -0
  241. package/pack/generated/devin/skills/rite-seal/reference/output.md +5 -0
  242. package/pack/generated/devin/skills/rite-seal/reference/phase-contract.md +47 -0
  243. package/pack/generated/devin/skills/rite-seal/reference/risk-and-rollback.md +56 -0
  244. package/pack/generated/devin/skills/rite-seal/reference/seal-template.md +27 -0
  245. package/pack/generated/devin/skills/rite-ship/SKILL.md +87 -0
  246. package/pack/generated/devin/skills/rite-ship/reference/anti-patterns.md +28 -0
  247. package/pack/generated/devin/skills/rite-ship/reference/close-out.md +68 -0
  248. package/pack/generated/devin/skills/rite-ship/reference/git-ship.md +120 -0
  249. package/pack/generated/devin/skills/rite-ship/reference/rollout.md +62 -0
  250. package/pack/generated/devin/skills/rite-ship/reference/ship-template.md +39 -0
  251. package/pack/generated/devin/skills/rite-spec/SKILL.md +149 -0
  252. package/pack/generated/devin/skills/rite-spec/reference/acceptance-criteria.md +31 -0
  253. package/pack/generated/devin/skills/rite-spec/reference/ai-spec-template.md +40 -0
  254. package/pack/generated/devin/skills/rite-spec/reference/anti-patterns.md +27 -0
  255. package/pack/generated/devin/skills/rite-spec/reference/interview-patterns.md +56 -0
  256. package/pack/generated/devin/skills/rite-spec/reference/investigation.md +83 -0
  257. package/pack/generated/devin/skills/rite-spec/reference/question-protocol.md +36 -0
  258. package/pack/generated/devin/skills/rite-spec/reference/references-intake.md +62 -0
  259. package/pack/generated/devin/skills/rite-spec/reference/spec-checklists.md +89 -0
  260. package/pack/generated/devin/skills/rite-spec/reference/spec-template.md +154 -0
  261. package/pack/generated/devin/skills/rite-spec/reference/state-workspace.md +227 -0
  262. package/pack/generated/devin/skills/rite-status/SKILL.md +57 -0
  263. package/pack/generated/devin/skills/rite-temper/SKILL.md +129 -0
  264. package/pack/generated/devin/skills/rite-temper/reference/anti-patterns.md +30 -0
  265. package/pack/generated/devin/skills/rite-temper/reference/review-dimensions.md +66 -0
  266. package/pack/generated/devin/skills/rite-temper/reference/scope-modes.md +53 -0
  267. package/pack/generated/devin/skills/rite-temper/reference/significance.md +46 -0
  268. package/pack/generated/devin/skills/rite-temper/reference/strategy-template.md +90 -0
  269. package/pack/generated/devin/skills/rite-upgrade/SKILL.md +121 -0
  270. package/pack/generated/devin/skills/rite-vet/SKILL.md +192 -0
  271. package/pack/generated/devin/skills/rite-vet/reference/anti-patterns.md +43 -0
  272. package/pack/generated/devin/skills/rite-vet/reference/artifacts.md +202 -0
  273. package/pack/generated/devin/skills/rite-vet/reference/cross-model.md +19 -0
  274. package/pack/generated/devin/skills/rite-vet/reference/depth.md +59 -0
  275. package/pack/generated/devin/skills/rite-vet/reference/eng-lenses.md +48 -0
  276. package/pack/generated/devin/skills/rite-vet/reference/review-axes.md +201 -0
  277. package/pack/generated/devin/skills/rite-watch-pr/SKILL.md +84 -0
  278. package/pack/generated/devin/skills/rite-zoom-out/SKILL.md +69 -0
  279. package/pack/generated/omp/skills/devrites-lib/reference/standards/afk-hitl.md +15 -8
  280. package/pack/generated/omp/skills/rite-autocomplete/SKILL.md +10 -5
  281. package/pack/generated/omp/skills/rite-autocomplete/reference/loop.md +12 -7
  282. package/pack/generated/omp/skills/rite-build/SKILL.md +3 -1
  283. package/pack/generated/omp/skills/rite-build/reference/afk-discipline.md +4 -3
  284. package/pack/generated/omp/skills/rite-build/reference/parallel-batch.md +3 -1
  285. package/pack/generated/omp/skills/rite-define/reference/plan-template.md +1 -1
  286. package/pack/generated/pi/skills/devrites-lib/reference/standards/afk-hitl.md +15 -8
  287. package/pack/generated/pi/skills/rite-autocomplete/SKILL.md +10 -5
  288. package/pack/generated/pi/skills/rite-autocomplete/reference/loop.md +12 -7
  289. package/pack/generated/pi/skills/rite-build/SKILL.md +3 -1
  290. package/pack/generated/pi/skills/rite-build/reference/afk-discipline.md +4 -3
  291. package/pack/generated/pi/skills/rite-build/reference/parallel-batch.md +3 -1
  292. package/pack/generated/pi/skills/rite-define/reference/plan-template.md +1 -1
  293. package/package.json +4 -2
  294. package/scripts/build-host-artifacts.sh +48 -5
  295. package/scripts/devin-generate.sh +222 -0
  296. package/update.sh +2 -1
@@ -0,0 +1,267 @@
1
+ # Workspace artifact schema
2
+
3
+ Feature truth: `.devrites/work/<slug>/`, discovered by `state.md`; remnants/archives
4
+ are inactive. Spec writes optional `README.md`. Use canonical filenames; both released
5
+ cursor forms remain valid. `/rite-upgrade` audits without path/alias/format migration.
6
+
7
+ ## Slug identity
8
+
9
+ New slugs derive from the objective: lowercase ASCII kebab-case matching
10
+ `[a-z0-9]+(?:-[a-z0-9]+)*`, at most 64 characters. Shorten at word boundaries.
11
+ After the final shortening or suffix step, trim boundary hyphens; reject empty results.
12
+
13
+ Before creation, compare a matching workspace's `brief.md` objective: reuse only the
14
+ same feature. Otherwise append the smallest unused suffix (`-2`, `-3`, ...), keeping
15
+ the trimmed base within 64 characters. Never overwrite a workspace by slug alone;
16
+ accept safe legacy basenames. Ordinary phases never rename them.
17
+
18
+ ## Required by phase
19
+
20
+ | Phase | Required artifacts |
21
+ | --- | --- |
22
+ | frame | `state.md` |
23
+ | spec | `README.md`, `brief.md`, `spec.md`, `state.md`, `decisions.md`, `assumptions.md`, `questions.md` |
24
+ | clarify | spec artifacts plus `decision-coverage.md` |
25
+ | temper | clarified spec artifacts plus `strategy.md` when temper runs |
26
+ | define/plan | clarified spec artifacts plus `architecture.md`, `plan.md`, `tasks.md`, `traceability.md` |
27
+ | vet/build/converge | plan artifacts plus `eng-review.md`, `test-plan.md`; Build creates and maintains `touched-files.md` after its first green slice |
28
+ | prove/polish/review | vetted plan artifacts plus `evidence.md`, `touched-files.md` |
29
+ | seal/ship/done | proof artifacts plus `review.md`, `seal.md`; Ship writes `ship.md` |
30
+ | conditional | `flows.md` when diagrams clarify; `visual/` HTML+`.outline.md` companions when a richer reviewable visual earns it (optional; never readiness-required); `design-brief.md` and `browser-evidence.md` for UI; `drift.md` for drift; `polish-report.md` for polish; `handoff.md` only when requested; `references.md` + `references/` when references exist; `investigation-map.md` for pressure-test; `dogfood.md` for dogfood; `packets/` for by-reference dispatch packets and admitted accounts (≤ 64 KiB each; older closed rounds may be deleted; never transcripts); `history/` for verbatim relocated checkpoint narrative (append-only, never a read-next) |
31
+
32
+ ## What each file owns
33
+
34
+ | File | Job | Budget |
35
+ | --- | --- | --- |
36
+ | `README.md` | map: phase/status/next action, artifacts/read-next, blocking gates, last update | 120 lines |
37
+ | `brief.md` | user request, objective, non-goals, success definition | 80 lines |
38
+ | `spec.md` | product WHAT/WHY, requirements, acceptance criteria, edge cases, measurable success, scope boundaries | 260 lines |
39
+ | `decision-coverage.md` | topology-first coverage matrix, assumption audit, residual uncertainty, and typed clarity verdict | 200 lines |
40
+ | `strategy.md` | temper verdict, scope mode/deltas, pre-mortem risks, deferred ambition | 180 lines |
41
+ | `architecture.md` | owning layer, integration points, data/API/events, dependencies, risks, affected boundaries | 180 lines |
42
+ | `flows.md` | useful Mermaid sequence/state/data/lifecycle diagrams with why-it-matters text and related IDs | 160 lines |
43
+ | `visual/<name>.html` | optional portable human-viewable visualization; pair with sibling `.outline.md`; self-contained preferred | 400 lines |
44
+ | `visual/<name>.outline.md` | required machine dual-read companion for the sibling HTML; outline wins on conflict; never a candidate path | 200 lines |
45
+ | `visual/README.md` | optional index of visuals in the workspace | 80 lines |
46
+ | `decisions.md` | ADR-style `DEC-###` log: status, context, options, decision, consequences, related IDs | 200 lines |
47
+ | `assumptions.md` | assumptions with confidence, owner, validation status | 160 lines |
48
+ | `questions.md` | current `q-YYYY-MM-DD-NNN` (or released `Q-###`) open/resolved questions, gate, answer, impact | 180 lines |
49
+ | `plan.md` | technical approach, slice strategy, canonical shared-contract proof, validation strategy, rollback | 220 lines |
50
+ | `tasks.md` | `SLICE-###` vertical slices with AC IDs, likely files, tests/proof, mode/gate, dependencies, done condition | 280 lines |
51
+ | `traceability.md` | matrix: AC/REQ ID, slice IDs, test/proof, evidence ID, touched files, status | 220 lines |
52
+ | `eng-review.md` | vetted scope/architecture/quality/performance, failure modes, preflight, stable-input binding, `## Deferred findings` (late rows: severity · site · role · kind · round) for Review | 240 lines |
53
+ | `test-plan.md` | executable proof commands, preflight/provenance contract, acceptance and interaction coverage | 260 lines |
54
+ | `state.md` | compact cursor table/key-values; no narrative log | 120 lines |
55
+ | `evidence.md` | `EVID-###` command/action, result, timestamp if available, related AC/slice IDs, limitation | 280 lines |
56
+ | `browser-evidence.md` | UI route/viewports/screenshots/console/network/interactions and Visual Verdict | 220 lines |
57
+ | `drift.md` | `DRIFT-###` spec/plan drift and resolution | 160 lines |
58
+ | `touched-files.md` | sole candidate manifest plus a concern-ordered `## Review trail` of `path:line` stops for human review and Build's deferred late findings (severity · site · role · round) that `/rite-review` must close | 160 lines |
59
+ | `design-brief.md` | UI design direction, states, interaction model | 160 lines |
60
+ | `handoff.md` | resume objective/last slice/next action/blockers/read-next; sections hold content or `Nothing yet`; unevidenced recollections: `Not tried yet`, never results | 120 lines |
61
+ | `polish-report.md` | polish axis deltas, re-verification lines, residual subjective preferences | 200 lines |
62
+ | `ship.md` | ship preflight, disclosed Git plan, commit/push/tag/PR record | 120 lines |
63
+ | `review.md` | reconciled Review verdict: `## Spec` and `## Code review` accounts, deferred-finding labels/actions, drift | 240 lines |
64
+ | `seal.md` | seal preflight, exact reviewer roster accounts, GO/NO-GO verdict and disclosures | 200 lines |
65
+ | `ai-spec.md` | model/RAG/agent/eval/LLM-output scope for AI surfaces | 160 lines |
66
+
67
+ For visual pairs load only matching [playbooks](visual-playbooks/index.md); use
68
+ the [required outline headings](visual-playbooks/outline-template.md).
69
+
70
+ ## Candidate manifest and bindings
71
+
72
+ `touched-files.md` contains exactly one `## Touched files` heading and exactly
73
+ one authoritative `## Candidate manifest` heading. The first describes scope
74
+ without repeating candidate paths; the manifest is the sole authority for candidate scope.
75
+
76
+ The manifest body is exactly either `No project files.` or this table with one
77
+ or more rows:
78
+
79
+ ```markdown
80
+ | State | File | Slice | Reason |
81
+ | --- | --- | --- | --- |
82
+ | present | `path/to/file` | SLICE-001 | Observable reason |
83
+ ```
84
+
85
+ Rows are sorted by File: they must already be strictly sorted by normalized
86
+ `File`, and readers reject rather than reorder them. `State` is exactly
87
+ `present` or `deleted`; `File` is a unique
88
+ project-relative UTF-8 path wrapped in one backtick pair; `Slice` and `Reason`
89
+ are nonempty. Paths must also be unique under case folding. Every component
90
+ rejects Windows-reserved characters and device names (including names with an
91
+ extension) plus a trailing dot or space. `## Review trail` may cite
92
+ concern-ordered `path:line` review stops, but it cannot define or expand
93
+ candidate scope; only manifest rows do.
94
+
95
+ The public candidate limits are a 1 MiB manifest, 4,096 rows, a 4,096-byte
96
+ path, 64 MiB per present file, and 256 MiB across all present files.
97
+
98
+ A release milestone's union manifest is produced by `devrites-engine state
99
+ merge-manifest <release-slug>` — it walks the recorded `sequence_parent` chain,
100
+ folds every predecessor manifest, and resolves a path collision in favor of the
101
+ later sequence position; a hand-assembled union is not authoritative. When the
102
+ workspace cursor declares `sequence_role: release`, `check candidate` and
103
+ `check seal` require the manifest to cover the whole recorded chain.
104
+
105
+ Workspace and audit artifacts are not candidate paths, including all
106
+ `.devrites/work/<slug>/visual/`. Durable owners include `.devrites/specs/**`,
107
+ `DESIGN.md`, and `docs/adr/**`, plus `.devrites/principles.md`. Under `.devrites`,
108
+ only those spec/principles owners qualify; all other siblings (`ACTIVE`, `AFK`,
109
+ `CHECKPOINT`, `archive/**`, `work/**`) fail closed. Engine owns malformed path, type,
110
+ and size rejection; phases never reinterpret a rejected manifest.
111
+
112
+ `evidence.md`, `review.md`, and `seal.md` each contain exactly one unindented standalone
113
+ binding line; `browser-evidence.md` does too when that file exists:
114
+
115
+ ```text
116
+ Candidate SHA-256: <64 lowercase hex>
117
+ ```
118
+
119
+ Old unfinished workspaces refresh the manifest and rerun real proof. They never
120
+ synthesize a historical pass or use a legacy fallback.
121
+
122
+ The worktree digest is deterministic but is not an atomic filesystem snapshot
123
+ against a malicious concurrent same-size rewrite. Ship's exact Git-index scope,
124
+ byte, binding, and secret checks own the final freeze immediately before commit.
125
+
126
+ Only a structural `Budget override: <reason>` line (not a fenced example)
127
+ permits excess. Each line budget also bounds bytes at 400 bytes per budgeted line
128
+ (`state.md` 120 lines → 48 KiB); long lines do not evade it.
129
+ `devrites-engine orient <slug>` reports `artifact_budgets` (lines/bytes/over/override)
130
+ and `bulk_files` (non-canonical files over 64 KiB) so a phase can decide what to read
131
+ before loading. Phase writers check these limits before returning; there is no
132
+ repository-local script assumption in the installed workflow.
133
+
134
+ `check readiness` and `check seal` enforce the material band deterministically: a
135
+ required artifact at or above 1.5× its line or byte budget with no structural override
136
+ line blocks with the exact measurement and the three legal remedies (relocate history
137
+ via `/rite-plan revise`, split via `/rite-plan course-correct`, or record the override).
138
+ Overshoot below that band stays advisory and is reported by `orient`. Proof ledgers
139
+ (`evidence.md`, `browser-evidence.md`, `touched-files.md`) are always advisory: they
140
+ scale with proof volume, and `touched-files.md` keeps its own manifest limits.
141
+ Because they are never gate-blocked they are also the only artifacts that can grow
142
+ unboundedly — so phases read them by index, not whole-file: the standalone binding
143
+ line, a `EVID-###`/section-header index (`grep -n`), then bodies only for entries
144
+ naming this candidate's AC/slice IDs. An entry naming no in-scope ID is anomaly
145
+ evidence to inspect, not skip. A whole-file read is allowed only when `orient`
146
+ reports the artifact within budget; completeness for seal is engine-checked
147
+ (literal `AC-###` presence), the reader judges quality.
148
+
149
+ Two reasons are not durable fixes: slice or acceptance-criteria count (an over-budget
150
+ `tasks.md`/`plan.md`/`traceability.md` from decomposition size is a
151
+ [feature-sequence split](../../rite-plan/reference/slicing.md#feature-ceiling-split-an-epic-never-override-the-budget)),
152
+ and history in `state.md` (checkpoint narrative moves verbatim to
153
+ `history/<file>-<YYYYMMDD>.md`, append-only, never a phase read-next, with a one-line
154
+ pointer left behind). A legacy workspace may carry a temporary `Budget override:` line
155
+ as a bridge; `/rite-upgrade` routes it to relocation or the split, and new writers never
156
+ create one for those two reasons.
157
+ Apply [[`context-hygiene.md`](standards/context-hygiene.md) dispatch packets](standards/context-hygiene.md#dispatch-packets)
158
+ for byte-size checks and lossless retrieval; budget overrides neither rewrite protected
159
+ history nor require loading it all.
160
+
161
+ ## Native readiness ownership
162
+
163
+ `decision-coverage.md` owns topology; `test-plan.md`, executable proof; `eng-review.md`,
164
+ reviewer verdicts, `Implementation readiness`, and `Readiness inputs SHA-256`. Root
165
+ re-reads their IDs/meaning. The digest binds bytes, never semantic correctness.
166
+ Readiness checks structure/binding; Seal rechecks both.
167
+
168
+ Proof commands must be repository-portable: no host wrappers, user-specific absolute paths,
169
+ or temporary proof trees. Evidence records the executed command. Optional `visual/`
170
+ artifacts never inflate readiness: they are not readiness inputs and do not substitute
171
+ for `decision-coverage.md`, `eng-review.md`, or `test-plan.md`.
172
+
173
+ ## Canonical slice grammar
174
+
175
+ Every producer of `tasks.md` uses this field set. `Dependencies` is slice
176
+ ordering; package and service requirements belong in `External dependencies`.
177
+
178
+ <!-- canonical-slice:start -->
179
+ ```markdown
180
+ ## SLICE-001 <observable capability>
181
+ Goal: <single observable capability>
182
+ Satisfies: AC-001[, AC-002]
183
+ Acceptance criteria: <binary criteria this slice closes>
184
+ Complexity: <1..5> — <reason>
185
+ Mode: <AFK | HITL>
186
+ Gate: <advisory | validating | blocking | escalating>
187
+ SLA: <15m | 4h | 24h | none>
188
+ Checkpoint: <question + why it needs unavailable pre-code evidence or action-time approval | none>
189
+ Dependencies: <SLICE-### list | none>
190
+ depends_on: [<SLICE-### IDs>]
191
+ Consumes / Produces: <interfaces read and exposed>
192
+ Known-Gotchas: <ordering hazards and framework footguns | none>
193
+ Prior-slice learnings: <constraints learned earlier | none>
194
+ Files likely touched: <real paths>
195
+ Tests/proof: <exact command + cwd + expected signal + prerequisites/provenance inputs>
196
+ Browser proof required: <yes | no>
197
+ Frontend craft required: <yes | no>
198
+ Design brief states: <UI states/interaction | none>
199
+ Visual acceptance: <state × viewport × input target | none>
200
+ Fullstack (FE+BE): <yes | no>
201
+ External dependencies: <libraries/services | none>
202
+ Existing to reuse / extend: <components/utilities/patterns | none>
203
+ Rollback notes: <reversal path>
204
+ Evidence required: <evidence /rite-prove must capture>
205
+ Edge/Prohibition coverage: <EDGE/PROH IDs | none>
206
+ Done condition: <checkable, exhaustive completion criterion>
207
+ ```
208
+ <!-- canonical-slice:end -->
209
+
210
+ `depends_on` is the machine-readable mirror of `Dependencies`; keep the sets
211
+ identical and cycle-free. `Gate`, `SLA`, and `Checkpoint` are required for HITL
212
+ slices; use `none` when they do not apply. Complexity above 3 triggers reslicing
213
+ unless the stated reason makes the boundary irreducible.
214
+
215
+ ## Read next by phase
216
+
217
+ | Phase | Read |
218
+ | --- | --- |
219
+ | spec | `README.md`, `brief.md`, `spec.md`, `references.md`, `questions.md` |
220
+ | clarify | `README.md`, `state.md`, `brief.md`, `spec.md`, `decisions.md`, `assumptions.md`, `questions.md` |
221
+ | temper | `spec.md`, `decision-coverage.md`, `decisions.md`, `assumptions.md`, `design-brief.md` |
222
+ | define | `README.md`, `state.md`, `spec.md`, `decision-coverage.md`, `architecture.md`, `decisions.md`, `assumptions.md` |
223
+ | vet | `state.md`, `spec.md`, `decision-coverage.md`, `README.md`, `traceability.md`, `plan.md`, `tasks.md`, `architecture.md`, `decisions.md` |
224
+ | build | `devrites-engine orient <slug>` first; then `state.md`, `eng-review.md` (Build readback + `## Deferred findings`), the selected slice and its `depends_on` via `devrites-engine observe slice <slug> <SLICE-ID>`, the `test-plan.md` and `traceability.md` rows that slice's AC IDs name, open `questions.md` gates, and `touched-files.md` when present. Load whole `tasks.md`/`plan.md`/`architecture.md`/`decision-coverage.md` only when `orient` shows them within budget or the slice cites a section by ID |
225
+ | prove | `traceability.md`, `touched-files.md`; each built slice's `Tests/proof` and `Evidence required` via `observe slice`; `evidence.md`/`browser-evidence.md` via the bounded advisory read above |
226
+ | review/seal | `README.md`, `traceability.md`, `spec.md`, `decisions.md`, `drift.md`, `touched-files.md`; `evidence.md`/`browser-evidence.md` via the bounded advisory read above |
227
+ | handoff | `README.md`, `state.md`, `handoff.md`, then the linked source artifacts |
228
+
229
+ ## Do not duplicate
230
+
231
+ - Do not make `spec.md` carry deep architecture; link to `architecture.md`/`flows.md`.
232
+ - Do not copy acceptance criteria into `plan.md`; reference `AC-###`.
233
+ - Do not copy full proof into `handoff.md`; link to `evidence.md`.
234
+ - Do not make `state.md` an append-only log; keep only the current cursor. A
235
+ checkpoint entry is at most three lines: what changed, the canonical record path or
236
+ DEC/EVID ID, and the next action. Digests, packet hashes, and finding narratives
237
+ belong to the record they identify, not the cursor.
238
+ - Give each normative fact one owner and stable ID; reference rather than copy it.
239
+ Required schema mirrors remain required. Derive counts/mirrors or mechanically
240
+ check equality using available tools, never invented commands. Repair stale
241
+ derived values and assess consumer impact; they are not new policy decisions.
242
+ - Do not create optional files before their phase; absence is meaningful. Do not
243
+ treat `visual/` as required for readiness; emit HTML+outline only when a writer
244
+ earns a richer visual, and keep Mermaid in `flows.md` when that is enough.
245
+
246
+ ## ID contract
247
+
248
+ Use stable IDs: `REQ-001`, `AC-001`, `EDGE-001`, `PROH-001`, `SLICE-001`,
249
+ `DEC-001`, `ASM-001`, `DRIFT-001`, `EVID-001`. Current queued questions use
250
+ `q-YYYY-MM-DD-NNN`; released table registers may retain `Q-001`. IDs are
251
+ append-only identities, not display positions:
252
+
253
+ - Allocate the next unused numeric suffix for that prefix after scanning its
254
+ owning artifact. For a dated question ID, scan the current date's suffixes.
255
+ Never fill a gap; every deleted or retired ID remains consumed.
256
+ - Never renumber an ID, reuse it, or transfer it to a different meaning. Reordering
257
+ sections or rows does not change IDs.
258
+ - A wording edit that preserves the obligation keeps its ID. A materially different
259
+ meaning gets a new ID; record the relationship in `decisions.md` or `drift.md`
260
+ before updating downstream references.
261
+ - Re-read the owning artifact immediately before an append when another writer may
262
+ have changed it; recompute rather than reserving an ID from stale state.
263
+
264
+ Old `AC1` and `Slice 1` forms are legacy and should not be generated for new
265
+ workspaces. Preserve released legacy forms unless an explicit upgrade owns the
266
+ migration; never renumber them incidentally.
267
+
@@ -0,0 +1,74 @@
1
+ ---
2
+ name: devrites-prose-craft
3
+ description: Rewrite prose to remove AI tells while preserving meaning and voice. Use for artifacts, replies, commits, or PR copy; not code comments or UI craft.
4
+ triggers:
5
+ - model
6
+ ---
7
+
8
+ # devrites-prose-craft: prose that reads human
9
+
10
+ Write for a teammate who will rely on the result. Remove model-shaped filler without sanding
11
+ off the author's voice or weakening technical content.
12
+
13
+ ## When this fires
14
+ - A text-generating phase composes an artifact: `/rite-spec` (overview, rationale),
15
+ `/rite-define` / `/rite-plan` (plan narrative), `/rite-temper` / `/rite-vet` (review prose),
16
+ `/rite-review` / `/rite-seal` (findings + verdict prose), `/rite-ship` (commit/PR body),
17
+ `devrites-doubt` / `/rite-handoff` (notes).
18
+ - Any phase composes substantive **user-facing prose** beyond the shared reply
19
+ labels.
20
+
21
+ ## Two modes
22
+ - **Rewrite (default).** When DevRites writes the artifact/reply or polishes it, fix the prose
23
+ in place.
24
+ - **Detect-only.** When auditing prose you shouldn't silently change, such as a user's existing
25
+ `spec.md` at `/rite-adopt` or text under `/rite-review`, list the tells with quotes and leave
26
+ the text untouched. Mirrors `devrites-audit`'s read-only stance.
27
+
28
+ Order findings by severity: **P0** credibility-killers (vague attribution, a marketing
29
+ adjective standing in for evidence, a false/unsourced claim, cutoff disclaimers, unfilled
30
+ placeholders, citation markup, AI-tool tracking URLs) → **P1** obvious tells (negative
31
+ parallelism, filler openers, em-dash tics, reasoning-chain scaffolding, narrated candor)
32
+ → **P2** polish (rhythm, word choice, 1B clarity edits). A quick pass fixes P0 + P1 and
33
+ stops; a full pass takes P2 too. Flags are writing-quality signals, not authorship proof.
34
+ In detect-only, report Tier 1A (figurative filler) separately from Tier 1B (wordiness).
35
+
36
+ ## Process
37
+
38
+ 1. **Calibrate.** Choose rewrite or detect-only mode, split prose from technical sections, and
39
+ set the voice baseline: an explicit user sample first, then neighboring project prose, then
40
+ the source text itself. Fall back to flat, direct prose. Done when every section has a
41
+ register and one voice baseline.
42
+ 2. **Protect.** Apply the preservation contract in
43
+ [`prose-style.md`](../devrites-lib/reference/standards/prose-style.md) before changing words.
44
+ Leave tables, YAML frontmatter, URLs, and file paths untouched unless the caller asked to
45
+ change them. Scan for clusters of tells; one isolated marker is not a verdict. Done when
46
+ every claim, constraint, identifier, example, quotation, and deliberate uncertainty is
47
+ accounted for.
48
+ 3. **Rewrite.** Remove P0/P1 tells and P2 when the caller asked for a full pass. Match the
49
+ baseline's vocabulary and cadence without inventing facts, opinions, or quirks. Done when the
50
+ same reader can make the same decisions from the rewrite as from the source.
51
+ 4. **Audit.** Compare source and result, read the prose aloud, and run the relevant references
52
+ below. Done when the preservation contract passes, the technical register remains exact,
53
+ and no in-scope tell remains.
54
+
55
+ ## References
56
+
57
+ - Always read [`prose-style.md`](../devrites-lib/reference/standards/prose-style.md) for the two
58
+ registers, preservation contract, and core checks.
59
+ - Load [`reference/banned-phrases.md`](reference/banned-phrases.md) when word choice or tone is
60
+ the problem.
61
+ - Load [`reference/structures.md`](reference/structures.md) when sentence shape, rhythm, or
62
+ formatting is the problem.
63
+ - Load [`reference/examples.md`](reference/examples.md) when the target artifact's shape is
64
+ unclear.
65
+
66
+ ## Boundaries
67
+
68
+ This skill edits language, not facts. When style and fidelity conflict, fidelity wins.
69
+
70
+ ## Output
71
+
72
+ - **Rewrite:** replace the target prose; add no editing commentary unless the caller's contract
73
+ asks for it.
74
+ - **Detect-only:** return ordered P0/P1/P2 findings with the exact phrase and a concrete fix.
@@ -0,0 +1,132 @@
1
+ # Phrases & words to cut
2
+
3
+ Load this when scrubbing prose. The lists are calibrated for a coding agent: the **AI
4
+ vocabulary** section marks which words are *always* slop versus which are legitimate in
5
+ technical writing, so the skill doesn't flatten a real spec into vagueness.
6
+
7
+ ## Throat-clearing openers (cut — state the point)
8
+
9
+ - "Here's the thing:" / "Here's what / why / how [X]"
10
+ - "It's worth noting that" / "It's important to note that"
11
+ - "Let me be clear" / "I'll be honest" / "To be honest"
12
+ - "The uncomfortable truth is" / "The reality is" / "It turns out"
13
+ - "Make no mistake" / "At its core" / "At the end of the day"
14
+ - "When it comes to [X]" / "In today's [fast-paced / digital] world"
15
+
16
+ Any "here's what/this/that" or "it's worth noting" is runway before the point. Delete it and
17
+ start at the point.
18
+
19
+ ## Emphasis crutches (delete — they add no information)
20
+
21
+ - "Let that sink in." / "Full stop." / "Period."
22
+ - "This matters because" / "Here's why that matters"
23
+ - "This is the deepest problem" / "the stakes are high" / "the consequences are real"
24
+ - "Notably," / "Interestingly," / "Importantly," / "Surprisingly," stacked to tell the
25
+ reader how to feel. One "notably" in a long note is fine; three in a short paragraph
26
+ is emphasis stacking. Cut the cue; leave the fact.
27
+
28
+ ## Hedging stacks (make the claim or cut it)
29
+
30
+ - "it's important to note that, generally, in most cases…"
31
+ - "perhaps", "could potentially", "it could be argued that", "one might say"
32
+
33
+ Stacked hedges read as a model covering itself. One honest qualifier is fine; a stack is slop.
34
+
35
+ ## Sycophancy & chatbot artifacts (remove entirely)
36
+
37
+ These leak the assistant register into artifacts and replies:
38
+
39
+ - "Great question!" / "You're absolutely right!" / "Certainly!" / "Of course!"
40
+ - "I hope this helps!" / "Let me know if you need anything else" / "Feel free to reach out"
41
+ - "Let's explore" / "Let's break this down" / "Let's dive in" / "First, let's consider"
42
+
43
+ A `decisions.md` entry or a `seal.md` verdict is a document, not a chat turn. No
44
+ pleasantries, no tour-guide openers. Start at the point.
45
+
46
+ ## Assistant leaks (P0 — delete on sight)
47
+
48
+ These are paste fingerprints, not style. Strip the leak; keep any real fact it was
49
+ wrapping. Presence is a publishing bug, not an authorship tribunal.
50
+
51
+ - **Cutoff disclaimers.** "As of my last update", "based on my training data", "I don't
52
+ have access to…". Find the fact or drop the sentence.
53
+ - **Unfilled placeholders.** `[Your Name]`, `[INSERT SOURCE]`, `2025-XX-XX`, HTML
54
+ comments that say `TODO` / `insert` / `fill in`. Fill or delete. Never ship the slot.
55
+ - **Citation markup.** `citeturn`, `oaicite`, `oai_citation`, `grok_card`,
56
+ `[attached_file:N]`. Delete the token. If the cite mattered, replace it with a real
57
+ link.
58
+ - **AI-tool tracking URLs.** Strip `utm_source=chatgpt.com` / `copilot.com` /
59
+ `openai` / `claude.ai` / `perplexity.ai` and `referrer=grok.com`. Keep the rest of
60
+ the query string (`?page=2` stays).
61
+
62
+ ## Business jargon → plain language
63
+
64
+ | Avoid | Use instead |
65
+ |---|---|
66
+ | Navigate (challenges) | handle, address |
67
+ | Unpack (the analysis) | explain, examine |
68
+ | Lean into | accept, commit to |
69
+ | Landscape (figurative) | situation, field, area |
70
+ | Game-changer | significant, important |
71
+ | Deep dive | analysis, examination |
72
+ | Circle back / revisit later | return to |
73
+ | Moving forward | next, from now on |
74
+ | On the same page | aligned, agreed |
75
+
76
+ ## AI vocabulary — calibrated (this is the adaptation that matters)
77
+
78
+ Word lists are blunt instruments. A coding agent must not "fix" a spec that legitimately says
79
+ a system is *robust* under load or exposes a *comprehensive* API. Tiers, with a 1A/1B split:
80
+
81
+ **Tier 1A — always slop, replace on sight (figurative filler, never load-bearing in a spec).**
82
+ A cluster is a writing-quality signal, not proof of who wrote the passage.
83
+
84
+ delve / delve into, tapestry, beacon, embark, testament to, realm, landscape (figurative),
85
+ pave the way, shed light on, game-changer, unlock the potential, ever-evolving, vibrant,
86
+ multifaceted, holistic, paradigm (as praise), groundbreaking, transformative, cutting-edge.
87
+
88
+ **Tier 1B — always replace for clarity; not authorship evidence.**
89
+ Wordiness and inflated formality. Same edit as 1A, weaker claim: these also appear in
90
+ careful human writing. In detect-only, report 1B separately from 1A. A 1B hit must not
91
+ push a passage toward an "AI wrote this" conclusion.
92
+
93
+ | Replace | With |
94
+ |---|---|
95
+ | utilize | use |
96
+ | in order to | to |
97
+ | due to the fact that | because |
98
+ | commence | start, begin |
99
+ | ascertain | find out, determine |
100
+ | endeavor | try, attempt |
101
+
102
+ **Tier 2 — slop in prose, legitimate in technical context (keep the meaning, judge by use):**
103
+ robust, comprehensive, seamless, leverage, harness, facilitate, underpin, streamline,
104
+ foster, ecosystem, scalable.
105
+ - In a sentence selling the work ("a robust, scalable, seamless solution") → cut; say what it
106
+ does and what proves it.
107
+ - In a precise technical claim ("the retry path is robust to a dropped connection — see
108
+ `evidence.md`") → keep. The word carries a real, tested meaning.
109
+
110
+ **Tier 3 — flag by density, not per-word:** ordinary words (`important`, `key`, `various`,
111
+ `significant`) become slop only when they cluster. If a paragraph leans on three of them, it's
112
+ saying nothing — name the specific thing instead.
113
+
114
+ **Co-occurrence tell:** these words travel in packs. Where you find one Tier-1 word, look for
115
+ its neighbours (delve / boasts / bolstered / crucial / pivotal cluster together). One sighting
116
+ means scan the whole passage.
117
+
118
+ **Match inflected forms.** Each entry covers the word *and* its variants — adverb (`-ly`),
119
+ gerund (`-ing`), plural, conjugations: `delve` also catches `delving` / `delved`; `leverage`
120
+ catches `leveraging` / `leveraged`. The exception is a variant with a distinct, legitimate
121
+ meaning (`real` the intensifier vs `real` meaning factual) — judge it by use, same as the
122
+ tier calibration above.
123
+
124
+ ## Adverbs (cut empty intensifiers; keep load-bearing ones)
125
+
126
+ Cut the emphasis adverbs that add nothing: really, very, just, literally, genuinely, honestly,
127
+ simply, actually, truly, fundamentally, inherently, inevitably, basically.
128
+
129
+ Keep adverbs that change meaning or precision: "validate **server-side**", "fail **closed**",
130
+ "runs **concurrently**", "**explicitly** typed". The rule is "cut the empty intensifier", not
131
+ "delete every -ly word" — over-applying the no-adverb rule is its own kind of damage in
132
+ technical writing.
@@ -0,0 +1,131 @@
1
+ # Before / after — DevRites artifacts & replies
2
+
3
+ Real shapes DevRites emits. Each pair keeps the technical content and strips the voice. Note
4
+ how the calibration preserves precise lists and identifiers while cutting the prose slop.
5
+
6
+ ## 1. `spec.md` overview
7
+
8
+ **Before (slop):**
9
+ > In today's fast-paced data landscape, this feature delivers a robust, scalable, and seamless
10
+ > CSV export capability. It's not just about exporting data — it's about empowering users to
11
+ > unlock the full potential of their information. This is a pivotal step forward.
12
+
13
+ **After:**
14
+ > Export the report table to CSV. Users currently copy rows by hand; this adds a one-click
15
+ > download. Scope: the reports table only, server-side streaming so memory stays flat on large
16
+ > exports.
17
+
18
+ Cut the jargon, the negative-parallelism hook, and the importance inflation. Kept what the
19
+ feature is, who it's for, and the scope boundary.
20
+
21
+ ## 2. Acceptance criteria (technical register — precision stays)
22
+
23
+ **Keep this as-is — do NOT "humanize" it:**
24
+ > - AC-001: A `GET /reports/:id/export?format=csv` returns `200` with `Content-Type: text/csv`.
25
+ > - AC-002: Rows stream; peak memory stays under 50 MB for a 1M-row export.
26
+ > - AC-003: An unknown `format` returns `400` with `{ "error": "unsupported format" }`.
27
+
28
+ Three items, exact identifiers, exact status codes. This is the technical register working
29
+ correctly. The skill leaves it alone.
30
+
31
+ ## 3. `decisions.md` entry
32
+
33
+ **Before (slop):**
34
+ > We made the strategic decision to leverage a streaming approach. This robust solution
35
+ > seamlessly handles large datasets and represents a best-in-class architecture that will
36
+ > empower the system to scale effortlessly.
37
+
38
+ **After:**
39
+ > Stream rows to the response instead of buffering the full file. Buffering OOM-ed on a
40
+ > 1M-row export in testing (see `evidence.md`). Trade-off: streaming rules out a total-row
41
+ > count in the header. Revisit if the UI needs an upfront progress bar.
42
+
43
+ Named the decision, the reason (with evidence), and the trade-off. That's what an ADR is for.
44
+
45
+ ## 4. `review.md` / `seal.md` finding
46
+
47
+ **Before (slop):**
48
+ > It's worth noting that the error handling here could potentially be more robust. This is a
49
+ > critical area that fundamentally matters for production readiness.
50
+
51
+ **After:**
52
+ > Critical — `export.ts:42` catches every error and returns `500 "something went wrong"`. A
53
+ > bad `format` param should be a `400` with the specific message (AC-003). Catch the parse error
54
+ > narrowly; let the rest propagate.
55
+
56
+ Severity label, `file:line`, the specific problem, the fix. No hedging, no "fundamentally".
57
+
58
+ ## 5. Chat reply
59
+
60
+ **Before (slop):**
61
+ > Great question! I've gone ahead and implemented the export feature. It's not just functional
62
+ > — it's production-ready. Let me know if you need anything else!
63
+
64
+ **After:**
65
+ > Built slice 3 (CSV streaming). Tests pass (`npm test -- export` → 14 passing), peak memory
66
+ > 38 MB on the 1M-row fixture. Next: slice 4 (pagination). Want me to continue?
67
+
68
+ Dropped the pleasantries and the "not just X" inflation. Led with what's done and the evidence.
69
+
70
+ ## 6. Commit body
71
+
72
+ **Before (slop):**
73
+ > This commit introduces a comprehensive and robust solution that seamlessly enables users to
74
+ > leverage powerful new export capabilities.
75
+
76
+ **After:**
77
+ > Buffering the whole CSV OOM-ed on >100k rows. Stream rows to the response so memory stays
78
+ > flat. Rules out an upfront total-count header; tracked in #123.
79
+
80
+ Followed [`git-workflow.md`](../../devrites-lib/reference/standards/git-workflow.md): the *why*, wrapped, in plain language.
81
+
82
+ ## 7. Fidelity when evidence is incomplete
83
+
84
+ **Before (slop, but informative):**
85
+ > It is important to note that the importer retries twice after a `429`. The available evidence
86
+ > does not clearly indicate whether a third attempt is dropped or queued. In either case, the
87
+ > alert text is `Import delayed`.
88
+
89
+ **After:**
90
+ > The importer retries twice after a `429`. We do not have a production trace showing whether a
91
+ > third attempt is dropped or queued. The alert text remains `Import delayed`.
92
+
93
+ Cut the opener and vague phrasing. Kept the retry count, status code, evidence gap, two possible
94
+ outcomes, and exact alert text. A smoother sentence that picked one outcome would be fabrication.
95
+
96
+ ## 8. `review.md` finding (narrated candor)
97
+
98
+ **Before (slop):**
99
+ > I want to be upfront: two caveats I would rather flag than let you discover later. First,
100
+ > Windows is untested. Second, the numbers in the commit message don't reproduce on this
101
+ > hardware. Let me think step by step about what that means for seal.
102
+
103
+ **After:**
104
+ > Two caveats: Windows is untested, and the numbers in the commit message don't reproduce on
105
+ > this hardware. Seal stays NO-GO until those are measured or scoped out.
106
+
107
+ Cut the candor frame and the reasoning-chain opener. Kept both caveats and the gate implication.
108
+
109
+ ## 9. Chat reply (prompt restatement)
110
+
111
+ **Before (slop):**
112
+ > That's a great question. You're asking about whether we should stream the export. Thanks for
113
+ > the rollback plan you already wrote — that legwork is what made this possible. Breaking this
114
+ > down: streaming avoids the OOM.
115
+
116
+ **After:**
117
+ > Stream the export. Buffering OOM-ed on the 1M-row fixture (see `evidence.md`). Your rollback
118
+ > plan still applies.
119
+
120
+ Dropped the prompt echo, the recap-flattery, and "Breaking this down". Led with the decision
121
+ and the evidence.
122
+
123
+ ## The pattern across all nine
124
+
125
+ 1. Lead with the concrete thing (what it is, what's done, what's wrong).
126
+ 2. Replace every "robust/seamless/leverage" flourish with the specific behavior + its proof.
127
+ 3. Drop negative-parallelism hooks ("not just X, it's Y"), importance labels ("pivotal"),
128
+ candor frames ("I want to be upfront"), and reasoning-chain scaffolding ("let me think
129
+ step by step").
130
+ 4. Keep the technical register intact: exact identifiers, status codes, numbered criteria,
131
+ real enumerations. Precision is not slop.