kirograph 0.27.2 → 0.28.1

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 (788) hide show
  1. package/README.md +14 -7
  2. package/dist/bin/commands/annotations.js +56 -0
  3. package/dist/bin/commands/annotations.js.map +7 -0
  4. package/dist/bin/commands/ast-rewrite.js +55 -0
  5. package/dist/bin/commands/ast-rewrite.js.map +7 -0
  6. package/dist/bin/commands/bench.js +103 -0
  7. package/dist/bin/commands/bench.js.map +7 -0
  8. package/dist/bin/commands/branch.js +133 -0
  9. package/dist/bin/commands/branch.js.map +7 -0
  10. package/dist/bin/commands/changelog.js +55 -0
  11. package/dist/bin/commands/changelog.js.map +7 -0
  12. package/dist/bin/commands/commit-context.js +55 -0
  13. package/dist/bin/commands/commit-context.js.map +7 -0
  14. package/dist/bin/commands/complexity.js +60 -0
  15. package/dist/bin/commands/complexity.js.map +7 -0
  16. package/dist/bin/commands/cost.js +146 -0
  17. package/dist/bin/commands/cost.js.map +7 -0
  18. package/dist/bin/commands/dependency-depth.js +55 -0
  19. package/dist/bin/commands/dependency-depth.js.map +7 -0
  20. package/dist/bin/commands/diff-context.js +55 -0
  21. package/dist/bin/commands/diff-context.js.map +7 -0
  22. package/dist/bin/commands/distribution.js +56 -0
  23. package/dist/bin/commands/distribution.js.map +7 -0
  24. package/dist/bin/commands/doc-coverage.js +56 -0
  25. package/dist/bin/commands/doc-coverage.js.map +7 -0
  26. package/dist/bin/commands/doctor.js +202 -0
  27. package/dist/bin/commands/doctor.js.map +7 -0
  28. package/dist/bin/commands/dsm.js +56 -0
  29. package/dist/bin/commands/dsm.js.map +7 -0
  30. package/dist/bin/commands/gini.js +55 -0
  31. package/dist/bin/commands/gini.js.map +7 -0
  32. package/dist/bin/commands/god-class.js +56 -0
  33. package/dist/bin/commands/god-class.js.map +7 -0
  34. package/dist/bin/commands/health.js +55 -0
  35. package/dist/bin/commands/health.js.map +7 -0
  36. package/dist/bin/commands/help.js +224 -45
  37. package/dist/bin/commands/help.js.map +2 -2
  38. package/dist/bin/commands/inheritance-depth.js +56 -0
  39. package/dist/bin/commands/inheritance-depth.js.map +7 -0
  40. package/dist/bin/commands/insert-at.js +55 -0
  41. package/dist/bin/commands/insert-at.js.map +7 -0
  42. package/dist/bin/commands/largest.js +56 -0
  43. package/dist/bin/commands/largest.js.map +7 -0
  44. package/dist/bin/commands/manifest.js +158 -0
  45. package/dist/bin/commands/manifest.js.map +7 -0
  46. package/dist/bin/commands/module-api.js +57 -0
  47. package/dist/bin/commands/module-api.js.map +7 -0
  48. package/dist/bin/commands/monitor.js +91 -0
  49. package/dist/bin/commands/monitor.js.map +7 -0
  50. package/dist/bin/commands/multi-replace.js +66 -0
  51. package/dist/bin/commands/multi-replace.js.map +7 -0
  52. package/dist/bin/commands/pr-context.js +55 -0
  53. package/dist/bin/commands/pr-context.js.map +7 -0
  54. package/dist/bin/commands/query.js +19 -1
  55. package/dist/bin/commands/query.js.map +3 -3
  56. package/dist/bin/commands/rank.js +56 -0
  57. package/dist/bin/commands/rank.js.map +7 -0
  58. package/dist/bin/commands/read.js +1 -1
  59. package/dist/bin/commands/read.js.map +2 -2
  60. package/dist/bin/commands/recursion.js +56 -0
  61. package/dist/bin/commands/recursion.js.map +7 -0
  62. package/dist/bin/commands/rename-preview.js +56 -0
  63. package/dist/bin/commands/rename-preview.js.map +7 -0
  64. package/dist/bin/commands/session.js +60 -0
  65. package/dist/bin/commands/session.js.map +7 -0
  66. package/dist/bin/commands/simplify-scan.js +56 -0
  67. package/dist/bin/commands/simplify-scan.js.map +7 -0
  68. package/dist/bin/commands/str-replace.js +55 -0
  69. package/dist/bin/commands/str-replace.js.map +7 -0
  70. package/dist/bin/commands/test-coverage.js +59 -0
  71. package/dist/bin/commands/test-coverage.js.map +7 -0
  72. package/dist/bin/commands/test-map.js +56 -0
  73. package/dist/bin/commands/test-map.js.map +7 -0
  74. package/dist/bin/commands/test-risk.js +59 -0
  75. package/dist/bin/commands/test-risk.js.map +7 -0
  76. package/dist/bin/commands/unused-imports.js +55 -0
  77. package/dist/bin/commands/unused-imports.js.map +7 -0
  78. package/dist/bin/commands/upgrade.js +78 -0
  79. package/dist/bin/commands/upgrade.js.map +7 -0
  80. package/dist/bin/installer/common.js +5 -1
  81. package/dist/bin/installer/common.js.map +2 -2
  82. package/dist/bin/installer/config-prompt.js +239 -93
  83. package/dist/bin/installer/config-prompt.js.map +3 -3
  84. package/dist/bin/installer/index.js +38 -6
  85. package/dist/bin/installer/index.js.map +2 -2
  86. package/dist/bin/installer/instructions.js +7 -11
  87. package/dist/bin/installer/instructions.js.map +2 -2
  88. package/dist/bin/installer/mcp.js.map +2 -2
  89. package/dist/bin/installer/steering.js +531 -100
  90. package/dist/bin/installer/steering.js.map +2 -2
  91. package/dist/bin/installer/targets/kiro.js +7 -3
  92. package/dist/bin/installer/targets/kiro.js.map +2 -2
  93. package/dist/bin/kirograph.js +73 -1
  94. package/dist/bin/kirograph.js.map +3 -3
  95. package/dist/config.js +26 -8
  96. package/dist/config.js.map +2 -2
  97. package/dist/core/branch-manager.js +111 -0
  98. package/dist/core/branch-manager.js.map +7 -0
  99. package/dist/core/pipeline.js +3 -3
  100. package/dist/core/pipeline.js.map +2 -2
  101. package/dist/db/database.js +34 -7
  102. package/dist/db/database.js.map +2 -2
  103. package/dist/db/schema.sql +7 -1
  104. package/dist/extraction/complexity.js +116 -0
  105. package/dist/extraction/complexity.js.map +7 -0
  106. package/dist/extraction/extractor.js +52 -1
  107. package/dist/extraction/extractor.js.map +2 -2
  108. package/dist/graph/git-context.js +229 -0
  109. package/dist/graph/git-context.js.map +7 -0
  110. package/dist/index.js +4 -2
  111. package/dist/index.js.map +2 -2
  112. package/dist/mcp/handler.js +446 -0
  113. package/dist/mcp/handler.js.map +7 -0
  114. package/dist/mcp/handlers/architecture.js +297 -0
  115. package/dist/mcp/handlers/architecture.js.map +7 -0
  116. package/dist/mcp/handlers/branch.js +175 -0
  117. package/dist/mcp/handlers/branch.js.map +7 -0
  118. package/dist/mcp/handlers/code-health.js +563 -0
  119. package/dist/mcp/handlers/code-health.js.map +7 -0
  120. package/dist/mcp/handlers/complexity.js +267 -0
  121. package/dist/mcp/handlers/complexity.js.map +7 -0
  122. package/dist/mcp/handlers/core.js +611 -0
  123. package/dist/mcp/handlers/core.js.map +7 -0
  124. package/dist/mcp/handlers/data.js +337 -0
  125. package/dist/mcp/handlers/data.js.map +7 -0
  126. package/dist/mcp/handlers/docs.js +159 -0
  127. package/dist/mcp/handlers/docs.js.map +7 -0
  128. package/dist/mcp/handlers/edit-primitives.js +200 -0
  129. package/dist/mcp/handlers/edit-primitives.js.map +7 -0
  130. package/dist/mcp/handlers/git-context.js +286 -0
  131. package/dist/mcp/handlers/git-context.js.map +7 -0
  132. package/dist/mcp/handlers/memory.js +363 -0
  133. package/dist/mcp/handlers/memory.js.map +7 -0
  134. package/dist/mcp/handlers/patterns.js +310 -0
  135. package/dist/mcp/handlers/patterns.js.map +7 -0
  136. package/dist/mcp/handlers/security.js +699 -0
  137. package/dist/mcp/handlers/security.js.map +7 -0
  138. package/dist/mcp/handlers/utils.js +97 -0
  139. package/dist/mcp/handlers/utils.js.map +7 -0
  140. package/dist/mcp/handlers/watchmen.js +104 -0
  141. package/dist/mcp/handlers/watchmen.js.map +7 -0
  142. package/dist/mcp/handlers/wiki.js +242 -0
  143. package/dist/mcp/handlers/wiki.js.map +7 -0
  144. package/dist/mcp/server.js +72 -3
  145. package/dist/mcp/server.js.map +2 -2
  146. package/dist/mcp/tool-names.js +94 -7
  147. package/dist/mcp/tool-names.js.map +2 -2
  148. package/dist/mcp/tools.js +445 -3210
  149. package/dist/mcp/tools.js.map +3 -3
  150. package/dist/types.js.map +2 -2
  151. package/package.json +36 -10
  152. package/dist/architecture/index.d.ts +0 -11
  153. package/dist/architecture/index.d.ts.map +0 -1
  154. package/dist/architecture/layers/csharp.d.ts +0 -6
  155. package/dist/architecture/layers/csharp.d.ts.map +0 -1
  156. package/dist/architecture/layers/dart.d.ts +0 -10
  157. package/dist/architecture/layers/dart.d.ts.map +0 -1
  158. package/dist/architecture/layers/elixir.d.ts +0 -6
  159. package/dist/architecture/layers/elixir.d.ts.map +0 -1
  160. package/dist/architecture/layers/go.d.ts +0 -7
  161. package/dist/architecture/layers/go.d.ts.map +0 -1
  162. package/dist/architecture/layers/index.d.ts +0 -30
  163. package/dist/architecture/layers/index.d.ts.map +0 -1
  164. package/dist/architecture/layers/java.d.ts +0 -7
  165. package/dist/architecture/layers/java.d.ts.map +0 -1
  166. package/dist/architecture/layers/ocaml.d.ts +0 -6
  167. package/dist/architecture/layers/ocaml.d.ts.map +0 -1
  168. package/dist/architecture/layers/python.d.ts +0 -7
  169. package/dist/architecture/layers/python.d.ts.map +0 -1
  170. package/dist/architecture/layers/ruby.d.ts +0 -6
  171. package/dist/architecture/layers/ruby.d.ts.map +0 -1
  172. package/dist/architecture/layers/rust.d.ts +0 -6
  173. package/dist/architecture/layers/rust.d.ts.map +0 -1
  174. package/dist/architecture/layers/scala.d.ts +0 -6
  175. package/dist/architecture/layers/scala.d.ts.map +0 -1
  176. package/dist/architecture/layers/solidity.d.ts +0 -6
  177. package/dist/architecture/layers/solidity.d.ts.map +0 -1
  178. package/dist/architecture/layers/types.d.ts +0 -2
  179. package/dist/architecture/layers/types.d.ts.map +0 -1
  180. package/dist/architecture/layers/typescript.d.ts +0 -9
  181. package/dist/architecture/layers/typescript.d.ts.map +0 -1
  182. package/dist/architecture/layers/vue.d.ts +0 -6
  183. package/dist/architecture/layers/vue.d.ts.map +0 -1
  184. package/dist/architecture/manifest/cargo.d.ts +0 -3
  185. package/dist/architecture/manifest/cargo.d.ts.map +0 -1
  186. package/dist/architecture/manifest/csproj.d.ts +0 -3
  187. package/dist/architecture/manifest/csproj.d.ts.map +0 -1
  188. package/dist/architecture/manifest/elm.d.ts +0 -3
  189. package/dist/architecture/manifest/elm.d.ts.map +0 -1
  190. package/dist/architecture/manifest/go.d.ts +0 -3
  191. package/dist/architecture/manifest/go.d.ts.map +0 -1
  192. package/dist/architecture/manifest/gradle.d.ts +0 -3
  193. package/dist/architecture/manifest/gradle.d.ts.map +0 -1
  194. package/dist/architecture/manifest/index.d.ts +0 -12
  195. package/dist/architecture/manifest/index.d.ts.map +0 -1
  196. package/dist/architecture/manifest/maven.d.ts +0 -3
  197. package/dist/architecture/manifest/maven.d.ts.map +0 -1
  198. package/dist/architecture/manifest/npm.d.ts +0 -3
  199. package/dist/architecture/manifest/npm.d.ts.map +0 -1
  200. package/dist/architecture/manifest/ocaml.d.ts +0 -3
  201. package/dist/architecture/manifest/ocaml.d.ts.map +0 -1
  202. package/dist/architecture/manifest/python.d.ts +0 -3
  203. package/dist/architecture/manifest/python.d.ts.map +0 -1
  204. package/dist/architecture/manifest/scala.d.ts +0 -3
  205. package/dist/architecture/manifest/scala.d.ts.map +0 -1
  206. package/dist/architecture/manifest/types.d.ts +0 -2
  207. package/dist/architecture/manifest/types.d.ts.map +0 -1
  208. package/dist/architecture/types.d.ts +0 -91
  209. package/dist/architecture/types.d.ts.map +0 -1
  210. package/dist/banner.d.ts +0 -6
  211. package/dist/banner.d.ts.map +0 -1
  212. package/dist/banner.js +0 -67
  213. package/dist/banner.js.map +0 -1
  214. package/dist/bin/banner.d.ts +0 -6
  215. package/dist/bin/banner.d.ts.map +0 -1
  216. package/dist/bin/commands/affected.d.ts +0 -3
  217. package/dist/bin/commands/affected.d.ts.map +0 -1
  218. package/dist/bin/commands/architecture.d.ts +0 -3
  219. package/dist/bin/commands/architecture.d.ts.map +0 -1
  220. package/dist/bin/commands/attack-surface.d.ts +0 -3
  221. package/dist/bin/commands/attack-surface.d.ts.map +0 -1
  222. package/dist/bin/commands/benchmark.d.ts +0 -9
  223. package/dist/bin/commands/benchmark.d.ts.map +0 -1
  224. package/dist/bin/commands/budget.d.ts +0 -6
  225. package/dist/bin/commands/budget.d.ts.map +0 -1
  226. package/dist/bin/commands/caveman.d.ts +0 -7
  227. package/dist/bin/commands/caveman.d.ts.map +0 -1
  228. package/dist/bin/commands/communities.d.ts +0 -3
  229. package/dist/bin/commands/communities.d.ts.map +0 -1
  230. package/dist/bin/commands/compression.d.ts +0 -7
  231. package/dist/bin/commands/compression.d.ts.map +0 -1
  232. package/dist/bin/commands/configure-mcp.js +0 -104
  233. package/dist/bin/commands/configure-mcp.js.map +0 -7
  234. package/dist/bin/commands/context.d.ts +0 -3
  235. package/dist/bin/commands/context.d.ts.map +0 -1
  236. package/dist/bin/commands/coupling.d.ts +0 -3
  237. package/dist/bin/commands/coupling.d.ts.map +0 -1
  238. package/dist/bin/commands/dashboard.d.ts +0 -3
  239. package/dist/bin/commands/dashboard.d.ts.map +0 -1
  240. package/dist/bin/commands/data.d.ts +0 -3
  241. package/dist/bin/commands/data.d.ts.map +0 -1
  242. package/dist/bin/commands/dead-code.d.ts +0 -3
  243. package/dist/bin/commands/dead-code.d.ts.map +0 -1
  244. package/dist/bin/commands/dep-confusion.d.ts +0 -3
  245. package/dist/bin/commands/dep-confusion.d.ts.map +0 -1
  246. package/dist/bin/commands/docs.d.ts +0 -3
  247. package/dist/bin/commands/docs.d.ts.map +0 -1
  248. package/dist/bin/commands/exec.d.ts +0 -11
  249. package/dist/bin/commands/exec.d.ts.map +0 -1
  250. package/dist/bin/commands/export.d.ts +0 -3
  251. package/dist/bin/commands/export.d.ts.map +0 -1
  252. package/dist/bin/commands/files.d.ts +0 -3
  253. package/dist/bin/commands/files.d.ts.map +0 -1
  254. package/dist/bin/commands/flows.d.ts +0 -3
  255. package/dist/bin/commands/flows.d.ts.map +0 -1
  256. package/dist/bin/commands/gain.d.ts +0 -6
  257. package/dist/bin/commands/gain.d.ts.map +0 -1
  258. package/dist/bin/commands/help.d.ts +0 -11
  259. package/dist/bin/commands/help.d.ts.map +0 -1
  260. package/dist/bin/commands/hotspots.d.ts +0 -3
  261. package/dist/bin/commands/hotspots.d.ts.map +0 -1
  262. package/dist/bin/commands/index.d.ts +0 -3
  263. package/dist/bin/commands/index.d.ts.map +0 -1
  264. package/dist/bin/commands/init.d.ts +0 -3
  265. package/dist/bin/commands/init.d.ts.map +0 -1
  266. package/dist/bin/commands/install.d.ts +0 -3
  267. package/dist/bin/commands/install.d.ts.map +0 -1
  268. package/dist/bin/commands/licenses.d.ts +0 -3
  269. package/dist/bin/commands/licenses.d.ts.map +0 -1
  270. package/dist/bin/commands/mark-dirty.d.ts +0 -3
  271. package/dist/bin/commands/mark-dirty.d.ts.map +0 -1
  272. package/dist/bin/commands/memory.d.ts +0 -16
  273. package/dist/bin/commands/memory.d.ts.map +0 -1
  274. package/dist/bin/commands/package.d.ts +0 -3
  275. package/dist/bin/commands/package.d.ts.map +0 -1
  276. package/dist/bin/commands/path.d.ts +0 -3
  277. package/dist/bin/commands/path.d.ts.map +0 -1
  278. package/dist/bin/commands/pattern.d.ts +0 -3
  279. package/dist/bin/commands/pattern.d.ts.map +0 -1
  280. package/dist/bin/commands/qdrant.d.ts +0 -3
  281. package/dist/bin/commands/qdrant.d.ts.map +0 -1
  282. package/dist/bin/commands/qdrant.js +0 -159
  283. package/dist/bin/commands/qdrant.js.map +0 -1
  284. package/dist/bin/commands/query.d.ts +0 -3
  285. package/dist/bin/commands/query.d.ts.map +0 -1
  286. package/dist/bin/commands/reachability.d.ts +0 -3
  287. package/dist/bin/commands/reachability.d.ts.map +0 -1
  288. package/dist/bin/commands/read.d.ts +0 -6
  289. package/dist/bin/commands/read.d.ts.map +0 -1
  290. package/dist/bin/commands/refactor.d.ts +0 -3
  291. package/dist/bin/commands/refactor.d.ts.map +0 -1
  292. package/dist/bin/commands/remediation.d.ts +0 -3
  293. package/dist/bin/commands/remediation.d.ts.map +0 -1
  294. package/dist/bin/commands/sbom.d.ts +0 -3
  295. package/dist/bin/commands/sbom.d.ts.map +0 -1
  296. package/dist/bin/commands/security-ci-report.d.ts +0 -9
  297. package/dist/bin/commands/security-ci-report.d.ts.map +0 -1
  298. package/dist/bin/commands/security-export.d.ts +0 -2
  299. package/dist/bin/commands/security-export.d.ts.map +0 -1
  300. package/dist/bin/commands/security-flows.d.ts +0 -3
  301. package/dist/bin/commands/security-flows.d.ts.map +0 -1
  302. package/dist/bin/commands/security-secrets.d.ts +0 -3
  303. package/dist/bin/commands/security-secrets.d.ts.map +0 -1
  304. package/dist/bin/commands/security.d.ts +0 -3
  305. package/dist/bin/commands/security.d.ts.map +0 -1
  306. package/dist/bin/commands/serve.d.ts +0 -3
  307. package/dist/bin/commands/serve.d.ts.map +0 -1
  308. package/dist/bin/commands/snapshot.d.ts +0 -3
  309. package/dist/bin/commands/snapshot.d.ts.map +0 -1
  310. package/dist/bin/commands/staleness.d.ts +0 -3
  311. package/dist/bin/commands/staleness.d.ts.map +0 -1
  312. package/dist/bin/commands/status.d.ts +0 -3
  313. package/dist/bin/commands/status.d.ts.map +0 -1
  314. package/dist/bin/commands/stop.d.ts +0 -3
  315. package/dist/bin/commands/stop.d.ts.map +0 -1
  316. package/dist/bin/commands/stop.js +0 -81
  317. package/dist/bin/commands/stop.js.map +0 -1
  318. package/dist/bin/commands/supply-chain.d.ts +0 -3
  319. package/dist/bin/commands/supply-chain.d.ts.map +0 -1
  320. package/dist/bin/commands/surprising.d.ts +0 -3
  321. package/dist/bin/commands/surprising.d.ts.map +0 -1
  322. package/dist/bin/commands/sync-if-dirty.d.ts +0 -3
  323. package/dist/bin/commands/sync-if-dirty.d.ts.map +0 -1
  324. package/dist/bin/commands/sync.d.ts +0 -3
  325. package/dist/bin/commands/sync.d.ts.map +0 -1
  326. package/dist/bin/commands/typesense.d.ts +0 -3
  327. package/dist/bin/commands/typesense.d.ts.map +0 -1
  328. package/dist/bin/commands/typesense.js +0 -126
  329. package/dist/bin/commands/typesense.js.map +0 -1
  330. package/dist/bin/commands/uninit.d.ts +0 -4
  331. package/dist/bin/commands/uninit.d.ts.map +0 -1
  332. package/dist/bin/commands/unlock.d.ts +0 -3
  333. package/dist/bin/commands/unlock.d.ts.map +0 -1
  334. package/dist/bin/commands/utils.d.ts +0 -17
  335. package/dist/bin/commands/utils.d.ts.map +0 -1
  336. package/dist/bin/commands/vex.d.ts +0 -3
  337. package/dist/bin/commands/vex.d.ts.map +0 -1
  338. package/dist/bin/commands/vuln-suppress.d.ts +0 -3
  339. package/dist/bin/commands/vuln-suppress.d.ts.map +0 -1
  340. package/dist/bin/commands/vulns.d.ts +0 -3
  341. package/dist/bin/commands/vulns.d.ts.map +0 -1
  342. package/dist/bin/installer/archive.d.ts +0 -47
  343. package/dist/bin/installer/archive.d.ts.map +0 -1
  344. package/dist/bin/installer/auto-detect.d.ts +0 -16
  345. package/dist/bin/installer/auto-detect.d.ts.map +0 -1
  346. package/dist/bin/installer/caveman.d.ts +0 -12
  347. package/dist/bin/installer/caveman.d.ts.map +0 -1
  348. package/dist/bin/installer/cli-agent.d.ts +0 -20
  349. package/dist/bin/installer/cli-agent.d.ts.map +0 -1
  350. package/dist/bin/installer/common.d.ts +0 -36
  351. package/dist/bin/installer/common.d.ts.map +0 -1
  352. package/dist/bin/installer/config-prompt.d.ts +0 -13
  353. package/dist/bin/installer/config-prompt.d.ts.map +0 -1
  354. package/dist/bin/installer/dashboard.d.ts +0 -3
  355. package/dist/bin/installer/dashboard.d.ts.map +0 -1
  356. package/dist/bin/installer/detect.d.ts +0 -30
  357. package/dist/bin/installer/detect.d.ts.map +0 -1
  358. package/dist/bin/installer/hooks.d.ts +0 -8
  359. package/dist/bin/installer/hooks.d.ts.map +0 -1
  360. package/dist/bin/installer/index.d.ts +0 -12
  361. package/dist/bin/installer/index.d.ts.map +0 -1
  362. package/dist/bin/installer/instructions.d.ts +0 -14
  363. package/dist/bin/installer/instructions.d.ts.map +0 -1
  364. package/dist/bin/installer/mcp.d.ts +0 -5
  365. package/dist/bin/installer/mcp.d.ts.map +0 -1
  366. package/dist/bin/installer/prompts.d.ts +0 -45
  367. package/dist/bin/installer/prompts.d.ts.map +0 -1
  368. package/dist/bin/installer/qdrant-dashboard.d.ts +0 -4
  369. package/dist/bin/installer/qdrant-dashboard.d.ts.map +0 -1
  370. package/dist/bin/installer/steering.d.ts +0 -17
  371. package/dist/bin/installer/steering.d.ts.map +0 -1
  372. package/dist/bin/installer/targets/aider.d.ts +0 -6
  373. package/dist/bin/installer/targets/aider.d.ts.map +0 -1
  374. package/dist/bin/installer/targets/amp.d.ts +0 -6
  375. package/dist/bin/installer/targets/amp.d.ts.map +0 -1
  376. package/dist/bin/installer/targets/antigravity.d.ts +0 -13
  377. package/dist/bin/installer/targets/antigravity.d.ts.map +0 -1
  378. package/dist/bin/installer/targets/augment.d.ts +0 -6
  379. package/dist/bin/installer/targets/augment.d.ts.map +0 -1
  380. package/dist/bin/installer/targets/claude.d.ts +0 -6
  381. package/dist/bin/installer/targets/claude.d.ts.map +0 -1
  382. package/dist/bin/installer/targets/cline.d.ts +0 -13
  383. package/dist/bin/installer/targets/cline.d.ts.map +0 -1
  384. package/dist/bin/installer/targets/codex.d.ts +0 -6
  385. package/dist/bin/installer/targets/codex.d.ts.map +0 -1
  386. package/dist/bin/installer/targets/continue.d.ts +0 -12
  387. package/dist/bin/installer/targets/continue.d.ts.map +0 -1
  388. package/dist/bin/installer/targets/copilot-cli.d.ts +0 -12
  389. package/dist/bin/installer/targets/copilot-cli.d.ts.map +0 -1
  390. package/dist/bin/installer/targets/copilot.d.ts +0 -6
  391. package/dist/bin/installer/targets/copilot.d.ts.map +0 -1
  392. package/dist/bin/installer/targets/cursor.d.ts +0 -6
  393. package/dist/bin/installer/targets/cursor.d.ts.map +0 -1
  394. package/dist/bin/installer/targets/devin.d.ts +0 -13
  395. package/dist/bin/installer/targets/devin.d.ts.map +0 -1
  396. package/dist/bin/installer/targets/gemini-cli.d.ts +0 -16
  397. package/dist/bin/installer/targets/gemini-cli.d.ts.map +0 -1
  398. package/dist/bin/installer/targets/generic.d.ts +0 -59
  399. package/dist/bin/installer/targets/generic.d.ts.map +0 -1
  400. package/dist/bin/installer/targets/goose.d.ts +0 -6
  401. package/dist/bin/installer/targets/goose.d.ts.map +0 -1
  402. package/dist/bin/installer/targets/index.d.ts +0 -11
  403. package/dist/bin/installer/targets/index.d.ts.map +0 -1
  404. package/dist/bin/installer/targets/junie.d.ts +0 -13
  405. package/dist/bin/installer/targets/junie.d.ts.map +0 -1
  406. package/dist/bin/installer/targets/kilo.d.ts +0 -12
  407. package/dist/bin/installer/targets/kilo.d.ts.map +0 -1
  408. package/dist/bin/installer/targets/kiro.d.ts +0 -5
  409. package/dist/bin/installer/targets/kiro.d.ts.map +0 -1
  410. package/dist/bin/installer/targets/opencode.d.ts +0 -13
  411. package/dist/bin/installer/targets/opencode.d.ts.map +0 -1
  412. package/dist/bin/installer/targets/openhands.d.ts +0 -6
  413. package/dist/bin/installer/targets/openhands.d.ts.map +0 -1
  414. package/dist/bin/installer/targets/qoder.d.ts +0 -12
  415. package/dist/bin/installer/targets/qoder.d.ts.map +0 -1
  416. package/dist/bin/installer/targets/qwen.d.ts +0 -12
  417. package/dist/bin/installer/targets/qwen.d.ts.map +0 -1
  418. package/dist/bin/installer/targets/replit.d.ts +0 -6
  419. package/dist/bin/installer/targets/replit.d.ts.map +0 -1
  420. package/dist/bin/installer/targets/roo.d.ts +0 -13
  421. package/dist/bin/installer/targets/roo.d.ts.map +0 -1
  422. package/dist/bin/installer/targets/tabnine.d.ts +0 -6
  423. package/dist/bin/installer/targets/tabnine.d.ts.map +0 -1
  424. package/dist/bin/installer/targets/trae.d.ts +0 -6
  425. package/dist/bin/installer/targets/trae.d.ts.map +0 -1
  426. package/dist/bin/installer/targets/warp.d.ts +0 -12
  427. package/dist/bin/installer/targets/warp.d.ts.map +0 -1
  428. package/dist/bin/installer/targets/windsurf.d.ts +0 -13
  429. package/dist/bin/installer/targets/windsurf.d.ts.map +0 -1
  430. package/dist/bin/kirograph.d.ts +0 -6
  431. package/dist/bin/kirograph.d.ts.map +0 -1
  432. package/dist/bin/progress.d.ts +0 -29
  433. package/dist/bin/progress.d.ts.map +0 -1
  434. package/dist/bin/ui.d.ts +0 -11
  435. package/dist/bin/ui.d.ts.map +0 -1
  436. package/dist/compression/filters/aws.d.ts +0 -9
  437. package/dist/compression/filters/aws.d.ts.map +0 -1
  438. package/dist/compression/filters/docker.d.ts +0 -6
  439. package/dist/compression/filters/docker.d.ts.map +0 -1
  440. package/dist/compression/filters/files.d.ts +0 -6
  441. package/dist/compression/filters/files.d.ts.map +0 -1
  442. package/dist/compression/filters/generic.d.ts +0 -7
  443. package/dist/compression/filters/generic.d.ts.map +0 -1
  444. package/dist/compression/filters/git.d.ts +0 -6
  445. package/dist/compression/filters/git.d.ts.map +0 -1
  446. package/dist/compression/filters/github.d.ts +0 -6
  447. package/dist/compression/filters/github.d.ts.map +0 -1
  448. package/dist/compression/filters/lint.d.ts +0 -6
  449. package/dist/compression/filters/lint.d.ts.map +0 -1
  450. package/dist/compression/filters/misc.d.ts +0 -6
  451. package/dist/compression/filters/misc.d.ts.map +0 -1
  452. package/dist/compression/filters/package.d.ts +0 -6
  453. package/dist/compression/filters/package.d.ts.map +0 -1
  454. package/dist/compression/filters/test.d.ts +0 -6
  455. package/dist/compression/filters/test.d.ts.map +0 -1
  456. package/dist/compression/index.d.ts +0 -29
  457. package/dist/compression/index.d.ts.map +0 -1
  458. package/dist/compression/naive-cost.d.ts +0 -26
  459. package/dist/compression/naive-cost.d.ts.map +0 -1
  460. package/dist/compression/tracker.d.ts +0 -155
  461. package/dist/compression/tracker.d.ts.map +0 -1
  462. package/dist/compression/types.d.ts +0 -49
  463. package/dist/compression/types.d.ts.map +0 -1
  464. package/dist/config.d.ts +0 -138
  465. package/dist/config.d.ts.map +0 -1
  466. package/dist/context/index.d.ts +0 -61
  467. package/dist/context/index.d.ts.map +0 -1
  468. package/dist/core/file-tree.d.ts +0 -15
  469. package/dist/core/file-tree.d.ts.map +0 -1
  470. package/dist/core/lock-manager.d.ts +0 -22
  471. package/dist/core/lock-manager.d.ts.map +0 -1
  472. package/dist/core/pipeline.d.ts +0 -40
  473. package/dist/core/pipeline.d.ts.map +0 -1
  474. package/dist/core/snapshot.d.ts +0 -58
  475. package/dist/core/snapshot.d.ts.map +0 -1
  476. package/dist/data/filters.d.ts +0 -23
  477. package/dist/data/filters.d.ts.map +0 -1
  478. package/dist/data/indexer.d.ts +0 -25
  479. package/dist/data/indexer.d.ts.map +0 -1
  480. package/dist/data/linker.d.ts +0 -37
  481. package/dist/data/linker.d.ts.map +0 -1
  482. package/dist/data/linker.test.js +0 -60
  483. package/dist/data/linker.test.js.map +0 -7
  484. package/dist/data/lint.d.ts +0 -27
  485. package/dist/data/lint.d.ts.map +0 -1
  486. package/dist/data/parsers/__fixtures__/pdf-inspector-stub.js +0 -41
  487. package/dist/data/parsers/__fixtures__/pdf-inspector-stub.js.map +0 -7
  488. package/dist/data/parsers/csv.d.ts +0 -11
  489. package/dist/data/parsers/csv.d.ts.map +0 -1
  490. package/dist/data/parsers/excel.d.ts +0 -10
  491. package/dist/data/parsers/excel.d.ts.map +0 -1
  492. package/dist/data/parsers/index.d.ts +0 -28
  493. package/dist/data/parsers/index.d.ts.map +0 -1
  494. package/dist/data/parsers/json-array.d.ts +0 -9
  495. package/dist/data/parsers/json-array.d.ts.map +0 -1
  496. package/dist/data/parsers/jsonl.d.ts +0 -9
  497. package/dist/data/parsers/jsonl.d.ts.map +0 -1
  498. package/dist/data/parsers/parquet.d.ts +0 -10
  499. package/dist/data/parsers/parquet.d.ts.map +0 -1
  500. package/dist/data/parsers/pdf.test.js +0 -125
  501. package/dist/data/parsers/pdf.test.js.map +0 -7
  502. package/dist/data/profiler.d.ts +0 -29
  503. package/dist/data/profiler.d.ts.map +0 -1
  504. package/dist/data/queries.d.ts +0 -95
  505. package/dist/data/queries.d.ts.map +0 -1
  506. package/dist/data/types.d.ts +0 -103
  507. package/dist/data/types.d.ts.map +0 -1
  508. package/dist/db/database.d.ts +0 -190
  509. package/dist/db/database.d.ts.map +0 -1
  510. package/dist/docs/formats/asciidoc.d.ts +0 -9
  511. package/dist/docs/formats/asciidoc.d.ts.map +0 -1
  512. package/dist/docs/formats/html.d.ts +0 -10
  513. package/dist/docs/formats/html.d.ts.map +0 -1
  514. package/dist/docs/formats/index.d.ts +0 -31
  515. package/dist/docs/formats/index.d.ts.map +0 -1
  516. package/dist/docs/formats/markdown.d.ts +0 -11
  517. package/dist/docs/formats/markdown.d.ts.map +0 -1
  518. package/dist/docs/formats/openapi.d.ts +0 -17
  519. package/dist/docs/formats/openapi.d.ts.map +0 -1
  520. package/dist/docs/formats/org.d.ts +0 -9
  521. package/dist/docs/formats/org.d.ts.map +0 -1
  522. package/dist/docs/formats/plaintext.d.ts +0 -11
  523. package/dist/docs/formats/plaintext.d.ts.map +0 -1
  524. package/dist/docs/formats/rdoc.d.ts +0 -10
  525. package/dist/docs/formats/rdoc.d.ts.map +0 -1
  526. package/dist/docs/formats/rst.d.ts +0 -11
  527. package/dist/docs/formats/rst.d.ts.map +0 -1
  528. package/dist/docs/indexer.d.ts +0 -49
  529. package/dist/docs/indexer.d.ts.map +0 -1
  530. package/dist/docs/linker.d.ts +0 -30
  531. package/dist/docs/linker.d.ts.map +0 -1
  532. package/dist/docs/lint.d.ts +0 -27
  533. package/dist/docs/lint.d.ts.map +0 -1
  534. package/dist/docs/queries.d.ts +0 -78
  535. package/dist/docs/queries.d.ts.map +0 -1
  536. package/dist/docs/section-id.d.ts +0 -48
  537. package/dist/docs/section-id.d.ts.map +0 -1
  538. package/dist/docs/summarizer.d.ts +0 -13
  539. package/dist/docs/summarizer.d.ts.map +0 -1
  540. package/dist/docs/types.d.ts +0 -71
  541. package/dist/docs/types.d.ts.map +0 -1
  542. package/dist/docs/vectors.d.ts +0 -54
  543. package/dist/docs/vectors.d.ts.map +0 -1
  544. package/dist/errors.d.ts +0 -49
  545. package/dist/errors.d.ts.map +0 -1
  546. package/dist/extraction/extractor.d.ts +0 -29
  547. package/dist/extraction/extractor.d.ts.map +0 -1
  548. package/dist/extraction/grammars.d.ts +0 -54
  549. package/dist/extraction/grammars.d.ts.map +0 -1
  550. package/dist/extraction/languages.d.ts +0 -9
  551. package/dist/extraction/languages.d.ts.map +0 -1
  552. package/dist/extraction/notebook.d.ts +0 -14
  553. package/dist/extraction/notebook.d.ts.map +0 -1
  554. package/dist/frameworks/amplify.d.ts +0 -9
  555. package/dist/frameworks/amplify.d.ts.map +0 -1
  556. package/dist/frameworks/angular.d.ts +0 -9
  557. package/dist/frameworks/angular.d.ts.map +0 -1
  558. package/dist/frameworks/ansible.d.ts +0 -8
  559. package/dist/frameworks/ansible.d.ts.map +0 -1
  560. package/dist/frameworks/cloudformation.d.ts +0 -9
  561. package/dist/frameworks/cloudformation.d.ts.map +0 -1
  562. package/dist/frameworks/csharp.d.ts +0 -8
  563. package/dist/frameworks/csharp.d.ts.map +0 -1
  564. package/dist/frameworks/docker.d.ts +0 -9
  565. package/dist/frameworks/docker.d.ts.map +0 -1
  566. package/dist/frameworks/elixir.d.ts +0 -6
  567. package/dist/frameworks/elixir.d.ts.map +0 -1
  568. package/dist/frameworks/express.d.ts +0 -8
  569. package/dist/frameworks/express.d.ts.map +0 -1
  570. package/dist/frameworks/flutter.d.ts +0 -12
  571. package/dist/frameworks/flutter.d.ts.map +0 -1
  572. package/dist/frameworks/go.d.ts +0 -8
  573. package/dist/frameworks/go.d.ts.map +0 -1
  574. package/dist/frameworks/iac.d.ts +0 -10
  575. package/dist/frameworks/iac.d.ts.map +0 -1
  576. package/dist/frameworks/index.d.ts +0 -44
  577. package/dist/frameworks/index.d.ts.map +0 -1
  578. package/dist/frameworks/java.d.ts +0 -8
  579. package/dist/frameworks/java.d.ts.map +0 -1
  580. package/dist/frameworks/kubernetes.d.ts +0 -9
  581. package/dist/frameworks/kubernetes.d.ts.map +0 -1
  582. package/dist/frameworks/laravel.d.ts +0 -9
  583. package/dist/frameworks/laravel.d.ts.map +0 -1
  584. package/dist/frameworks/pulumi.d.ts +0 -9
  585. package/dist/frameworks/pulumi.d.ts.map +0 -1
  586. package/dist/frameworks/python.d.ts +0 -10
  587. package/dist/frameworks/python.d.ts.map +0 -1
  588. package/dist/frameworks/react.d.ts +0 -9
  589. package/dist/frameworks/react.d.ts.map +0 -1
  590. package/dist/frameworks/ruby.d.ts +0 -8
  591. package/dist/frameworks/ruby.d.ts.map +0 -1
  592. package/dist/frameworks/rust.d.ts +0 -8
  593. package/dist/frameworks/rust.d.ts.map +0 -1
  594. package/dist/frameworks/scala.d.ts +0 -6
  595. package/dist/frameworks/scala.d.ts.map +0 -1
  596. package/dist/frameworks/solidity.d.ts +0 -6
  597. package/dist/frameworks/solidity.d.ts.map +0 -1
  598. package/dist/frameworks/svelte.d.ts +0 -8
  599. package/dist/frameworks/svelte.d.ts.map +0 -1
  600. package/dist/frameworks/swift.d.ts +0 -10
  601. package/dist/frameworks/swift.d.ts.map +0 -1
  602. package/dist/frameworks/terraform.d.ts +0 -14
  603. package/dist/frameworks/terraform.d.ts.map +0 -1
  604. package/dist/frameworks/types.d.ts +0 -37
  605. package/dist/frameworks/types.d.ts.map +0 -1
  606. package/dist/frameworks/vue.d.ts +0 -7
  607. package/dist/frameworks/vue.d.ts.map +0 -1
  608. package/dist/graph/communities.d.ts +0 -43
  609. package/dist/graph/communities.d.ts.map +0 -1
  610. package/dist/graph/flows.d.ts +0 -55
  611. package/dist/graph/flows.d.ts.map +0 -1
  612. package/dist/graph/queries.d.ts +0 -53
  613. package/dist/graph/queries.d.ts.map +0 -1
  614. package/dist/graph/refactor.d.ts +0 -43
  615. package/dist/graph/refactor.d.ts.map +0 -1
  616. package/dist/graph/traversal.d.ts +0 -35
  617. package/dist/graph/traversal.d.ts.map +0 -1
  618. package/dist/index.d.ts +0 -134
  619. package/dist/index.d.ts.map +0 -1
  620. package/dist/installer/index.d.ts +0 -10
  621. package/dist/installer/index.d.ts.map +0 -1
  622. package/dist/installer/index.js +0 -526
  623. package/dist/installer/index.js.map +0 -1
  624. package/dist/mcp/cache.d.ts +0 -69
  625. package/dist/mcp/cache.d.ts.map +0 -1
  626. package/dist/mcp/read-modes.d.ts +0 -31
  627. package/dist/mcp/read-modes.d.ts.map +0 -1
  628. package/dist/mcp/server.d.ts +0 -17
  629. package/dist/mcp/server.d.ts.map +0 -1
  630. package/dist/mcp/tool-names.d.ts +0 -2
  631. package/dist/mcp/tool-names.d.ts.map +0 -1
  632. package/dist/mcp/tools.d.ts +0 -49
  633. package/dist/mcp/tools.d.ts.map +0 -1
  634. package/dist/mcp/transport.d.ts +0 -29
  635. package/dist/mcp/transport.d.ts.map +0 -1
  636. package/dist/memory/compress.d.ts +0 -19
  637. package/dist/memory/compress.d.ts.map +0 -1
  638. package/dist/memory/database.d.ts +0 -92
  639. package/dist/memory/database.d.ts.map +0 -1
  640. package/dist/memory/index.d.ts +0 -71
  641. package/dist/memory/index.d.ts.map +0 -1
  642. package/dist/memory/symbols.d.ts +0 -21
  643. package/dist/memory/symbols.d.ts.map +0 -1
  644. package/dist/memory/types.d.ts +0 -78
  645. package/dist/memory/types.d.ts.map +0 -1
  646. package/dist/memory/vectors.d.ts +0 -43
  647. package/dist/memory/vectors.d.ts.map +0 -1
  648. package/dist/patterns/graph.d.ts +0 -16
  649. package/dist/patterns/graph.d.ts.map +0 -1
  650. package/dist/patterns/index.d.ts +0 -4
  651. package/dist/patterns/index.d.ts.map +0 -1
  652. package/dist/patterns/indexer.d.ts +0 -15
  653. package/dist/patterns/indexer.d.ts.map +0 -1
  654. package/dist/patterns/loader.d.ts +0 -18
  655. package/dist/patterns/loader.d.ts.map +0 -1
  656. package/dist/patterns/runner.d.ts +0 -42
  657. package/dist/patterns/runner.d.ts.map +0 -1
  658. package/dist/patterns/types.d.ts +0 -27
  659. package/dist/patterns/types.d.ts.map +0 -1
  660. package/dist/resolution/bridges/android-rn.d.ts +0 -13
  661. package/dist/resolution/bridges/android-rn.d.ts.map +0 -1
  662. package/dist/resolution/bridges/expo-modules.d.ts +0 -10
  663. package/dist/resolution/bridges/expo-modules.d.ts.map +0 -1
  664. package/dist/resolution/bridges/flutter-channel.d.ts +0 -14
  665. package/dist/resolution/bridges/flutter-channel.d.ts.map +0 -1
  666. package/dist/resolution/bridges/index.d.ts +0 -40
  667. package/dist/resolution/bridges/index.d.ts.map +0 -1
  668. package/dist/resolution/bridges/native-events.d.ts +0 -10
  669. package/dist/resolution/bridges/native-events.d.ts.map +0 -1
  670. package/dist/resolution/bridges/native-views.d.ts +0 -13
  671. package/dist/resolution/bridges/native-views.d.ts.map +0 -1
  672. package/dist/resolution/bridges/react-native.d.ts +0 -9
  673. package/dist/resolution/bridges/react-native.d.ts.map +0 -1
  674. package/dist/resolution/bridges/swift-objc.d.ts +0 -14
  675. package/dist/resolution/bridges/swift-objc.d.ts.map +0 -1
  676. package/dist/resolution/bridges/turbomodules.d.ts +0 -10
  677. package/dist/resolution/bridges/turbomodules.d.ts.map +0 -1
  678. package/dist/resolution/index.d.ts +0 -81
  679. package/dist/resolution/index.d.ts.map +0 -1
  680. package/dist/resolution/name-matcher.d.ts +0 -25
  681. package/dist/resolution/name-matcher.d.ts.map +0 -1
  682. package/dist/scripts/postinstall.js +0 -64
  683. package/dist/search/query-utils.d.ts +0 -21
  684. package/dist/search/query-utils.d.ts.map +0 -1
  685. package/dist/search/searcher.d.ts +0 -15
  686. package/dist/search/searcher.d.ts.map +0 -1
  687. package/dist/security/attack-surface.d.ts +0 -46
  688. package/dist/security/attack-surface.d.ts.map +0 -1
  689. package/dist/security/context-warnings.d.ts +0 -40
  690. package/dist/security/context-warnings.d.ts.map +0 -1
  691. package/dist/security/data-flows.d.ts +0 -33
  692. package/dist/security/data-flows.d.ts.map +0 -1
  693. package/dist/security/dep-confusion.d.ts +0 -23
  694. package/dist/security/dep-confusion.d.ts.map +0 -1
  695. package/dist/security/errors.d.ts +0 -16
  696. package/dist/security/errors.d.ts.map +0 -1
  697. package/dist/security/export/fix-suggestions.d.ts +0 -21
  698. package/dist/security/export/fix-suggestions.d.ts.map +0 -1
  699. package/dist/security/export/sbom.d.ts +0 -33
  700. package/dist/security/export/sbom.d.ts.map +0 -1
  701. package/dist/security/export/serialization.d.ts +0 -62
  702. package/dist/security/export/serialization.d.ts.map +0 -1
  703. package/dist/security/export/vex.d.ts +0 -58
  704. package/dist/security/export/vex.d.ts.map +0 -1
  705. package/dist/security/index.d.ts +0 -21
  706. package/dist/security/index.d.ts.map +0 -1
  707. package/dist/security/integrator.d.ts +0 -63
  708. package/dist/security/integrator.d.ts.map +0 -1
  709. package/dist/security/license.d.ts +0 -33
  710. package/dist/security/license.d.ts.map +0 -1
  711. package/dist/security/manifest/adapter.d.ts +0 -92
  712. package/dist/security/manifest/adapter.d.ts.map +0 -1
  713. package/dist/security/manifest/parser.d.ts +0 -73
  714. package/dist/security/manifest/parser.d.ts.map +0 -1
  715. package/dist/security/manifest/plugins/cargo.d.ts +0 -11
  716. package/dist/security/manifest/plugins/cargo.d.ts.map +0 -1
  717. package/dist/security/manifest/plugins/composer.d.ts +0 -11
  718. package/dist/security/manifest/plugins/composer.d.ts.map +0 -1
  719. package/dist/security/manifest/plugins/go.d.ts +0 -12
  720. package/dist/security/manifest/plugins/go.d.ts.map +0 -1
  721. package/dist/security/manifest/plugins/gradle.d.ts +0 -12
  722. package/dist/security/manifest/plugins/gradle.d.ts.map +0 -1
  723. package/dist/security/manifest/plugins/hex.d.ts +0 -11
  724. package/dist/security/manifest/plugins/hex.d.ts.map +0 -1
  725. package/dist/security/manifest/plugins/maven.d.ts +0 -11
  726. package/dist/security/manifest/plugins/maven.d.ts.map +0 -1
  727. package/dist/security/manifest/plugins/npm.d.ts +0 -11
  728. package/dist/security/manifest/plugins/npm.d.ts.map +0 -1
  729. package/dist/security/manifest/plugins/nuget.d.ts +0 -12
  730. package/dist/security/manifest/plugins/nuget.d.ts.map +0 -1
  731. package/dist/security/manifest/plugins/pip.d.ts +0 -11
  732. package/dist/security/manifest/plugins/pip.d.ts.map +0 -1
  733. package/dist/security/manifest/plugins/pubspec.d.ts +0 -11
  734. package/dist/security/manifest/plugins/pubspec.d.ts.map +0 -1
  735. package/dist/security/manifest/plugins/pyproject.d.ts +0 -3
  736. package/dist/security/manifest/plugins/pyproject.d.ts.map +0 -1
  737. package/dist/security/manifest/plugins/rubygems.d.ts +0 -11
  738. package/dist/security/manifest/plugins/rubygems.d.ts.map +0 -1
  739. package/dist/security/manifest/plugins/swift.d.ts +0 -11
  740. package/dist/security/manifest/plugins/swift.d.ts.map +0 -1
  741. package/dist/security/owasp.d.ts +0 -16
  742. package/dist/security/owasp.d.ts.map +0 -1
  743. package/dist/security/pipeline.d.ts +0 -37
  744. package/dist/security/pipeline.d.ts.map +0 -1
  745. package/dist/security/reachability.d.ts +0 -67
  746. package/dist/security/reachability.d.ts.map +0 -1
  747. package/dist/security/remediation.d.ts +0 -51
  748. package/dist/security/remediation.d.ts.map +0 -1
  749. package/dist/security/secrets.d.ts +0 -38
  750. package/dist/security/secrets.d.ts.map +0 -1
  751. package/dist/security/staleness.d.ts +0 -43
  752. package/dist/security/staleness.d.ts.map +0 -1
  753. package/dist/security/supply-chain.d.ts +0 -34
  754. package/dist/security/supply-chain.d.ts.map +0 -1
  755. package/dist/security/suppressions.d.ts +0 -18
  756. package/dist/security/suppressions.d.ts.map +0 -1
  757. package/dist/security/types.d.ts +0 -144
  758. package/dist/security/types.d.ts.map +0 -1
  759. package/dist/security/vuln/client.d.ts +0 -90
  760. package/dist/security/vuln/client.d.ts.map +0 -1
  761. package/dist/security/vuln/epss-client.d.ts +0 -26
  762. package/dist/security/vuln/epss-client.d.ts.map +0 -1
  763. package/dist/security/vuln/index.d.ts +0 -6
  764. package/dist/security/vuln/index.d.ts.map +0 -1
  765. package/dist/security/vuln/osv-adapter.d.ts +0 -58
  766. package/dist/security/vuln/osv-adapter.d.ts.map +0 -1
  767. package/dist/security/vuln/types.d.ts +0 -29
  768. package/dist/security/vuln/types.d.ts.map +0 -1
  769. package/dist/sync/index.d.ts +0 -35
  770. package/dist/sync/index.d.ts.map +0 -1
  771. package/dist/types.d.ts +0 -137
  772. package/dist/types.d.ts.map +0 -1
  773. package/dist/utils.d.ts +0 -52
  774. package/dist/utils.d.ts.map +0 -1
  775. package/dist/vectors/index.d.ts +0 -79
  776. package/dist/vectors/index.d.ts.map +0 -1
  777. package/dist/vectors/lancedb-index.d.ts +0 -50
  778. package/dist/vectors/lancedb-index.d.ts.map +0 -1
  779. package/dist/vectors/orama-index.d.ts +0 -54
  780. package/dist/vectors/orama-index.d.ts.map +0 -1
  781. package/dist/vectors/pglite-index.d.ts +0 -53
  782. package/dist/vectors/pglite-index.d.ts.map +0 -1
  783. package/dist/vectors/qdrant-index.d.ts +0 -77
  784. package/dist/vectors/qdrant-index.d.ts.map +0 -1
  785. package/dist/vectors/typesense-index.d.ts +0 -75
  786. package/dist/vectors/typesense-index.d.ts.map +0 -1
  787. package/dist/vectors/vec-index.d.ts +0 -52
  788. package/dist/vectors/vec-index.d.ts.map +0 -1
@@ -102,7 +102,11 @@ function buildSteeringContent(opts) {
102
102
  const enablePatterns = opts?.enablePatterns ?? false;
103
103
  const enableWiki = opts?.enableWiki ?? false;
104
104
  const enableCodeHealth = opts?.enableCodeHealth ?? false;
105
- const enableAdvancedAnalysis = opts?.enableAdvancedAnalysis ?? false;
105
+ const enableNavigation = opts?.enableNavigation ?? false;
106
+ const enableGitContext = opts?.enableGitContext ?? false;
107
+ const enableComplexity = opts?.enableComplexity ?? false;
108
+ const enableEditPrimitives = opts?.enableEditPrimitives ?? false;
109
+ const enableBranch = opts?.enableBranch ?? false;
106
110
  const enableAgentUtils = opts?.enableAgentUtils ?? false;
107
111
  const enableGeneralCompression = opts?.enableGeneralCompression ?? false;
108
112
  const trackCallSites = opts?.trackCallSites ?? false;
@@ -114,15 +118,17 @@ function buildSteeringContent(opts) {
114
118
  "| Who calls function X? | `kirograph_callers` |",
115
119
  "| What does function X call? | `kirograph_callees` |"
116
120
  ] : [],
117
- "| What breaks if I change X? | `kirograph_impact` |",
118
- "| How are X and Y connected? | `kirograph_path` |",
119
- ...enableAdvancedAnalysis ? ["| What extends / implements this type? | `kirograph_type_hierarchy` |"] : [],
121
+ ...enableNavigation ? [
122
+ "| What breaks if I change X? | `kirograph_impact` |",
123
+ "| What files are indexed? | `kirograph_files` |",
124
+ "| Is the index healthy? | `kirograph_status` |"
125
+ ] : [],
120
126
  ...enableCodeHealth ? [
127
+ "| How are X and Y connected? | `kirograph_path` |",
128
+ "| What extends / implements this type? | `kirograph_type_hierarchy` |",
121
129
  "| Which code is never called? | `kirograph_dead_code` |",
122
130
  "| Are there import cycles? | `kirograph_circular_deps` |"
123
131
  ] : [],
124
- "| What files are indexed? | `kirograph_files` |",
125
- "| Is the index healthy? | `kirograph_status` |",
126
132
  ...enableCodeHealth ? [
127
133
  "| What are the most critical symbols? | `kirograph_hotspots` |",
128
134
  "| Any unexpected cross-module coupling? | `kirograph_surprising` |",
@@ -151,7 +157,30 @@ function buildSteeringContent(opts) {
151
157
  "| Generate SBOM/VEX | `kirograph_sbom` / `kirograph_vex` |",
152
158
  "| Add a private CVE | `kirograph_vuln_add` |"
153
159
  ] : [],
154
- ...enablePatterns ? ["| Find structural code patterns? | `kirograph_live_search` |"] : []
160
+ ...enablePatterns ? ["| Find structural code patterns? | `kirograph_live_search` |"] : [],
161
+ ...enableComplexity ? [
162
+ "| Overall graph health score | `kirograph_health` |",
163
+ "| Most complex functions? | `kirograph_complexity` |",
164
+ "| Which functions are highest risk to change? | `kirograph_test_risk` |",
165
+ "| How are modules coupled? | `kirograph_dsm` |"
166
+ ] : [],
167
+ ...enableGitContext ? [
168
+ "| What symbols did I change? | `kirograph_diff_context` |",
169
+ "| Build commit message context | `kirograph_commit_context` |",
170
+ "| Generate PR description | `kirograph_pr_context` |",
171
+ "| What tests cover symbol X? | `kirograph_test_map` |",
172
+ "| Show per-file coverage report | `kirograph_test_coverage` |"
173
+ ] : [],
174
+ ...enableEditPrimitives ? [
175
+ "| Replace a unique string in a file | `kirograph_str_replace` |",
176
+ "| Insert content before/after an anchor | `kirograph_insert_at` |",
177
+ "| Atomic multi-replacement in a file | `kirograph_multi_str_replace` |"
178
+ ] : [],
179
+ ...enableBranch ? [
180
+ "| List tracked branches | `kirograph_branch_list` |",
181
+ "| What changed between branches? | `kirograph_branch_diff` |",
182
+ "| Search symbols in another branch | `kirograph_branch_search` |"
183
+ ] : []
155
184
  ];
156
185
  let toolRef = `
157
186
  ## Tool reference
@@ -205,7 +234,8 @@ BFS over outgoing \`calls\` edges (depth 1).
205
234
  kirograph_callees(symbol: "handleRequest")
206
235
  \`\`\``;
207
236
  }
208
- toolRef += `
237
+ if (enableNavigation) {
238
+ toolRef += `
209
239
 
210
240
  ### \`kirograph_impact\`: blast radius before a change
211
241
 
@@ -213,7 +243,10 @@ Traverses all incoming edges up to \`depth\` hops. Call this before editing a sy
213
243
 
214
244
  \`\`\`
215
245
  kirograph_impact(symbol: "UserRepository", depth: 3)
216
- \`\`\`
246
+ \`\`\``;
247
+ }
248
+ if (enableCodeHealth) {
249
+ toolRef += `
217
250
 
218
251
  ### \`kirograph_path\`: how are two symbols connected?
219
252
 
@@ -221,9 +254,7 @@ BFS shortest path across all edge types.
221
254
 
222
255
  \`\`\`
223
256
  kirograph_path(from: "LoginController", to: "DatabasePool")
224
- \`\`\``;
225
- if (enableAdvancedAnalysis) {
226
- toolRef += `
257
+ \`\`\`
227
258
 
228
259
  ### \`kirograph_type_hierarchy\`: class/interface inheritance
229
260
 
@@ -254,6 +285,7 @@ kirograph_circular_deps()
254
285
  }
255
286
  toolRef += `
256
287
 
288
+ ${enableNavigation ? `
257
289
  ### \`kirograph_files\`: indexed file structure
258
290
 
259
291
  \`\`\`
@@ -266,7 +298,7 @@ kirograph_files(pattern: "**/*.test.ts")
266
298
 
267
299
  ### \`kirograph_status\`: index health
268
300
 
269
- Returns file count, symbol count, edge count, embedding coverage, DB size. Call when something feels off.`;
301
+ Returns file count, symbol count, edge count, embedding coverage, DB size. Call when something feels off.` : ""}`;
270
302
  if (enableCodeHealth) {
271
303
  toolRef += `
272
304
 
@@ -332,6 +364,168 @@ Returns metadata, coupling metrics, outgoing deps, incoming dependents, and file
332
364
  \`\`\`
333
365
  kirograph_package(package: "auth")
334
366
  kirograph_package(package: "src/services", includeFiles: false)
367
+ \`\`\``;
368
+ }
369
+ if (enableComplexity) {
370
+ toolRef += `
371
+
372
+ ---
373
+
374
+ ## Complexity tools *(require \`enableComplexity: true\` in config)*
375
+
376
+ ### \`kirograph_health\`: composite graph health score
377
+
378
+ Returns a 0\u201310000 score across four dimensions: complexity, dead code, coupling, circular deps.
379
+ Higher is better. Excellent \u2265 9000 \xB7 Good \u2265 7000 \xB7 Fair \u2265 5000 \xB7 Poor \u2265 3000 \xB7 Critical < 3000.
380
+
381
+ \`\`\`
382
+ kirograph_health()
383
+ \`\`\`
384
+
385
+ ### \`kirograph_complexity\`: rank functions by complexity
386
+
387
+ Returns cyclomatic complexity (CC), cognitive complexity, maintainability index (MI), and nesting depth, sorted by chosen metric.
388
+
389
+ \`\`\`
390
+ kirograph_complexity(metric: "cyclomatic", limit: 30, threshold: 10)
391
+ kirograph_complexity(metric: "cognitive")
392
+ kirograph_complexity(metric: "maintainability") // sort ASC \u2014 lowest MI first
393
+ \`\`\`
394
+
395
+ ### \`kirograph_dsm\`: design structure matrix
396
+
397
+ Groups nodes by top-level directory and shows a dependency count matrix between groups. Reveals which modules depend on which others and where tight coupling lives.
398
+
399
+ \`\`\`
400
+ kirograph_dsm()
401
+ kirograph_dsm(limit: 10) // cap number of groups shown
402
+ \`\`\`
403
+
404
+ ### \`kirograph_test_risk\`: risk-ranked functions
405
+
406
+ Risk = complexity \xD7 fan-in. Highest-risk functions are most likely to cause failures when changed.
407
+
408
+ \`\`\`
409
+ kirograph_test_risk(limit: 20)
410
+ kirograph_test_risk(threshold: 50) // only show risk score \u2265 50
411
+ \`\`\``;
412
+ }
413
+ if (enableGitContext) {
414
+ toolRef += `
415
+
416
+ ---
417
+
418
+ ## Git Context tools *(require \`enableGitContext: true\` in config)*
419
+
420
+ ### \`kirograph_diff_context\`: changed symbols in working tree
421
+
422
+ Returns symbols whose definitions overlap with \`git diff\` line ranges, plus their callers and callees. Use before a commit to understand what you actually changed.
423
+
424
+ \`\`\`
425
+ kirograph_diff_context() // unstaged changes
426
+ kirograph_diff_context(staged: true) // staged changes only
427
+ \`\`\`
428
+
429
+ ### \`kirograph_commit_context\`: staged changes summary
430
+
431
+ Returns staged files, diff stat, and affected symbols. Ready to paste into a commit message prompt.
432
+
433
+ \`\`\`
434
+ kirograph_commit_context()
435
+ \`\`\`
436
+
437
+ ### \`kirograph_pr_context\`: semantic diff between two refs
438
+
439
+ Returns symbols added/removed/changed between two git refs. Use for PR descriptions.
440
+
441
+ \`\`\`
442
+ kirograph_pr_context(base: "main", head: "HEAD")
443
+ kirograph_pr_context(base: "v1.2.0")
444
+ \`\`\`
445
+
446
+ ### \`kirograph_test_map\`: symbol \u2192 test file mapping
447
+
448
+ Shows which test files cover a symbol (by caller graph), and which symbols have no test coverage at all.
449
+
450
+ \`\`\`
451
+ kirograph_test_map() // all uncovered symbols
452
+ kirograph_test_map(symbol: "processPayment") // tests for a specific symbol
453
+ \`\`\`
454
+
455
+ ### \`kirograph_test_coverage\`: per-file coverage report
456
+
457
+ Parses lcov/Istanbul/Cobertura files. Sorted worst-first by default.
458
+
459
+ \`\`\`
460
+ kirograph_test_coverage()
461
+ kirograph_test_coverage(sortBy: "desc", limit: 20) // best coverage first
462
+ \`\`\``;
463
+ }
464
+ if (enableEditPrimitives) {
465
+ toolRef += `
466
+
467
+ ---
468
+
469
+ ## Edit Primitives *(require \`enableEditPrimitives: true\` in config)*
470
+
471
+ Atomic file edit tools. Each validates the anchor is unique before writing, then triggers \`kirograph sync\` to keep the graph up to date.
472
+
473
+ ### \`kirograph_str_replace\`: replace a unique string
474
+
475
+ Fails on 0 or >1 matches \u2014 safe to use without counting occurrences first.
476
+
477
+ \`\`\`
478
+ kirograph_str_replace(file: "src/auth.ts", old_str: "const timeout = 5000", new_str: "const timeout = 10000")
479
+ \`\`\`
480
+
481
+ ### \`kirograph_multi_str_replace\`: N replacements as one transaction
482
+
483
+ All-or-nothing: if any replacement fails, none are applied.
484
+
485
+ \`\`\`
486
+ kirograph_multi_str_replace(file: "src/auth.ts", pairs: [
487
+ { old_str: "oldFunctionName", new_str: "newFunctionName" },
488
+ { old_str: "OldClass", new_str: "NewClass" }
489
+ ])
490
+ \`\`\`
491
+
492
+ ### \`kirograph_insert_at\`: insert before/after an anchor
493
+
494
+ \`\`\`
495
+ kirograph_insert_at(file: "src/routes.ts", anchor: "// END ROUTES", content: "router.get('/health', healthCheck);", position: "before")
496
+ \`\`\`
497
+
498
+ ### \`kirograph_refactor\`: structured search-and-replace across the graph
499
+
500
+ \`\`\`
501
+ kirograph_refactor(symbol: "OldName", newName: "NewName", kind: "function")
502
+ \`\`\``;
503
+ }
504
+ if (enableBranch) {
505
+ toolRef += `
506
+
507
+ ---
508
+
509
+ ## Branch tools *(require \`enableBranch: true\` in config)*
510
+
511
+ Each branch gets its own SQLite DB at \`.kirograph/branch-<name>.db\`. Use \`kirograph branch add\` to start tracking a branch.
512
+
513
+ ### \`kirograph_branch_list\`: tracked branches
514
+
515
+ \`\`\`
516
+ kirograph_branch_list()
517
+ \`\`\`
518
+
519
+ ### \`kirograph_branch_diff\`: symbols added/removed/changed between branches
520
+
521
+ \`\`\`
522
+ kirograph_branch_diff(branchA: "feature/new-auth", branchB: "main")
523
+ \`\`\`
524
+
525
+ ### \`kirograph_branch_search\`: search symbols in another branch
526
+
527
+ \`\`\`
528
+ kirograph_branch_search(query: "processPayment", branch: "main")
335
529
  \`\`\``;
336
530
  }
337
531
  let bugFixWorkflow = `**Bug fix or feature:**
@@ -378,13 +572,53 @@ ${bugFixWorkflow}`;
378
572
  2. \`kirograph_circular_deps\`: find import cycles to untangle.
379
573
  3. \`kirograph_surprising\`: find unexpected coupling to decouple.`;
380
574
  }
575
+ if (enableComplexity) {
576
+ workflows += `
577
+
578
+ **Code quality audit:**
579
+ 1. \`kirograph_health\`: get overall health score and breakdown.
580
+ 2. \`kirograph_complexity\`: rank functions by cyclomatic complexity \u2014 focus on CC > 10.
581
+ 3. \`kirograph_test_risk\`: find highest-risk functions (complexity \xD7 fan-in) to prioritize test coverage.
582
+ 4. \`kirograph_dsm\`: check architectural coupling \u2014 high off-diagonal counts = tight coupling.`;
583
+ }
584
+ if (enableGitContext) {
585
+ workflows += `
586
+
587
+ **Pre-commit / pre-push review:**
588
+ 1. \`kirograph_diff_context\`: understand what symbols changed and who calls them.
589
+ 2. \`kirograph_test_map\`: verify changed symbols have test coverage.
590
+ 3. \`kirograph_commit_context\`: build a structured commit message.
591
+
592
+ **PR description:**
593
+ 1. \`kirograph_pr_context(base: "main")\`: get semantic diff between branches.
594
+ 2. Use the output as structured context for the PR summary.`;
595
+ }
596
+ if (enableEditPrimitives) {
597
+ workflows += `
598
+
599
+ **Safe atomic edit:**
600
+ 1. \`kirograph_impact\`: check blast radius before editing.
601
+ 2. \`kirograph_str_replace\` or \`kirograph_insert_at\`: apply atomic change \u2014 validates uniqueness first.
602
+ 3. After edit: \`kirograph_diff\` to verify only intended symbols changed.`;
603
+ }
604
+ if (enableBranch) {
605
+ workflows += `
606
+
607
+ **Cross-branch investigation:**
608
+ 1. \`kirograph_branch_list\`: see which branches are tracked.
609
+ 2. \`kirograph_branch_diff\`: find symbols added/removed/changed vs target branch.
610
+ 3. \`kirograph_branch_search\`: locate a symbol in another branch's graph.`;
611
+ }
612
+ const hasRichFeatures = enableNavigation || enableCodeHealth || trackCallSites;
381
613
  const workflowRows = [
382
614
  ...enableSecurity ? ["| security audit, check vulnerabilities, CVE review | `.kiro/steering/kirograph-security.md` |"] : [],
383
- "| code review, review this PR | `.kiro/steering/kirograph-review.md` |",
384
- "| debug, trace this bug, root cause | `.kiro/steering/kirograph-debug.md` |",
615
+ ...hasRichFeatures ? ["| code review, review this PR | `.kiro/steering/kirograph-review.md` |"] : [],
616
+ ...hasRichFeatures ? ["| debug, trace this bug, root cause | `.kiro/steering/kirograph-debug.md` |"] : [],
385
617
  ...enableArchitecture ? ["| architecture, understand structure, package map | `.kiro/steering/kirograph-architecture.md` |"] : [],
386
- "| onboard, understand this codebase | `.kiro/steering/kirograph-onboard.md` |",
387
- "| refactor, rename, safe refactoring | `.kiro/steering/kirograph-refactor.md` |",
618
+ ...hasRichFeatures ? ["| onboard, understand this codebase | `.kiro/steering/kirograph-onboard.md` |"] : [],
619
+ ...hasRichFeatures ? ["| refactor, rename, safe refactoring | `.kiro/steering/kirograph-refactor.md` |"] : [],
620
+ ...enableGitContext ? ["| git diff review, PR context, commit message | `.kiro/steering/kirograph-git-context.md` |"] : [],
621
+ ...enableComplexity ? ["| code quality audit, complexity, health score | `.kiro/steering/kirograph-complexity.md` |"] : [],
388
622
  ...enableMemory ? ["| memory, recall decisions, conflict detection | `.kiro/steering/kirograph-mem-workflow.md` |"] : [],
389
623
  ...enableWiki ? ["| wiki, update knowledge base, ingest docs | `.kiro/steering/kirograph-wiki-workflow.md` |"] : []
390
624
  ];
@@ -678,39 +912,63 @@ function writeWorkflowSteering(steeringDir, opts) {
678
912
  const trackCallSites = opts?.trackCallSites ?? false;
679
913
  const enableCodeHealth = opts?.enableCodeHealth ?? false;
680
914
  const enableArchitecture = opts?.enableArchitecture ?? false;
681
- const enableAdvancedAnalysis = opts?.enableAdvancedAnalysis ?? false;
682
- const reviewSteps = [
683
- `1. **Understand the change scope**
915
+ const enableNavigation = opts?.enableNavigation ?? false;
916
+ const enableGitContext = opts?.enableGitContext ?? false;
917
+ const enableComplexity = opts?.enableComplexity ?? false;
918
+ const enableEditPrimitives = opts?.enableEditPrimitives ?? false;
919
+ const hasRichFeatures = enableNavigation || enableCodeHealth || trackCallSites;
920
+ if (hasRichFeatures) {
921
+ const reviewSteps = [
922
+ `1. **Understand the change scope**
684
923
  \`\`\`
685
924
  kirograph_context(task: "<describe what changed>")
686
- \`\`\``,
687
- `2. **Analyze blast radius**
925
+ \`\`\``
926
+ ];
927
+ if (enableGitContext) {
928
+ reviewSteps.push(`2. **See exactly what symbols changed**
929
+ \`\`\`
930
+ kirograph_diff_context(staged: true)
931
+ \`\`\`
932
+ Lists changed symbols, their callers (who may break), and callees (what they depend on).`);
933
+ }
934
+ reviewSteps.push(`${reviewSteps.length + 1}. **Analyze blast radius**
688
935
  For each key symbol that was modified:
689
936
  \`\`\`
690
937
  kirograph_impact(symbol: "<changed symbol>", depth: 2)
691
- \`\`\``
692
- ];
693
- if (trackCallSites) {
694
- reviewSteps.push(`3. **Check test coverage**
938
+ \`\`\``);
939
+ if (enableGitContext) {
940
+ reviewSteps.push(`${reviewSteps.length + 1}. **Verify test coverage for changed symbols**
941
+ \`\`\`
942
+ kirograph_test_map(symbol: "<changed symbol>")
943
+ \`\`\`
944
+ Flag any changed symbols with no test files in their caller graph.`);
945
+ } else if (trackCallSites) {
946
+ reviewSteps.push(`${reviewSteps.length + 1}. **Check test coverage**
695
947
  \`\`\`
696
948
  kirograph_callers(symbol: "<changed symbol>")
697
949
  \`\`\`
698
950
  Look for test files among the callers. Flag untested changes.`);
699
- }
700
- if (enableCodeHealth) {
701
- const n = reviewSteps.length + 1;
702
- reviewSteps.push(`${n}. **Look for surprising coupling**
951
+ }
952
+ if (enableComplexity) {
953
+ reviewSteps.push(`${reviewSteps.length + 1}. **Check risk score of changed functions**
954
+ \`\`\`
955
+ kirograph_test_risk(limit: 10)
956
+ \`\`\`
957
+ High risk (complexity \xD7 fan-in) = extra scrutiny warranted.`);
958
+ }
959
+ if (enableCodeHealth) {
960
+ reviewSteps.push(`${reviewSteps.length + 1}. **Look for surprising coupling**
703
961
  \`\`\`
704
962
  kirograph_surprising(limit: 10)
705
963
  \`\`\``);
706
- }
707
- const findingsN = reviewSteps.length + 1;
708
- reviewSteps.push(`${findingsN}. **Produce findings** grouped by risk level (high/medium/low) with:
964
+ }
965
+ const findingsN = reviewSteps.length + 1;
966
+ reviewSteps.push(`${findingsN}. **Produce findings** grouped by risk level (high/medium/low) with:
709
967
  - What changed and why it matters
710
968
  - Test coverage status
711
969
  - Suggested improvements
712
970
  - Overall merge recommendation`);
713
- fs.writeFileSync(path.join(steeringDir, "kirograph-review.md"), `---
971
+ fs.writeFileSync(path.join(steeringDir, "kirograph-review.md"), `---
714
972
  inclusion: manual
715
973
  ---
716
974
 
@@ -722,40 +980,47 @@ Follow these steps for a structured, risk-aware code review using the knowledge
722
980
 
723
981
  ${reviewSteps.join("\n\n")}
724
982
  `);
725
- const debugSteps = [
726
- `1. **Find related code**
983
+ const debugSteps = [
984
+ `1. **Find related code**
727
985
  \`\`\`
728
986
  kirograph_search(query: "<error message or symptom keywords>")
729
987
  \`\`\``,
730
- `2. **Get full context**
988
+ `2. **Get full context**
731
989
  \`\`\`
732
990
  kirograph_context(task: "<describe the bug>")
733
991
  \`\`\``
734
- ];
735
- if (trackCallSites) {
736
- debugSteps.push(`3. **Trace the call chain**
992
+ ];
993
+ if (enableGitContext) {
994
+ debugSteps.push(`3. **Check what recently changed in related symbols**
737
995
  \`\`\`
738
- kirograph_callers(symbol: "<suspected function>")
739
- kirograph_callees(symbol: "<suspected function>")
740
- \`\`\``);
741
- }
742
- if (enableCodeHealth) {
743
- const n = debugSteps.length + 1;
744
- debugSteps.push(`${n}. **Check what changed recently**
996
+ kirograph_diff_context()
997
+ \`\`\`
998
+ Most bugs trace back to recent changes \u2014 this surfaces them immediately.`);
999
+ } else if (enableCodeHealth) {
1000
+ debugSteps.push(`3. **Check what changed recently**
745
1001
  \`\`\`
746
1002
  kirograph_diff()
747
1003
  \`\`\``);
748
- }
749
- const blastN = debugSteps.length + 1;
750
- debugSteps.push(`${blastN}. **Understand blast radius**
1004
+ }
1005
+ if (trackCallSites) {
1006
+ const n = debugSteps.length + 1;
1007
+ debugSteps.push(`${n}. **Trace the call chain**
1008
+ \`\`\`
1009
+ kirograph_callers(symbol: "<suspected function>")
1010
+ kirograph_callees(symbol: "<suspected function>")
1011
+ \`\`\``);
1012
+ }
1013
+ const blastN = debugSteps.length + 1;
1014
+ debugSteps.push(`${blastN}. **Understand blast radius**
751
1015
  \`\`\`
752
1016
  kirograph_impact(symbol: "<root cause symbol>", depth: 3)
753
1017
  \`\`\``);
754
- const debugTips = [];
755
- if (trackCallSites) debugTips.push("- Check both callers and callees to understand the full context");
756
- if (enableCodeHealth) debugTips.push("- Recent changes (via diff) are the most common source of new issues");
757
- debugTips.push("- Use `kirograph_path` to trace how two symbols are connected");
758
- fs.writeFileSync(path.join(steeringDir, "kirograph-debug.md"), `---
1018
+ const debugTips = [];
1019
+ if (trackCallSites) debugTips.push("- Check both callers and callees to understand the full context");
1020
+ if (enableGitContext) debugTips.push("- `kirograph_diff_context` is the fastest way to spot a regression \u2014 check it first");
1021
+ else if (enableCodeHealth) debugTips.push("- Recent changes (via diff) are the most common source of new issues");
1022
+ debugTips.push("- Use `kirograph_path` to trace how two symbols are connected");
1023
+ fs.writeFileSync(path.join(steeringDir, "kirograph-debug.md"), `---
759
1024
  inclusion: manual
760
1025
  ---
761
1026
 
@@ -770,44 +1035,44 @@ ${debugSteps.join("\n\n")}
770
1035
  ## Tips
771
1036
  ${debugTips.join("\n")}
772
1037
  `);
773
- const onboardSteps = [
774
- `1. **Project overview**
1038
+ const onboardSteps = [
1039
+ `1. **Project overview**
775
1040
  \`\`\`
776
1041
  kirograph_status()
777
1042
  \`\`\``,
778
- `2. **File structure**
1043
+ `2. **File structure**
779
1044
  \`\`\`
780
1045
  kirograph_files(format: "tree", maxDepth: 2)
781
1046
  \`\`\``
782
- ];
783
- if (enableCodeHealth) {
784
- onboardSteps.push(`3. **Key entry points**
1047
+ ];
1048
+ if (enableCodeHealth) {
1049
+ onboardSteps.push(`3. **Key entry points**
785
1050
  \`\`\`
786
1051
  kirograph_hotspots(limit: 15)
787
1052
  \`\`\``);
788
- }
789
- if (enableArchitecture) {
790
- const n = onboardSteps.length + 1;
791
- onboardSteps.push(`${n}. **Architecture layers**
1053
+ }
1054
+ if (enableArchitecture) {
1055
+ const n = onboardSteps.length + 1;
1056
+ onboardSteps.push(`${n}. **Architecture layers**
792
1057
  \`\`\`
793
1058
  kirograph_architecture()
794
1059
  \`\`\``);
795
- }
796
- const exploreN = onboardSteps.length + 1;
797
- onboardSteps.push(`${exploreN}. **Explore a specific area**
1060
+ }
1061
+ const exploreN = onboardSteps.length + 1;
1062
+ onboardSteps.push(`${exploreN}. **Explore a specific area**
798
1063
  \`\`\`
799
1064
  kirograph_context(task: "<area you want to understand>")
800
1065
  \`\`\``);
801
- const symbolN = onboardSteps.length + 1;
802
- onboardSteps.push(`${symbolN}. **Understand a key symbol**
1066
+ const symbolN = onboardSteps.length + 1;
1067
+ onboardSteps.push(`${symbolN}. **Understand a key symbol**
803
1068
  \`\`\`
804
1069
  kirograph_node(symbol: "<symbol name>", includeCode: true)
805
1070
  \`\`\``);
806
- const onboardTips = ["- Start broad (status, files) then narrow down"];
807
- if (enableCodeHealth) onboardTips[0] = "- Start broad (status, files, hotspots) then narrow down";
808
- if (enableAdvancedAnalysis) onboardTips.push("- Use `kirograph_type_hierarchy` to understand inheritance patterns");
809
- if (trackCallSites) onboardTips.push("- Use `kirograph_callees` on entry points to trace execution flow");
810
- fs.writeFileSync(path.join(steeringDir, "kirograph-onboard.md"), `---
1071
+ const onboardTips = ["- Start broad (status, files) then narrow down"];
1072
+ if (enableCodeHealth) onboardTips[0] = "- Start broad (status, files, hotspots) then narrow down";
1073
+ if (enableCodeHealth) onboardTips.push("- Use `kirograph_type_hierarchy` to understand inheritance patterns");
1074
+ if (trackCallSites) onboardTips.push("- Use `kirograph_callees` on entry points to trace execution flow");
1075
+ fs.writeFileSync(path.join(steeringDir, "kirograph-onboard.md"), `---
811
1076
  inclusion: manual
812
1077
  ---
813
1078
 
@@ -822,44 +1087,45 @@ ${onboardSteps.join("\n\n")}
822
1087
  ## Tips
823
1088
  ${onboardTips.join("\n")}
824
1089
  `);
825
- const refactorSteps = [
826
- `1. **Understand what you're changing**
1090
+ const refactorSteps = [
1091
+ `1. **Understand what you're changing**
827
1092
  \`\`\`
828
1093
  kirograph_node(symbol: "<target symbol>", includeCode: true)
829
1094
  \`\`\``,
830
- `2. **Check blast radius**
1095
+ `2. **Check blast radius**
831
1096
  \`\`\`
832
1097
  kirograph_impact(symbol: "<target symbol>", depth: 3)
833
1098
  \`\`\``
834
- ];
835
- if (trackCallSites) {
836
- refactorSteps.push(`3. **Find all callers (rename preview)**
1099
+ ];
1100
+ if (trackCallSites) {
1101
+ refactorSteps.push(`3. **Find all callers (rename preview)**
837
1102
  \`\`\`
838
1103
  kirograph_callers(symbol: "<target symbol>", limit: 50)
839
1104
  \`\`\``);
840
- }
841
- if (enableCodeHealth) {
842
- let n = refactorSteps.length + 1;
843
- refactorSteps.push(`${n}. **Check for cycles that might complicate the refactor**
1105
+ }
1106
+ if (enableCodeHealth) {
1107
+ let n = refactorSteps.length + 1;
1108
+ refactorSteps.push(`${n}. **Check for cycles that might complicate the refactor**
844
1109
  \`\`\`
845
1110
  kirograph_circular_deps()
846
1111
  \`\`\``);
847
- n++;
848
- refactorSteps.push(`${n}. **Find dead code to clean up**
1112
+ n++;
1113
+ refactorSteps.push(`${n}. **Find dead code to clean up**
849
1114
  \`\`\`
850
1115
  kirograph_dead_code(limit: 30)
851
1116
  \`\`\``);
852
- n++;
853
- refactorSteps.push(`${n}. **Verify after changes**
1117
+ n++;
1118
+ refactorSteps.push(`${n}. **Verify after changes**
854
1119
  Run \`kirograph sync\` then:
855
1120
  \`\`\`
856
1121
  kirograph_diff()
857
1122
  \`\`\``);
858
- }
859
- const refactorChecks = ["- Always check `kirograph_impact` before major refactors"];
860
- if (trackCallSites) refactorChecks.push("- Use `kirograph_callers` as a rename preview (all locations that reference the symbol)");
861
- if (enableCodeHealth) refactorChecks.push("- After changes, use `kirograph_diff` to verify only intended symbols changed");
862
- fs.writeFileSync(path.join(steeringDir, "kirograph-refactor.md"), `---
1123
+ }
1124
+ const refactorChecks = ["- Always check `kirograph_impact` before major refactors"];
1125
+ if (trackCallSites) refactorChecks.push("- Use `kirograph_callers` as a rename preview (all locations that reference the symbol)");
1126
+ if (enableCodeHealth) refactorChecks.push("- After changes, use `kirograph_diff` to verify only intended symbols changed");
1127
+ if (enableEditPrimitives) refactorChecks.push("- Use `kirograph_str_replace` / `kirograph_multi_str_replace` for atomic edits that auto-sync the graph");
1128
+ fs.writeFileSync(path.join(steeringDir, "kirograph-refactor.md"), `---
863
1129
  inclusion: manual
864
1130
  ---
865
1131
 
@@ -874,6 +1140,7 @@ ${refactorSteps.join("\n\n")}
874
1140
  ## Safety Checks
875
1141
  ${refactorChecks.join("\n")}
876
1142
  `);
1143
+ }
877
1144
  if (enableArchitecture) {
878
1145
  const archSteps = [
879
1146
  `1. **Get project overview**
@@ -906,6 +1173,27 @@ ${refactorChecks.join("\n")}
906
1173
  kirograph_circular_deps()
907
1174
  \`\`\``);
908
1175
  }
1176
+ if (enableComplexity) {
1177
+ let n = archSteps.length + 1;
1178
+ archSteps.push(`${n}. **Module coupling matrix (DSM)**
1179
+ \`\`\`
1180
+ kirograph_dsm()
1181
+ \`\`\`
1182
+ High off-diagonal counts = tight coupling. Complements \`kirograph_coupling\` (package-level) with a symbol-level view.`);
1183
+ n++;
1184
+ archSteps.push(`${n}. **Overall health score**
1185
+ \`\`\`
1186
+ kirograph_health()
1187
+ \`\`\`
1188
+ The circular deps and coupling components directly reflect architectural quality.`);
1189
+ }
1190
+ const archInterpretation = [
1191
+ "- High Ca (afferent) = load-bearing, risky to change interface",
1192
+ "- High Ce (efferent) = depends on many things, safe to refactor internals",
1193
+ ...enableCodeHealth ? ["- Surprising edges = hidden coupling that may break during refactoring"] : [],
1194
+ ...enableComplexity ? ["- DSM diagonal = self-coupling (normal). Off-diagonal = cross-module coupling (minimize)."] : [],
1195
+ ...enableComplexity ? ["- Health circular_score < 1500 = architectural debt requiring attention"] : []
1196
+ ];
909
1197
  fs.writeFileSync(path.join(steeringDir, "kirograph-architecture.md"), `---
910
1198
  inclusion: manual
911
1199
  ---
@@ -919,11 +1207,24 @@ Follow these steps to understand the high-level structure of the codebase.
919
1207
  ${archSteps.join("\n\n")}
920
1208
 
921
1209
  ## Interpretation
922
- - High Ca (afferent) = load-bearing, risky to change interface
923
- - High Ce (efferent) = depends on many things, safe to refactor internals
924
- ${enableCodeHealth ? "- Surprising edges = hidden coupling that may break during refactoring\n" : ""}`);
1210
+ ${archInterpretation.join("\n")}
1211
+ `);
925
1212
  }
926
1213
  if (opts?.enableSecurity) {
1214
+ const securityPatternsStep = opts?.enablePatterns ? `
1215
+ ### 5b. Structural vulnerability patterns (AST search)
1216
+ \`\`\`
1217
+ kirograph_live_search(pattern: "eval($X)", language: "javascript")
1218
+ kirograph_live_search(pattern: "$OBJ.query($A + $B)", language: "typescript")
1219
+ \`\`\`
1220
+ Use \`kirograph pattern --list\` to browse bundled SAST rules (SQL injection, path traversal, hardcoded secrets, etc.).
1221
+ These patterns find code issues missed by dependency scanning.` : "";
1222
+ const securityComplexityStep = enableComplexity ? `
1223
+ ### 5c. High-complexity code in security-critical paths
1224
+ \`\`\`
1225
+ kirograph_test_risk(limit: 15)
1226
+ \`\`\`
1227
+ High risk (complexity \xD7 fan-in) in auth/payment/session code = higher attack surface. Cross-reference with reachability results.` : "";
927
1228
  fs.writeFileSync(path.join(steeringDir, "kirograph-security.md"), `---
928
1229
  inclusion: manual
929
1230
  ---
@@ -975,6 +1276,7 @@ kirograph_licenses(policy: true)
975
1276
  \`\`\`
976
1277
  Review any DENY violations \u2014 these must be resolved before shipping.
977
1278
  WARN violations should be documented and approved by the team.
1279
+ ${securityPatternsStep}${securityComplexityStep}
978
1280
 
979
1281
  ### 6. Dependency staleness
980
1282
  \`\`\`
@@ -1005,7 +1307,7 @@ kirograph_vex() // Vulnerability Exploitability eXchange
1005
1307
  | \`not_affected\` | No reachable path found | Document, no action needed |
1006
1308
  | \`under_investigation\` | Reachability unclear | Manual review required |
1007
1309
  | Stale >= 0.7 | Very outdated | Review for accumulated CVEs |
1008
- | License DENY | Policy violation | Must resolve before release |
1310
+ | License DENY | Policy violation | Must resolve before release |${opts?.enablePatterns ? "\n| Pattern match in security-critical code | Code-level vulnerability pattern found | Review context with `kirograph_node` |" : ""}
1009
1311
  `);
1010
1312
  console.log(` \u2713 Security workflow steering file written`);
1011
1313
  }
@@ -1285,13 +1587,142 @@ superseded via \`kirograph_mem_judge\`.
1285
1587
  `);
1286
1588
  console.log(` \u2713 Memory workflow steering file written`);
1287
1589
  }
1288
- const written = ["review", "debug", "onboard", "refactor"];
1590
+ if (enableGitContext) {
1591
+ fs.writeFileSync(path.join(steeringDir, "kirograph-git-context.md"), `---
1592
+ inclusion: manual
1593
+ ---
1594
+
1595
+ # KiroGraph: Git Context Workflow
1596
+
1597
+ Use this workflow for pre-commit reviews, PR descriptions, and understanding what changed.
1598
+
1599
+ ## 1. Before committing \u2014 understand what you changed
1600
+
1601
+ \`\`\`
1602
+ kirograph_diff_context() // unstaged \u2014 see what's touched
1603
+ kirograph_diff_context(staged: true) // staged \u2014 final check before commit
1604
+ \`\`\`
1605
+
1606
+ This shows changed symbols, their callers (who might break), and their callees (what they call).
1607
+
1608
+ ## 2. Build commit message context
1609
+
1610
+ \`\`\`
1611
+ kirograph_commit_context()
1612
+ \`\`\`
1613
+
1614
+ Returns staged files, diff stat, and affected symbols. Feed into commit message generation.
1615
+
1616
+ ## 3. Check test coverage for changed symbols
1617
+
1618
+ \`\`\`
1619
+ kirograph_test_map() // all symbols with no test coverage
1620
+ kirograph_test_map(symbol: "<changed fn>") // tests for a specific symbol
1621
+ \`\`\`
1622
+
1623
+ ## 4. PR description
1624
+
1625
+ \`\`\`
1626
+ kirograph_pr_context(base: "main", head: "HEAD")
1627
+ \`\`\`
1628
+
1629
+ Returns symbols added/removed/changed between refs. Use as structured context for PR summary.
1630
+
1631
+ ## 5. Coverage report (if lcov/Istanbul files exist)
1632
+
1633
+ \`\`\`
1634
+ kirograph_test_coverage() // worst-covered files first
1635
+ kirograph_test_coverage(sortBy: "desc") // best-covered files first
1636
+ \`\`\`
1637
+
1638
+ ## Quick reference
1639
+
1640
+ | Intent | Tool |
1641
+ |--------|------|
1642
+ | What did I change? | \`kirograph_diff_context\` |
1643
+ | Commit message | \`kirograph_commit_context\` |
1644
+ | PR description | \`kirograph_pr_context\` |
1645
+ | Are my changes tested? | \`kirograph_test_map\` |
1646
+ | Per-file coverage % | \`kirograph_test_coverage\` |
1647
+ | Semantic changelog | \`kirograph_changelog\` |
1648
+ `);
1649
+ console.log(` \u2713 Git context workflow steering file written`);
1650
+ }
1651
+ if (enableComplexity) {
1652
+ fs.writeFileSync(path.join(steeringDir, "kirograph-complexity.md"), `---
1653
+ inclusion: manual
1654
+ ---
1655
+
1656
+ # KiroGraph: Code Quality Workflow
1657
+
1658
+ Use this workflow to audit code quality, find high-risk functions, and track health over time.
1659
+
1660
+ ## 1. Get an overall health score
1661
+
1662
+ \`\`\`
1663
+ kirograph_health()
1664
+ \`\`\`
1665
+
1666
+ Returns a 0\u201310000 score across complexity, dead code, coupling, and circular dependencies.
1667
+ Check all four components \u2014 a high total can mask one very low component.
1668
+
1669
+ ## 2. Find complex functions
1670
+
1671
+ \`\`\`
1672
+ kirograph_complexity(metric: "cyclomatic", threshold: 10)
1673
+ kirograph_complexity(metric: "maintainability") // lowest MI first \u2014 most unmaintainable
1674
+ \`\`\`
1675
+
1676
+ **Thresholds:** CC > 10 = review candidate. CC > 20 = refactor. MI < 50 = unmaintainable.
1677
+
1678
+ ## 3. Find highest-risk functions to change
1679
+
1680
+ \`\`\`
1681
+ kirograph_test_risk(limit: 20)
1682
+ \`\`\`
1683
+
1684
+ Risk = complexity \xD7 fan-in. These functions will have the widest blast radius if they break.
1685
+
1686
+ ## 4. Check architectural coupling
1687
+
1688
+ \`\`\`
1689
+ kirograph_dsm()
1690
+ \`\`\`
1691
+
1692
+ High off-diagonal counts = tight coupling. Aim for low counts outside the diagonal.
1693
+
1694
+ ## 5. Scan for simplification candidates
1695
+
1696
+ \`\`\`
1697
+ kirograph_simplify_scan()
1698
+ \`\`\`
1699
+
1700
+ Lists functions that fail on CC, MI, or LOC thresholds.
1701
+
1702
+ ## Quick reference
1703
+
1704
+ | Intent | Tool |
1705
+ |--------|------|
1706
+ | Overall health | \`kirograph_health\` |
1707
+ | Most complex functions | \`kirograph_complexity\` |
1708
+ | Highest-risk to change | \`kirograph_test_risk\` |
1709
+ | Module coupling matrix | \`kirograph_dsm\` |
1710
+ | Simplification candidates | \`kirograph_simplify_scan\` |
1711
+ `);
1712
+ console.log(` \u2713 Complexity workflow steering file written`);
1713
+ }
1714
+ const written = [];
1715
+ if (hasRichFeatures) written.push("review", "debug", "onboard", "refactor");
1289
1716
  if (opts?.enableArchitecture) written.push("architecture");
1290
1717
  if (opts?.enableSecurity) written.push("security");
1291
1718
  if (opts?.enablePatterns) written.push("patterns");
1719
+ if (enableGitContext) written.push("git-context");
1720
+ if (enableComplexity) written.push("complexity");
1292
1721
  if (opts?.enableMemory) written.push("memory");
1293
1722
  if (opts?.enableWiki) written.push("wiki");
1294
- console.log(` \u2713 Workflow steering files written (${written.join(", ")})`);
1723
+ if (written.length > 0) {
1724
+ console.log(` \u2713 Workflow steering files written (${written.join(", ")})`);
1725
+ }
1295
1726
  }
1296
1727
  // Annotate the CommonJS export names for ESM import in node:
1297
1728
  0 && (module.exports = {