simt-dev 0.7.1__tar.gz → 0.8.0__tar.gz

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 (416) hide show
  1. {simt_dev-0.7.1 → simt_dev-0.8.0}/CHANGELOG.md +36 -1
  2. {simt_dev-0.7.1 → simt_dev-0.8.0}/PKG-INFO +170 -81
  3. {simt_dev-0.7.1 → simt_dev-0.8.0}/README.md +169 -80
  4. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-014-workspace-is-configuration.md +1 -1
  5. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-025-a-baseline-is-a-region-in-a-file-the-repo-owns.md +1 -1
  6. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-026-a-config-without-a-region-is-a-file-the-repo-owns.md +1 -1
  7. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-027-the-one-gitattributes-line-that-is-neither-dangerous-nor-empty.md +1 -1
  8. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-028-a-base-file-is-a-floor-so-the-disagreement-it-cannot-repair-becomes-a-check.md +1 -1
  9. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-029-the-pins-a-repository-declares-are-its-own.md +1 -1
  10. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-030-what-a-plan-does-not-ship-is-a-decision-with-a-record.md +1 -1
  11. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-048-a-baseline-carries-only-keys-a-reader-honours.md +1 -1
  12. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-082-the-tracker-override-is-a-manifest-key.md +1 -1
  13. simt_dev-0.8.0/docs/decisions/ADR-126-the-mcp-surface-stays-a-reader-so-there-is-no-write-path-to-build.md +68 -0
  14. simt_dev-0.8.0/docs/decisions/ADR-127-the-mcp-tool-list-is-written-by-hand-and-roots-is-not-asked-for.md +65 -0
  15. simt_dev-0.8.0/docs/decisions/ADR-128-a-research-plan-is-a-plan-and-the-tracker-reads-it.md +42 -0
  16. simt_dev-0.8.0/ecosystems/bun.json +6 -0
  17. simt_dev-0.8.0/ecosystems/cargo.json +25 -0
  18. simt_dev-0.8.0/ecosystems/composer.json +6 -0
  19. simt_dev-0.8.0/ecosystems/dart.json +24 -0
  20. simt_dev-0.8.0/ecosystems/deno.json +21 -0
  21. simt_dev-0.8.0/ecosystems/devcontainers.json +6 -0
  22. simt_dev-0.8.0/ecosystems/docker-compose.json +6 -0
  23. simt_dev-0.8.0/ecosystems/docker.json +6 -0
  24. simt_dev-0.8.0/ecosystems/dotnet.json +25 -0
  25. simt_dev-0.8.0/ecosystems/elixir.json +23 -0
  26. simt_dev-0.8.0/ecosystems/gitsubmodule.json +6 -0
  27. simt_dev-0.8.0/ecosystems/go.json +25 -0
  28. simt_dev-0.8.0/ecosystems/gradle.json +13 -0
  29. simt_dev-0.8.0/ecosystems/maven.json +23 -0
  30. simt_dev-0.8.0/ecosystems/node.json +25 -0
  31. simt_dev-0.8.0/ecosystems/python.json +20 -0
  32. simt_dev-0.8.0/ecosystems/ruby.json +23 -0
  33. simt_dev-0.8.0/ecosystems/swift.json +25 -0
  34. simt_dev-0.8.0/ecosystems/terraform.json +6 -0
  35. simt_dev-0.8.0/ecosystems/uv.json +6 -0
  36. simt_dev-0.8.0/harnesses/antigravity.json +162 -0
  37. simt_dev-0.8.0/harnesses/claude.json +206 -0
  38. simt_dev-0.8.0/harnesses/codex.json +136 -0
  39. simt_dev-0.8.0/harnesses/copilot.json +88 -0
  40. simt_dev-0.8.0/harnesses/cursor.json +140 -0
  41. simt_dev-0.8.0/harnesses/deepseek.json +99 -0
  42. simt_dev-0.8.0/harnesses/gemini.json +122 -0
  43. simt_dev-0.8.0/harnesses/opencode.json +173 -0
  44. {simt_dev-0.7.1 → simt_dev-0.8.0}/package.json +3 -1
  45. {simt_dev-0.7.1 → simt_dev-0.8.0}/pyproject.toml +4 -0
  46. {simt_dev-0.7.1 → simt_dev-0.8.0}/rules/mdc/intake-questions.mdc +8 -0
  47. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/advice/advice.mjs +3 -2
  48. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/agenthooks/render.mjs +86 -180
  49. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/agents/render.mjs +15 -18
  50. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/api.mjs +7 -5
  51. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/argv.mjs +19 -0
  52. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/bench/ablate.mjs +3 -4
  53. simt_dev-0.8.0/src/bench/adapters.json +207 -0
  54. simt_dev-0.8.0/src/bench/adapters.mjs +466 -0
  55. simt_dev-0.8.0/src/bench/arms.mjs +333 -0
  56. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/bench/grade.mjs +12 -26
  57. simt_dev-0.8.0/src/bench/graders.mjs +42 -0
  58. simt_dev-0.8.0/src/bench/mine.mjs +504 -0
  59. simt_dev-0.8.0/src/bench/probe-ledger.mjs +149 -0
  60. simt_dev-0.7.1/src/bench/probes.mjs → simt_dev-0.8.0/src/bench/probes.catalog.mjs +7 -473
  61. simt_dev-0.8.0/src/bench/probes.mjs +362 -0
  62. simt_dev-0.8.0/src/bench/render.mjs +111 -0
  63. simt_dev-0.8.0/src/bench/report.mjs +218 -0
  64. simt_dev-0.8.0/src/bench/run.mjs +418 -0
  65. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/bench/variants.mjs +4 -5
  66. simt_dev-0.8.0/src/bench/workspace.mjs +160 -0
  67. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/brief/assemble.mjs +11 -13
  68. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/ci/dependabot.mjs +25 -55
  69. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/commands/agent.mjs +1 -9
  70. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/commands/agenthook.mjs +66 -35
  71. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/commands/bench.mjs +2 -2
  72. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/commands/ci.mjs +11 -13
  73. simt_dev-0.8.0/src/commands/docs.mjs +88 -0
  74. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/commands/gate.mjs +10 -13
  75. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/commands/harness.mjs +3 -3
  76. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/commands/help.mjs +44 -3
  77. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/commands/hooks.mjs +20 -20
  78. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/commands/ignore.mjs +11 -7
  79. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/commands/impact.mjs +4 -8
  80. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/commands/index.mjs +49 -9
  81. simt_dev-0.8.0/src/commands/init-scan.mjs +90 -0
  82. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/commands/init.mjs +122 -104
  83. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/commands/lease.mjs +67 -18
  84. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/commands/map.mjs +10 -5
  85. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/commands/mcp.mjs +2 -17
  86. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/commands/repoindex.mjs +8 -8
  87. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/commands/rules.mjs +8 -4
  88. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/commands/shared.mjs +12 -16
  89. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/commands/skills.mjs +5 -6
  90. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/commands/skillscompile.mjs +3 -3
  91. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/commands/skillsinstall.mjs +5 -4
  92. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/commands/slice.mjs +199 -64
  93. simt_dev-0.8.0/src/commands/spec.mjs +167 -0
  94. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/commands/status.mjs +24 -12
  95. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/commands/sync.mjs +14 -14
  96. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/commands/tests.mjs +12 -12
  97. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/commands/tokens.mjs +19 -24
  98. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/commands/upgrade.mjs +8 -4
  99. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/commands/why.mjs +6 -13
  100. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/compare/hooksstate.mjs +2 -6
  101. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/compare/learn.mjs +3 -1
  102. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/decisions/index.mjs +3 -2
  103. simt_dev-0.8.0/src/docs/commands.mjs +65 -0
  104. simt_dev-0.8.0/src/ecosystem/records.mjs +219 -0
  105. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/explain.mjs +31 -0
  106. simt_dev-0.8.0/src/gates/index.mjs +385 -0
  107. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/graph/compile.mjs +8 -4
  108. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/graph/load.mjs +2 -1
  109. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/graph/spec.mjs +10 -8
  110. simt_dev-0.8.0/src/harness/records.mjs +143 -0
  111. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/hooks/capability.mjs +5 -3
  112. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/hooks/dispatcher.mjs +26 -32
  113. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/hooks/gates.mjs +12 -2
  114. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/hooks/resolve.mjs +2 -7
  115. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/hooks/where.mjs +2 -7
  116. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/identity.mjs +2 -11
  117. simt_dev-0.8.0/src/index/coverage.mjs +58 -0
  118. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/index/extract.mjs +6 -16
  119. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/index/gate.mjs +1 -1
  120. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/index/govern.mjs +26 -9
  121. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/index/impact.mjs +4 -8
  122. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/index/map.mjs +14 -15
  123. simt_dev-0.8.0/src/index/open.mjs +173 -0
  124. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/index/persist.mjs +224 -57
  125. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/index/store.mjs +82 -39
  126. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/index/tests.mjs +2 -6
  127. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/journal.mjs +16 -11
  128. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/kernel/card.mjs +37 -63
  129. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/kernel/checks.mjs +4 -10
  130. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/lease.mjs +102 -7
  131. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/ledger/index.mjs +124 -17
  132. simt_dev-0.8.0/src/mcp/paginate.mjs +33 -0
  133. simt_dev-0.8.0/src/mcp/schemas.mjs +512 -0
  134. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/mcp/server.mjs +49 -9
  135. simt_dev-0.8.0/src/mcp/tools-facts.mjs +326 -0
  136. simt_dev-0.8.0/src/mcp/tools-read.mjs +221 -0
  137. simt_dev-0.8.0/src/mcp/tools.mjs +31 -0
  138. {simt_dev-0.7.1/src/bench → simt_dev-0.8.0/src/measure}/corpus.mjs +1 -1
  139. simt_dev-0.8.0/src/measure/metrics.mjs +236 -0
  140. simt_dev-0.8.0/src/measure/records.mjs +211 -0
  141. simt_dev-0.8.0/src/measure/stats.mjs +538 -0
  142. simt_dev-0.8.0/src/measure/task-schema.mjs +125 -0
  143. simt_dev-0.8.0/src/measure/tasks.mjs +69 -0
  144. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/memory/decide.mjs +6 -15
  145. simt_dev-0.8.0/src/memory/lesson-text.mjs +61 -0
  146. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/memory/lessons.mjs +29 -82
  147. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/name.mjs +7 -0
  148. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/output/index.mjs +122 -31
  149. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/packs/manage.mjs +15 -9
  150. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/plan/index.mjs +1 -1
  151. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/plugins.mjs +22 -16
  152. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/prbody.mjs +7 -11
  153. simt_dev-0.8.0/src/projection/loaders.mjs +118 -0
  154. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/projection/manifest.mjs +10 -435
  155. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/projection/mdc.mjs +7 -8
  156. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/projection/project.mjs +126 -221
  157. simt_dev-0.8.0/src/projection/region.mjs +561 -0
  158. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/projection/rules.mjs +16 -547
  159. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/projection/surfaces.mjs +43 -210
  160. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/projection/targets.mjs +5 -5
  161. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/repo-root.mjs +13 -1
  162. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/resolve/eval.mjs +2 -1
  163. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/resolve/fingerprint.mjs +0 -7
  164. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/resolve/resolve.mjs +1 -41
  165. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/review/critic.mjs +8 -12
  166. simt_dev-0.8.0/src/run.mjs +98 -0
  167. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/secrets.mjs +14 -22
  168. simt_dev-0.8.0/src/state/events.mjs +129 -0
  169. simt_dev-0.8.0/src/status-snapshot.mjs +233 -0
  170. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/status.mjs +2 -6
  171. simt_dev-0.8.0/src/sys/git.mjs +82 -0
  172. simt_dev-0.7.1/src/bench/process.mjs → simt_dev-0.8.0/src/sys/proc.mjs +28 -5
  173. simt_dev-0.8.0/src/testing/parsers.mjs +265 -0
  174. simt_dev-0.8.0/src/testing/patches.mjs +23 -0
  175. simt_dev-0.8.0/src/testing/paths.mjs +49 -0
  176. simt_dev-0.8.0/src/testing/runners.mjs +186 -0
  177. simt_dev-0.8.0/src/testing/vault.mjs +68 -0
  178. simt_dev-0.8.0/src/text/frontmatter.mjs +49 -0
  179. simt_dev-0.8.0/src/text/tokens.mjs +52 -0
  180. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/toolwords.mjs +1 -1
  181. simt_dev-0.8.0/src/util/fs.mjs +20 -0
  182. simt_dev-0.8.0/src/util/sort.mjs +12 -0
  183. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/workspace.mjs +3 -1
  184. simt_dev-0.8.0/src/write/plan.mjs +82 -0
  185. {simt_dev-0.7.1 → simt_dev-0.8.0}/templates/plan/tracker.json +1 -0
  186. simt_dev-0.7.1/docs/decisions/ADR-033-three-plan-rows-closed-by-decision-not-by-authoring.md +0 -82
  187. simt_dev-0.7.1/docs/decisions/ADR-102-the-two-queued-review-rows-are-closed-by-ruling.md +0 -49
  188. simt_dev-0.7.1/src/bench/adapters.json +0 -165
  189. simt_dev-0.7.1/src/bench/mine.mjs +0 -1022
  190. simt_dev-0.7.1/src/bench/report.mjs +0 -1073
  191. simt_dev-0.7.1/src/bench/run.mjs +0 -1135
  192. simt_dev-0.7.1/src/bench/tasks.mjs +0 -36
  193. simt_dev-0.7.1/src/commands/spec.mjs +0 -151
  194. simt_dev-0.7.1/src/mcp/tools.mjs +0 -1032
  195. simt_dev-0.7.1/src/projection/loaders.mjs +0 -803
  196. {simt_dev-0.7.1 → simt_dev-0.8.0}/.gitignore +0 -0
  197. {simt_dev-0.7.1 → simt_dev-0.8.0}/LICENSE +0 -0
  198. {simt_dev-0.7.1 → simt_dev-0.8.0}/agents/simt-agent.md +0 -0
  199. {simt_dev-0.7.1 → simt_dev-0.8.0}/bin/simt.mjs +0 -0
  200. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-001-push-requires-approval.md +0 -0
  201. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-002-refactor-blast-radius.md +0 -0
  202. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-003-test-breadth.md +0 -0
  203. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-004-hook-owns-format.md +0 -0
  204. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-005-file-length.md +0 -0
  205. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-006-coverage-bar.md +0 -0
  206. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-007-section-skeleton.md +0 -0
  207. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-008-verdict-vocabulary.md +0 -0
  208. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-009-skill-layout.md +0 -0
  209. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-010-runner-invocation.md +0 -0
  210. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-011-windows-support.md +0 -0
  211. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-012-drop-windows-support.md +0 -0
  212. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-013-genericity-by-facts-and-local-profiles.md +0 -0
  213. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-015-a-source-is-content-not-a-location.md +0 -0
  214. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-016-a-divergent-rule-is-retired-not-merged.md +0 -0
  215. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-017-a-declared-gate-must-be-runnable.md +0 -0
  216. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-018-an-unset-hooks-path-is-not-an-absent-hook.md +0 -0
  217. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-019-a-declared-command-is-the-runner.md +0 -0
  218. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-020-a-rule-is-written-per-surface-and-pointed-not-copied.md +0 -0
  219. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-021-one-surface-per-repo.md +0 -0
  220. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-022-a-key-simt-dev-reads-is-prefixed.md +0 -0
  221. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-023-the-gate-ships-as-a-file-the-repo-owns.md +0 -0
  222. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-024-simt-dev-overwrites-its-own-gate-file.md +0 -0
  223. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-031-the-suite-stages-the-environment-it-needs.md +0 -0
  224. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-032-provenance-is-a-content-digest-not-a-commit.md +0 -0
  225. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-034-a-staged-tool-refuses-a-partially-staged-file.md +0 -0
  226. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-035-one-write-decision-and-one-json-document.md +0 -0
  227. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-036-a-writer-that-writes-says-so-and-the-instructions-naming-it-move-with-it.md +0 -0
  228. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-037-unchanged-means-writing-would-not-change-a-byte.md +0 -0
  229. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-038-the-gate-filter-belongs-to-every-manifest-writer.md +0 -0
  230. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-039-a-ci-step-runs-a-form-that-can-fail.md +0 -0
  231. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-040-the-last-writer-that-wrote-by-default-was-not-the-one-named.md +0 -0
  232. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-041-the-suite-installs-the-package-in-order-to-test-it.md +0 -0
  233. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-042-a-declared-glob-must-match-a-path-built-from-it.md +0 -0
  234. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-043-a-keyword-is-a-phrase-and-two-letters-is-a-word.md +0 -0
  235. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-044-compatibility-is-not-evidence.md +0 -0
  236. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-045-a-dashboard-that-counts-a-defect.md +0 -0
  237. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-046-one-rule-one-copy.md +0 -0
  238. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-047-a-profile-selects-on-what-a-repository-runs-on.md +0 -0
  239. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-049-a-ruling-that-a-later-record-moved-says-so-where-it-is-printed.md +0 -0
  240. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-050-a-byte-count-is-not-a-region-and-updated-is-not-a-change-of-rules.md +0 -0
  241. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-051-a-pointer-is-the-readers-only-route-so-it-is-not-a-convenience.md +0 -0
  242. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-052-a-dependency-is-counted-against-the-budget-and-there-is-one-budget.md +0 -0
  243. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-053-the-node-floor-is-22-20-0.md +0 -0
  244. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-054-the-digest-covers-every-byte-that-leaves-the-package.md +0 -0
  245. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-055-a-status-line-travels-so-it-may-not-name-a-location.md +0 -0
  246. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-056-three-names-one-of-which-is-cheap-to-move.md +0 -0
  247. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-057-an-identity-is-per-developer-and-a-repository-does-not-own-it.md +0 -0
  248. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-058-one-tool-three-channels-and-the-order-is-forced.md +0 -0
  249. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-059-the-version-a-repository-runs-is-the-one-it-pinned.md +0 -0
  250. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-060-a-repository-with-nothing-to-run-is-adopted-and-says-so.md +0 -0
  251. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-061-the-skill-registry-is-workspace-data.md +0 -0
  252. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-062-a-fresh-adoption-seeds-the-gates-it-can-run.md +0 -0
  253. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-063-the-adoption-escape-hatch-is-opt-in.md +0 -0
  254. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-064-the-context-meter-counts-what-the-tool-wrote.md +0 -0
  255. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-065-a-pack-is-one-shared-rule-set-pinned-by-digest.md +0 -0
  256. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-066-a-monorepo-projects-once-per-package.md +0 -0
  257. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-067-which-harnesses-read-agents-md-is-a-column.md +0 -0
  258. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-068-the-mcp-revision-list-cites-what-was-read.md +0 -0
  259. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-069-the-conformance-lint-checks-the-published-specification.md +0 -0
  260. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-070-the-json-payload-carries-its-own-version.md +0 -0
  261. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-071-a-rule-that-can-be-narrowed-is-written-narrow.md +0 -0
  262. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-072-the-budget-is-a-declaration-beside-the-gates.md +0 -0
  263. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-073-a-kernel-is-a-smaller-projection-the-repository-asks-for.md +0 -0
  264. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-074-a-rule-and-a-decision-are-readable-by-uri.md +0 -0
  265. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-075-nothing-leaves-the-machine.md +0 -0
  266. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-076-a-change-to-what-agents-read-is-measured.md +0 -0
  267. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-077-the-command-card-leads-the-region-and-reads-committed-evidence.md +0 -0
  268. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-078-a-line-the-repository-already-proves-does-not-ship.md +0 -0
  269. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-079-the-rules-are-enforced-at-the-tool-call-from-one-policy-table.md +0 -0
  270. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-080-the-tools-own-names-are-not-repositories-and-neither-reader-decides-by-shape.md +0 -0
  271. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-081-a-tracker-is-read-through-the-repositorys-template.md +0 -0
  272. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-083-a-budget-is-met-by-cutting-the-kernel-and-hard-is-the-floor.md +0 -0
  273. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-084-a-workspace-carries-its-repeated-rules-once.md +0 -0
  274. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-085-the-region-ends-with-the-names-it-kept-out.md +0 -0
  275. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-086-the-stable-prefix-comes-first-and-the-lock-records-both-digests.md +0 -0
  276. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-087-a-run-is-evidence-for-one-tree.md +0 -0
  277. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-088-a-marked-line-is-enforced-by-a-checker.md +0 -0
  278. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-089-the-local-index-is-a-cache-of-git-blobs.md +0 -0
  279. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-090-an-optional-adapter-is-off-until-named.md +0 -0
  280. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-091-the-map-ranks-files-a-task-mentions.md +0 -0
  281. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-092-tests-are-imports-conventions-and-coverage.md +0 -0
  282. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-093-why-names-what-governs-a-file.md +0 -0
  283. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-094-a-change-runs-the-tests-that-import-it.md +0 -0
  284. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-095-gate-output-keeps-the-failures.md +0 -0
  285. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-096-impact-names-who-a-change-reaches.md +0 -0
  286. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-097-the-channels-publish-by-hand-and-the-version-rides-in-as-an-input.md +0 -0
  287. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-098-the-fourth-channel-is-one-file-and-it-needs-no-toolchain.md +0 -0
  288. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-099-the-release-verifies-served-bytes-and-the-formula-mirrors-them.md +0 -0
  289. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-100-a-staged-diff-is-the-last-gate-before-history-and-it-runs-inside-the-tool.md +0 -0
  290. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-101-a-file-lease-belongs-to-one-session-and-the-pre-edit-hook-refuses-another.md +0 -0
  291. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-103-co-projected-duplicates-merge-down.md +0 -0
  292. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-104-the-pre-tool-use-policy-reads-the-command-the-way-a-shell-reads-it.md +0 -0
  293. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-105-the-json-ceiling-shrinks-arrays-and-never-cuts-bytes.md +0 -0
  294. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-106-the-harness-hook-runs-through-a-repo-shim.md +0 -0
  295. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-107-an-install-can-name-one-harness-and-the-skipped-ones-are-named.md +0 -0
  296. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-108-an-adoption-builds-the-index-and-a-command-refreshes-it-on-read.md +0 -0
  297. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-109-simt-dev-is-its-own-consumer-and-the-guards-that-kept-it-from-being-one-are-retired.md +0 -0
  298. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-110-the-lock-file-follows-the-manifest-name-and-the-old-name-is-read-until-the-next-write.md +0 -0
  299. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-111-the-tool-ships-one-agent-rendered-per-harness-and-installs-it-with-init-and-a-command.md +0 -0
  300. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-112-the-registry-is-what-simt-dev-ships-and-a-repo-owns-its-own-skills.md +0 -0
  301. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-113-a-pre-push-that-carries-only-documentation-skips-the-test-gate-and-says-so.md +0 -0
  302. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-114-the-bench-pairs-at-the-task-level-a-missing-cost-is-not-zero-and-an-unasked-cross-group-compare-is-refused.md +0 -0
  303. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-115-the-index-stamps-its-schema-version-migrates-older-databases-in-place-and-serves-newer-ones-from-a-sidecar.md +0 -0
  304. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-116-rust-support-reaches-the-example-path-the-indent-and-the-bench-runner.md +0 -0
  305. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-117-the-darwin-release-builds-on-supported-macos-15-runners-and-a-re-run-is-idempotent.md +0 -0
  306. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-118-the-bench-corpus-is-keyed-on-history-is-append-only-and-is-portable-as-a-sealed-document.md +0 -0
  307. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-119-the-environment-variable-points-into-a-workspace-the-repo-declared.md +0 -0
  308. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-120-a-pre-push-whose-tree-is-already-proven-green-skips-the-test-gate-on-that-evidence.md +0 -0
  309. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-122-the-shims-move-into-the-state-directory-and-the-legacy-directory-removes-itself.md +0 -0
  310. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-123-a-surplus-positional-is-not-refused-because-arity-is-not-in-the-source.md +0 -0
  311. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-124-the-manifest-has-a-schema-in-the-tool-and-its-unknown-keys-stay-the-repositorys.md +0 -0
  312. {simt_dev-0.7.1 → simt_dev-0.8.0}/docs/decisions/ADR-125-a-shared-context-belongs-to-a-read-and-a-writer-reads-directly.md +0 -0
  313. {simt_dev-0.7.1 → simt_dev-0.8.0}/python/simt_dev/__init__.py +0 -0
  314. {simt_dev-0.7.1 → simt_dev-0.8.0}/python/simt_dev/cli.py +0 -0
  315. {simt_dev-0.7.1 → simt_dev-0.8.0}/rules/core.md +0 -0
  316. {simt_dev-0.7.1 → simt_dev-0.8.0}/rules/mdc/preview-postflight.mdc +0 -0
  317. {simt_dev-0.7.1 → simt_dev-0.8.0}/rules/mdc/slice-commit.mdc +0 -0
  318. {simt_dev-0.7.1 → simt_dev-0.8.0}/rules/mdc/test-gate.mdc +0 -0
  319. {simt_dev-0.7.1 → simt_dev-0.8.0}/rules/stacks/android.md +0 -0
  320. {simt_dev-0.7.1 → simt_dev-0.8.0}/rules/stacks/cloudflare-workers.md +0 -0
  321. {simt_dev-0.7.1 → simt_dev-0.8.0}/rules/stacks/connectiq.md +0 -0
  322. {simt_dev-0.7.1 → simt_dev-0.8.0}/rules/stacks/container.md +0 -0
  323. {simt_dev-0.7.1 → simt_dev-0.8.0}/rules/stacks/dart.md +0 -0
  324. {simt_dev-0.7.1 → simt_dev-0.8.0}/rules/stacks/deno.md +0 -0
  325. {simt_dev-0.7.1 → simt_dev-0.8.0}/rules/stacks/dotnet.md +0 -0
  326. {simt_dev-0.7.1 → simt_dev-0.8.0}/rules/stacks/elixir.md +0 -0
  327. {simt_dev-0.7.1 → simt_dev-0.8.0}/rules/stacks/go.md +0 -0
  328. {simt_dev-0.7.1 → simt_dev-0.8.0}/rules/stacks/jvm.md +0 -0
  329. {simt_dev-0.7.1 → simt_dev-0.8.0}/rules/stacks/node.md +0 -0
  330. {simt_dev-0.7.1 → simt_dev-0.8.0}/rules/stacks/python.md +0 -0
  331. {simt_dev-0.7.1 → simt_dev-0.8.0}/rules/stacks/react-native.md +0 -0
  332. {simt_dev-0.7.1 → simt_dev-0.8.0}/rules/stacks/react-web.md +0 -0
  333. {simt_dev-0.7.1 → simt_dev-0.8.0}/rules/stacks/ruby.md +0 -0
  334. {simt_dev-0.7.1 → simt_dev-0.8.0}/rules/stacks/rust.md +0 -0
  335. {simt_dev-0.7.1 → simt_dev-0.8.0}/rules/stacks/swift.md +0 -0
  336. {simt_dev-0.7.1 → simt_dev-0.8.0}/rules/stacks/typescript.md +0 -0
  337. {simt_dev-0.7.1 → simt_dev-0.8.0}/rules/stacks/uv.md +0 -0
  338. {simt_dev-0.7.1 → simt_dev-0.8.0}/skills/simt-commands/SKILL.md +0 -0
  339. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/agenthooks/decide.mjs +0 -0
  340. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/agenthooks/opencode.mjs +0 -0
  341. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/agenthooks/policy.mjs +0 -0
  342. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/agenthooks/prompt.mjs +0 -0
  343. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/agenthooks/shell.mjs +0 -0
  344. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/agenthooks/shim.mjs +0 -0
  345. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/brief/kind.mjs +0 -0
  346. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/brief/packet.mjs +0 -0
  347. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/ci/workflow.mjs +0 -0
  348. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/cli.mjs +0 -0
  349. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/commands/brief.mjs +0 -0
  350. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/commands/compare.mjs +0 -0
  351. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/commands/completions.mjs +0 -0
  352. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/commands/decide.mjs +0 -0
  353. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/commands/distill.mjs +0 -0
  354. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/commands/doctor.mjs +0 -0
  355. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/commands/evidence.mjs +0 -0
  356. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/commands/explain.mjs +0 -0
  357. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/commands/graph.mjs +0 -0
  358. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/commands/lessons.mjs +0 -0
  359. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/commands/local.mjs +0 -0
  360. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/commands/pack.mjs +0 -0
  361. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/commands/plan.mjs +0 -0
  362. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/commands/plugin.mjs +0 -0
  363. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/commands/prbody.mjs +0 -0
  364. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/commands/review.mjs +0 -0
  365. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/commands/undo.mjs +0 -0
  366. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/compare/discover.mjs +0 -0
  367. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/compare/parallel.mjs +0 -0
  368. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/compare/row.mjs +0 -0
  369. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/completions.mjs +0 -0
  370. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/context.mjs +0 -0
  371. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/decisions/dir.mjs +0 -0
  372. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/decisions/index-doc.mjs +0 -0
  373. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/diff.mjs +0 -0
  374. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/distill/distill.mjs +0 -0
  375. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/distill/engine.mjs +0 -0
  376. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/distribute/release.mjs +0 -0
  377. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/ecosystem/node-runner.mjs +0 -0
  378. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/federation/client.mjs +0 -0
  379. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/federation/config.mjs +0 -0
  380. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/federation/query.mjs +0 -0
  381. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/graph/speccheck.mjs +0 -0
  382. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/hooks/shim.mjs +0 -0
  383. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/ignore.mjs +0 -0
  384. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/index/compact.mjs +0 -0
  385. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/kernel/budget.mjs +0 -0
  386. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/kernel/inferability.mjs +0 -0
  387. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/kernel/variants.mjs +0 -0
  388. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/local/client.mjs +0 -0
  389. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/local/config.mjs +0 -0
  390. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/locate.mjs +0 -0
  391. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/manifest/schema.mjs +0 -0
  392. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/mcp/prompts.mjs +0 -0
  393. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/mcp/resources.mjs +0 -0
  394. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/mcp/schema.mjs +0 -0
  395. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/measure/context.mjs +0 -0
  396. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/measure/loaderView.mjs +0 -0
  397. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/measure/session.mjs +0 -0
  398. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/monorepo.mjs +0 -0
  399. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/node-version.mjs +0 -0
  400. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/package-version.mjs +0 -0
  401. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/packs.mjs +0 -0
  402. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/plan/template.mjs +0 -0
  403. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/projection/baselines.mjs +0 -0
  404. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/projection/conflicts.mjs +0 -0
  405. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/projection/disclosure.mjs +0 -0
  406. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/projection/lock.mjs +0 -0
  407. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/projection/markers.mjs +0 -0
  408. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/projection/shared.mjs +0 -0
  409. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/resolve/body.mjs +0 -0
  410. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/resolve/local.mjs +0 -0
  411. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/resolve/near.mjs +0 -0
  412. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/resolve/source.mjs +0 -0
  413. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/state.mjs +0 -0
  414. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/toolchain.mjs +0 -0
  415. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/tsconfig.mjs +0 -0
  416. {simt_dev-0.7.1 → simt_dev-0.8.0}/src/upgrade/plan.mjs +0 -0
@@ -4,7 +4,42 @@ All notable changes to this package are recorded here. The format follows
4
4
  [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and the project follows
5
5
  [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6
6
 
7
- ## [Unreleased]
7
+ ## [0.8.0] — 2026-11-01
8
+
9
+ ### Added
10
+
11
+ - Every writer runs through one plan/apply engine: `init`, `sync`, `ci`, `ignore`, `rules decisions`, `pack new`, `upgrade`, `hooks install`, `agent-hooks install` and the agent plan derive create/update/remove from the bytes, journal one set per run, and a rehearsal reports the plan and writes nothing.
12
+ - An append-only event log every store writes to (`.simt/local/events.jsonl`): journal commits and undos, gate runs, lease acquire/release and lesson captures all land in it; the ledger, lease and lessons files remain the projections readers already use.
13
+ - Lease schema v2: a claim names a resource (a file, or a directory and its subtree), its holder, and a fencing token that increments per acquisition, with renew and release; a v1 lease file is read as path resources rather than dropped.
14
+ - The MCP list methods answer one page and name the cursor for the next; a subscription request is refused with its reason, and a cancelled call is answered with its interruption. The surface stays a reader. — [ADR-126](docs/decisions/ADR-126-the-mcp-surface-stays-a-reader-so-there-is-no-write-path-to-build.md)
15
+ - Index storage v4: generic nodes and edges with ownership, an `openIndex()` API, and O(n) PageRank; one `coverage()` and one `governs()` sit behind every reader that answers from the index.
16
+ - The ledger gets a seeded private index, a tail read and a rotation.
17
+ - Ecosystem/language data records — runner, gates, card, test conventions, extraction, resolution — ship in every channel beside the harness records. — [ADR-013](docs/decisions/ADR-013-genericity-by-facts-and-local-profiles.md)
18
+ - The release process is a repo-local skill the tool recognises and injects when a release task is in play.
19
+ - Bare `simt status` is the repository snapshot — the last check, git hook routing, which harnesses decide tool calls, evidence for the tree on disk, active leases, tracker counts and the last journal set — while `--line` keeps its cached one line. Each slot is read through the module that owns it and carries its own error, so one unreadable file does not blank the answer.
20
+ - `simt explain` answers the five policy ids a denial names (`push`, `rewrite`, `hooks-disable`, `generated`, `lease`), so a refusal can say `run: simt explain push`.
21
+ - A spec row declares `aliases`, and an alias resolves to that row before the registry is consulted: `skills list`, `skills lint`, `skills select`, `harness cost`, `harness hook`, `harness install`, `harness plugin`, `plan start`, `plan finish` and `plan abandon` answer, and help keeps listing the path.
22
+ - The bench has one registry per seam — arms, adapters, task schema, records and graders — and a record written by an earlier version is read as written rather than migrated.
23
+ - Production reads test conventions without the bench: `src/testing/` and `src/measure/` are separable from it.
24
+
25
+ ### Changed
26
+
27
+ - `run(command, input)` answers with what the command produced — text, documents, notes, warnings, failure and exit code — instead of printing it, and one call carries one presentation state, not one per process.
28
+ - The harness facet data — the surfaces each harness loads, its pointer files, its loader chain, its hook dialect and payload keys, its plugin components — moves out of the engine modules into `harnesses/`: one JSON record per harness, shipped in the tarball, the wheel and the sdist alongside the rule bodies. The views read the record by id, so a new harness is a record, not a table edit across four modules. — [ADR-013](docs/decisions/ADR-013-genericity-by-facts-and-local-profiles.md)
29
+ - The git and process plumbing is one module: one runner behind identity, hooks, the store and `tracked()`, a bounded `spawnBounded`, and shared frontmatter and tokenizer helpers.
30
+ - `agent-hooks install` folds into `init`, and help flags the prerequisites a command needs.
31
+ - The plan tracker reads `docs/research`, and small work — fewer than three slices — skips the plan file.
32
+ - The README's command list renders from the spec table, so it cannot drift from the commands the binary dispatches.
33
+ - Bare `simt bench` summarises the vault (`bench report`) instead of mining into it: a reader who types a group name has asked a question, not given consent.
34
+ - The projection gate reads the plan the writer built instead of rebuilding it, and gate planning lives in `src/gates/index.mjs`, so the manifest module keeps only its writer. — [ADR-013](docs/decisions/ADR-013-genericity-by-facts-and-local-profiles.md)
35
+ - No source or test module is over 1,000 lines with one exclusion (the generated skill registry), and the ceiling's remaining long files — rules, MCP tools and schemas, the hooks tests, `init` — are split rather than excused.
36
+ - The tolerated-flag window moves to 0.9.0. It named 0.8.0, and closing it here would refuse flags that work: the spec has not yet declared every flag some command honours (`ci --dry-run` among them). A window that closes over an incomplete declaration list turns working invocations into usage errors, so it closes when the list is complete.
37
+
38
+ ### Fixed
39
+
40
+ - A v2 lease write keeps the flat aliases and caller fields a v1 reader expects.
41
+ - The lesson event is emitted where the record is written, so it lands in the event log.
42
+ - `simt status` no longer refuses a bare invocation: the answer it declined to give was five commands away.
8
43
 
9
44
  ## [0.7.1] — 2026-11-01
10
45
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: simt-dev
3
- Version: 0.7.1
3
+ Version: 0.8.0
4
4
  Summary: An intelligence amplifier for AI coding agents: rules and dual gates adopted by one command, plus local retrieval, task briefs, benches and repo memory — deterministic by default, with local-model adapters that propose and never select.
5
5
  Project-URL: Homepage, https://github.com/QuazarMedia/simt-dev
6
6
  Project-URL: Repository, https://github.com/QuazarMedia/simt-dev
@@ -121,87 +121,176 @@ truncated or substituted download never becomes the command.
121
121
 
122
122
  ## What `simt` does
123
123
 
124
+ <!-- simt:commands:begin -->
125
+ <!-- Rendered from the spec by `simt docs readme --yes`; do not edit by hand. -->
126
+
124
127
  ```sh
125
- # Adopt, inspect, and maintain a repository
126
- simt init # adopt or scaffold; prints a plan; --yes writes
127
- simt doctor [--fix] # stack, facts, evidence, and config health (--fix applies safe remedies, journaled)
128
- simt check [--frozen] # projection drift, manifest, lock, and declared checkers
129
- simt sync [--explain] --yes # regenerate the projection
130
- simt upgrade --yes # move every consumer in the workspace to this SHA
131
-
132
- # Orient on a task and query the local code and governance graph
133
- simt brief "<task>" # one <= 2 KB packet: kind, commands, files, tests, ADRs, skills, lessons
134
- simt index [--embed] # files, symbols, edges, FTS5 tokens (+ optional local embeddings)
135
- simt map --task "<task>" # hybrid BM25 + PageRank + resolver file ranking (outline|names|signatures)
136
- simt impact <file|symbol> # importers, covering tests, governance, and cross-repo consumers
137
- simt tests <path> [--cochange] # tests covering a file via imports, naming, coverage, or co-change
138
- simt gate --changed # run only the tests the current diff reaches, with compacted output
139
- simt why [path] # ADRs, rules, skills, gates, and lessons governing a path
140
-
141
- # Rules, skills, decisions, and lessons
142
- simt rules list [--root <path>] # rule catalogue and what applies to a repository
143
- simt rules show <id> # read one rule body (including rules deferred in kernel mode)
144
- simt rules why <id|ADR-NNN> [--all] # the decision that settled a rule, and whether it still stands
145
- simt explain <CODE> [--json] # what a check finding means, why it is reported, and how to fix it
146
- simt decide "<title>" --yes # scaffold the next ADR with structured simt-affects / simt-supersedes
147
- simt lessons list # fail-to-fix, revert, review-block, and hook-denial candidates
148
- simt lessons review <id> --yes # promote a candidate to docs/lessons/NNNN-<slug>.md
149
- simt skills index # tier-0 catalogue: every skill, one line each
150
- simt skills brief --task "<task>" # tier-1 ranked skill selection within budget
151
- simt skills show <name> # tier-2 skill body on demand (respects --max-bytes)
152
- simt skills why <name> # the signal chain that selected or rejected a skill
153
- simt skills find <query> # search skills by capability and keyword
154
- simt skills install <name> --yes # pin a skill into the repository
155
- simt skills compile [<name>] # compile to Agent Skills layout, split > 5,000-token bodies, report triggers
156
- simt skills eval [corpus] # measure resolver precision and recall against a gold corpus
157
- simt graph lint [--spec agentskills]# verify the skill registry against skills on disk
158
-
159
- # Dual gates (git time and agent tool-call time) and execution evidence
160
- simt hooks install --yes # install the shared POSIX git hook dispatcher
161
- simt hooks status # what each git event routes to, and whether it is wired
162
- simt hooks run <event> # run pre-commit or pre-push gates now, as git would
163
- simt agent-hooks install --yes # write pre/post-tool and prompt-submit hooks for active harnesses
164
- simt agent-hooks status # what each harness will run, and whether Codex trusts it
165
- simt agent-hook <event> --harness # evaluate pre-tool-use, post-tool-use, or prompt-submit
166
- simt evidence # gate and test runs recorded against the current git tree
167
- simt evidence check <msg-file> # verify a commit message does not claim unrecorded passing runs
168
- simt pr-body [--base <ref>] # a PR body: the evidence block for this tree, changed
169
- # decisions, gate state, and residual risk in ADR-008 vocabulary
170
-
171
- # Plans, context metering, workspace learning, benchmarks, local models, and MCP
172
- simt plan status # count queued, in-progress, complete, and accepted tracker rows
173
- simt plan next [<id>] # print the next ready slice section (~1 KB)
174
- simt plan done <id> [<sha>] --yes # mark a tracker row complete with its commit SHA and test command
175
- simt status --line # one-line gate state from the last check, for prompts (< 50 ms)
176
- simt undo --yes # restore the last journaled set of writes, if untouched since
177
- simt slice start <id> --yes # a worktree on branch slice/<id> with the brief preloaded; row In progress
178
- simt slice finish <id> --yes # run the pre-commit gates, commit a Conventional subject from the
179
- # row's title, and record the SHA and --test command on the row
180
- simt lease [<paths>] --session # claim files for this session (--ttl, default 1h) or list claims;
181
- # the pre-edit hook refuses another session's edit until the TTL
182
- simt tokens [--repos] [--session] # measure bytes loaded at session start or split a transcript
183
- simt harness detect [--user] # detect configured harnesses at repo and user level
184
- simt harness loaders [--table] # what each harness loads, in what order, and where its cap truncates
185
- simt shared plan # rules repeated across a workspace and the bytes saved by sharing
186
- simt shared install --yes # write shared rules once at user level and record the repo delta
187
- simt compare # workspace matrix, violated rules, noisy/slow gates, and ADR drafts
188
- simt local doctor [--allow-remote] # probe configured OpenAI-compatible local chat and embed endpoints
189
- simt bench mine --yes # mine verified fail-to-pass tasks from git history into the vault
190
- simt bench run --yes # evaluate arms (bare, current, kernel, brief) in isolated exports
191
- simt bench report [--compare a b] # resolved rate, quality, cost, CPI, bootstrap CIs, McNemar/Wilcoxon
192
- simt bench ablate --yes # leave-one-out rule ablation ranked by value per KB
193
- simt bench probes --yes # 12 deterministic rule-compliance probes
194
- simt bench variants --yes # evaluate simt-variants slots and lock winners in simt.lock.json
195
- simt review [--local] # an advisory ADR-008 verdict skeleton over the staged diff
196
- simt distill <skill|doc> # a budgeted proposal summary with line citations, for a person to merge
197
- simt pack new <name> --source <spec> # scaffold a versioned pack: pack.json, bench.json, one rule
198
- simt pack lint [dir] [--require-measured] # validate a pack and state its measured ΔR
199
- simt pack publish [dir] --yes # publish an npm-sourced pack (git packs name the tag-and-push)
200
- simt mcp [--list] # serve the 15 read-only tools over stdio JSON-RPC
201
- simt completions <bash|zsh|fish> # a completion script generated from the command registry
202
- simt ignore [--yes] [--diff] # render the one .simtignore list into .cursorignore,
203
- # .aiderignore, .geminiignore and Claude's permissions.deny
128
+ # agent-hook
129
+ simt agent-hook <event> --harness # the harness entry point: decide one tool call, or deliver the prompt packet
130
+
131
+ # agent-hooks
132
+ simt agent-hooks install --yes # write this repository's policies into each harness hooks file
133
+ simt agent-hooks status # what each harness will run, and what is not trusted yet
134
+
135
+ # agents
136
+ simt agents install --yes # write the Simt-Agent into each harness agents file
137
+ simt agents status # what each harness carries, and what is not installed yet
138
+
139
+ # bench
140
+ simt bench ablate --yes # measure one arm of the brief against its ablation
141
+ simt bench critic # score the review critic against the labelled bench set
142
+ simt bench export --yes # write the sealed bench corpus as one signed document
143
+ simt bench import # verify a sealed corpus and load it into the vault
144
+ simt bench mine --yes # mine tasks out of a repository history
145
+ simt bench probes --yes # run the deterministic probes against a workspace
146
+ simt bench report [--compare a b] # summarise the runs recorded in the vault
147
+ simt bench run --yes # run agents against the mined tasks
148
+ simt bench variants --yes # run one task across its variant prompts
149
+
150
+ # brief
151
+ simt brief "<task>" # the packet for a task: rules, skills and the files it names, within a budget
152
+
153
+ # check
154
+ simt check # report stale or missing generated regions and every check finding
155
+
156
+ # ci
157
+ simt ci # refresh simt-dev's own .github workflow and Dependabot files
158
+
159
+ # compare
160
+ simt compare # the adoption and drift matrix across every sibling repository
161
+
162
+ # completions
163
+ simt completions <bash|zsh|fish> # print a bash, zsh or fish completion script generated from this spec
164
+
165
+ # decide
166
+ simt decide "<title>" --yes # scaffold a numbered decision record with its frontmatter
167
+
168
+ # distill
169
+ simt distill <skill|doc> # turn a repository into a skill or rule proposal
170
+
171
+ # docs
172
+ simt docs readme # render the README command list from the spec
173
+
174
+ # doctor
175
+ simt doctor [--fix] # report what is wrong with this installation
176
+
177
+ # evidence
178
+ simt evidence # the runs recorded against the tree on disk
179
+ simt evidence check <msg-file> # a commit message claiming a run this tree does not have
180
+
181
+ # explain
182
+ simt explain <CODE> # what one check finding code means, and how to fix it
183
+
184
+ # gate
185
+ simt gate --changed # the tests a change reaches, and only those
186
+
187
+ # graph
188
+ simt graph lint [--spec agentskills] # check the skill registry against the skills on disk
189
+
190
+ # harness
191
+ simt harness detect [--user] # which harness is installed, and what it carries
192
+ simt harness loaders [--table] # the instruction files each harness loads, and what they cost
193
+
194
+ # hooks
195
+ simt hooks install --yes # install the shared dispatcher and report what it would run
196
+ simt hooks run <event> # run one git event's gates now, as git would
197
+ simt hooks status # what each git event routes to, and whether it is wired
198
+
199
+ # ignore
200
+ simt ignore [--yes] [--diff] # render the one ignore list into every harness ignore file
201
+
202
+ # impact
203
+ simt impact <file|symbol> # who a change reaches: importers, their tests and the contract
204
+
205
+ # index
206
+ simt index [--embed] # rebuild the local file index from git blob hashes
207
+
208
+ # init
209
+ simt init [path] # adopt this repository: manifest, region, hooks, agents and agent-hooks
210
+
211
+ # lease
212
+ simt lease [<paths>] --session # claim files for one session, or list the claims
213
+
214
+ # lessons
215
+ simt lessons capture # scan the ledger and history for new lesson candidates
216
+ simt lessons list # deterministic lesson candidates and the promoted lessons
217
+ simt lessons review <id> --yes # promote one lesson candidate into docs/lessons
218
+
219
+ # local
220
+ simt local doctor [--allow-remote] # the local model endpoints, and whether they answer
221
+
222
+ # map
223
+ simt map --task "<task>" # the files a task is most likely to touch, within a byte budget
224
+
225
+ # mcp
226
+ simt mcp [--list] # serve the read-only MCP surface over stdio
227
+
228
+ # pack
229
+ simt pack lint [dir] [--require-measured] # lint a rule pack in the working directory
230
+ simt pack new <name> --source <spec> # scaffold a rule pack
231
+ simt pack publish [dir] --yes # publish a rule pack
232
+
233
+ # plan
234
+ simt plan done <id> [<sha>] --yes # mark one tracker row complete, with its SHA and its evidence
235
+ simt plan next [<id>] # one ready slice's section, or the one named
236
+ simt plan status # count the tracker rows
237
+
238
+ # plugin
239
+ simt plugin <claude|gemini|cursor|opencode> # generate a harness package from the same tables the hooks use
240
+
241
+ # pr-body
242
+ simt pr-body [--base <ref>] # the pull request body: evidence, decisions, gate state and residual risk
243
+
244
+ # review
245
+ simt review [--local] # review the staged diff against the estate rules
246
+
247
+ # rules
248
+ simt rules decisions # every known decision, and which layer each came from
249
+ simt rules list [--root <path>] # the rule catalogue, marked with what applies to this repository
250
+ simt rules show <id> # one rule body
251
+ simt rules why <id|ADR-NNN> [--all] # the decision that settled a rule, and whether it is still in force
252
+
253
+ # shared
254
+ simt shared install --yes # install the shared rules into a reader home directory
255
+ simt shared plan # what the shared install would write, and where
256
+
257
+ # skills
258
+ simt skills brief --task "<task>" # the packet for a task, read from the skill registry
259
+ simt skills compile [<name>] # compile a skill to the Agent Skills standard
260
+ simt skills eval [corpus] # score the skill registry against transcripts
261
+ simt skills find <query> # skills that match a query
262
+ simt skills index # rebuild the skill index
263
+ simt skills install <name> --yes # install skills into the workspace
264
+ simt skills show <name> # one skill packet
265
+ simt skills why <name> # which skill covers a task
266
+
267
+ # slice
268
+ simt slice abandon <id> # remove a slice worktree, delete its branch, and return the row
269
+ simt slice finish <id> --yes # run the gates, commit the slice and record its evidence
270
+ simt slice start <id> --yes | -- "<text>" # give a slice its worktree, branch and brief; -- starts one from a prompt, no row
271
+
272
+ # status
273
+ simt status [--line] # the repository snapshot, or one line of the last check
274
+
275
+ # sync
276
+ simt sync [--explain] --yes # re-render the generated regions from the rule content
277
+
278
+ # tests
279
+ simt tests <path> [--cochange] # the tests that exercise a file
280
+
281
+ # tokens
282
+ simt tokens [--repos] [--session] # count tokens per instruction file and per skill
283
+
284
+ # undo
285
+ simt undo --yes # restore the last journaled set of writes, if untouched
286
+
287
+ # upgrade
288
+ simt upgrade --yes # replace this installation with the pinned release
289
+
290
+ # why
291
+ simt why [path] # what governs a file: decisions, rules, skills, gates and lessons
204
292
  ```
293
+ <!-- simt:commands:end -->
205
294
 
206
295
  `init`, `sync`, `upgrade`, `hooks install`, `agent-hooks install`, `shared install`,
207
296
  `skills install`, `plan done`, `lessons review`, `decide`, `ignore`, `pack new`,
@@ -269,7 +358,7 @@ on top of `0.6.0`:
269
358
  for parallel agents, and `simt pr-body` assembled from the evidence ledger.
270
359
 
271
360
  The last two rows of review `0002` (`S38` workspace token cost, `S39` estate policy
272
- as a pack) are closed by ruling in ADR-102: the instrument, the declaration and the
361
+ as a pack) are closed by ruling: the instrument, the declaration and the
273
362
  non-blocking finding shipped, the blocking gate and the registry-carrying pack were
274
363
  refused by ruling, and the estate-side move is recorded as whose commit it waits on.
275
364
  Everything in plans `0001`–`0003` and reviews `0001`–`0002` is Complete or Accepted.
@@ -91,87 +91,176 @@ truncated or substituted download never becomes the command.
91
91
 
92
92
  ## What `simt` does
93
93
 
94
+ <!-- simt:commands:begin -->
95
+ <!-- Rendered from the spec by `simt docs readme --yes`; do not edit by hand. -->
96
+
94
97
  ```sh
95
- # Adopt, inspect, and maintain a repository
96
- simt init # adopt or scaffold; prints a plan; --yes writes
97
- simt doctor [--fix] # stack, facts, evidence, and config health (--fix applies safe remedies, journaled)
98
- simt check [--frozen] # projection drift, manifest, lock, and declared checkers
99
- simt sync [--explain] --yes # regenerate the projection
100
- simt upgrade --yes # move every consumer in the workspace to this SHA
101
-
102
- # Orient on a task and query the local code and governance graph
103
- simt brief "<task>" # one <= 2 KB packet: kind, commands, files, tests, ADRs, skills, lessons
104
- simt index [--embed] # files, symbols, edges, FTS5 tokens (+ optional local embeddings)
105
- simt map --task "<task>" # hybrid BM25 + PageRank + resolver file ranking (outline|names|signatures)
106
- simt impact <file|symbol> # importers, covering tests, governance, and cross-repo consumers
107
- simt tests <path> [--cochange] # tests covering a file via imports, naming, coverage, or co-change
108
- simt gate --changed # run only the tests the current diff reaches, with compacted output
109
- simt why [path] # ADRs, rules, skills, gates, and lessons governing a path
110
-
111
- # Rules, skills, decisions, and lessons
112
- simt rules list [--root <path>] # rule catalogue and what applies to a repository
113
- simt rules show <id> # read one rule body (including rules deferred in kernel mode)
114
- simt rules why <id|ADR-NNN> [--all] # the decision that settled a rule, and whether it still stands
115
- simt explain <CODE> [--json] # what a check finding means, why it is reported, and how to fix it
116
- simt decide "<title>" --yes # scaffold the next ADR with structured simt-affects / simt-supersedes
117
- simt lessons list # fail-to-fix, revert, review-block, and hook-denial candidates
118
- simt lessons review <id> --yes # promote a candidate to docs/lessons/NNNN-<slug>.md
119
- simt skills index # tier-0 catalogue: every skill, one line each
120
- simt skills brief --task "<task>" # tier-1 ranked skill selection within budget
121
- simt skills show <name> # tier-2 skill body on demand (respects --max-bytes)
122
- simt skills why <name> # the signal chain that selected or rejected a skill
123
- simt skills find <query> # search skills by capability and keyword
124
- simt skills install <name> --yes # pin a skill into the repository
125
- simt skills compile [<name>] # compile to Agent Skills layout, split > 5,000-token bodies, report triggers
126
- simt skills eval [corpus] # measure resolver precision and recall against a gold corpus
127
- simt graph lint [--spec agentskills]# verify the skill registry against skills on disk
128
-
129
- # Dual gates (git time and agent tool-call time) and execution evidence
130
- simt hooks install --yes # install the shared POSIX git hook dispatcher
131
- simt hooks status # what each git event routes to, and whether it is wired
132
- simt hooks run <event> # run pre-commit or pre-push gates now, as git would
133
- simt agent-hooks install --yes # write pre/post-tool and prompt-submit hooks for active harnesses
134
- simt agent-hooks status # what each harness will run, and whether Codex trusts it
135
- simt agent-hook <event> --harness # evaluate pre-tool-use, post-tool-use, or prompt-submit
136
- simt evidence # gate and test runs recorded against the current git tree
137
- simt evidence check <msg-file> # verify a commit message does not claim unrecorded passing runs
138
- simt pr-body [--base <ref>] # a PR body: the evidence block for this tree, changed
139
- # decisions, gate state, and residual risk in ADR-008 vocabulary
140
-
141
- # Plans, context metering, workspace learning, benchmarks, local models, and MCP
142
- simt plan status # count queued, in-progress, complete, and accepted tracker rows
143
- simt plan next [<id>] # print the next ready slice section (~1 KB)
144
- simt plan done <id> [<sha>] --yes # mark a tracker row complete with its commit SHA and test command
145
- simt status --line # one-line gate state from the last check, for prompts (< 50 ms)
146
- simt undo --yes # restore the last journaled set of writes, if untouched since
147
- simt slice start <id> --yes # a worktree on branch slice/<id> with the brief preloaded; row In progress
148
- simt slice finish <id> --yes # run the pre-commit gates, commit a Conventional subject from the
149
- # row's title, and record the SHA and --test command on the row
150
- simt lease [<paths>] --session # claim files for this session (--ttl, default 1h) or list claims;
151
- # the pre-edit hook refuses another session's edit until the TTL
152
- simt tokens [--repos] [--session] # measure bytes loaded at session start or split a transcript
153
- simt harness detect [--user] # detect configured harnesses at repo and user level
154
- simt harness loaders [--table] # what each harness loads, in what order, and where its cap truncates
155
- simt shared plan # rules repeated across a workspace and the bytes saved by sharing
156
- simt shared install --yes # write shared rules once at user level and record the repo delta
157
- simt compare # workspace matrix, violated rules, noisy/slow gates, and ADR drafts
158
- simt local doctor [--allow-remote] # probe configured OpenAI-compatible local chat and embed endpoints
159
- simt bench mine --yes # mine verified fail-to-pass tasks from git history into the vault
160
- simt bench run --yes # evaluate arms (bare, current, kernel, brief) in isolated exports
161
- simt bench report [--compare a b] # resolved rate, quality, cost, CPI, bootstrap CIs, McNemar/Wilcoxon
162
- simt bench ablate --yes # leave-one-out rule ablation ranked by value per KB
163
- simt bench probes --yes # 12 deterministic rule-compliance probes
164
- simt bench variants --yes # evaluate simt-variants slots and lock winners in simt.lock.json
165
- simt review [--local] # an advisory ADR-008 verdict skeleton over the staged diff
166
- simt distill <skill|doc> # a budgeted proposal summary with line citations, for a person to merge
167
- simt pack new <name> --source <spec> # scaffold a versioned pack: pack.json, bench.json, one rule
168
- simt pack lint [dir] [--require-measured] # validate a pack and state its measured ΔR
169
- simt pack publish [dir] --yes # publish an npm-sourced pack (git packs name the tag-and-push)
170
- simt mcp [--list] # serve the 15 read-only tools over stdio JSON-RPC
171
- simt completions <bash|zsh|fish> # a completion script generated from the command registry
172
- simt ignore [--yes] [--diff] # render the one .simtignore list into .cursorignore,
173
- # .aiderignore, .geminiignore and Claude's permissions.deny
98
+ # agent-hook
99
+ simt agent-hook <event> --harness # the harness entry point: decide one tool call, or deliver the prompt packet
100
+
101
+ # agent-hooks
102
+ simt agent-hooks install --yes # write this repository's policies into each harness hooks file
103
+ simt agent-hooks status # what each harness will run, and what is not trusted yet
104
+
105
+ # agents
106
+ simt agents install --yes # write the Simt-Agent into each harness agents file
107
+ simt agents status # what each harness carries, and what is not installed yet
108
+
109
+ # bench
110
+ simt bench ablate --yes # measure one arm of the brief against its ablation
111
+ simt bench critic # score the review critic against the labelled bench set
112
+ simt bench export --yes # write the sealed bench corpus as one signed document
113
+ simt bench import # verify a sealed corpus and load it into the vault
114
+ simt bench mine --yes # mine tasks out of a repository history
115
+ simt bench probes --yes # run the deterministic probes against a workspace
116
+ simt bench report [--compare a b] # summarise the runs recorded in the vault
117
+ simt bench run --yes # run agents against the mined tasks
118
+ simt bench variants --yes # run one task across its variant prompts
119
+
120
+ # brief
121
+ simt brief "<task>" # the packet for a task: rules, skills and the files it names, within a budget
122
+
123
+ # check
124
+ simt check # report stale or missing generated regions and every check finding
125
+
126
+ # ci
127
+ simt ci # refresh simt-dev's own .github workflow and Dependabot files
128
+
129
+ # compare
130
+ simt compare # the adoption and drift matrix across every sibling repository
131
+
132
+ # completions
133
+ simt completions <bash|zsh|fish> # print a bash, zsh or fish completion script generated from this spec
134
+
135
+ # decide
136
+ simt decide "<title>" --yes # scaffold a numbered decision record with its frontmatter
137
+
138
+ # distill
139
+ simt distill <skill|doc> # turn a repository into a skill or rule proposal
140
+
141
+ # docs
142
+ simt docs readme # render the README command list from the spec
143
+
144
+ # doctor
145
+ simt doctor [--fix] # report what is wrong with this installation
146
+
147
+ # evidence
148
+ simt evidence # the runs recorded against the tree on disk
149
+ simt evidence check <msg-file> # a commit message claiming a run this tree does not have
150
+
151
+ # explain
152
+ simt explain <CODE> # what one check finding code means, and how to fix it
153
+
154
+ # gate
155
+ simt gate --changed # the tests a change reaches, and only those
156
+
157
+ # graph
158
+ simt graph lint [--spec agentskills] # check the skill registry against the skills on disk
159
+
160
+ # harness
161
+ simt harness detect [--user] # which harness is installed, and what it carries
162
+ simt harness loaders [--table] # the instruction files each harness loads, and what they cost
163
+
164
+ # hooks
165
+ simt hooks install --yes # install the shared dispatcher and report what it would run
166
+ simt hooks run <event> # run one git event's gates now, as git would
167
+ simt hooks status # what each git event routes to, and whether it is wired
168
+
169
+ # ignore
170
+ simt ignore [--yes] [--diff] # render the one ignore list into every harness ignore file
171
+
172
+ # impact
173
+ simt impact <file|symbol> # who a change reaches: importers, their tests and the contract
174
+
175
+ # index
176
+ simt index [--embed] # rebuild the local file index from git blob hashes
177
+
178
+ # init
179
+ simt init [path] # adopt this repository: manifest, region, hooks, agents and agent-hooks
180
+
181
+ # lease
182
+ simt lease [<paths>] --session # claim files for one session, or list the claims
183
+
184
+ # lessons
185
+ simt lessons capture # scan the ledger and history for new lesson candidates
186
+ simt lessons list # deterministic lesson candidates and the promoted lessons
187
+ simt lessons review <id> --yes # promote one lesson candidate into docs/lessons
188
+
189
+ # local
190
+ simt local doctor [--allow-remote] # the local model endpoints, and whether they answer
191
+
192
+ # map
193
+ simt map --task "<task>" # the files a task is most likely to touch, within a byte budget
194
+
195
+ # mcp
196
+ simt mcp [--list] # serve the read-only MCP surface over stdio
197
+
198
+ # pack
199
+ simt pack lint [dir] [--require-measured] # lint a rule pack in the working directory
200
+ simt pack new <name> --source <spec> # scaffold a rule pack
201
+ simt pack publish [dir] --yes # publish a rule pack
202
+
203
+ # plan
204
+ simt plan done <id> [<sha>] --yes # mark one tracker row complete, with its SHA and its evidence
205
+ simt plan next [<id>] # one ready slice's section, or the one named
206
+ simt plan status # count the tracker rows
207
+
208
+ # plugin
209
+ simt plugin <claude|gemini|cursor|opencode> # generate a harness package from the same tables the hooks use
210
+
211
+ # pr-body
212
+ simt pr-body [--base <ref>] # the pull request body: evidence, decisions, gate state and residual risk
213
+
214
+ # review
215
+ simt review [--local] # review the staged diff against the estate rules
216
+
217
+ # rules
218
+ simt rules decisions # every known decision, and which layer each came from
219
+ simt rules list [--root <path>] # the rule catalogue, marked with what applies to this repository
220
+ simt rules show <id> # one rule body
221
+ simt rules why <id|ADR-NNN> [--all] # the decision that settled a rule, and whether it is still in force
222
+
223
+ # shared
224
+ simt shared install --yes # install the shared rules into a reader home directory
225
+ simt shared plan # what the shared install would write, and where
226
+
227
+ # skills
228
+ simt skills brief --task "<task>" # the packet for a task, read from the skill registry
229
+ simt skills compile [<name>] # compile a skill to the Agent Skills standard
230
+ simt skills eval [corpus] # score the skill registry against transcripts
231
+ simt skills find <query> # skills that match a query
232
+ simt skills index # rebuild the skill index
233
+ simt skills install <name> --yes # install skills into the workspace
234
+ simt skills show <name> # one skill packet
235
+ simt skills why <name> # which skill covers a task
236
+
237
+ # slice
238
+ simt slice abandon <id> # remove a slice worktree, delete its branch, and return the row
239
+ simt slice finish <id> --yes # run the gates, commit the slice and record its evidence
240
+ simt slice start <id> --yes | -- "<text>" # give a slice its worktree, branch and brief; -- starts one from a prompt, no row
241
+
242
+ # status
243
+ simt status [--line] # the repository snapshot, or one line of the last check
244
+
245
+ # sync
246
+ simt sync [--explain] --yes # re-render the generated regions from the rule content
247
+
248
+ # tests
249
+ simt tests <path> [--cochange] # the tests that exercise a file
250
+
251
+ # tokens
252
+ simt tokens [--repos] [--session] # count tokens per instruction file and per skill
253
+
254
+ # undo
255
+ simt undo --yes # restore the last journaled set of writes, if untouched
256
+
257
+ # upgrade
258
+ simt upgrade --yes # replace this installation with the pinned release
259
+
260
+ # why
261
+ simt why [path] # what governs a file: decisions, rules, skills, gates and lessons
174
262
  ```
263
+ <!-- simt:commands:end -->
175
264
 
176
265
  `init`, `sync`, `upgrade`, `hooks install`, `agent-hooks install`, `shared install`,
177
266
  `skills install`, `plan done`, `lessons review`, `decide`, `ignore`, `pack new`,
@@ -239,7 +328,7 @@ on top of `0.6.0`:
239
328
  for parallel agents, and `simt pr-body` assembled from the evidence ledger.
240
329
 
241
330
  The last two rows of review `0002` (`S38` workspace token cost, `S39` estate policy
242
- as a pack) are closed by ruling in ADR-102: the instrument, the declaration and the
331
+ as a pack) are closed by ruling: the instrument, the declaration and the
243
332
  non-blocking finding shipped, the blocking gate and the registry-carrying pack were
244
333
  refused by ruling, and the estate-side move is recorded as whose commit it waits on.
245
334
  Everything in plans `0001`–`0003` and reviews `0001`–`0002` is Complete or Accepted.
@@ -133,7 +133,7 @@ a feature; `rules why` is the provenance mechanism the whole one-canonical-home
133
133
  on, and it cannot depend on a git checkout being present.
134
134
 
135
135
  `docs/plans` ships with it, because every non-zero exit prints a remedy pointing at
136
- `docs/plans/0002-simt-dev-cli.md section 11`.
136
+ `docs/research/0002-simt-dev-cli.md section 11`.
137
137
 
138
138
  ### 6. "Absent", "wrong" and "moved" are three different facts
139
139