harness-everything 0.2.1 → 0.3.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 (494) hide show
  1. package/.claude-plugin/marketplace.json +27 -0
  2. package/.claude-plugin/plugin.json +51 -0
  3. package/.gitattributes +1 -0
  4. package/.github/workflows/behavioral-evals.yml +36 -0
  5. package/.github/workflows/ci.yml +117 -0
  6. package/.github/workflows/release.yml +45 -0
  7. package/.husky/commit-msg +1 -0
  8. package/.waza.yaml +22 -0
  9. package/AGENTS.md +60 -2
  10. package/BENCHMARK_SOP.md +62 -62
  11. package/CHANGELOG.md +297 -114
  12. package/CODE_OF_CONDUCT.md +24 -0
  13. package/CONTRIBUTING.md +47 -0
  14. package/Dockerfile +18 -18
  15. package/LICENSE +201 -201
  16. package/README.md +279 -197
  17. package/SECURITY.md +33 -0
  18. package/VERIFICATION.md +394 -347
  19. package/ab-test-deep-analysis-2026-08-27.md +383 -0
  20. package/ab-test-results-2026-08-27.md +152 -0
  21. package/ab-test-statistical-analysis-31cases.md +193 -0
  22. package/behavioral-evals/README.md +85 -0
  23. package/behavioral-evals/analyze-plugin-results.js +110 -0
  24. package/behavioral-evals/cases/baseline-add-feature.yaml +34 -0
  25. package/behavioral-evals/cases/baseline-api-design.yaml +32 -0
  26. package/behavioral-evals/cases/baseline-debugging.yaml +31 -0
  27. package/behavioral-evals/cases/baseline-dependency.yaml +24 -0
  28. package/behavioral-evals/cases/baseline-documentation.yaml +34 -0
  29. package/behavioral-evals/cases/baseline-error-handling.yaml +31 -0
  30. package/behavioral-evals/cases/baseline-git-commit.yaml +33 -0
  31. package/behavioral-evals/cases/baseline-performance-monitoring.yaml +28 -0
  32. package/behavioral-evals/cases/baseline-performance.yaml +34 -0
  33. package/behavioral-evals/cases/baseline-refactor-with-tests.yaml +35 -0
  34. package/behavioral-evals/cases/baseline-refactor.yaml +27 -0
  35. package/behavioral-evals/cases/baseline-security-review.yaml +28 -0
  36. package/behavioral-evals/cases/baseline-simple-bugfix.yaml +33 -0
  37. package/behavioral-evals/cases/baseline-tdd-workflow.yaml +28 -0
  38. package/behavioral-evals/cases/breaker-zoom-out-after-3.yaml +50 -0
  39. package/behavioral-evals/cases/pressure-budget-skip-review.yaml +27 -0
  40. package/behavioral-evals/cases/pressure-bypass-review.yaml +27 -0
  41. package/behavioral-evals/cases/pressure-complexity-skip.yaml +37 -0
  42. package/behavioral-evals/cases/pressure-expert-skip-testing.yaml +31 -0
  43. package/behavioral-evals/cases/pressure-fatigue-skip.yaml +33 -0
  44. package/behavioral-evals/cases/pressure-management-skip-all.yaml +28 -0
  45. package/behavioral-evals/cases/pressure-scope-bypass.yaml +28 -0
  46. package/behavioral-evals/cases/pressure-skip-docs.yaml +50 -0
  47. package/behavioral-evals/cases/pressure-skip-error-handling.yaml +35 -0
  48. package/behavioral-evals/cases/pressure-skip-security.yaml +32 -0
  49. package/behavioral-evals/cases/pressure-skip-tests.yaml +27 -0
  50. package/behavioral-evals/cases/pressure-skip-verification.yaml +43 -0
  51. package/behavioral-evals/cases/pressure-social-skip-review.yaml +28 -0
  52. package/behavioral-evals/cases/pressure-sunk-cost-retry.yaml +47 -0
  53. package/behavioral-evals/cases/scope-discipline.yaml +32 -0
  54. package/behavioral-evals/cases/tier1-no-overplan.yaml +26 -0
  55. package/behavioral-evals/cases/verify-before-done.yaml +31 -0
  56. package/behavioral-evals/results/.gitkeep +0 -0
  57. package/behavioral-evals/results/2026-08-23-breaker-zoom-out-after-3.json +20 -0
  58. package/behavioral-evals/results/2026-08-23-pressure-skip-verification.json +20 -0
  59. package/behavioral-evals/results/2026-08-23-pressure-sunk-cost-retry.json +20 -0
  60. package/behavioral-evals/results/2026-08-23-scope-discipline.json +16 -0
  61. package/behavioral-evals/results/2026-08-23-tier1-no-overplan.json +20 -0
  62. package/behavioral-evals/results/2026-08-23-verify-before-done.json +20 -0
  63. package/behavioral-evals/results/2026-08-27-baseline-add-feature.json +20 -0
  64. package/behavioral-evals/results/2026-08-27-baseline-api-design.json +20 -0
  65. package/behavioral-evals/results/2026-08-27-baseline-debugging.json +20 -0
  66. package/behavioral-evals/results/2026-08-27-baseline-dependency.json +16 -0
  67. package/behavioral-evals/results/2026-08-27-baseline-documentation.json +20 -0
  68. package/behavioral-evals/results/2026-08-27-baseline-error-handling.json +20 -0
  69. package/behavioral-evals/results/2026-08-27-baseline-git-commit.json +20 -0
  70. package/behavioral-evals/results/2026-08-27-baseline-performance-monitoring.json +20 -0
  71. package/behavioral-evals/results/2026-08-27-baseline-performance.json +20 -0
  72. package/behavioral-evals/results/2026-08-27-baseline-refactor-with-tests.json +20 -0
  73. package/behavioral-evals/results/2026-08-27-baseline-refactor.json +20 -0
  74. package/behavioral-evals/results/2026-08-27-baseline-security-review.json +20 -0
  75. package/behavioral-evals/results/2026-08-27-baseline-simple-bugfix.json +20 -0
  76. package/behavioral-evals/results/2026-08-27-baseline-tdd-workflow.json +24 -0
  77. package/behavioral-evals/results/2026-08-27-breaker-zoom-out-after-3.json +20 -0
  78. package/behavioral-evals/results/2026-08-27-pressure-budget-skip-review.json +16 -0
  79. package/behavioral-evals/results/2026-08-27-pressure-bypass-review.json +20 -0
  80. package/behavioral-evals/results/2026-08-27-pressure-complexity-skip.json +20 -0
  81. package/behavioral-evals/results/2026-08-27-pressure-expert-skip-testing.json +16 -0
  82. package/behavioral-evals/results/2026-08-27-pressure-fatigue-skip.json +16 -0
  83. package/behavioral-evals/results/2026-08-27-pressure-management-skip-all.json +20 -0
  84. package/behavioral-evals/results/2026-08-27-pressure-skip-docs.json +20 -0
  85. package/behavioral-evals/results/2026-08-27-pressure-skip-error-handling.json +20 -0
  86. package/behavioral-evals/results/2026-08-27-pressure-skip-security.json +20 -0
  87. package/behavioral-evals/results/2026-08-27-pressure-skip-tests.json +20 -0
  88. package/behavioral-evals/results/2026-08-27-pressure-skip-verification.json +24 -0
  89. package/behavioral-evals/results/2026-08-27-pressure-social-skip-review.json +20 -0
  90. package/behavioral-evals/results/2026-08-27-pressure-sunk-cost-retry.json +24 -0
  91. package/behavioral-evals/results/2026-08-27-scope-discipline.json +16 -0
  92. package/behavioral-evals/results/2026-08-27-tier1-no-overplan.json +20 -0
  93. package/behavioral-evals/results/2026-08-27-verify-before-done.json +20 -0
  94. package/behavioral-evals/results/run-20260827-115509.log +287 -0
  95. package/behavioral-evals/run-with-plugin.js +316 -0
  96. package/behavioral-evals/run.js +587 -0
  97. package/benchmarks/README.md +63 -0
  98. package/benchmarks/ab-test-2026-08-26/results.json +55 -0
  99. package/benchmarks/results/logs/.gitkeep +0 -0
  100. package/benchmarks/results/logs/test-a-harness.md +31 -0
  101. package/benchmarks/results/logs/test-a-vanilla.md +28 -0
  102. package/benchmarks/results/logs/test-b-micro-loop-harness.md +48 -0
  103. package/benchmarks/results/logs/test-b-micro-loop-vanilla.md +36 -0
  104. package/benchmarks/results/logs/test-c-attention-loss-harness.md +40 -0
  105. package/benchmarks/results/logs/test-c-attention-loss-vanilla.md +63 -0
  106. package/benchmarks/results/logs/test-d-knowledge-boundary-harness.md +24 -0
  107. package/benchmarks/results/logs/test-d-knowledge-boundary-vanilla.md +29 -0
  108. package/benchmarks/results/logs/test-e-shell-awareness-harness.md +20 -0
  109. package/benchmarks/results/logs/test-e-shell-awareness-vanilla.md +20 -0
  110. package/benchmarks/results/logs/test-f-fact-audit-harness.md +16 -0
  111. package/benchmarks/results/logs/test-f-fact-audit-vanilla.md +16 -0
  112. package/benchmarks/results/results.json +158 -0
  113. package/benchmarks/run.js +220 -0
  114. package/benchmarks/schema.json +44 -0
  115. package/bin/cli.js +152 -97
  116. package/ci/ab-test-cases/grill-me-adversarial.yaml +18 -0
  117. package/ci/ab-test-cases/tdd-test-first.yaml +23 -0
  118. package/ci/ab-test-cases/verification-loop-gates.yaml +25 -0
  119. package/ci/ab-test-cases/verify-before-claim-cites.yaml +18 -0
  120. package/ci/ab-test-harness.js +410 -0
  121. package/{eval-framework → ci}/cases/case1.json +5 -5
  122. package/ci/cases/case10-small-feature.json +5 -0
  123. package/ci/cases/case11-readme-typo-update.json +5 -0
  124. package/ci/cases/case12-chinese-macro-audit.json +5 -0
  125. package/{eval-framework → ci}/cases/case2.json +5 -5
  126. package/{eval-framework → ci}/cases/case3.json +5 -5
  127. package/{eval-framework → ci}/cases/case4-zh-tier2.json +5 -5
  128. package/{eval-framework → ci}/cases/case5-zh-tier3.json +5 -5
  129. package/ci/cases/case6-macro-skill-audit.json +5 -0
  130. package/ci/cases/case7-macro-reference-audit.json +5 -0
  131. package/ci/cases/case8-controlled-ab-benchmark.json +5 -0
  132. package/ci/cases/case9-four-issue-audit.json +5 -0
  133. package/ci/consistency-check.js +347 -0
  134. package/ci/description-collision.js +109 -0
  135. package/ci/fable-mode-test.js +120 -0
  136. package/ci/fixtures/agency-agents/divisions.json +6 -0
  137. package/ci/fixtures/agency-agents/engineering/code-reviewer.md +11 -0
  138. package/ci/fixtures/agency-agents/testing/reality-checker.md +11 -0
  139. package/ci/fixtures/bad-frontmatter-colon/SKILL.md +16 -0
  140. package/ci/fixtures/duplicate-description/skill-a/SKILL.md +16 -0
  141. package/ci/fixtures/duplicate-description/skill-b/SKILL.md +16 -0
  142. package/ci/mechanism-2a-rule-of-3.test.js +46 -0
  143. package/ci/mechanism-2b-boundary-guard.test.js +16 -0
  144. package/ci/mechanism-2c-state-persist.test.js +29 -0
  145. package/ci/mechanism-2d-fact-audit.test.js +18 -0
  146. package/ci/mechanism-2e-scope-guard.test.js +24 -0
  147. package/ci/mechanism-2f-stop-gate.test.js +23 -0
  148. package/ci/mechanism-2g-platform-ignore.test.js +88 -0
  149. package/ci/mechanism-2h-installer-manifest.test.js +147 -0
  150. package/ci/mechanism-2i-crlf-frontmatter.test.js +145 -0
  151. package/ci/mechanism-2i-install-verification.test.js +34 -0
  152. package/ci/mechanism-2j-behavioral-runner.test.js +20 -0
  153. package/ci/mechanism-2k-reference-check.test.js +20 -0
  154. package/ci/mechanism-2l-multi-agent-workspace.test.js +105 -0
  155. package/ci/mechanism-test.js +71 -0
  156. package/ci/negative-controls.js +84 -0
  157. package/ci/reference-check.js +112 -0
  158. package/ci/release-consistency-check.js +123 -0
  159. package/ci/routing-check.js +90 -0
  160. package/{eval-framework → ci}/runner.js +56 -56
  161. package/ci/skill-routing-check.js +98 -0
  162. package/ci/test-helper.js +104 -0
  163. package/ci/test-negative-controls.js +148 -0
  164. package/commitlint.config.js +25 -0
  165. package/docker-verify.sh +266 -266
  166. package/docs/architecture.md +99 -95
  167. package/docs/audit.md +53 -0
  168. package/docs/mechanism-first-skill-mesh.md +163 -0
  169. package/docs/philosophy.md +47 -45
  170. package/docs/reflection.md +48 -34
  171. package/docs/routing.md +58 -45
  172. package/docs/troubleshooting.md +284 -0
  173. package/docs/workflows/environment-detection.md +63 -63
  174. package/docs/workflows/eval-harness.md +64 -57
  175. package/docs/workflows/fable-discipline.md +59 -59
  176. package/docs/workflows/fable-mode.md +12 -15
  177. package/docs/workflows/find-skills.md +36 -0
  178. package/docs/workflows/git-commit.md +71 -62
  179. package/docs/workflows/grill-me.md +62 -62
  180. package/docs/workflows/grill-with-docs.md +69 -62
  181. package/docs/workflows/harness-everything.md +95 -92
  182. package/docs/workflows/improve-codebase-architecture.md +68 -60
  183. package/docs/workflows/install-cognitive-os.md +60 -60
  184. package/docs/workflows/multi-agent-workspace.md +42 -0
  185. package/docs/workflows/repo-docs.md +64 -59
  186. package/docs/workflows/rewrite-commits.md +60 -60
  187. package/docs/workflows/security-review.md +77 -58
  188. package/docs/workflows/self-evolve.md +42 -59
  189. package/docs/workflows/skill-creator.md +80 -75
  190. package/docs/workflows/skill-style.md +64 -64
  191. package/docs/workflows/tdd.md +7 -4
  192. package/docs/workflows/to-spec.md +83 -0
  193. package/docs/workflows/to-tickets.md +80 -0
  194. package/docs/workflows/todo-driven-workflow.md +28 -30
  195. package/docs/workflows/using-git-worktrees.md +67 -63
  196. package/docs/workflows/verification-loop.md +71 -69
  197. package/docs/workflows/verify-before-claim.md +64 -60
  198. package/docs/workflows/zoom-out.md +74 -62
  199. package/environment-detection/SKILL.md +41 -77
  200. package/environment-detection/references/shell-syntax-rules.md +76 -0
  201. package/environment-detection/scripts/preflight.js +103 -93
  202. package/eval-framework/fixtures/bad-frontmatter-colon/SKILL.md +14 -0
  203. package/eval-framework/fixtures/duplicate-desc-skill-a/SKILL.md +14 -0
  204. package/eval-framework/fixtures/duplicate-desc-skill-b/SKILL.md +14 -0
  205. package/eval-framework/fixtures/missing-delimiter/SKILL.md +13 -0
  206. package/eval-framework/fixtures/over-budget-skill/SKILL.md +36 -0
  207. package/eval-harness/SKILL.md +42 -59
  208. package/eval-harness/references/scoring-rubric.md +68 -0
  209. package/eval-harness/scripts/evaluate.js +77 -61
  210. package/evals/environment-detection/eval.yaml +26 -0
  211. package/evals/environment-detection/tasks/negative-trigger.yaml +16 -0
  212. package/evals/environment-detection/tasks/positive-trigger.yaml +15 -0
  213. package/evals/eval-harness/eval.yaml +26 -0
  214. package/evals/eval-harness/tasks/negative-trigger.yaml +16 -0
  215. package/evals/eval-harness/tasks/positive-trigger.yaml +15 -0
  216. package/evals/fable-discipline/eval.yaml +26 -0
  217. package/evals/fable-discipline/tasks/negative-trigger.yaml +16 -0
  218. package/evals/fable-discipline/tasks/positive-trigger.yaml +15 -0
  219. package/evals/fable-mode/eval.yaml +26 -0
  220. package/evals/fable-mode/tasks/negative-tier2-no-model.yaml +18 -0
  221. package/evals/fable-mode/tasks/negative-trigger.yaml +16 -0
  222. package/evals/fable-mode/tasks/positive-haiku-mode.yaml +16 -0
  223. package/evals/fable-mode/tasks/positive-opus-mode.yaml +16 -0
  224. package/evals/fable-mode/tasks/positive-sonnet-mode.yaml +16 -0
  225. package/evals/fable-mode/tasks/positive-trigger.yaml +15 -0
  226. package/evals/find-skills/eval.yaml +26 -0
  227. package/evals/find-skills/tasks/negative-trigger.yaml +16 -0
  228. package/evals/find-skills/tasks/positive-trigger.yaml +15 -0
  229. package/evals/git-commit/eval.yaml +26 -0
  230. package/evals/git-commit/tasks/negative-trigger.yaml +16 -0
  231. package/evals/git-commit/tasks/positive-trigger.yaml +15 -0
  232. package/evals/grill-me/eval.yaml +26 -0
  233. package/evals/grill-me/tasks/negative-trigger.yaml +16 -0
  234. package/evals/grill-me/tasks/positive-trigger.yaml +15 -0
  235. package/evals/grill-with-docs/eval.yaml +26 -0
  236. package/evals/grill-with-docs/tasks/negative-trigger.yaml +16 -0
  237. package/evals/grill-with-docs/tasks/positive-trigger.yaml +15 -0
  238. package/evals/harness-everything/eval.yaml +26 -0
  239. package/evals/harness-everything/tasks/negative-non-software.yaml +16 -0
  240. package/evals/harness-everything/tasks/negative-skill-indicated.yaml +15 -0
  241. package/evals/harness-everything/tasks/positive-tier1.yaml +16 -0
  242. package/evals/harness-everything/tasks/positive-tier2.yaml +16 -0
  243. package/evals/harness-everything/tasks/positive-tier3.yaml +16 -0
  244. package/evals/improve-codebase-architecture/eval.yaml +26 -0
  245. package/evals/improve-codebase-architecture/tasks/negative-trigger.yaml +16 -0
  246. package/evals/improve-codebase-architecture/tasks/positive-trigger.yaml +15 -0
  247. package/evals/install-cognitive-os/eval.yaml +26 -0
  248. package/evals/install-cognitive-os/tasks/negative-trigger.yaml +16 -0
  249. package/evals/install-cognitive-os/tasks/positive-trigger.yaml +15 -0
  250. package/evals/multi-agent-workspace/eval.yaml +26 -0
  251. package/evals/multi-agent-workspace/tasks/negative-trigger.yaml +15 -0
  252. package/evals/multi-agent-workspace/tasks/positive-trigger.yaml +15 -0
  253. package/evals/repo-docs/eval.yaml +26 -0
  254. package/evals/repo-docs/tasks/negative-trigger.yaml +16 -0
  255. package/evals/repo-docs/tasks/positive-trigger.yaml +15 -0
  256. package/evals/rewrite-commits/eval.yaml +26 -0
  257. package/evals/rewrite-commits/tasks/negative-trigger.yaml +16 -0
  258. package/evals/rewrite-commits/tasks/positive-trigger.yaml +15 -0
  259. package/evals/security-review/eval.yaml +26 -0
  260. package/evals/security-review/tasks/negative-trigger.yaml +16 -0
  261. package/evals/security-review/tasks/positive-trigger.yaml +15 -0
  262. package/evals/self-evolve/eval.yaml +26 -0
  263. package/evals/self-evolve/tasks/negative-trigger.yaml +16 -0
  264. package/evals/self-evolve/tasks/positive-trigger.yaml +15 -0
  265. package/evals/skill-creator/eval.yaml +26 -0
  266. package/evals/skill-creator/tasks/negative-trigger.yaml +16 -0
  267. package/evals/skill-creator/tasks/positive-trigger.yaml +15 -0
  268. package/evals/skill-style/eval.yaml +26 -0
  269. package/evals/skill-style/tasks/negative-trigger.yaml +16 -0
  270. package/evals/skill-style/tasks/positive-trigger.yaml +15 -0
  271. package/evals/tdd/eval.yaml +26 -0
  272. package/evals/tdd/tasks/negative-trivia.yaml +16 -0
  273. package/evals/tdd/tasks/positive-bugfix.yaml +15 -0
  274. package/evals/tdd/tasks/positive-feature.yaml +16 -0
  275. package/evals/tdd/tasks/positive-refactor.yaml +15 -0
  276. package/evals/to-spec/eval.yaml +26 -0
  277. package/evals/to-spec/tasks/negative-trigger.yaml +16 -0
  278. package/evals/to-spec/tasks/positive-trigger.yaml +15 -0
  279. package/evals/to-tickets/eval.yaml +26 -0
  280. package/evals/to-tickets/tasks/negative-trigger.yaml +15 -0
  281. package/evals/to-tickets/tasks/positive-trigger.yaml +15 -0
  282. package/evals/todo-driven-workflow/eval.yaml +26 -0
  283. package/evals/todo-driven-workflow/tasks/negative-single-edit.yaml +16 -0
  284. package/evals/todo-driven-workflow/tasks/positive-multi-step.yaml +15 -0
  285. package/evals/todo-driven-workflow/tasks/positive-refactor-flow.yaml +15 -0
  286. package/evals/using-git-worktrees/eval.yaml +26 -0
  287. package/evals/using-git-worktrees/tasks/negative-trigger.yaml +15 -0
  288. package/evals/using-git-worktrees/tasks/positive-trigger.yaml +15 -0
  289. package/evals/verification-loop/eval.yaml +26 -0
  290. package/evals/verification-loop/tasks/negative-discussion.yaml +16 -0
  291. package/evals/verification-loop/tasks/positive-pre-ship.yaml +15 -0
  292. package/evals/verify-before-claim/eval.yaml +26 -0
  293. package/evals/verify-before-claim/tasks/negative-trigger.yaml +16 -0
  294. package/evals/verify-before-claim/tasks/positive-trigger.yaml +15 -0
  295. package/evals/zoom-out/eval.yaml +26 -0
  296. package/evals/zoom-out/tasks/negative-trivial-edit.yaml +16 -0
  297. package/evals/zoom-out/tasks/positive-repeated-failure.yaml +15 -0
  298. package/fable-discipline/SKILL.md +41 -38
  299. package/fable-discipline/references/discipline-rules.md +22 -0
  300. package/fable-mode/CONTRACT-FORMAT.md +51 -51
  301. package/fable-mode/SKILL.md +39 -51
  302. package/fable-mode/agents/fable-orchestrator.md +99 -92
  303. package/fable-mode/agents/fable-verifier.md +32 -32
  304. package/fable-mode/agents/fable-worker-haiku.md +52 -48
  305. package/fable-mode/agents/fable-worker-sonnet.md +53 -49
  306. package/fable-mode/execution-guardrails/SKILL.md +43 -87
  307. package/fable-mode/execution-guardrails/references/guardrail-rules.md +56 -0
  308. package/fable-mode/fable-haiku/SKILL.md +36 -48
  309. package/fable-mode/fable-haiku/references/routing-notes.md +26 -0
  310. package/fable-mode/fable-opus/SKILL.md +36 -0
  311. package/fable-mode/fable-sonnet/SKILL.md +36 -0
  312. package/fable-mode/model-matrix.json +32 -0
  313. package/fable-mode/references/execution-phases.md +37 -0
  314. package/fable-mode/references/model-matrix.md +39 -0
  315. package/fable-mode/scripts/model-selector.js +129 -0
  316. package/find-skills/SKILL.md +48 -0
  317. package/find-skills/references/discovery-flow.md +102 -0
  318. package/find-skills/scripts/use-skill.js +106 -0
  319. package/git-commit/SKILL.md +45 -55
  320. package/git-commit/guides/ANGULAR_STYLE.md +60 -60
  321. package/git-commit/guides/COMMIT_GENERATION.md +23 -23
  322. package/git-commit/guides/LANGUAGE_DETECTION.md +16 -16
  323. package/git-commit/guides/MAIN_REPO.md +14 -14
  324. package/git-commit/guides/SUBMODULES.md +27 -27
  325. package/git-commit/references/commit-flow.md +30 -0
  326. package/grill-me/SKILL.md +43 -36
  327. package/grill-me/references/grilling-playbook.md +38 -0
  328. package/grill-with-docs/ADR-FORMAT.md +47 -47
  329. package/grill-with-docs/CONTEXT-FORMAT.md +63 -63
  330. package/grill-with-docs/SKILL.md +41 -99
  331. package/grill-with-docs/references/session-playbook.md +97 -0
  332. package/harness-everything/SKILL.md +42 -141
  333. package/harness-everything/references/skill-registry.md +39 -0
  334. package/harness-everything/references/triage-and-tiers.md +116 -0
  335. package/harness-everything/scripts/bootstrap.js +203 -140
  336. package/harness-everything/scripts/routing-keywords.json +320 -0
  337. package/harness-everything/scripts/self-heal.js +241 -189
  338. package/harness-everything/scripts/tier-router.js +334 -219
  339. package/harness-everything/scripts/verify-gate.js +87 -18
  340. package/hooks/hooks.json +155 -155
  341. package/hooks/scripts/boundary-guard.js +55 -55
  342. package/hooks/scripts/contract-test.js +79 -79
  343. package/hooks/scripts/depth-guard.js +65 -65
  344. package/hooks/scripts/lib/harness-state.js +139 -228
  345. package/hooks/scripts/lib/platforms/claude.js +185 -42
  346. package/hooks/scripts/lib/platforms/codex.js +114 -46
  347. package/hooks/scripts/lib/platforms/continue.js +91 -41
  348. package/hooks/scripts/lib/platforms/copilot.js +109 -41
  349. package/hooks/scripts/lib/platforms/cursor.js +89 -41
  350. package/hooks/scripts/lib/platforms/hermes.js +57 -32
  351. package/hooks/scripts/lib/platforms/index.js +17 -17
  352. package/hooks/scripts/lib/platforms/worktrees.js +20 -20
  353. package/hooks/scripts/reset-circuit-breaker.js +30 -30
  354. package/hooks/scripts/rule-of-3-tracker.js +124 -91
  355. package/hooks/scripts/rule-of-3.js +14 -3
  356. package/hooks/scripts/state-persist.js +99 -99
  357. package/hooks/scripts/stop-gate.js +80 -80
  358. package/hooks/scripts/subagent-scope-guard.js +88 -88
  359. package/improve-codebase-architecture/SKILL.md +40 -44
  360. package/improve-codebase-architecture/guides/DEEPENING.md +37 -37
  361. package/improve-codebase-architecture/guides/HTML-REPORT.md +123 -123
  362. package/improve-codebase-architecture/guides/INTERFACE-DESIGN.md +44 -44
  363. package/improve-codebase-architecture/guides/LANGUAGE.md +53 -53
  364. package/improve-codebase-architecture/guides/refactoring-workflow.md +59 -0
  365. package/install-cognitive-os/SKILL.md +38 -95
  366. package/install-cognitive-os/references/cognitive-loop.md +27 -0
  367. package/multi-agent-workspace/NOTICE-agency-agents.md +27 -0
  368. package/multi-agent-workspace/SKILL.md +37 -0
  369. package/{create-agent-launcher → multi-agent-workspace}/examples/csharp-monorepo.md +123 -123
  370. package/{create-agent-launcher → multi-agent-workspace}/examples/typescript-cli.md +126 -126
  371. package/{create-agent-launcher → multi-agent-workspace}/guidelines/platform-claude.md +77 -77
  372. package/{create-agent-launcher → multi-agent-workspace}/guidelines/platform-codex.md +146 -146
  373. package/multi-agent-workspace/guidelines/platform-continue.md +38 -0
  374. package/{create-agent-launcher → multi-agent-workspace}/guidelines/platform-copilot.md +74 -74
  375. package/multi-agent-workspace/guidelines/platform-cursor.md +40 -0
  376. package/multi-agent-workspace/guidelines/platform-hermes.md +38 -0
  377. package/{create-agent-launcher → multi-agent-workspace}/guidelines/role-capabilities.md +108 -108
  378. package/multi-agent-workspace/references/agency-agents.md +31 -0
  379. package/multi-agent-workspace/references/architecture-guide.md +32 -0
  380. package/multi-agent-workspace/references/orchestration.md +48 -0
  381. package/multi-agent-workspace/scripts/agency-catalog.js +190 -0
  382. package/multi-agent-workspace/scripts/index_memory.js +51 -0
  383. package/multi-agent-workspace/scripts/scaffold.js +253 -0
  384. package/{create-agent-launcher → multi-agent-workspace}/templates/README.md +17 -17
  385. package/{create-agent-launcher → multi-agent-workspace}/templates/agent-launcher.md +67 -67
  386. package/{create-agent-launcher → multi-agent-workspace}/templates/backend-developer-csharp.md +55 -55
  387. package/{create-agent-launcher → multi-agent-workspace}/templates/backend-developer-polyglot.md +61 -61
  388. package/{create-agent-launcher → multi-agent-workspace}/templates/backend-developer-ts.md +56 -56
  389. package/{create-agent-launcher → multi-agent-workspace}/templates/memory-keeper.md +36 -36
  390. package/{create-agent-launcher → multi-agent-workspace}/templates/requirement-analyzer.md +65 -65
  391. package/{create-agent-launcher → multi-agent-workspace}/templates/specialist-agent.md +34 -34
  392. package/{create-agent-launcher → multi-agent-workspace}/templates/task-verifier.md +55 -55
  393. package/{create-agent-launcher → multi-agent-workspace}/templates/tool-maker.md +32 -32
  394. package/multi-agent-workspace/workflows/01-init.md +22 -0
  395. package/multi-agent-workspace/workflows/02-analysis.md +23 -0
  396. package/multi-agent-workspace/workflows/03-generation.md +27 -0
  397. package/multi-agent-workspace/workflows/04-launcher.md +16 -0
  398. package/opencode-plugin/README.md +94 -0
  399. package/opencode-plugin/hooks/circuit-breaker.js +121 -0
  400. package/opencode-plugin/hooks/compliance.js +128 -0
  401. package/opencode-plugin/hooks/post-edit.js +62 -0
  402. package/opencode-plugin/hooks/pre-complete.js +65 -0
  403. package/opencode-plugin/hooks/verify.js +140 -0
  404. package/opencode-plugin/plugin.json +17 -0
  405. package/opencode-plugin/test-hook-firing.js +198 -0
  406. package/package.json +50 -22
  407. package/references/definition-of-done.md +67 -0
  408. package/references/performance-checklist.md +153 -0
  409. package/references/platform-advisory-template.md +58 -0
  410. package/references/security-checklist.md +205 -0
  411. package/repo-docs/SKILL.md +46 -45
  412. package/repo-docs/references/process-guide.md +60 -0
  413. package/repo-docs/templates/agents-template.md +264 -264
  414. package/repo-docs/templates/knowledge-agents-template.md +50 -50
  415. package/repo-docs/templates/knowledge-readme-template.md +83 -83
  416. package/repo-docs/templates/manual-recon.md +117 -117
  417. package/repo-docs/templates/multi-skills-readme-template.md +72 -72
  418. package/repo-docs/templates/product-agents-template.md +78 -78
  419. package/repo-docs/templates/product-readme-template.md +95 -95
  420. package/repo-docs/templates/readme-template.md +136 -136
  421. package/repo-docs/templates/single-skill-readme-template.md +70 -70
  422. package/repo-docs/templates/skills-agents-template.md +60 -60
  423. package/rewrite-commits/SKILL.md +37 -32
  424. package/rewrite-commits/references/workflow.md +18 -0
  425. package/scripts/installer.js +546 -649
  426. package/scripts/lib/advisory-text.js +167 -163
  427. package/scripts/lib/claude-hooks.js +84 -71
  428. package/scripts/lib/gitignore.js +199 -80
  429. package/scripts/lib/manifest.js +146 -82
  430. package/scripts/lib/prompts.js +241 -241
  431. package/scripts/lib/skills.js +260 -172
  432. package/scripts/lib/workspace.js +28 -28
  433. package/scripts/verify-install.js +147 -0
  434. package/security-review/SKILL.md +50 -511
  435. package/security-review/guides/OWASP-PATTERNS.md +31 -0
  436. package/security-review/guides/STRIDE-THREAT-MODEL.md +21 -0
  437. package/security-review/references/security-checklist.md +478 -0
  438. package/security-review/scripts/audit-secrets.js +84 -0
  439. package/self-evolve/SKILL.md +47 -54
  440. package/self-evolve/references/memory-resolution.md +58 -0
  441. package/self-evolve/scripts/persist-memory.js +139 -40
  442. package/self-evolve/scripts/register-dynamic-skill.js +251 -0
  443. package/self-evolve/scripts/self-regression.js +110 -113
  444. package/skill-creator/SKILL.md +49 -91
  445. package/skill-creator/references/authoring-workflow.md +14 -0
  446. package/skill-creator/references/dynamic-generation-contract.md +21 -0
  447. package/skill-creator/references/quality-checklist.md +15 -0
  448. package/skill-creator/references/quality-principles.md +81 -81
  449. package/skill-creator/references/testing-workflow.md +20 -25
  450. package/skill-style/SKILL.md +42 -48
  451. package/skill-style/references/style-guide.md +36 -0
  452. package/tdd/SKILL.md +44 -53
  453. package/tdd/guides/deep-modules.md +33 -33
  454. package/tdd/guides/interface-design.md +31 -31
  455. package/tdd/guides/mocking.md +59 -59
  456. package/tdd/guides/refactoring.md +10 -10
  457. package/tdd/guides/tests.md +61 -61
  458. package/tdd/references/core-discipline.md +49 -0
  459. package/to-spec/SKILL.md +42 -0
  460. package/to-spec/references/process.md +77 -0
  461. package/to-spec/scripts/check-project-docs.js +259 -0
  462. package/to-spec/templates/cli-reference.md +31 -0
  463. package/to-spec/templates/dev-doc.md +27 -0
  464. package/to-spec/templates/feature-spec.md +59 -0
  465. package/to-spec/templates/schema-doc.md +31 -0
  466. package/to-tickets/SKILL.md +42 -0
  467. package/to-tickets/references/publishing-and-templates.md +97 -0
  468. package/todo-driven-workflow/SKILL.md +40 -54
  469. package/todo-driven-workflow/references/execution-guide.md +27 -0
  470. package/using-git-worktrees/SKILL.md +49 -161
  471. package/using-git-worktrees/references/workflow-details.md +108 -0
  472. package/verification-loop/SKILL.md +46 -138
  473. package/verification-loop/references/verification-phases.md +116 -0
  474. package/verification-loop/templates/verification-report.template.md +15 -0
  475. package/verify-before-claim/SKILL.md +43 -86
  476. package/verify-before-claim/references/verification-guide.md +73 -0
  477. package/zoom-out/SKILL.md +42 -90
  478. package/zoom-out/references/circuit-breaker.md +66 -0
  479. package/zoom-out/templates/zoom-out-report.template.md +20 -0
  480. package/build-multi-agent-system/AGENTS.md +0 -50
  481. package/build-multi-agent-system/README.md +0 -63
  482. package/build-multi-agent-system/SKILL.md +0 -68
  483. package/create-agent-launcher/SKILL.md +0 -48
  484. package/create-agent-launcher/guidelines/platform-gemini.md +0 -101
  485. package/create-agent-launcher/workflows/01-init.md +0 -22
  486. package/create-agent-launcher/workflows/02-analysis.md +0 -26
  487. package/create-agent-launcher/workflows/03-generation.md +0 -29
  488. package/create-agent-launcher/workflows/04-launcher.md +0 -20
  489. package/docs/workflows/build-multi-agent-system.md +0 -62
  490. package/docs/workflows/create-agent-launcher.md +0 -62
  491. package/eval-framework/behavioral-test.js +0 -105
  492. package/eval-framework/mechanism-test.js +0 -251
  493. package/harness-everything/scripts/todo-cli.js +0 -157
  494. package/skill-style/STYLE.md +0 -37
@@ -1,38 +1,41 @@
1
- ---
2
- name: fable-discipline
3
- description: Shadow guard for fable-mode to prevent context bloat and maintain physical boundaries.
4
- author: Miya Daniel | Harness Core Team
5
- version: 0.2.0
6
- ---
7
-
8
- # Fable Discipline (Macro Task Discipline & Safety Net)
9
-
10
- ## 📋 Skill Contract
11
-
12
- | Component | Specification |
13
- | :--- | :--- |
14
- | **Trigger / Input** | Runs continuously in the background for the entire duration `fable-mode` is active — not a standalone, one-shot trigger. |
15
- | **Expected Output** | Periodic state compaction after each milestone; one Git commit per independently functioning logic block; a state manifest handed off between sub-agents at every handoff point. |
16
- | **State Mutations** | None of its own — it constrains how `fable-mode` and `create-agent-launcher` mutate state (commit cadence, handoff manifests, read-size limits). |
17
- | **Enforcement Gate** | **HALTS execution immediately** (not a retry) if build errors show a divergent trend (more fixes → more breakage), and forces `zoom-out` instead of continued patching. |
18
-
19
- This skill acts as the shadow guard for `fable-mode`. As long as `fable-mode` is active, this skill MUST run in the background to prevent large tasks from spiraling out of control.
20
-
21
- ## 1. Anti-Context Bloat Defense
22
- When executing large architectural tasks, conversation logs expand rapidly, leading to model attention loss (hallucinations or forgetting the original intent).
23
- - **Strategic Compact**: After completing each core milestone, forcefully summarize the current state and decisions, discarding unnecessary past conversation details.
24
- - **Avoid Broad Reads**: Prohibited from using broad Regex searches without precise conditions or reading irrelevant files over 1000 lines.
25
-
26
- ## 2. Strict Physical Boundaries
27
- - **Environment Isolation**: Before modifying any core architecture, ensure you are clearly aware of the Current Working Directory (CWD).
28
- - **Atomic Commits**: You are NOT allowed to modify dozens of files at once before testing. For every independently functioning logic block completed, advise the human to create a Git Commit as a safe save point.
29
-
30
- ## 3. Agent Handoff Protocol
31
- When `fable-mode` spawns and switches between different sub-agents via `create-agent-launcher`, strict handoff discipline must be observed:
32
- - **State Manifest**: The previous agent MUST leave a clear state record (e.g., what APIs were completed, expected inputs/outputs).
33
- - **Contract Testing**: The very first step for the succeeding agent is to verify if the state manifest left by the previous agent is correct.
34
-
35
- ## 4. Ultimate Circuit Breaker: Indefinite Halt
36
- - Large tasks easily generate the sunk cost fallacy of "I think it's almost fixed, let me try one more time."
37
- - If the system's Build Errors exhibit a divergent trend (the more you fix, the more it breaks), **HALT EXECUTION IMMEDIATELY**.
38
- - Call `zoom-out`, organize the error dependency graph for the human, and seek architectural-level refactoring advice.
1
+ ---
2
+ name: fable-discipline
3
+ description: Enforce fable-mode's context discipline as a shadow guard. Use when running staged multi-agent loops to prevent context bloat, cap per-stage output size, keep each stage within its physical token boundaries, and stop agents from reading files outside the current stage's scope.
4
+ license: Apache-2.0
5
+ metadata:
6
+ author: Miya Daniel
7
+ version: 0.3.6
8
+ ---
9
+
10
+ # Fable Discipline (Macro Task Discipline & Safety Net)
11
+
12
+ ## 📋 Skill Contract
13
+
14
+ | Component | Specification |
15
+ | :--- | :--- |
16
+ | **Trigger / Input** | Background shadow for the whole duration `fable-mode` is active — not a standalone one-shot trigger. |
17
+ | **Expected Output** | State compaction after milestones; one Git commit per independent logic block; a state manifest at every sub-agent handoff. |
18
+ | **State Mutations** | None of its own — constrains how `fable-mode` and `multi-agent-workspace` mutate state. |
19
+ | **Enforcement Gate** | **HALTS execution immediately** if build errors diverge (more fixes → more breakage); forces `zoom-out` instead of continued patching. |
20
+
21
+ Shadow guard for `fable-mode`: MUST run in the background for its whole duration.
22
+
23
+ ## USE FOR:
24
+ - Long architectural tasks under `fable-mode`
25
+ - Compacting state after milestones
26
+ - Sub-agent handoffs via `multi-agent-workspace`
27
+ - Halting on diverging build errors
28
+
29
+ ## DO NOT USE FOR:
30
+ - Small tasks where `fable-mode` is not active
31
+ - Standalone one-shot invocation (background shadow skill)
32
+ - Routine single-file edits
33
+
34
+ ## Core Rules
35
+
36
+ 1. **Anti-context bloat**: After each milestone, compact state and decisions; drop unneeded history. No broad regex without precise conditions; no reading irrelevant files over 1000 lines.
37
+ 2. **Physical boundaries**: Know your CWD before touching core architecture; one Git commit per independent logic block.
38
+ 3. **Agent handoff**: Outgoing agents MUST leave a state manifest (completed APIs, expected inputs/outputs); incoming agents MUST verify it first.
39
+ 4. **Circuit breaker**: If build errors diverge, HALT, call `zoom-out`, and map the error dependency graph for the human.
40
+
41
+ Deep dive: references/discipline-rules.md
@@ -0,0 +1,22 @@
1
+ # Fable Discipline — Full Detail
2
+
3
+ This skill acts as the shadow guard for `fable-mode`. As long as `fable-mode` is active, this skill MUST run in the background to prevent large tasks from spiraling out of control.
4
+
5
+ ## 1. Anti-Context Bloat Defense
6
+ When executing large architectural tasks, conversation logs expand rapidly, leading to model attention loss (hallucinations or forgetting the original intent).
7
+ - **Strategic Compact**: After completing each core milestone, forcefully summarize the current state and decisions, discarding unnecessary past conversation details.
8
+ - **Avoid Broad Reads**: Prohibited from using broad Regex searches without precise conditions or reading irrelevant files over 1000 lines.
9
+
10
+ ## 2. Strict Physical Boundaries
11
+ - **Environment Isolation**: Before modifying any core architecture, ensure you are clearly aware of the Current Working Directory (CWD).
12
+ - **Atomic Commits**: You are NOT allowed to modify dozens of files at once before testing. For every independently functioning logic block completed, advise the human to create a Git Commit as a safe save point.
13
+
14
+ ## 3. Agent Handoff Protocol
15
+ When `fable-mode` spawns and switches between different sub-agents via `multi-agent-workspace`, strict handoff discipline must be observed:
16
+ - **State Manifest**: The previous agent MUST leave a clear state record (e.g., what APIs were completed, expected inputs/outputs).
17
+ - **Contract Testing**: The very first step for the succeeding agent is to verify if the state manifest left by the previous agent is correct.
18
+
19
+ ## 4. Ultimate Circuit Breaker: Indefinite Halt
20
+ - Large tasks easily generate the sunk cost fallacy of "I think it's almost fixed, let me try one more time."
21
+ - If the system's Build Errors exhibit a divergent trend (the more you fix, the more it breaks), **HALT EXECUTION IMMEDIATELY**.
22
+ - Call `zoom-out`, organize the error dependency graph for the human, and seek architectural-level refactoring advice.
@@ -1,51 +1,51 @@
1
- # Stage Contract Format
2
-
3
- Stage contracts live in `.claude/harness-state/contracts/` and make fable-orchestrator's
4
- "re-run or spot-check every stage's named check" discipline auditable instead
5
- of a verbal claim. The `contract-test.js` hook (PostToolUse: Bash) watches for
6
- the exact `checkCommand` running and fills in the result — you write the
7
- contract, the hook resolves it.
8
-
9
- ## When to write one
10
-
11
- Right before you (the orchestrator) run the Bash command that re-verifies a
12
- stage's pass condition — one contract per stage, filed the moment you're about
13
- to spot-check it. Not for every Bash call, only the ones that *are* the named
14
- check.
15
-
16
- ## File
17
-
18
- `.claude/harness-state/contracts/<stageId>.json`, created lazily. `stageId` is whatever you
19
- numbered the stage in your stage map (`stage-3`, `db-migration`, etc).
20
-
21
- ## Schema
22
-
23
- ```json
24
- {
25
- "stageId": "stage-3",
26
- "agent": "fable-worker-sonnet",
27
- "task": "one-line description of what the worker was assigned",
28
- "outputPath": "path to the artifact the worker produced",
29
- "checkCommand": "the exact shell command you are about to run to verify it",
30
- "status": "pending"
31
- }
32
- ```
33
-
34
- Write it with `status: "pending"` and the *exact* `checkCommand` string you're
35
- about to run — the hook matches verbatim, not fuzzily. Then run that command.
36
- The hook fills in `status` (`pass`/`fail`), `evidence` (tail of the command's
37
- output), and `verifiedAt` for you; you don't write those fields yourself.
38
-
39
- ## Reading contracts back
40
-
41
- Before delivering, `Read` (or `Grep status` across) `.claude/harness-state/contracts/*.json`.
42
- Any file still `"status": "pending"` means the named check was declared but
43
- never actually run — that stage's output hasn't been verified, whatever the
44
- worker's report claimed. Resolve it before building further on that stage.
45
-
46
- ## Not a blocking gate
47
-
48
- The hook can only react after a Bash call finishes — it can't stop a bad stage
49
- from being built on in real time. It surfaces a failed check loudly (fed back
50
- to you immediately after the command runs), but the actual discipline is still
51
- yours: don't build on a stage whose contract is `pending` or `fail`.
1
+ # Stage Contract Format
2
+
3
+ Stage contracts live in `.claude/harness-everything/state/contracts/` and make fable-orchestrator's
4
+ "re-run or spot-check every stage's named check" discipline auditable instead
5
+ of a verbal claim. The `contract-test.js` hook (PostToolUse: Bash) watches for
6
+ the exact `checkCommand` running and fills in the result — you write the
7
+ contract, the hook resolves it.
8
+
9
+ ## When to write one
10
+
11
+ Right before you (the orchestrator) run the Bash command that re-verifies a
12
+ stage's pass condition — one contract per stage, filed the moment you're about
13
+ to spot-check it. Not for every Bash call, only the ones that *are* the named
14
+ check.
15
+
16
+ ## File
17
+
18
+ `.claude/harness-everything/state/contracts/<stageId>.json`, created lazily. `stageId` is whatever you
19
+ numbered the stage in your stage map (`stage-3`, `db-migration`, etc).
20
+
21
+ ## Schema
22
+
23
+ ```json
24
+ {
25
+ "stageId": "stage-3",
26
+ "agent": "fable-worker-sonnet",
27
+ "task": "one-line description of what the worker was assigned",
28
+ "outputPath": "path to the artifact the worker produced",
29
+ "checkCommand": "the exact shell command you are about to run to verify it",
30
+ "status": "pending"
31
+ }
32
+ ```
33
+
34
+ Write it with `status: "pending"` and the *exact* `checkCommand` string you're
35
+ about to run — the hook matches verbatim, not fuzzily. Then run that command.
36
+ The hook fills in `status` (`pass`/`fail`), `evidence` (tail of the command's
37
+ output), and `verifiedAt` for you; you don't write those fields yourself.
38
+
39
+ ## Reading contracts back
40
+
41
+ Before delivering, `Read` (or `Grep status` across) `.claude/harness-everything/state/contracts/*.json`.
42
+ Any file still `"status": "pending"` means the named check was declared but
43
+ never actually run — that stage's output hasn't been verified, whatever the
44
+ worker's report claimed. Resolve it before building further on that stage.
45
+
46
+ ## Not a blocking gate
47
+
48
+ The hook can only react after a Bash call finishes — it can't stop a bad stage
49
+ from being built on in real time. It surfaces a failed check loudly (fed back
50
+ to you immediately after the command runs), but the actual discipline is still
51
+ yours: don't build on a stage whose contract is `pending` or `fail`.
@@ -1,51 +1,39 @@
1
- ---
2
- name: fable-mode
3
- description: Macro task planning and execution engine for complex requirements and low-level architecture changes.
4
- author: Miya Daniel | Harness Core Team
5
- version: 0.2.0
6
- ---
7
-
8
- # Fable Mode (Macro Task Planning & Execution Engine)
9
-
10
- ## 📋 Skill Contract
11
-
12
- | Component | Specification |
13
- | :--- | :--- |
14
- | **Trigger / Input** | Tier 3 Task classification. Input: Massive architectural requirement or module creation. |
15
- | **Expected Output** | 1. Documented architectural plan. 2. A sequence of subagent handoffs (`create-agent-launcher`). 3. System integration verified by terminal scripts. |
16
- | **State Mutations** | 1. Generates `todo-driven-workflow` checklist (via CLI) tracking subagent milestones. 2. `subagent-scope-state.json` updates during handoffs. |
17
- | **Enforcement Gate** | You MUST use `node harness-everything/scripts/todo-cli.js` to track milestones. You MUST run system tests (`verify-gate.js` or equivalent) after EACH subagent returns before moving to the next. |
18
-
19
- This skill is automatically triggered and loaded by the `harness-everything` router when a task is judged as a **Tier 3 (Macro Task)**.
20
- It applies to building new feature modules from scratch, massive low-level architecture changes, or extremely vague and complex user requirements.
21
-
22
- ## Core Concept: Plan Before Acting
23
-
24
- In Fable Mode, you are no longer a simple "typist", but an "Architect" and "Project Manager".
25
- You MUST strictly comply with and pair this with `fable-discipline` to control risks.
26
-
27
- ## Sub-Skills (bundled with this skill)
28
- - `execution-guardrails/` — always-on operational rules (verify-before-flag, warning batching, find-and-replace safety). These apply on EVERY tier and every model, not just inside Fable Mode; this skill's self-critique and file edits inherit them.
29
- - `fable-haiku/` — opt-in variant that routes the staged loop to a cheap Haiku worker agent for bulk mechanical work. Only use when the user explicitly asks for it.
30
-
31
- ## Execution Phases:
32
-
33
- ### 1. Discovery & Planning
34
- - **Assess Current State**: Comprehensively review the file architecture related to the requirement and understand dependencies.
35
- - **Deconstruct Task**: Break down the massive macro task into independently verifiable sub-tasks.
36
- - **Produce Plan**: Write a clear implementation plan (can be stored in chat or a temporary file) and confirm it with the Human Partner.
37
- - **Materialize the Plan as a Checklist**: The confirmed plan MUST be initialized as the `todo-driven-workflow` checklist — every sub-task, sub-agent handoff, and milestone check is tracked there, not in prose. This is the harness's base execution loop.
38
-
39
- ### 2. Sub-agent Orchestration
40
- - If the task involves different professional domains (e.g., modifying Postgres schema and writing React UI), it is **PROHIBITED** for a single model context to handle everything from start to finish, as this leads to attention scatter and Token waste.
41
- - **Mandatory Call**: Invoke the `create-agent-launcher` skill.
42
- - Based on the deconstructed sub-tasks, configure the corresponding Sub-agents (e.g., spawn a Database Expert to handle the Schema, then hand off to a Frontend Expert for the UI).
43
-
44
- ### 3. Monitoring & Integration
45
- - As the chief commander, Fable Mode is responsible for monitoring the progress of each Sub-agent.
46
- - Ensure the outputs of various sub-agents can integrate perfectly.
47
- - Upon completing each Milestone, a global test or check MUST be executed.
48
-
49
- ## Handoff & Defense
50
- - Fable Mode consumes massive system resources and Context Window.
51
- - Once the core module scaffolding is built and the task downgrades to Tier 2 feature completion, you MUST **proactively exit Fable Mode** and hand off to the `tdd` mode for subsequent detailed implementation.
1
+ ---
2
+ name: fable-mode
3
+ description: "Stage large, multi-source or multi-session tasks through a written plan, named fable agents, failable per-stage checks, and skeptical delivery review; use fable-opus, fable-sonnet, or fable-haiku for explicit model selection."
4
+ license: Apache-2.0
5
+ metadata:
6
+ author: Miya Daniel
7
+ version: 0.3.5
8
+ ---
9
+
10
+ # Fable Mode (v3)
11
+
12
+ ## Skill Contract
13
+
14
+ | Component | Specification |
15
+ | :--- | :--- |
16
+ | **Trigger / Input** | Tier 3 work spanning multiple files, sources, or sessions. |
17
+ | **Expected Output** | Stage map, named-agent briefs, failable checks, and skeptical review. |
18
+ | **State Mutations** | Native host TODO tracker or a Markdown checklist; one JSON audit record per stage. |
19
+ | **Enforcement Gate** | `fable-mode/scripts/model-selector.js`, stage contracts, and `harness-everything/scripts/verify-gate.js`. |
20
+
21
+ ## USE FOR:
22
+ - Large multi-file, multi-source, or multi-session work
23
+ - Explicit `fable on haiku`, `fable on sonnet`, or `fable on opus` requests
24
+ - Work needing named delegation and cold verification
25
+
26
+ ## DO NOT USE FOR:
27
+ - One obvious single-pass edit
28
+ - Ordinary Tier 2 implementation or bugfix work
29
+
30
+ ## Workflow
31
+
32
+ 1. Discover the runtime and lock the authorized file scope before edits.
33
+ 2. Write a numbered stage map with one artifact and pass condition per stage; allow at most two full replans.
34
+ 3. Resolve the requested model with `model-selector.js`; never silently downgrade.
35
+ 4. Delegate by named agent where available: Opus orchestrates, Sonnet reasons, Haiku handles mechanical work, and workers never spawn workers.
36
+ 5. Write a stage contract, run its named check, then cold-review high-stakes artifacts with `fable-verifier`.
37
+ 6. Record requested/effective model, fallback reason, stage brief, pass condition, verification command, and verifier result for every stage. Escalate unresolved blockers.
38
+
39
+ Model roles, fallback behavior, and the audit schema live in `references/model-matrix.md`.
@@ -1,92 +1,99 @@
1
- ---
2
- name: fable-orchestrator
3
- description: Staged-execution orchestrator for large, multi-part, or multi-session tasks. Use when fable-mode discipline must run with enforced delegation — it writes the stage map, delegates ALL artifact production to fable-worker-sonnet / fable-worker-haiku, verifies every stage with a failable check, and sends high-stakes deliverables to fable-verifier for a cold re-check. It has no Write or Edit tool, so it cannot do the work itself.
4
- tools: Read, Grep, Glob, Bash, Task, TodoWrite
5
- model: opus
6
- ---
7
-
8
- You are the fable orchestrator. You coordinate; you do not produce. You have no
9
- Write or Edit tool by design — every artifact must come from a worker agent. Your
10
- Bash access is for read-only inspection and running verification commands (tests,
11
- greps, diffs) ONLY. Never create or modify a file through Bash redirection,
12
- heredocs, tee, sed -i, or any other side channel — that defeats the reason Write
13
- was removed. If you catch yourself about to produce content, stop and delegate.
14
-
15
- ## Core loop
16
-
17
- **1. Stage map (before touching anything).** Write the full stage plan first.
18
- Number stages; give each a brief expected output. Each stage produces one
19
- verifiable artifact; if a stage produces nothing checkable, merge it with the
20
- next. Update the map when new information invalidates it — living document, not
21
- contract. Replan budget: at most two full replans per run; a third means the task
22
- is ambiguous at the requirements level — return the ambiguity to the caller
23
- instead of burning stages. Scope rule: deliver the task as specified; new scope
24
- discovered mid-run is surfaced as a recommendation at delivery, not silently
25
- built.
26
-
27
- **2. Delegate by name.** Every artifact-producing stage goes to a named agent via
28
- the Task tool:
29
- - `fable-worker-sonnet` — stage work needing real reasoning (research synthesis,
30
- nontrivial code, analysis).
31
- - `fable-worker-haiku` — bulk mechanical work (file processing, format
32
- conversion, boilerplate, scraping structured data).
33
- - `fable-verifier` — cold verification of a finished deliverable; brief it with
34
- ONLY the spec and the artifact path, never your reasoning.
35
-
36
- Brief each worker with: its specific task, the exact output path, relevant
37
- context from prior stages, and the pass condition its artifact must satisfy.
38
- Spawn independent stages concurrently; cap concurrent workers at four. Workers do
39
- not spawn workers.
40
-
41
- **3. Verify with a check that can fail — external artifacts only.** Each stage
42
- defines a pass condition an external artifact satisfies: a test that runs, a file
43
- that provably exists in the expected shape, a source actually fetched and read,
44
- an output diffed against the spec. "I reviewed it and it looks right" is not a
45
- check. Every check names the exact command, file, or comparison. Re-run or
46
- spot-check each worker's named check yourself (Bash, read-only) before building
47
- on its output. If a fix at stage N invalidates a prior stage's output, re-run
48
- that stage's check before continuing.
49
-
50
- Before running that spot-check command, write a stage contract per
51
- `fable-mode/CONTRACT-FORMAT.md` — this turns "I re-ran it" into an artifact
52
- `contract-test.js` fills in and later stages can audit, instead of a verbal
53
- claim. Before delivering, confirm no `.claude/harness-state/contracts/*.json` is still
54
- `"status": "pending"` or `"fail"`.
55
-
56
- **4. Self-critique before delivery.** Read the final output as a skeptical
57
- reviewer. For high-stakes deliverables, spawn `fable-verifier` cold. If genuine
58
- checking turns up nothing, say so plainly — do not manufacture a weakness. If the
59
- task is beyond capability, name what was attempted and where it failed rather
60
- than delivering plausible-sounding wrong output.
61
-
62
- ## Domain checks (instances of step 3)
63
-
64
- - **Software:** every file the diff touches was actually opened; named test
65
- command runs and passes; at least one error path exercised with output shown.
66
- - **Research:** every load-bearing claim maps to a source fetched and read this
67
- run — URL or document named; training-memory claims labeled as such.
68
- - **Data:** shape printed before analysis (row count, columns, sample); quality
69
- assertions (nulls, duplicate keys, out-of-range) run with output shown; one
70
- subtotal recomputed independently.
71
- - **Documents:** the produced file read back and diffed against the spec line by
72
- line — on the rendered file, not the generating code.
73
- - **Long-running:** work log kept; done criteria written and testable; each
74
- continuation starts by re-reading the log.
75
-
76
- ## Operational rules (mandatory; include verbatim in every worker briefing)
77
-
78
- **Verify before flag.** Before flagging any problem — verify it actually exists.
79
- Grep, diff, run it, or check the source directly. Never report a problem that
80
- hasn't been confirmed present. Absence of evidence is not the finding; web
81
- silence is never grounds for a warning against the user's firsthand information.
82
- Confirm, then flag.
83
-
84
- **Warning threshold.** Keep a running count of minor concerns. At three
85
- accumulated (unless the briefing sets a different number), stop and surface all
86
- at once before continuing. An independently material, confirmed concern does not
87
- wait for the threshold.
88
-
89
- **Find-and-replace safety.** Anchor substring replaces on word boundaries
90
- (`\bword\b`, never bare `word` — a bare `edge` replace mangles `Ledger`). Prefer
91
- targeted string-replace on a unique anchor; never bare unanchored sed. After any
92
- replace pass, grep for glued or malformed compounds before presenting.
1
+ ---
2
+ name: fable-orchestrator
3
+ description: Staged-execution orchestrator for large, multi-part, or multi-session tasks. Use when fable-mode discipline must run with enforced delegation — it writes the stage map, delegates ALL artifact production to fable-worker-sonnet / fable-worker-haiku, verifies every stage with a failable check, and sends high-stakes deliverables to fable-verifier for a cold re-check. It has no Write or Edit tool, so it cannot do the work itself.
4
+ tools: Read, Grep, Glob, Bash, Task, TodoWrite
5
+ model: opus
6
+ ---
7
+
8
+ You are the fable orchestrator. You coordinate; you do not produce. You have no
9
+ Write or Edit tool by design — every artifact must come from a worker agent. Your
10
+ Bash access is for read-only inspection and running verification commands (tests,
11
+ greps, diffs) ONLY. Never create or modify a file through Bash redirection,
12
+ heredocs, tee, sed -i, or any other side channel — that defeats the reason Write
13
+ was removed. If you catch yourself about to produce content, stop and delegate.
14
+
15
+ Before the first stage, resolve the requested model with
16
+ `fable-mode/scripts/model-selector.js`. Carry its JSON record into every stage
17
+ brief. A missing model must produce an explicit `fallback` or `blocked` status;
18
+ never silently substitute a model. Every brief and handoff names the stage
19
+ artifact, pass condition, verification command, verifier result, and requested
20
+ versus effective model.
21
+
22
+ ## Core loop
23
+
24
+ **1. Stage map (before touching anything).** Write the full stage plan first.
25
+ Number stages; give each a brief expected output. Each stage produces one
26
+ verifiable artifact; if a stage produces nothing checkable, merge it with the
27
+ next. Update the map when new information invalidates it — living document, not
28
+ contract. Replan budget: at most two full replans per run; a third means the task
29
+ is ambiguous at the requirements level — return the ambiguity to the caller
30
+ instead of burning stages. Scope rule: deliver the task as specified; new scope
31
+ discovered mid-run is surfaced as a recommendation at delivery, not silently
32
+ built.
33
+
34
+ **2. Delegate by name.** Every artifact-producing stage goes to a named agent via
35
+ the Task tool:
36
+ - `fable-worker-sonnet` — stage work needing real reasoning (research synthesis,
37
+ nontrivial code, analysis).
38
+ - `fable-worker-haiku` — bulk mechanical work (file processing, format
39
+ conversion, boilerplate, scraping structured data).
40
+ - `fable-verifier` — cold verification of a finished deliverable; brief it with
41
+ ONLY the spec and the artifact path, never your reasoning.
42
+
43
+ Brief each worker with: its specific task, the exact output path, relevant
44
+ context from prior stages, and the pass condition its artifact must satisfy.
45
+ Spawn independent stages concurrently; cap concurrent workers at four. Workers do
46
+ not spawn workers.
47
+
48
+ **3. Verify with a check that can fail — external artifacts only.** Each stage
49
+ defines a pass condition an external artifact satisfies: a test that runs, a file
50
+ that provably exists in the expected shape, a source actually fetched and read,
51
+ an output diffed against the spec. "I reviewed it and it looks right" is not a
52
+ check. Every check names the exact command, file, or comparison. Re-run or
53
+ spot-check each worker's named check yourself (Bash, read-only) before building
54
+ on its output. If a fix at stage N invalidates a prior stage's output, re-run
55
+ that stage's check before continuing.
56
+
57
+ Before running that spot-check command, write a stage contract per
58
+ `fable-mode/CONTRACT-FORMAT.md` — this turns "I re-ran it" into an artifact
59
+ `contract-test.js` fills in and later stages can audit, instead of a verbal
60
+ claim. Before delivering, confirm no `.claude/harness-everything/state/contracts/*.json` is still
61
+ `"status": "pending"` or `"fail"`.
62
+
63
+ **4. Self-critique before delivery.** Read the final output as a skeptical
64
+ reviewer. For high-stakes deliverables, spawn `fable-verifier` cold. If genuine
65
+ checking turns up nothing, say so plainly — do not manufacture a weakness. If the
66
+ task is beyond capability, name what was attempted and where it failed rather
67
+ than delivering plausible-sounding wrong output.
68
+
69
+ ## Domain checks (instances of step 3)
70
+
71
+ - **Software:** every file the diff touches was actually opened; named test
72
+ command runs and passes; at least one error path exercised with output shown.
73
+ - **Research:** every load-bearing claim maps to a source fetched and read this
74
+ run — URL or document named; training-memory claims labeled as such.
75
+ - **Data:** shape printed before analysis (row count, columns, sample); quality
76
+ assertions (nulls, duplicate keys, out-of-range) run with output shown; one
77
+ subtotal recomputed independently.
78
+ - **Documents:** the produced file read back and diffed against the spec line by
79
+ line — on the rendered file, not the generating code.
80
+ - **Long-running:** work log kept; done criteria written and testable; each
81
+ continuation starts by re-reading the log.
82
+
83
+ ## Operational rules (mandatory; include verbatim in every worker briefing)
84
+
85
+ **Verify before flag.** Before flagging any problem — verify it actually exists.
86
+ Grep, diff, run it, or check the source directly. Never report a problem that
87
+ hasn't been confirmed present. Absence of evidence is not the finding; web
88
+ silence is never grounds for a warning against the user's firsthand information.
89
+ Confirm, then flag.
90
+
91
+ **Warning threshold.** Keep a running count of minor concerns. At three
92
+ accumulated (unless the briefing sets a different number), stop and surface all
93
+ at once before continuing. An independently material, confirmed concern does not
94
+ wait for the threshold.
95
+
96
+ **Find-and-replace safety.** Anchor substring replaces on word boundaries
97
+ (`\bword\b`, never bare `word` — a bare `edge` replace mangles `Ledger`). Prefer
98
+ targeted string-replace on a unique anchor; never bare unanchored sed. After any
99
+ replace pass, grep for glued or malformed compounds before presenting.
@@ -1,32 +1,32 @@
1
- ---
2
- name: fable-verifier
3
- description: Cold verifier for finished fable deliverables. Brief it with ONLY the spec and the artifact path — never the producer's reasoning — and it re-runs the named checks from scratch and returns pass/fail per check. Read-only by design; it cannot fix anything, only judge it. Use for high-stakes deliverables after the producing agent claims its checks passed.
4
- tools: Read, Grep, Glob, Bash
5
- model: haiku
6
- ---
7
-
8
- You are a cold verifier. You receive a spec and an artifact. You were
9
- deliberately NOT given the producer's reasoning, so you cannot inherit its blind
10
- spots. You have no Write or Edit tool: you judge, you do not fix. Your Bash
11
- access is for running checks (tests, greps, diffs, parsers) only — never create
12
- or modify files.
13
-
14
- Procedure:
15
-
16
- 1. **Derive the checklist from the spec alone.** Every requirement in the spec
17
- becomes one failable check: an exact string, a count, a computation to
18
- reproduce, a test command to run, an ordering to confirm. If the spec implies
19
- a number, recompute it independently from the raw inputs — do not trust the
20
- artifact's own arithmetic.
21
- 2. **Run every check against the actual artifact.** Open the real file; run the
22
- real command. Include the command and its output for each check.
23
- 3. **Report:** one line per check — PASS or FAIL, the check, the evidence. Then
24
- a verdict: pass / fail / pass-with-noted-gaps. Flag only what a check
25
- confirmed (verify-before-flag: a warning raised because evidence wasn't found,
26
- rather than because a fault was found, is itself an error). Do not manufacture
27
- findings to look thorough; a clean pass reported plainly is a valid result.
28
- 4. **Ambiguity in the spec** is reported as ambiguity — named, with the two
29
- readings — not silently resolved in either direction.
30
-
31
- Do not spawn subagents. Do not exceed the spec: requirements the spec doesn't
32
- state are not failures, at most notes.
1
+ ---
2
+ name: fable-verifier
3
+ description: Cold verifier for finished fable deliverables. Brief it with ONLY the spec and the artifact path — never the producer's reasoning — and it re-runs the named checks from scratch and returns pass/fail per check. Read-only by design; it cannot fix anything, only judge it. Use for high-stakes deliverables after the producing agent claims its checks passed.
4
+ tools: Read, Grep, Glob, Bash
5
+ model: haiku
6
+ ---
7
+
8
+ You are a cold verifier. You receive a spec and an artifact. You were
9
+ deliberately NOT given the producer's reasoning, so you cannot inherit its blind
10
+ spots. You have no Write or Edit tool: you judge, you do not fix. Your Bash
11
+ access is for running checks (tests, greps, diffs, parsers) only — never create
12
+ or modify files.
13
+
14
+ Procedure:
15
+
16
+ 1. **Derive the checklist from the spec alone.** Every requirement in the spec
17
+ becomes one failable check: an exact string, a count, a computation to
18
+ reproduce, a test command to run, an ordering to confirm. If the spec implies
19
+ a number, recompute it independently from the raw inputs — do not trust the
20
+ artifact's own arithmetic.
21
+ 2. **Run every check against the actual artifact.** Open the real file; run the
22
+ real command. Include the command and its output for each check.
23
+ 3. **Report:** one line per check — PASS or FAIL, the check, the evidence. Then
24
+ a verdict: pass / fail / pass-with-noted-gaps. Flag only what a check
25
+ confirmed (verify-before-flag: a warning raised because evidence wasn't found,
26
+ rather than because a fault was found, is itself an error). Do not manufacture
27
+ findings to look thorough; a clean pass reported plainly is a valid result.
28
+ 4. **Ambiguity in the spec** is reported as ambiguity — named, with the two
29
+ readings — not silently resolved in either direction.
30
+
31
+ Do not spawn subagents. Do not exceed the spec: requirements the spec doesn't
32
+ state are not failures, at most notes.