scip-query 0.10.11 → 0.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (374) hide show
  1. package/CHANGELOG.md +45 -0
  2. package/{vendor/scip/LICENSE.scip → LICENSE} +1 -0
  3. package/README.md +168 -55
  4. package/dist/augment-vue-worker.js +1 -1
  5. package/dist/chunk-2VSDXOG5.js +2 -0
  6. package/dist/chunk-343O6EVV.js +2 -0
  7. package/dist/chunk-3KDUITBE.js +7 -0
  8. package/dist/chunk-3T2FNHIU.js +2 -0
  9. package/dist/chunk-3V6JQQM5.js +2 -0
  10. package/dist/chunk-5AAAEZ2Z.js +2 -0
  11. package/dist/chunk-6Q6OFLFQ.js +8 -0
  12. package/dist/chunk-6XA4LDHY.js +2 -0
  13. package/dist/chunk-75X52JTA.js +2 -0
  14. package/dist/{chunk-54KGX7EX.js → chunk-7HB3CZFD.js} +2 -2
  15. package/dist/chunk-7JZRFDCU.js +2 -0
  16. package/dist/chunk-7XL7J7PT.js +3 -0
  17. package/dist/chunk-ALHNAPS2.js +2 -0
  18. package/dist/{chunk-JATUZIEH.js → chunk-BDRBPG7Y.js} +2 -2
  19. package/dist/chunk-BN5SXXQS.js +40 -0
  20. package/dist/chunk-C4ICAIJ4.js +3 -0
  21. package/dist/{chunk-LSET2TXH.js → chunk-CMHYBXJB.js} +2 -2
  22. package/dist/{chunk-YWYFU2V3.js → chunk-DRPAQAFM.js} +6 -6
  23. package/dist/chunk-FERAXG6Y.js +72 -0
  24. package/dist/chunk-FLJJLSGB.js +2 -0
  25. package/dist/chunk-FXG3PHVW.js +9 -0
  26. package/dist/chunk-GCN2P4EJ.js +2 -0
  27. package/dist/chunk-GHXRVCIY.js +21 -0
  28. package/dist/chunk-GNG622H3.js +3 -0
  29. package/dist/chunk-H4LUPLEJ.js +2 -0
  30. package/dist/{chunk-BASVXNY3.js → chunk-H56MGERE.js} +4 -4
  31. package/dist/chunk-H7NSJ7L2.js +5 -0
  32. package/dist/chunk-HINMXZ6J.js +2 -0
  33. package/dist/chunk-HXXMPYEF.js +2 -0
  34. package/dist/{chunk-Z3YYR4OS.js → chunk-HZKMEXA3.js} +2 -2
  35. package/dist/chunk-IFSX6YVU.js +4 -0
  36. package/dist/chunk-ISLWJ4PY.js +10 -0
  37. package/dist/chunk-J5WVNZ6O.js +2 -0
  38. package/dist/chunk-K2HYR5A7.js +3 -0
  39. package/dist/chunk-K6UI6EBZ.js +2 -0
  40. package/dist/chunk-KJCDEDQW.js +2 -0
  41. package/dist/{chunk-Z4HICZGY.js → chunk-KKMOB3OJ.js} +2 -2
  42. package/dist/{chunk-YWOOQ4FF.js → chunk-KMVGRIO2.js} +2 -2
  43. package/dist/chunk-LWOOTRHC.js +2 -0
  44. package/dist/{chunk-EY43NV4M.js → chunk-LZNLRE4X.js} +17 -8
  45. package/dist/chunk-M2YXL62V.js +23 -0
  46. package/dist/chunk-MNEJYEHW.js +3 -0
  47. package/dist/chunk-MTDBHTSF.js +2 -0
  48. package/dist/{chunk-ZQDIXAF5.js → chunk-N2Z3CU7X.js} +2 -2
  49. package/dist/chunk-N7PNFLGY.js +2 -0
  50. package/dist/chunk-NAH5EAZS.js +6 -0
  51. package/dist/chunk-NBXK32I6.js +2 -0
  52. package/dist/chunk-NJJ7AS4F.js +2 -0
  53. package/dist/{chunk-FDEQIPPK.js → chunk-NLMRJ7SI.js} +2 -2
  54. package/dist/chunk-ODVITBYU.js +26 -0
  55. package/dist/chunk-ORBRX2QJ.js +2 -0
  56. package/dist/chunk-P36UR5II.js +2 -0
  57. package/dist/chunk-PYZZBIEU.js +3 -0
  58. package/dist/chunk-PZS6J5YG.js +16 -0
  59. package/dist/{chunk-LM5SHAN4.js → chunk-QARYU7R3.js} +2 -2
  60. package/dist/chunk-QJ3FK4TB.js +38 -0
  61. package/dist/chunk-QXGTGE2C.js +35 -0
  62. package/dist/chunk-QZ4JVECJ.js +2 -0
  63. package/dist/chunk-R3JY4EZ4.js +102 -0
  64. package/dist/{chunk-VOYOYC5T.js → chunk-R5336VHZ.js} +2 -2
  65. package/dist/chunk-RJMXSHKM.js +2 -0
  66. package/dist/chunk-STBXCPKY.js +5 -0
  67. package/dist/chunk-T2FQ4GHD.js +9 -0
  68. package/dist/chunk-TFWDJDGO.js +2 -0
  69. package/dist/chunk-TG7QSYCJ.js +2 -0
  70. package/dist/{chunk-FKCGBZAC.js → chunk-TTS75UF2.js} +5 -5
  71. package/dist/{chunk-BVRS7RKQ.js → chunk-U7I373V4.js} +2 -2
  72. package/dist/chunk-UIKLA3F5.js +2 -0
  73. package/dist/{chunk-P753MDDE.js → chunk-UMPNL7T6.js} +2 -2
  74. package/dist/chunk-URSSPS5H.js +2 -0
  75. package/dist/chunk-VGMUFW3J.js +2 -0
  76. package/dist/chunk-VXTNADIW.js +18 -0
  77. package/dist/chunk-VYF5HA76.js +2 -0
  78. package/dist/chunk-WFGOH2UI.js +43 -0
  79. package/dist/chunk-WGA5BBTA.js +4 -0
  80. package/dist/chunk-WIBFXSYB.js +6 -0
  81. package/dist/chunk-WPSS37EW.js +2 -0
  82. package/dist/chunk-WQHWIVA7.js +3 -0
  83. package/dist/chunk-WS3Z6W3M.js +65 -0
  84. package/dist/chunk-WXVGNFAO.js +2 -0
  85. package/dist/{chunk-6LJHXREW.js → chunk-WZLPXFZU.js} +2 -2
  86. package/dist/chunk-X4O6K47U.js +2 -0
  87. package/dist/chunk-X6OGDTQH.js +2 -0
  88. package/dist/chunk-XEMQUN3Z.js +20 -0
  89. package/dist/{chunk-7B6LP46R.js → chunk-XHWLNQVZ.js} +2 -2
  90. package/dist/chunk-XMR747CP.js +2 -0
  91. package/dist/chunk-Y6L4LXPG.js +2 -0
  92. package/dist/chunk-YCPASUCX.js +2 -0
  93. package/dist/chunk-YZXV3CU3.js +60 -0
  94. package/dist/chunk-ZEKBR4OK.js +10 -0
  95. package/dist/chunk-ZMGBWSFZ.js +2 -0
  96. package/dist/cli.js +462 -274
  97. package/dist/{config-types-BDIWAYzr.d.ts → config-types-BrHl3Bge.d.ts} +61 -1
  98. package/dist/{db-Djj3Nqrb.d.ts → db-_Bdx0E1W.d.ts} +1 -1
  99. package/dist/diff-gate-types-CG2YQ_ei.d.ts +4 -0
  100. package/dist/{frontend-behavior-evidence-BxKpKWUu.d.ts → frontend-behavior-evidence-EfM4_9bc.d.ts} +1 -1
  101. package/dist/{health-D5J42g4D.d.ts → health-BEZ1Rt0S.d.ts} +54 -2
  102. package/dist/index.d.ts +10 -70
  103. package/dist/index.js +2 -2
  104. package/dist/postinstall.js +1 -4
  105. package/dist/queries/affected.d.ts +2 -2
  106. package/dist/queries/affected.js +1 -1
  107. package/dist/queries/bottlenecks.d.ts +2 -2
  108. package/dist/queries/bottlenecks.js +1 -1
  109. package/dist/queries/by-kind.d.ts +2 -2
  110. package/dist/queries/by-kind.js +1 -1
  111. package/dist/queries/call-graph.d.ts +2 -2
  112. package/dist/queries/call-graph.js +1 -1
  113. package/dist/queries/change-surface.d.ts +2 -2
  114. package/dist/queries/change-surface.js +1 -1
  115. package/dist/queries/cleanup-plan.d.ts +2 -2
  116. package/dist/queries/cleanup-plan.js +1 -1
  117. package/dist/queries/co-change.d.ts +12 -2
  118. package/dist/queries/co-change.js +1 -1
  119. package/dist/queries/code.d.ts +2 -2
  120. package/dist/queries/code.js +1 -1
  121. package/dist/queries/complexity-hotspots.d.ts +7 -3
  122. package/dist/queries/complexity-hotspots.js +1 -1
  123. package/dist/queries/complexity.d.ts +42 -4
  124. package/dist/queries/complexity.js +1 -1
  125. package/dist/queries/convergence.d.ts +2 -2
  126. package/dist/queries/convergence.js +1 -1
  127. package/dist/queries/coupling.d.ts +2 -2
  128. package/dist/queries/coupling.js +1 -1
  129. package/dist/queries/cycles.d.ts +12 -3
  130. package/dist/queries/cycles.js +1 -1
  131. package/dist/queries/dataflow.d.ts +2 -2
  132. package/dist/queries/dataflow.js +1 -1
  133. package/dist/queries/dead.d.ts +3 -3
  134. package/dist/queries/dead.js +1 -1
  135. package/dist/queries/deep-chains.d.ts +2 -2
  136. package/dist/queries/deep-chains.js +1 -1
  137. package/dist/queries/deps.d.ts +2 -2
  138. package/dist/queries/deps.js +1 -1
  139. package/dist/queries/diff-gate.d.ts +65 -8
  140. package/dist/queries/diff-gate.js +1 -1
  141. package/dist/queries/diff-impact.d.ts +21 -3
  142. package/dist/queries/diff-impact.js +1 -1
  143. package/dist/queries/doc-drift.d.ts +29 -2
  144. package/dist/queries/doc-drift.js +1 -1
  145. package/dist/queries/drift.d.ts +15 -3
  146. package/dist/queries/drift.js +1 -1
  147. package/dist/queries/duplicate-bodies.d.ts +55 -0
  148. package/dist/queries/duplicate-bodies.js +2 -0
  149. package/dist/queries/extract-candidates.d.ts +2 -2
  150. package/dist/queries/extract-candidates.js +1 -1
  151. package/dist/queries/fan.d.ts +2 -2
  152. package/dist/queries/fan.js +1 -1
  153. package/dist/queries/files.d.ts +4 -3
  154. package/dist/queries/files.js +1 -1
  155. package/dist/queries/health.d.ts +3 -3
  156. package/dist/queries/health.js +1 -1
  157. package/dist/queries/hierarchy.d.ts +2 -2
  158. package/dist/queries/hierarchy.js +1 -1
  159. package/dist/queries/hotspots.d.ts +2 -2
  160. package/dist/queries/hotspots.js +1 -1
  161. package/dist/queries/imports.d.ts +2 -2
  162. package/dist/queries/imports.js +1 -1
  163. package/dist/queries/incomplete-migration.d.ts +3 -2
  164. package/dist/queries/incomplete-migration.js +1 -1
  165. package/dist/queries/index.d.ts +12 -7
  166. package/dist/queries/index.js +1 -1
  167. package/dist/queries/isolated.d.ts +2 -2
  168. package/dist/queries/isolated.js +1 -1
  169. package/dist/queries/locality-candidates.d.ts +2 -2
  170. package/dist/queries/locality-candidates.js +1 -1
  171. package/dist/queries/members.d.ts +2 -2
  172. package/dist/queries/members.js +1 -1
  173. package/dist/queries/methods.d.ts +2 -2
  174. package/dist/queries/methods.js +1 -1
  175. package/dist/queries/outline.d.ts +2 -2
  176. package/dist/queries/outline.js +1 -1
  177. package/dist/queries/passthrough-candidates.d.ts +11 -3
  178. package/dist/queries/passthrough-candidates.js +1 -1
  179. package/dist/queries/plan-context.d.ts +3 -2
  180. package/dist/queries/plan-context.js +1 -1
  181. package/dist/queries/react-component-duplicates.d.ts +7 -2
  182. package/dist/queries/react-component-duplicates.js +1 -1
  183. package/dist/queries/react-hook-candidates.d.ts +3 -3
  184. package/dist/queries/react-hook-candidates.js +1 -1
  185. package/dist/queries/react-large-component-pressure.d.ts +2 -2
  186. package/dist/queries/react-large-component-pressure.js +1 -1
  187. package/dist/queries/recent-duplicates.d.ts +2 -2
  188. package/dist/queries/recent-duplicates.js +1 -1
  189. package/dist/queries/redundant-reexports.d.ts +2 -2
  190. package/dist/queries/redundant-reexports.js +1 -1
  191. package/dist/queries/refs.d.ts +2 -2
  192. package/dist/queries/refs.js +1 -1
  193. package/dist/queries/self-audit.d.ts +9 -4
  194. package/dist/queries/self-audit.js +1 -1
  195. package/dist/queries/similar-chains.d.ts +2 -2
  196. package/dist/queries/similar-chains.js +1 -1
  197. package/dist/queries/similar-files.d.ts +2 -2
  198. package/dist/queries/similar-files.js +1 -1
  199. package/dist/queries/similar-signatures.d.ts +17 -10
  200. package/dist/queries/similar-signatures.js +1 -1
  201. package/dist/queries/similar.d.ts +85 -17
  202. package/dist/queries/similar.js +1 -1
  203. package/dist/queries/slice.d.ts +2 -2
  204. package/dist/queries/slice.js +1 -1
  205. package/dist/queries/stale-abstractions.d.ts +2 -2
  206. package/dist/queries/stale-abstractions.js +1 -1
  207. package/dist/queries/stats.d.ts +2 -2
  208. package/dist/queries/surface.d.ts +2 -2
  209. package/dist/queries/surface.js +1 -1
  210. package/dist/queries/symbols.d.ts +2 -2
  211. package/dist/queries/symbols.js +1 -1
  212. package/dist/queries/system.d.ts +2 -2
  213. package/dist/queries/system.js +1 -1
  214. package/dist/queries/trace.d.ts +2 -2
  215. package/dist/queries/trace.js +1 -1
  216. package/dist/queries/twin-ab.d.ts +55 -0
  217. package/dist/queries/twin-ab.js +2 -0
  218. package/dist/queries/twin-drift.d.ts +97 -0
  219. package/dist/queries/twin-drift.js +2 -0
  220. package/dist/queries/unused-imports.d.ts +2 -2
  221. package/dist/queries/unused-imports.js +1 -1
  222. package/dist/queries/unused-params.d.ts +2 -2
  223. package/dist/queries/unused-params.js +1 -1
  224. package/dist/queries/vue-component-duplicates.d.ts +7 -2
  225. package/dist/queries/vue-component-duplicates.js +1 -1
  226. package/dist/queries/vue-composable-candidates.d.ts +3 -3
  227. package/dist/queries/vue-composable-candidates.js +1 -1
  228. package/dist/queries/vue-large-view-pressure.d.ts +6 -2
  229. package/dist/queries/vue-large-view-pressure.js +1 -1
  230. package/dist/queries/wrapper-candidates.d.ts +2 -2
  231. package/dist/queries/wrapper-candidates.js +1 -1
  232. package/dist/reindex-worker.js +9 -9
  233. package/dist/reindex.d.ts +30 -4
  234. package/dist/reindex.js +19 -19
  235. package/dist/runtime.d.ts +12 -6
  236. package/dist/runtime.js +2 -2
  237. package/dist/{scip-cli-CnK9Va4O.d.ts → scip-cli-C7cg4ZHR.d.ts} +1 -1
  238. package/dist/symbol-types-DaoeXKUt.d.ts +66 -0
  239. package/docs/AGENT_GUIDE.md +20 -18
  240. package/docs/AI_FAILURE_MODES.md +36 -13
  241. package/docs/API.md +1 -1
  242. package/docs/COMMAND_REFERENCE.md +57 -14
  243. package/docs/DETECTOR_GUIDE.md +20 -3
  244. package/docs/REGEX_POLICY.md +34 -0
  245. package/docs/analyzer-inventory.md +48 -3
  246. package/docs/analyzer-validation-ledger.md +41 -6
  247. package/package.json +23 -7
  248. package/scripts/build-scip-windows.mjs +10 -7
  249. package/scripts/evidence-product-contract.mjs +197 -0
  250. package/skills/_shared/SKILL.md +243 -0
  251. package/skills/_shared/agents/openai.yaml +4 -0
  252. package/skills/scip-api-impact/SKILL.md +55 -71
  253. package/skills/scip-claim-audit/SKILL.md +105 -0
  254. package/skills/scip-claim-audit/agents/openai.yaml +4 -0
  255. package/skills/scip-cleanup-audit/SKILL.md +122 -0
  256. package/skills/scip-cleanup-audit/agents/openai.yaml +4 -0
  257. package/skills/scip-cleanup-improve/SKILL.md +84 -0
  258. package/skills/scip-cleanup-improve/agents/openai.yaml +4 -0
  259. package/skills/scip-concrete-plan/SKILL.md +181 -0
  260. package/skills/scip-concrete-plan/agents/openai.yaml +4 -0
  261. package/skills/scip-conductor/SKILL.md +133 -0
  262. package/skills/scip-conductor/agents/openai.yaml +4 -0
  263. package/skills/scip-debug/SKILL.md +60 -58
  264. package/skills/scip-diagram/SKILL.md +64 -94
  265. package/skills/scip-directory-architecture/SKILL.md +65 -107
  266. package/skills/scip-doc-reconcile/SKILL.md +56 -67
  267. package/skills/scip-explore/SKILL.md +78 -210
  268. package/skills/scip-hyper-optimization/SKILL.md +124 -198
  269. package/skills/scip-integrity-audit/SKILL.md +103 -0
  270. package/skills/scip-integrity-audit/agents/openai.yaml +4 -0
  271. package/skills/scip-language-playbook/SKILL.md +56 -326
  272. package/skills/scip-maintainability/SKILL.md +80 -219
  273. package/skills/scip-probe-reachability/SKILL.md +92 -0
  274. package/skills/scip-probe-reachability/agents/openai.yaml +4 -0
  275. package/skills/scip-query/SKILL.md +108 -124
  276. package/skills/scip-react-maintainability/SKILL.md +64 -82
  277. package/skills/scip-setup/SKILL.md +121 -0
  278. package/skills/scip-setup/agents/openai.yaml +4 -0
  279. package/skills/scip-tla-model-system/SKILL.md +138 -0
  280. package/skills/scip-tla-model-system/agents/openai.yaml +4 -0
  281. package/skills/scip-triage-issue/SKILL.md +53 -41
  282. package/skills/scip-twin-drift/SKILL.md +107 -0
  283. package/skills/scip-twin-drift/agents/openai.yaml +4 -0
  284. package/skills/scip-verify/SKILL.md +70 -88
  285. package/skills/scip-vue-maintainability/SKILL.md +67 -94
  286. package/dist/chunk-2KHTSEIL.js +0 -102
  287. package/dist/chunk-3VD3JMK2.js +0 -2
  288. package/dist/chunk-4UZO3XCV.js +0 -35
  289. package/dist/chunk-5GOLFJEO.js +0 -8
  290. package/dist/chunk-5OST6GYB.js +0 -2
  291. package/dist/chunk-65AU3HFZ.js +0 -2
  292. package/dist/chunk-6GN7FXCH.js +0 -2
  293. package/dist/chunk-6IR2AOBM.js +0 -7
  294. package/dist/chunk-6JRV4MY2.js +0 -23
  295. package/dist/chunk-6QSOCTZT.js +0 -18
  296. package/dist/chunk-72KY2ZFO.js +0 -2
  297. package/dist/chunk-7GO4EQF5.js +0 -2
  298. package/dist/chunk-7IVSJJZU.js +0 -7
  299. package/dist/chunk-7TWLSZK5.js +0 -2
  300. package/dist/chunk-A536TEU4.js +0 -3
  301. package/dist/chunk-AVWPHM2Q.js +0 -4
  302. package/dist/chunk-B32FX5KB.js +0 -2
  303. package/dist/chunk-B6MJ5VQV.js +0 -2
  304. package/dist/chunk-BFXPG2VN.js +0 -2
  305. package/dist/chunk-BSN22NRK.js +0 -9
  306. package/dist/chunk-BZ53S4ZN.js +0 -2
  307. package/dist/chunk-C5CTSJ6X.js +0 -6
  308. package/dist/chunk-CO5GJRP7.js +0 -2
  309. package/dist/chunk-CW5YFOCP.js +0 -5
  310. package/dist/chunk-DS6QEB3G.js +0 -5
  311. package/dist/chunk-E35O7UCB.js +0 -2
  312. package/dist/chunk-EXDQ35NN.js +0 -2
  313. package/dist/chunk-FAYI6KZ5.js +0 -2
  314. package/dist/chunk-FFVIFETB.js +0 -2
  315. package/dist/chunk-FG4NT6VY.js +0 -2
  316. package/dist/chunk-FXNWFMKW.js +0 -25
  317. package/dist/chunk-G5UPYQGL.js +0 -4
  318. package/dist/chunk-GQBMH2TQ.js +0 -2
  319. package/dist/chunk-GRJY65YT.js +0 -2
  320. package/dist/chunk-HF25DFSC.js +0 -3
  321. package/dist/chunk-HHN2B5KA.js +0 -2
  322. package/dist/chunk-IHUETYFW.js +0 -2
  323. package/dist/chunk-JCLDUKT6.js +0 -38
  324. package/dist/chunk-JGN2ZFJR.js +0 -2
  325. package/dist/chunk-JM72FNGA.js +0 -2
  326. package/dist/chunk-JME7OWD3.js +0 -2
  327. package/dist/chunk-KDFONWTW.js +0 -40
  328. package/dist/chunk-LPL4MA6R.js +0 -2
  329. package/dist/chunk-LZHUWKGD.js +0 -2
  330. package/dist/chunk-M4COR2H6.js +0 -2
  331. package/dist/chunk-NOJAM5ZV.js +0 -21
  332. package/dist/chunk-O6ZH6C6Y.js +0 -2
  333. package/dist/chunk-OBGRLXWF.js +0 -3
  334. package/dist/chunk-OLTESY4K.js +0 -3
  335. package/dist/chunk-ONPCQ2PM.js +0 -6
  336. package/dist/chunk-P4KYUPBD.js +0 -4
  337. package/dist/chunk-P5RYBRIO.js +0 -4
  338. package/dist/chunk-P7AL7Y37.js +0 -2
  339. package/dist/chunk-PFOCOG57.js +0 -2
  340. package/dist/chunk-QLAUCRDJ.js +0 -2
  341. package/dist/chunk-QPU7EXAW.js +0 -2
  342. package/dist/chunk-QYB5P7GL.js +0 -2
  343. package/dist/chunk-RNM6LMCF.js +0 -2
  344. package/dist/chunk-RVWSAMTT.js +0 -2
  345. package/dist/chunk-TK7O5ER5.js +0 -3
  346. package/dist/chunk-TQ5W2H3S.js +0 -4
  347. package/dist/chunk-USPV3T5K.js +0 -2
  348. package/dist/chunk-UUBMFL3F.js +0 -59
  349. package/dist/chunk-VCQYSG2M.js +0 -10
  350. package/dist/chunk-VUKC6F77.js +0 -20
  351. package/dist/chunk-W2CBNBEL.js +0 -71
  352. package/dist/chunk-W6BVEKYC.js +0 -3
  353. package/dist/chunk-WUCEKFQC.js +0 -3
  354. package/dist/chunk-XUGQU7PM.js +0 -41
  355. package/dist/chunk-Y5NBHMQX.js +0 -2
  356. package/dist/chunk-YCOFCT4B.js +0 -2
  357. package/dist/chunk-YZA6PPZL.js +0 -3
  358. package/skills/concrete-plan/SKILL.md +0 -372
  359. package/skills/concrete-plan/agents/openai.yaml +0 -4
  360. package/skills/scip-adoption/SKILL.md +0 -122
  361. package/skills/scip-adoption/agents/openai.yaml +0 -4
  362. package/skills/scip-ai-cleanup/SKILL.md +0 -153
  363. package/skills/scip-ai-cleanup/agents/openai.yaml +0 -4
  364. package/skills/scip-debloat/SKILL.md +0 -439
  365. package/skills/scip-debloat/agents/openai.yaml +0 -4
  366. package/skills/scip-health-audit/SKILL.md +0 -162
  367. package/skills/scip-health-audit/agents/openai.yaml +0 -4
  368. package/skills/scip-health-improve/SKILL.md +0 -155
  369. package/skills/scip-health-improve/agents/openai.yaml +0 -4
  370. package/skills/scip-query-setup/SKILL.md +0 -170
  371. package/skills/scip-query-setup/agents/openai.yaml +0 -3
  372. package/vendor/scip/README.md +0 -6
  373. package/vendor/scip/win32-arm64/scip.exe +0 -0
  374. package/vendor/scip/win32-x64/scip.exe +0 -0
@@ -1,43 +1,68 @@
1
1
  ---
2
2
  name: scip-diagram
3
- description: Create evidence-backed HTML diagrams of how code works using scip-query. Use when the user asks for a code flow diagram, architecture diagram, data-flow diagram, dependency map, blast-radius visualization, module map, or an HTML artifact that explains a system.
3
+ description: Diagram code with scip-query evidence. Use for code flow diagrams, architecture diagrams, data-flow maps, dependency maps, blast-radius visuals, module maps, or HTML artifacts explaining a system.
4
+ commands:
5
+ - template: "scip-query system <module>"
6
+ when: "Collect evidence: module map for a dependency or architecture diagram."
7
+ - template: "scip-query trace <symbol>"
8
+ when: "Collect evidence: definition plus references for a call-flow diagram."
9
+ - template: "scip-query call-graph <symbol>"
10
+ when: "Collect evidence: callers/callees for a call-flow diagram."
11
+ - template: "scip-query dataflow <symbol>"
12
+ when: "Collect evidence: producers/consumers for a data-flow diagram."
13
+ - template: "scip-query affected <symbol> --json"
14
+ when: "Collect evidence: blast-radius nodes and edges."
15
+ - template: "scip-query change-surface <file> --json --full"
16
+ when: "Collect evidence: exports and consumers for a change-surface map."
4
17
  ---
5
18
 
6
- # SCIP Diagram
19
+ # scip-diagram
7
20
 
8
- Use this skill to build a visual explanation from compiler-resolved code facts. A code diagram is an HTML artifact that turns source units, calls, dependencies, data flow, or blast radius into a visual map. Its defining trait is that every node and edge comes from scip-query evidence, not from guessed folder structure.
21
+ Use this skill to build a visual explanation from compiler-resolved facts. A code diagram is an HTML artifact that turns source units, calls, dependencies, data flow, or blast radius into a visual map; every node and edge must trace to scip-query evidence.
22
+
23
+ Load shared mechanics from [`../_shared/SKILL.md`](../_shared/SKILL.md).
24
+
25
+ <!-- BEGIN GENERATED SKILL COMMANDS -->
26
+ ## Commands for this skill
27
+
28
+ | Command | Purpose | When |
29
+ | --- | --- | --- |
30
+ | `scip-query system <module>` | Full module map: files, symbols, deps in/out | Collect evidence: module map for a dependency or architecture diagram. |
31
+ | `scip-query trace <symbol>` | Trace a symbol: definition + all references | Collect evidence: definition plus references for a call-flow diagram. |
32
+ | `scip-query call-graph <symbol>` | Show incoming callers and outgoing callees for a symbol | Collect evidence: callers/callees for a call-flow diagram. |
33
+ | `scip-query dataflow <symbol>` | Reference-level dataflow: definition sites, usage sites, producers, consumers | Collect evidence: producers/consumers for a data-flow diagram. |
34
+ | `scip-query affected <symbol> --json` | Transitive closure of symbols that could break if this symbol changes | Collect evidence: blast-radius nodes and edges. |
35
+ | `scip-query change-surface <file> --json --full` | Pre-change briefing: exports, consumers, and blast-radius risk | Collect evidence: exports and consumers for a change-surface map. |
36
+
37
+ Use this shortlist first. Open [`../_shared/SKILL.md`](../_shared/SKILL.md) only when it is insufficient.
38
+ <!-- END GENERATED SKILL COMMANDS -->
9
39
 
10
40
  ## Rules
11
41
 
12
- 1. Run scip-query evidence first, then draw. Do not invent nodes or arrows.
13
- 2. Make a self-contained HTML file unless the user asks for another format.
14
- 3. Include command provenance in the HTML so readers can see which scip-query commands produced the diagram.
15
- 4. Keep diagrams scoped. If the graph is huge, summarize clusters and link to detailed evidence rather than rendering a hairball.
16
- 5. Verify the HTML opens cleanly and contains the expected diagram content.
42
+ 1. Run evidence before drawing.
43
+ 2. Default to a self-contained HTML file.
44
+ 3. Include command provenance in the artifact.
45
+ 4. Scope large graphs into clusters instead of rendering a hairball.
46
+ 5. Verify the HTML opens and the diagram is nonblank.
17
47
 
18
- ## Pick the Diagram Type
48
+ ## Workflow
19
49
 
20
- | User wants | Use |
21
- |---|---|
22
- | "How does this feature work?" | Call-flow diagram |
23
- | "Where does this value come from?" | Data-flow diagram |
24
- | "What depends on this?" | Blast-radius diagram |
25
- | "What is this module's architecture?" | Module/dependency diagram |
26
- | "Why is this hard to change?" | Change-surface or bottleneck diagram |
27
- | "Show classes or ownership" | Hierarchy and surface diagram |
50
+ ### 1. Pick diagram type
28
51
 
29
- ## Evidence Commands
52
+ | User wants | Diagram |
53
+ | --- | --- |
54
+ | Feature flow | Call flow |
55
+ | Value origin or mutation | Data flow |
56
+ | Dependents | Blast radius |
57
+ | Module architecture | Dependency map |
58
+ | Hard-to-change explanation | Change surface or bottleneck map |
59
+ | Classes or ownership | Hierarchy and surface map |
30
60
 
31
- Start with current graph facts:
61
+ This step is complete only when the diagram's node and edge types are chosen.
32
62
 
33
- ```bash
34
- scip-query status --capabilities
35
- scip-query status --capabilities
36
- # If freshness is stale, missing, or unknown:
37
- # scip-query reindex
38
- ```
63
+ ### 2. Collect evidence
39
64
 
40
- Collect only the commands needed for the diagram:
65
+ Use only commands needed for the chosen diagram:
41
66
 
42
67
  ```bash
43
68
  scip-query system <module>
@@ -55,86 +80,31 @@ scip-query affected <symbol> --json
55
80
  scip-query change-surface <file> --json --full
56
81
  scip-query hierarchy <symbol> --json
57
82
  scip-query fan-out <file> --json
58
- scip-query bottlenecks
59
- scip-query cycles
60
83
  ```
61
84
 
62
- Use `scip-query kind-counts --scope <scope>` and `scip-query by-kind <kind> --scope <scope>` when the diagram needs an inventory of symbols.
85
+ This step is complete only when every planned node and edge has a source command.
63
86
 
64
- ## Build the HTML
87
+ ### 3. Build the artifact
65
88
 
66
- Write the artifact under:
89
+ Write to:
67
90
 
68
91
  ```text
69
92
  docs/scip-query/diagrams/YYYY-MM-DD-<scope>.html
70
93
  ```
71
94
 
72
- If the repo has a different reports convention, follow it. The file should include:
73
-
74
- - title and scope;
75
- - short textual summary;
76
- - the visual diagram;
77
- - legend for node colors, edge styles, and risk labels;
78
- - evidence table listing every scip-query command used;
79
- - notes for omitted nodes, collapsed clusters, or unavailable capabilities.
80
-
81
- Implementation guidance:
82
-
83
- - Use inline CSS and either semantic HTML layout or inline SVG.
84
- - Use stable dimensions and labels that wrap cleanly.
85
- - Use one visual encoding per meaning: call edges, data edges, dependency edges, and risk edges should look different.
86
- - Keep colors accessible and avoid relying on color alone; include labels or edge styles.
87
- - For large graphs, group by module, ownership, lifecycle phase, or public surface.
88
-
89
- ## Diagram Recipes
90
-
91
- ### Call Flow
92
-
93
- ```bash
94
- scip-query trace <entry-symbol>
95
- scip-query call-graph <entry-symbol>
96
- scip-query code <entry-symbol>
97
- ```
98
-
99
- Render entry point -> major callees -> side effects or terminal outputs. Label each edge with the call or branch reason when `code` proves it.
100
-
101
- ### Data Flow
102
-
103
- ```bash
104
- scip-query dataflow <value-symbol>
105
- scip-query slice <value-symbol>
106
- scip-query slice <value-symbol> --forward
107
- ```
108
-
109
- Render producers, transformations, validators, storage, and consumers. Mark inferred or unavailable parts explicitly.
95
+ Include title, scope, summary, visual diagram, legend, evidence table, omitted/collapsed nodes, and unavailable capabilities.
110
96
 
111
- ### Dependency or Module Map
112
-
113
- ```bash
114
- scip-query system <module>
115
- scip-query deps <file>
116
- scip-query rdeps <file>
117
- scip-query surface <module>
118
- ```
119
-
120
- Render internal files, imported modules, reverse consumers, and public surfaces. Distinguish internal dependencies from external consumers.
121
-
122
- ### Blast Radius
123
-
124
- ```bash
125
- scip-query affected <symbol> --json
126
- scip-query change-surface <file> --json --full
127
- ```
97
+ Use inline CSS and semantic HTML or inline SVG. Give stable dimensions, wrapping labels, accessible colors, and distinct edge styles for calls, data, dependencies, and risk.
128
98
 
129
- Render the changed symbol, direct consumers, transitive consumers, and high-risk surfaces. Show depth so the user can see how far the change travels.
99
+ This step is complete only when the HTML contains the visual and provenance table.
130
100
 
131
- ## Verification
101
+ ### 4. Verify
132
102
 
133
- After writing the HTML:
103
+ Open the file locally or use a browser/screenshot tool when available. Confirm:
134
104
 
135
- 1. Open it locally or use a browser/screenshot tool when available.
136
- 2. Confirm the diagram is nonblank and labels do not overlap badly.
137
- 3. Confirm every major node and edge is traceable to the evidence table.
138
- 4. Run `scip-query diff-gate --json` if the diagram is part of a code or docs change.
105
+ - diagram is nonblank;
106
+ - labels do not overlap badly;
107
+ - major nodes and edges trace to evidence;
108
+ - `scip-verify` has been invoked when this is part of a docs/code change.
139
109
 
140
- End by giving the file path and a short summary of what the diagram proves.
110
+ End with the file path and what the diagram proves.
@@ -1,71 +1,73 @@
1
1
  ---
2
2
  name: scip-directory-architecture
3
- description: Review and improve repository directory architecture with scip-query evidence. Use when the user asks to design, evaluate, reorganize, or migrate source folder structure; identify feature/module ownership boundaries; turn a messy or AI-generated codebase into clearer folders; decide whether locality boundaries are mature enough for config; or plan safe directory migrations without guessing from filenames alone.
3
+ description: Review directory architecture with scip-query evidence. Use to evaluate, design, reorganize, or migrate folder structure, ownership boundaries, locality config, messy repos, AI-generated layout, or safe file-move slices.
4
+ commands:
5
+ - template: "scip-query system <scope>"
6
+ when: "Inventory evidence: files, symbols, deps in/out for the scope."
7
+ - template: "scip-query locality-candidates --json --full"
8
+ when: "Inventory evidence: directory-locality candidates from consumer ownership."
9
+ - template: "scip-query similar-files --full --json"
10
+ when: "Inventory evidence: files with overlapping dependency profiles."
11
+ - template: "scip-query cycles"
12
+ when: "Inventory evidence: circular dependency chains between files."
13
+ - template: "scip-query co-change --json --full"
14
+ when: "Inventory evidence: hidden file-level coupling from git history."
15
+ - template: "scip-query config-validate --json"
16
+ when: "Implement a slice: validate locality config after a move."
4
17
  ---
5
18
 
6
- # SCIP Directory Architecture
19
+ # scip-directory-architecture
7
20
 
8
- ## Overview
21
+ Use this skill to answer where code should live. Directory architecture is the filesystem arrangement of source files by their main reason to change; what distinguishes a good structure is that a maintainer can predict where a concept belongs before reading every import.
9
22
 
10
- Use this skill to turn source layout questions into an evidence-backed architecture review. Do not treat the current folder tree as authoritative, and do not invent an "optimal" structure without proving the ownership concepts from code, tests, docs, and dependency evidence.
23
+ Load shared mechanics from [`../_shared/SKILL.md`](../_shared/SKILL.md).
11
24
 
12
- A directory architecture is the filesystem arrangement of source files by their main reason to change. Its defining trait is that a maintainer can predict where a concept belongs before reading every import.
25
+ <!-- BEGIN GENERATED SKILL COMMANDS -->
26
+ ## Commands for this skill
13
27
 
14
- An ownership boundary is a folder, package, module, or convention that groups code around one stable responsibility. Its defining trait is that code inside the boundary should usually change for the same kind of reason.
28
+ | Command | Purpose | When |
29
+ | --- | --- | --- |
30
+ | `scip-query system <scope>` | Full module map: files, symbols, deps in/out | Inventory evidence: files, symbols, deps in/out for the scope. |
31
+ | `scip-query locality-candidates --json --full` | Find directory-locality and ancestry candidates from consumer ownership | Inventory evidence: directory-locality candidates from consumer ownership. |
32
+ | `scip-query similar-files --full --json` | Find heuristic similar-file candidates from dependency profiles | Inventory evidence: files with overlapping dependency profiles. |
33
+ | `scip-query cycles` | Detect circular dependency chains between files | Inventory evidence: circular dependency chains between files. |
34
+ | `scip-query co-change --json --full` | Files that change together in git history without a dependency edge — hidden coupling candidates | Inventory evidence: hidden file-level coupling from git history. |
35
+ | `scip-query config-validate --json` | Validate .scipquery.json, including structured suppressions and declared coupling groups | Implement a slice: validate locality config after a move. |
15
36
 
16
- A target structure is a proposed future folder layout for the repo or scope. Its defining trait is that it expresses the desired ownership model, not merely a prettier tree.
37
+ Use this shortlist first. Open [`../_shared/SKILL.md`](../_shared/SKILL.md) only when it is insufficient.
38
+ <!-- END GENERATED SKILL COMMANDS -->
17
39
 
18
- A migration slice is the smallest set of file moves and import updates that can be verified independently. Its defining trait is that it reduces one structural ambiguity without requiring the whole architecture to move at once.
40
+ ## Terms
19
41
 
20
- ## Non-Negotiables
42
+ An ownership boundary is a folder, package, module, or convention that groups code around one stable responsibility.
21
43
 
22
- 1. Start with evidence, not taste. Refresh the index when stale, then ground claims in `scip-query` outputs plus project docs and tests.
23
- 2. Separate review from migration. A directory architecture review may propose moves; it does not move files unless the user asked for implementation or approved a specific migration slice.
24
- 3. Preserve working conventions. Existing boundaries are not wrong just because they are broad; central folders such as `errors`, `routes`, `workflows`, `schemas`, `contracts`, or `features` may be doing real work.
25
- 4. Do not reward generic `shared`. A shared folder is justified only when the shared concept has a name, owner, and consumers across real boundaries.
26
- 5. Treat messy repos honestly. If ownership concepts are not stable, produce a discovery map and decision list instead of pretending the repo has a clean target structure.
27
- 6. Prefer small verified moves. Broad reorganizations need staged migration slices with import updates, tests, a fresh scip-query index, and `scip-query diff-gate --json`.
44
+ A target structure is a proposed future layout that expresses an ownership model, not merely a prettier tree.
28
45
 
29
- ## Workflow
30
-
31
- ### 1. Bound the Question
32
-
33
- Identify whether the user wants:
34
-
35
- - a review of the existing structure;
36
- - a proposed target structure;
37
- - a locality config decision;
38
- - a migration plan;
39
- - or an actual file-moving implementation.
46
+ A migration slice is the smallest set of file moves and import updates that can be verified independently.
40
47
 
41
- If the user asks for "the best folder structure," translate that into: "What ownership model is supported by this repo's code, tests, product domains, and change history?"
48
+ A slop codebase is a codebase whose files are arranged by accident, convenience, or recent edits rather than stable ownership rules.
42
49
 
43
- ### 2. Refresh and Inventory
50
+ ## Rules
44
51
 
45
- Run:
52
+ 1. Start with evidence, not taste.
53
+ 2. Separate review from migration; do not move files unless asked.
54
+ 3. Preserve broad boundaries when evidence shows they are intentional.
55
+ 4. Do not reward generic `shared` unless the shared concept has a name, owner, and cross-boundary consumers.
56
+ 5. For messy repos, produce a discovery map and decisions instead of pretending the target is obvious.
57
+ 6. Prefer small verified moves.
46
58
 
47
- ```bash
48
- scip-query status
49
- scip-query status --capabilities
50
- # If freshness is stale, missing, or unknown:
51
- # scip-query reindex
52
- scip-query stats
53
- find . -maxdepth 3 -type d | sort
54
- ```
55
-
56
- Read durable project guidance before judging structure:
59
+ ## Workflow
57
60
 
58
- ```bash
59
- rg -n "architecture|structure|feature|module|boundary|shared|workflow|route|contract|domain|ownership" AGENTS.md README.md docs agent-os .codex -g '!node_modules'
60
- ```
61
+ ### 1. Bound the question
61
62
 
62
- Use `rg --files` to sample real files in each important folder. Ignore generated, build, coverage, vendored, and dependency directories unless they are part of the architecture question.
63
+ Classify the request: review, target structure, locality config, migration plan, or implementation.
63
64
 
64
- ### 3. Build the Evidence Map
65
+ This step is complete only when the scope and deliverable are explicit.
65
66
 
66
- Use these probes as evidence, not as verdicts:
67
+ ### 2. Inventory evidence
67
68
 
68
69
  ```bash
70
+ scip-query stats
69
71
  scip-query system <scope>
70
72
  scip-query files <pattern>
71
73
  scip-query surface <scope>
@@ -82,101 +84,57 @@ scip-query recent-duplicates
82
84
  scip-query drift
83
85
  ```
84
86
 
85
- For each folder under review, record:
87
+ Also read durable project guidance that names architecture, modules, ownership, routes, workflows, contracts, or domains.
86
88
 
87
- - real-world concept or product area represented by the folder;
88
- - public exports, entry points, routes, commands, or package surfaces;
89
- - main consumers and cross-boundary consumers;
90
- - tests that define the folder's behavior;
91
- - co-change partners and repeated edit patterns;
92
- - duplicated or parallel folder patterns;
93
- - docs or standards that claim ownership rules.
89
+ This step is complete only when each folder under review has evidence for exports, entry points, consumers, tests, co-change partners, and claimed ownership rules.
94
90
 
95
- ### 4. Classify Boundary Maturity
91
+ ### 3. Classify boundary maturity
96
92
 
97
- Classify each candidate folder:
93
+ Classify each candidate:
98
94
 
99
95
  - Mature: repeated, documented, and enforced by imports, tests, routes, packages, standards, or review history.
100
- - Emerging: meaningful and partly repeated, but not yet consistent enough to configure or enforce.
101
- - Accidental: a convenience bucket, legacy pile, generated artifact, recent edit cluster, or mixed folder with unrelated reasons to change.
96
+ - Emerging: meaningful and partly repeated, but not consistent enough to configure.
97
+ - Accidental: convenience bucket, legacy pile, generated artifact, recent edit cluster, or mixed reasons to change.
102
98
 
103
- A slop codebase is a codebase whose files are arranged by accident, convenience, or recent edits rather than stable ownership rules. Its defining trait is that directory names do not reliably predict where code should live. For this case, stop at discovery and decision prompts unless the user explicitly asks for a first migration slice.
99
+ This step is complete only when mature, emerging, and accidental boundaries are separated.
104
100
 
105
- ### 5. Propose the Target Structure
101
+ ### 4. Propose structure or decisions
106
102
 
107
- Produce an architecture proposal with this shape:
103
+ Use this shape:
108
104
 
109
- ````markdown
105
+ ```markdown
110
106
  # Directory Architecture Review
111
107
 
112
108
  ## Scope
113
109
  ## Current Structure Map
114
110
  ## Boundary Maturity
115
-
116
- | Boundary | Evidence | Maturity | Judgment |
117
- | --- | --- | --- | --- |
118
-
119
111
  ## Target Structure
120
-
121
- ```text
122
- src/
123
- ...
124
- ```
125
-
126
112
  ## Move Ledger
127
-
128
- | Slice | Current files | Proposed home | Why | Verification |
129
- | --- | --- | --- | --- | --- |
130
-
131
113
  ## Locality Config
114
+ ## No-Move Decisions
132
115
  ## Deferred Decisions
133
116
  ## Migration Order
134
- ````
135
-
136
- The target structure should name ownership concepts, not just folder labels. Prefer existing names when they already carry meaning. Introduce a new folder only when it removes ambiguity for multiple files or consumers.
137
-
138
- ### 6. Decide What Not to Move
139
-
140
- Explicitly list no-move decisions when:
141
-
142
- - a broad consumer set proves a central boundary is useful;
143
- - a folder is route-facing, package-facing, or contract-facing;
144
- - consumers cross boundaries because the concept is infrastructure;
145
- - moving would hide a domain-specific concept under generic `shared`;
146
- - the evidence is too weak and needs a human ownership decision.
117
+ ```
147
118
 
148
- ### 7. Implement Only a Migration Slice
119
+ List no-move decisions when broad consumers, route/package/contract surfaces, infrastructure roles, generic shared risk, or weak evidence make a move harmful.
149
120
 
150
- When the user asks to proceed, pick the smallest high-confidence slice. Before editing, state:
121
+ This step is complete only when every proposed move has a reason and verification path.
151
122
 
152
- - files to move;
153
- - imports/exports/tests/docs to update;
154
- - expected verification commands;
155
- - rollback risk.
123
+ ### 5. Implement one slice when asked
156
124
 
157
- Then move files with normal filesystem tools, update imports with project tooling where available, and run:
125
+ Before editing, state files to move, imports/exports/tests/docs to update, expected verification, and rollback risk. Then move the smallest high-confidence slice and run:
158
126
 
159
127
  ```bash
160
- scip-query status --capabilities
161
- # If freshness is stale, missing, or unknown:
162
- # scip-query reindex
163
128
  scip-query incomplete-migration
164
129
  scip-query recent-duplicates
165
130
  scip-query co-change <moved-file-or-config>
166
- scip-query diff-gate --json
167
131
  ```
168
132
 
169
- Also run the repo's normal tests or typecheck for the affected workspace. If the migration adds or changes `.scipquery.json` locality settings, run:
133
+ Also run project tests or typecheck for the affected workspace. If `.scipquery.json` locality changed, run:
170
134
 
171
135
  ```bash
172
136
  scip-query config-validate
173
137
  scip-query locality-candidates --json --full
174
138
  ```
175
139
 
176
- ## Output Rules
177
-
178
- - Lead with findings and judgments, not command transcripts.
179
- - Every proposed boundary needs evidence from at least two independent signals or a clear note that it is only a candidate.
180
- - Every proposed move needs a verification path.
181
- - For messy repos, output "discovery mode" and decision questions instead of a fake complete architecture.
182
- - For implementation, never batch unrelated folder moves just because they fit the same target structure.
140
+ Then invoke `scip-verify`. The implementation is complete only when imports, tests, locality signals, and verification are checked.
@@ -1,100 +1,89 @@
1
1
  ---
2
2
  name: scip-doc-reconcile
3
- description: Reconcile standards docs and living documentation with the current code using scip-query doc-drift evidence. Updates descriptive claims, repairs broken file references, and escalates normative violations instead of silently blessing them. Ends with staleness driven to zero.
3
+ description: Reconcile living docs with current code using scip-query doc-drift. Use for stale standards, broken file references, docs that cite moved code, agent guidance, or normative contradictions between documentation and implementation.
4
+ commands:
5
+ - template: "scip-query doc-drift --json --full"
6
+ when: "Build the worklist: every stale-doc candidate, ranked."
7
+ - template: "scip-query doc-drift <doc>"
8
+ when: "Reconcile one doc: staleness detail for a single target."
9
+ - template: "scip-query outline <subject-file>"
10
+ when: "Reconcile one doc: current shape of the code the doc describes."
11
+ - template: "scip-query trace <symbol>"
12
+ when: "Reconcile one doc: verify a symbol the doc mentions still exists as described."
13
+ - template: "scip-query code <symbol>"
14
+ when: "Reconcile one doc: re-derive a snippet from current source."
4
15
  ---
5
16
 
6
- # Doc Reconciliation with scip-query
17
+ # scip-doc-reconcile
7
18
 
8
- Standards docs exist so agents implement consistently. When the code moves and
9
- the doc doesn't, every agent that reads it implements against a dead spec.
10
- This skill reconciles docs with reality — using evidence, not memory.
19
+ Use this skill to make living documentation true again. A living doc is documentation agents or maintainers use to make present-day changes, such as AGENTS.md, CLAUDE.md, standards, command docs, or workflow docs.
11
20
 
12
- ## The One Rule That Matters
21
+ Load shared mechanics from [`../_shared/SKILL.md`](../_shared/SKILL.md).
13
22
 
14
- A doc contains two kinds of statements, and they drift differently:
23
+ <!-- BEGIN GENERATED SKILL COMMANDS -->
24
+ ## Commands for this skill
15
25
 
16
- - **Descriptive** ("the horses workflow lives in `workflows/horses.ts` and
17
- exposes `listHorses`") when code moved on, **update the doc**.
18
- - **Normative** ("all routes MUST validate stable scope before querying")
19
- when code violates it, **do NOT rewrite the standard to bless the
20
- violation**. Either fix the code to comply, or record the contradiction in
21
- the report for a human decision. Silently weakening a standard to match
22
- drifted code is worse than the drift.
26
+ | Command | Purpose | When |
27
+ | --- | --- | --- |
28
+ | `scip-query doc-drift --json --full` | Stale-doc candidates: code the doc references or co-changed with kept changing after the doc stopped | Build the worklist: every stale-doc candidate, ranked. |
29
+ | `scip-query doc-drift <doc>` | Stale-doc candidates: code the doc references or co-changed with kept changing after the doc stopped | Reconcile one doc: staleness detail for a single target. |
30
+ | `scip-query outline <subject-file>` | Tree view of symbols in a file, with line ranges | Reconcile one doc: current shape of the code the doc describes. |
31
+ | `scip-query trace <symbol>` | Trace a symbol: definition + all references | Reconcile one doc: verify a symbol the doc mentions still exists as described. |
32
+ | `scip-query code <symbol>` | Read the source code for a symbol (bounded to its definition range) | Reconcile one doc: re-derive a snippet from current source. |
23
33
 
24
- When unsure which kind a statement is: MUST/SHOULD/NEVER language is
25
- normative; file paths, symbol names, and behavior descriptions are
26
- descriptive.
34
+ Use this shortlist first. Open [`../_shared/SKILL.md`](../_shared/SKILL.md) only when it is insufficient.
35
+ <!-- END GENERATED SKILL COMMANDS -->
36
+
37
+ ## Rule
38
+
39
+ Separate statement types:
40
+
41
+ - Descriptive claims say what the code currently does or where it lives. Update them when code moves.
42
+ - Normative claims say what code must or should do. If code violates them, fix the code or escalate the contradiction; do not weaken the standard silently.
43
+
44
+ This distinction is the core of doc reconciliation.
27
45
 
28
46
  ## Workflow
29
47
 
30
- ### 1. Build the evidence-backed worklist
48
+ ### 1. Build the worklist
31
49
 
32
50
  ```bash
33
- scip-query status --capabilities
34
- # If freshness is stale, missing, or unknown:
35
- # scip-query reindex
36
- scip-query doc-drift # all living docs, ranked by staleness
37
- scip-query doc-drift agent-os/standards # scoped to a standards tree
51
+ scip-query doc-drift --json --full
52
+ scip-query doc-drift <doc-or-tree>
38
53
  ```
39
54
 
40
- Triage order:
41
- 1. Docs with `BROKEN REFERENCE` lines (the spec cites deleted code — actively wrong)
42
- 2. Highest staleness score
43
- 3. Docs agents read most (AGENTS.md, CLAUDE.md, standards indexes)
55
+ Prioritize broken references, highest staleness, then docs agents read most. Do not reconcile archival records such as dated plans, ADRs, or reports — list them in `.scipquery.json` `docs.snapshotPaths` so `doc-drift` excludes them with a labeled exclusion instead of resurfacing them every sweep.
44
56
 
45
- Track each doc as a task. Archival docs (dated plans, ADRs, reports) are
46
- excluded automatically — do not "reconcile" records of past decisions.
57
+ This step is complete only when each target doc is selected for a current-use reason.
47
58
 
48
- ### 2. Reconcile one doc at a time
59
+ ### 2. Reconcile one doc
49
60
 
50
- For each doc, gather what actually changed:
61
+ For each doc:
51
62
 
52
63
  ```bash
53
- scip-query doc-drift <doc> # its subjects + changes since
54
- git log --oneline -15 -- <subject-file> # WHY the subject changed
55
- scip-query outline <subject-file> # what it looks like NOW
56
- scip-query system <module> # current module shape
57
- scip-query trace <symbol-the-doc-mentions> # does it still exist? who uses it?
64
+ scip-query doc-drift <doc>
65
+ scip-query outline <subject-file>
66
+ scip-query system <module>
67
+ scip-query trace <symbol-the-doc-mentions>
68
+ scip-query code <symbol>
58
69
  ```
59
70
 
60
- Then edit the doc:
71
+ Use Git history only to understand why a subject changed, not as a substitute for current code evidence.
72
+
73
+ Fix broken references by finding the current code or deleting the obsolete claim. Rewrite stale descriptive claims from current source evidence. Re-derive snippets from `scip-query code`. Record normative contradictions instead of changing standards to bless drifted code.
61
74
 
62
- - **Broken references**: find where the code went (`scip-query files <stem>`,
63
- `git log --follow`) and update the citation — or delete the claim if the
64
- capability is gone.
65
- - **Stale descriptive claims**: re-read the subject files and rewrite the
66
- claims to match current behavior. Every concrete claim you write must be
67
- something you verified with a scip-query command this session — no claims
68
- from memory.
69
- - **Examples and snippets**: re-derive them from current code
70
- (`scip-query code <symbol>`), don't patch them by eye.
71
- - **Normative violations found while reading**: add them to the report under
72
- "Standard vs code contradictions" with file:line evidence. Do not edit the
73
- normative text.
75
+ This step is complete only when every edited claim is supported by evidence from this session.
74
76
 
75
- ### 3. Verify, per doc and overall
77
+ ### 3. Verify
76
78
 
77
79
  ```bash
78
- scip-query doc-drift <doc> # staleness must drop to 0, broken refs to none
79
- scip-query diff-gate --json # your own doc edits gate clean before commit
80
+ scip-query doc-drift <doc>
80
81
  ```
81
82
 
82
- A doc still showing staleness after your edit means a subject changed in
83
- ways you haven't reflected — go back.
83
+ Invoke `scip-verify` when the documentation change is part of a codebase diff. The doc is complete only when staleness drops to zero or the remaining contradiction is explicitly reported.
84
84
 
85
85
  ### 4. Report
86
86
 
87
- - Per doc: staleness before after, broken references fixed, claims updated.
88
- - **Standard vs code contradictions** (normative): each with the standard's
89
- requirement, the violating file:line, and a recommendation (fix code /
90
- amend standard) — explicitly awaiting a human call.
91
- - Docs recommended for deletion (describe removed capabilities entirely).
92
-
93
- ## Hard Rules
87
+ Report staleness before and after, broken references fixed, claims updated, normative contradictions, and docs recommended for deletion.
94
88
 
95
- 1. Every updated claim cites the scip-query command that verified it (in the
96
- commit message or PR description).
97
- 2. Never weaken normative language to match drifted code.
98
- 3. Never reconcile archival docs (plans, ADRs, reports) — they are records.
99
- 4. One commit per doc (or tight group) so review is per-standard.
100
- 5. Re-run `scip-query doc-drift` at the end; the summary line is the result.
89
+ Do not claim reconciliation is done until `doc-drift` has been rerun.