circle-ir-ai 1.1.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 (420) hide show
  1. package/CHANGELOG.md +105 -0
  2. package/LICENSE +15 -0
  3. package/README.md +336 -0
  4. package/dist/action-queue/aggregator.d.ts +40 -0
  5. package/dist/action-queue/aggregator.d.ts.map +1 -0
  6. package/dist/action-queue/aggregator.js +375 -0
  7. package/dist/action-queue/aggregator.js.map +1 -0
  8. package/dist/action-queue/index.d.ts +14 -0
  9. package/dist/action-queue/index.d.ts.map +1 -0
  10. package/dist/action-queue/index.js +17 -0
  11. package/dist/action-queue/index.js.map +1 -0
  12. package/dist/action-queue/queue.d.ts +74 -0
  13. package/dist/action-queue/queue.d.ts.map +1 -0
  14. package/dist/action-queue/queue.js +433 -0
  15. package/dist/action-queue/queue.js.map +1 -0
  16. package/dist/action-queue/types.d.ts +162 -0
  17. package/dist/action-queue/types.d.ts.map +1 -0
  18. package/dist/action-queue/types.js +44 -0
  19. package/dist/action-queue/types.js.map +1 -0
  20. package/dist/agents/enrichment-agent.d.ts +16 -0
  21. package/dist/agents/enrichment-agent.d.ts.map +1 -0
  22. package/dist/agents/enrichment-agent.js +102 -0
  23. package/dist/agents/enrichment-agent.js.map +1 -0
  24. package/dist/agents/index.d.ts +12 -0
  25. package/dist/agents/index.d.ts.map +1 -0
  26. package/dist/agents/index.js +15 -0
  27. package/dist/agents/index.js.map +1 -0
  28. package/dist/agents/mastra/agents.d.ts +373 -0
  29. package/dist/agents/mastra/agents.d.ts.map +1 -0
  30. package/dist/agents/mastra/agents.js +347 -0
  31. package/dist/agents/mastra/agents.js.map +1 -0
  32. package/dist/agents/mastra/index.d.ts +12 -0
  33. package/dist/agents/mastra/index.d.ts.map +1 -0
  34. package/dist/agents/mastra/index.js +17 -0
  35. package/dist/agents/mastra/index.js.map +1 -0
  36. package/dist/agents/mastra/instance.d.ts +383 -0
  37. package/dist/agents/mastra/instance.d.ts.map +1 -0
  38. package/dist/agents/mastra/instance.js +37 -0
  39. package/dist/agents/mastra/instance.js.map +1 -0
  40. package/dist/agents/mastra/steps.d.ts +300 -0
  41. package/dist/agents/mastra/steps.d.ts.map +1 -0
  42. package/dist/agents/mastra/steps.js +468 -0
  43. package/dist/agents/mastra/steps.js.map +1 -0
  44. package/dist/agents/mastra/swarm.d.ts +106 -0
  45. package/dist/agents/mastra/swarm.d.ts.map +1 -0
  46. package/dist/agents/mastra/swarm.js +501 -0
  47. package/dist/agents/mastra/swarm.js.map +1 -0
  48. package/dist/agents/mastra/workflow.d.ts +81 -0
  49. package/dist/agents/mastra/workflow.d.ts.map +1 -0
  50. package/dist/agents/mastra/workflow.js +460 -0
  51. package/dist/agents/mastra/workflow.js.map +1 -0
  52. package/dist/agents/multi/agents/security.d.ts +29 -0
  53. package/dist/agents/multi/agents/security.d.ts.map +1 -0
  54. package/dist/agents/multi/agents/security.js +830 -0
  55. package/dist/agents/multi/agents/security.js.map +1 -0
  56. package/dist/agents/multi/extractor.d.ts +21 -0
  57. package/dist/agents/multi/extractor.d.ts.map +1 -0
  58. package/dist/agents/multi/extractor.js +483 -0
  59. package/dist/agents/multi/extractor.js.map +1 -0
  60. package/dist/agents/multi/index.d.ts +32 -0
  61. package/dist/agents/multi/index.d.ts.map +1 -0
  62. package/dist/agents/multi/index.js +34 -0
  63. package/dist/agents/multi/index.js.map +1 -0
  64. package/dist/agents/multi/runner.d.ts +79 -0
  65. package/dist/agents/multi/runner.d.ts.map +1 -0
  66. package/dist/agents/multi/runner.js +323 -0
  67. package/dist/agents/multi/runner.js.map +1 -0
  68. package/dist/agents/security-agent.d.ts +16 -0
  69. package/dist/agents/security-agent.d.ts.map +1 -0
  70. package/dist/agents/security-agent.js +299 -0
  71. package/dist/agents/security-agent.js.map +1 -0
  72. package/dist/agents/types.d.ts +373 -0
  73. package/dist/agents/types.d.ts.map +1 -0
  74. package/dist/agents/types.js +14 -0
  75. package/dist/agents/types.js.map +1 -0
  76. package/dist/agents/verification-agent.d.ts +23 -0
  77. package/dist/agents/verification-agent.d.ts.map +1 -0
  78. package/dist/agents/verification-agent.js +217 -0
  79. package/dist/agents/verification-agent.js.map +1 -0
  80. package/dist/agents/workflow.d.ts +30 -0
  81. package/dist/agents/workflow.d.ts.map +1 -0
  82. package/dist/agents/workflow.js +79 -0
  83. package/dist/agents/workflow.js.map +1 -0
  84. package/dist/analysis/enriched.d.ts +16 -0
  85. package/dist/analysis/enriched.d.ts.map +1 -0
  86. package/dist/analysis/enriched.js +297 -0
  87. package/dist/analysis/enriched.js.map +1 -0
  88. package/dist/analysis/llm-correlated-predicates.d.ts +80 -0
  89. package/dist/analysis/llm-correlated-predicates.d.ts.map +1 -0
  90. package/dist/analysis/llm-correlated-predicates.js +255 -0
  91. package/dist/analysis/llm-correlated-predicates.js.map +1 -0
  92. package/dist/analysis/llm-cross-file-taint.d.ts +86 -0
  93. package/dist/analysis/llm-cross-file-taint.d.ts.map +1 -0
  94. package/dist/analysis/llm-cross-file-taint.js +264 -0
  95. package/dist/analysis/llm-cross-file-taint.js.map +1 -0
  96. package/dist/analysis/pattern-discovery.d.ts +79 -0
  97. package/dist/analysis/pattern-discovery.d.ts.map +1 -0
  98. package/dist/analysis/pattern-discovery.js +447 -0
  99. package/dist/analysis/pattern-discovery.js.map +1 -0
  100. package/dist/cache/file-cache.d.ts +89 -0
  101. package/dist/cache/file-cache.d.ts.map +1 -0
  102. package/dist/cache/file-cache.js +208 -0
  103. package/dist/cache/file-cache.js.map +1 -0
  104. package/dist/cache/index.d.ts +6 -0
  105. package/dist/cache/index.d.ts.map +1 -0
  106. package/dist/cache/index.js +5 -0
  107. package/dist/cache/index.js.map +1 -0
  108. package/dist/cli/args.d.ts +52 -0
  109. package/dist/cli/args.d.ts.map +1 -0
  110. package/dist/cli/args.js +422 -0
  111. package/dist/cli/args.js.map +1 -0
  112. package/dist/cli/colors.d.ts +31 -0
  113. package/dist/cli/colors.d.ts.map +1 -0
  114. package/dist/cli/colors.js +80 -0
  115. package/dist/cli/colors.js.map +1 -0
  116. package/dist/cli/commands/analyze-skill.d.ts +33 -0
  117. package/dist/cli/commands/analyze-skill.d.ts.map +1 -0
  118. package/dist/cli/commands/analyze-skill.js +217 -0
  119. package/dist/cli/commands/analyze-skill.js.map +1 -0
  120. package/dist/cli/commands/analyze.d.ts +18 -0
  121. package/dist/cli/commands/analyze.d.ts.map +1 -0
  122. package/dist/cli/commands/analyze.js +30 -0
  123. package/dist/cli/commands/analyze.js.map +1 -0
  124. package/dist/cli/commands/benchmark-runner.d.ts +42 -0
  125. package/dist/cli/commands/benchmark-runner.d.ts.map +1 -0
  126. package/dist/cli/commands/benchmark-runner.js +18 -0
  127. package/dist/cli/commands/benchmark-runner.js.map +1 -0
  128. package/dist/cli/commands/benchmark.d.ts +11 -0
  129. package/dist/cli/commands/benchmark.d.ts.map +1 -0
  130. package/dist/cli/commands/benchmark.js +90 -0
  131. package/dist/cli/commands/benchmark.js.map +1 -0
  132. package/dist/cli/commands/dead-code.d.ts +11 -0
  133. package/dist/cli/commands/dead-code.d.ts.map +1 -0
  134. package/dist/cli/commands/dead-code.js +65 -0
  135. package/dist/cli/commands/dead-code.js.map +1 -0
  136. package/dist/cli/commands/generate-spec.d.ts +11 -0
  137. package/dist/cli/commands/generate-spec.d.ts.map +1 -0
  138. package/dist/cli/commands/generate-spec.js +67 -0
  139. package/dist/cli/commands/generate-spec.js.map +1 -0
  140. package/dist/cli/commands/health.d.ts +11 -0
  141. package/dist/cli/commands/health.d.ts.map +1 -0
  142. package/dist/cli/commands/health.js +67 -0
  143. package/dist/cli/commands/health.js.map +1 -0
  144. package/dist/cli/commands/project.d.ts +21 -0
  145. package/dist/cli/commands/project.d.ts.map +1 -0
  146. package/dist/cli/commands/project.js +92 -0
  147. package/dist/cli/commands/project.js.map +1 -0
  148. package/dist/cli/commands/scan.d.ts +11 -0
  149. package/dist/cli/commands/scan.d.ts.map +1 -0
  150. package/dist/cli/commands/scan.js +68 -0
  151. package/dist/cli/commands/scan.js.map +1 -0
  152. package/dist/cli/commands/secrets.d.ts +11 -0
  153. package/dist/cli/commands/secrets.d.ts.map +1 -0
  154. package/dist/cli/commands/secrets.js +71 -0
  155. package/dist/cli/commands/secrets.js.map +1 -0
  156. package/dist/cli/commands/swarm.d.ts +20 -0
  157. package/dist/cli/commands/swarm.d.ts.map +1 -0
  158. package/dist/cli/commands/swarm.js +174 -0
  159. package/dist/cli/commands/swarm.js.map +1 -0
  160. package/dist/cli/config.d.ts +103 -0
  161. package/dist/cli/config.d.ts.map +1 -0
  162. package/dist/cli/config.js +307 -0
  163. package/dist/cli/config.js.map +1 -0
  164. package/dist/cli/discovery.d.ts +31 -0
  165. package/dist/cli/discovery.d.ts.map +1 -0
  166. package/dist/cli/discovery.js +212 -0
  167. package/dist/cli/discovery.js.map +1 -0
  168. package/dist/cli/formatters/index.d.ts +15 -0
  169. package/dist/cli/formatters/index.d.ts.map +1 -0
  170. package/dist/cli/formatters/index.js +51 -0
  171. package/dist/cli/formatters/index.js.map +1 -0
  172. package/dist/cli/formatters/json.d.ts +11 -0
  173. package/dist/cli/formatters/json.d.ts.map +1 -0
  174. package/dist/cli/formatters/json.js +12 -0
  175. package/dist/cli/formatters/json.js.map +1 -0
  176. package/dist/cli/formatters/project-json.d.ts +11 -0
  177. package/dist/cli/formatters/project-json.d.ts.map +1 -0
  178. package/dist/cli/formatters/project-json.js +12 -0
  179. package/dist/cli/formatters/project-json.js.map +1 -0
  180. package/dist/cli/formatters/project-sarif.d.ts +11 -0
  181. package/dist/cli/formatters/project-sarif.d.ts.map +1 -0
  182. package/dist/cli/formatters/project-sarif.js +127 -0
  183. package/dist/cli/formatters/project-sarif.js.map +1 -0
  184. package/dist/cli/formatters/project-summary.d.ts +11 -0
  185. package/dist/cli/formatters/project-summary.d.ts.map +1 -0
  186. package/dist/cli/formatters/project-summary.js +202 -0
  187. package/dist/cli/formatters/project-summary.js.map +1 -0
  188. package/dist/cli/formatters/sarif-shared.d.ts +101 -0
  189. package/dist/cli/formatters/sarif-shared.d.ts.map +1 -0
  190. package/dist/cli/formatters/sarif-shared.js +57 -0
  191. package/dist/cli/formatters/sarif-shared.js.map +1 -0
  192. package/dist/cli/formatters/sarif.d.ts +12 -0
  193. package/dist/cli/formatters/sarif.d.ts.map +1 -0
  194. package/dist/cli/formatters/sarif.js +92 -0
  195. package/dist/cli/formatters/sarif.js.map +1 -0
  196. package/dist/cli/formatters/summary.d.ts +11 -0
  197. package/dist/cli/formatters/summary.d.ts.map +1 -0
  198. package/dist/cli/formatters/summary.js +240 -0
  199. package/dist/cli/formatters/summary.js.map +1 -0
  200. package/dist/cli/formatters/two-phase-summary.d.ts +11 -0
  201. package/dist/cli/formatters/two-phase-summary.d.ts.map +1 -0
  202. package/dist/cli/formatters/two-phase-summary.js +188 -0
  203. package/dist/cli/formatters/two-phase-summary.js.map +1 -0
  204. package/dist/cli/index.d.ts +15 -0
  205. package/dist/cli/index.d.ts.map +1 -0
  206. package/dist/cli/index.js +555 -0
  207. package/dist/cli/index.js.map +1 -0
  208. package/dist/components/clustering.d.ts +60 -0
  209. package/dist/components/clustering.d.ts.map +1 -0
  210. package/dist/components/clustering.js +129 -0
  211. package/dist/components/clustering.js.map +1 -0
  212. package/dist/components/enrichment.d.ts +45 -0
  213. package/dist/components/enrichment.d.ts.map +1 -0
  214. package/dist/components/enrichment.js +193 -0
  215. package/dist/components/enrichment.js.map +1 -0
  216. package/dist/components/index.d.ts +29 -0
  217. package/dist/components/index.d.ts.map +1 -0
  218. package/dist/components/index.js +56 -0
  219. package/dist/components/index.js.map +1 -0
  220. package/dist/dead-code/detector.d.ts +200 -0
  221. package/dist/dead-code/detector.d.ts.map +1 -0
  222. package/dist/dead-code/detector.js +1003 -0
  223. package/dist/dead-code/detector.js.map +1 -0
  224. package/dist/dead-code/index.d.ts +7 -0
  225. package/dist/dead-code/index.d.ts.map +1 -0
  226. package/dist/dead-code/index.js +7 -0
  227. package/dist/dead-code/index.js.map +1 -0
  228. package/dist/extractors/index.d.ts +15 -0
  229. package/dist/extractors/index.d.ts.map +1 -0
  230. package/dist/extractors/index.js +14 -0
  231. package/dist/extractors/index.js.map +1 -0
  232. package/dist/extractors/natural-language.d.ts +46 -0
  233. package/dist/extractors/natural-language.d.ts.map +1 -0
  234. package/dist/extractors/natural-language.js +228 -0
  235. package/dist/extractors/natural-language.js.map +1 -0
  236. package/dist/extractors/tree-sitter.d.ts +33 -0
  237. package/dist/extractors/tree-sitter.d.ts.map +1 -0
  238. package/dist/extractors/tree-sitter.js +69 -0
  239. package/dist/extractors/tree-sitter.js.map +1 -0
  240. package/dist/extractors/types.d.ts +62 -0
  241. package/dist/extractors/types.d.ts.map +1 -0
  242. package/dist/extractors/types.js +54 -0
  243. package/dist/extractors/types.js.map +1 -0
  244. package/dist/health-score/calculator.d.ts +123 -0
  245. package/dist/health-score/calculator.d.ts.map +1 -0
  246. package/dist/health-score/calculator.js +444 -0
  247. package/dist/health-score/calculator.js.map +1 -0
  248. package/dist/health-score/index.d.ts +12 -0
  249. package/dist/health-score/index.d.ts.map +1 -0
  250. package/dist/health-score/index.js +14 -0
  251. package/dist/health-score/index.js.map +1 -0
  252. package/dist/health-score/metrics.d.ts +142 -0
  253. package/dist/health-score/metrics.d.ts.map +1 -0
  254. package/dist/health-score/metrics.js +332 -0
  255. package/dist/health-score/metrics.js.map +1 -0
  256. package/dist/index.d.ts +26 -0
  257. package/dist/index.d.ts.map +1 -0
  258. package/dist/index.js +43 -0
  259. package/dist/index.js.map +1 -0
  260. package/dist/llm/ax-client.d.ts +477 -0
  261. package/dist/llm/ax-client.d.ts.map +1 -0
  262. package/dist/llm/ax-client.js +1641 -0
  263. package/dist/llm/ax-client.js.map +1 -0
  264. package/dist/llm/config.d.ts +58 -0
  265. package/dist/llm/config.d.ts.map +1 -0
  266. package/dist/llm/config.js +97 -0
  267. package/dist/llm/config.js.map +1 -0
  268. package/dist/llm/discovery.d.ts +123 -0
  269. package/dist/llm/discovery.d.ts.map +1 -0
  270. package/dist/llm/discovery.js +505 -0
  271. package/dist/llm/discovery.js.map +1 -0
  272. package/dist/llm/enrichment.d.ts +108 -0
  273. package/dist/llm/enrichment.d.ts.map +1 -0
  274. package/dist/llm/enrichment.js +312 -0
  275. package/dist/llm/enrichment.js.map +1 -0
  276. package/dist/llm/index.d.ts +13 -0
  277. package/dist/llm/index.d.ts.map +1 -0
  278. package/dist/llm/index.js +22 -0
  279. package/dist/llm/index.js.map +1 -0
  280. package/dist/llm/language-context.d.ts +64 -0
  281. package/dist/llm/language-context.d.ts.map +1 -0
  282. package/dist/llm/language-context.js +492 -0
  283. package/dist/llm/language-context.js.map +1 -0
  284. package/dist/llm/pattern-verification.d.ts +39 -0
  285. package/dist/llm/pattern-verification.d.ts.map +1 -0
  286. package/dist/llm/pattern-verification.js +127 -0
  287. package/dist/llm/pattern-verification.js.map +1 -0
  288. package/dist/llm/prompt-security.d.ts +120 -0
  289. package/dist/llm/prompt-security.d.ts.map +1 -0
  290. package/dist/llm/prompt-security.js +301 -0
  291. package/dist/llm/prompt-security.js.map +1 -0
  292. package/dist/llm/prompts/index.d.ts +31 -0
  293. package/dist/llm/prompts/index.d.ts.map +1 -0
  294. package/dist/llm/prompts/index.js +92 -0
  295. package/dist/llm/prompts/index.js.map +1 -0
  296. package/dist/llm/prompts/rust.d.ts +30 -0
  297. package/dist/llm/prompts/rust.d.ts.map +1 -0
  298. package/dist/llm/prompts/rust.js +121 -0
  299. package/dist/llm/prompts/rust.js.map +1 -0
  300. package/dist/llm/schemas.d.ts +892 -0
  301. package/dist/llm/schemas.d.ts.map +1 -0
  302. package/dist/llm/schemas.js +258 -0
  303. package/dist/llm/schemas.js.map +1 -0
  304. package/dist/llm/verification.d.ts +127 -0
  305. package/dist/llm/verification.d.ts.map +1 -0
  306. package/dist/llm/verification.js +394 -0
  307. package/dist/llm/verification.js.map +1 -0
  308. package/dist/project/analyzer.d.ts +30 -0
  309. package/dist/project/analyzer.d.ts.map +1 -0
  310. package/dist/project/analyzer.js +358 -0
  311. package/dist/project/analyzer.js.map +1 -0
  312. package/dist/project/call-graph.d.ts +22 -0
  313. package/dist/project/call-graph.d.ts.map +1 -0
  314. package/dist/project/call-graph.js +246 -0
  315. package/dist/project/call-graph.js.map +1 -0
  316. package/dist/project/index.d.ts +18 -0
  317. package/dist/project/index.d.ts.map +1 -0
  318. package/dist/project/index.js +20 -0
  319. package/dist/project/index.js.map +1 -0
  320. package/dist/project/taint-paths.d.ts +22 -0
  321. package/dist/project/taint-paths.d.ts.map +1 -0
  322. package/dist/project/taint-paths.js +265 -0
  323. package/dist/project/taint-paths.js.map +1 -0
  324. package/dist/project/two-phase-analyzer.d.ts +143 -0
  325. package/dist/project/two-phase-analyzer.d.ts.map +1 -0
  326. package/dist/project/two-phase-analyzer.js +646 -0
  327. package/dist/project/two-phase-analyzer.js.map +1 -0
  328. package/dist/project/type-hierarchy.d.ts +28 -0
  329. package/dist/project/type-hierarchy.d.ts.map +1 -0
  330. package/dist/project/type-hierarchy.js +218 -0
  331. package/dist/project/type-hierarchy.js.map +1 -0
  332. package/dist/secret-scan/index.d.ts +12 -0
  333. package/dist/secret-scan/index.d.ts.map +1 -0
  334. package/dist/secret-scan/index.js +14 -0
  335. package/dist/secret-scan/index.js.map +1 -0
  336. package/dist/secret-scan/patterns.d.ts +38 -0
  337. package/dist/secret-scan/patterns.d.ts.map +1 -0
  338. package/dist/secret-scan/patterns.js +473 -0
  339. package/dist/secret-scan/patterns.js.map +1 -0
  340. package/dist/secret-scan/scanner.d.ts +162 -0
  341. package/dist/secret-scan/scanner.d.ts.map +1 -0
  342. package/dist/secret-scan/scanner.js +511 -0
  343. package/dist/secret-scan/scanner.js.map +1 -0
  344. package/dist/security-scan/index.d.ts +12 -0
  345. package/dist/security-scan/index.d.ts.map +1 -0
  346. package/dist/security-scan/index.js +15 -0
  347. package/dist/security-scan/index.js.map +1 -0
  348. package/dist/security-scan/owasp-mapping.d.ts +29 -0
  349. package/dist/security-scan/owasp-mapping.d.ts.map +1 -0
  350. package/dist/security-scan/owasp-mapping.js +246 -0
  351. package/dist/security-scan/owasp-mapping.js.map +1 -0
  352. package/dist/security-scan/scanner.d.ts +204 -0
  353. package/dist/security-scan/scanner.d.ts.map +1 -0
  354. package/dist/security-scan/scanner.js +693 -0
  355. package/dist/security-scan/scanner.js.map +1 -0
  356. package/dist/security-scan/trend-tracker.d.ts +150 -0
  357. package/dist/security-scan/trend-tracker.d.ts.map +1 -0
  358. package/dist/security-scan/trend-tracker.js +299 -0
  359. package/dist/security-scan/trend-tracker.js.map +1 -0
  360. package/dist/skills/bundle-loader.d.ts +26 -0
  361. package/dist/skills/bundle-loader.d.ts.map +1 -0
  362. package/dist/skills/bundle-loader.js +284 -0
  363. package/dist/skills/bundle-loader.js.map +1 -0
  364. package/dist/skills/capability-mismatch.d.ts +21 -0
  365. package/dist/skills/capability-mismatch.d.ts.map +1 -0
  366. package/dist/skills/capability-mismatch.js +188 -0
  367. package/dist/skills/capability-mismatch.js.map +1 -0
  368. package/dist/skills/index.d.ts +10 -0
  369. package/dist/skills/index.d.ts.map +1 -0
  370. package/dist/skills/index.js +9 -0
  371. package/dist/skills/index.js.map +1 -0
  372. package/dist/skills/skill-analyzer.d.ts +16 -0
  373. package/dist/skills/skill-analyzer.d.ts.map +1 -0
  374. package/dist/skills/skill-analyzer.js +361 -0
  375. package/dist/skills/skill-analyzer.js.map +1 -0
  376. package/dist/skills/types.d.ts +195 -0
  377. package/dist/skills/types.d.ts.map +1 -0
  378. package/dist/skills/types.js +7 -0
  379. package/dist/skills/types.js.map +1 -0
  380. package/dist/specifica/conflict-resolver.d.ts +23 -0
  381. package/dist/specifica/conflict-resolver.d.ts.map +1 -0
  382. package/dist/specifica/conflict-resolver.js +129 -0
  383. package/dist/specifica/conflict-resolver.js.map +1 -0
  384. package/dist/specifica/evidence-aggregator.d.ts +33 -0
  385. package/dist/specifica/evidence-aggregator.d.ts.map +1 -0
  386. package/dist/specifica/evidence-aggregator.js +236 -0
  387. package/dist/specifica/evidence-aggregator.js.map +1 -0
  388. package/dist/specifica/evidence-extractor.d.ts +13 -0
  389. package/dist/specifica/evidence-extractor.d.ts.map +1 -0
  390. package/dist/specifica/evidence-extractor.js +431 -0
  391. package/dist/specifica/evidence-extractor.js.map +1 -0
  392. package/dist/specifica/feature-clustering.d.ts +19 -0
  393. package/dist/specifica/feature-clustering.d.ts.map +1 -0
  394. package/dist/specifica/feature-clustering.js +231 -0
  395. package/dist/specifica/feature-clustering.js.map +1 -0
  396. package/dist/specifica/generator.d.ts +16 -0
  397. package/dist/specifica/generator.d.ts.map +1 -0
  398. package/dist/specifica/generator.js +277 -0
  399. package/dist/specifica/generator.js.map +1 -0
  400. package/dist/specifica/index.d.ts +15 -0
  401. package/dist/specifica/index.d.ts.map +1 -0
  402. package/dist/specifica/index.js +18 -0
  403. package/dist/specifica/index.js.map +1 -0
  404. package/dist/specifica/prompts.d.ts +21 -0
  405. package/dist/specifica/prompts.d.ts.map +1 -0
  406. package/dist/specifica/prompts.js +196 -0
  407. package/dist/specifica/prompts.js.map +1 -0
  408. package/dist/specifica/spec-generator.d.ts +22 -0
  409. package/dist/specifica/spec-generator.d.ts.map +1 -0
  410. package/dist/specifica/spec-generator.js +229 -0
  411. package/dist/specifica/spec-generator.js.map +1 -0
  412. package/dist/specifica/types.d.ts +213 -0
  413. package/dist/specifica/types.d.ts.map +1 -0
  414. package/dist/specifica/types.js +7 -0
  415. package/dist/specifica/types.js.map +1 -0
  416. package/dist/utils/logger.d.ts +17 -0
  417. package/dist/utils/logger.d.ts.map +1 -0
  418. package/dist/utils/logger.js +51 -0
  419. package/dist/utils/logger.js.map +1 -0
  420. package/package.json +99 -0
@@ -0,0 +1,347 @@
1
+ /**
2
+ * Mastra AI Agents
3
+ *
4
+ * Defines Mastra Agent instances for security analysis operations.
5
+ * These agents wrap the existing ax-llm client for LLM operations.
6
+ */
7
+ import { Agent } from '@mastra/core/agent';
8
+ import { createTool } from '@mastra/core/tools';
9
+ import { z } from 'zod';
10
+ // ============================================================================
11
+ // Default Model Configuration
12
+ // ============================================================================
13
+ /**
14
+ * Get the default model configuration from environment or use fallback
15
+ */
16
+ function getDefaultModel() {
17
+ return process.env.MASTRA_MODEL || process.env.LLM_MODEL || 'cognium/gemini-pro-latest';
18
+ }
19
+ // ============================================================================
20
+ // Tools for Agents
21
+ // ============================================================================
22
+ /**
23
+ * Tool: Classify Code Role
24
+ * Determines if a class is a controller, service, repository, etc.
25
+ */
26
+ const classifyRoleTool = createTool({
27
+ id: 'classify-role',
28
+ description: 'Classify the architectural role of a Java class (controller, service, repository, utility, entity)',
29
+ inputSchema: z.object({
30
+ className: z.string().describe('Name of the class'),
31
+ methodNames: z.string().describe('Comma-separated list of method names'),
32
+ annotations: z.string().describe('Comma-separated list of annotations'),
33
+ imports: z.string().describe('Import statements'),
34
+ }),
35
+ outputSchema: z.object({
36
+ role: z.enum(['controller', 'service', 'repository', 'utility', 'entity', 'unknown']),
37
+ confidence: z.number(),
38
+ reasoning: z.string(),
39
+ indicators: z.array(z.string()),
40
+ }),
41
+ execute: async (inputData) => {
42
+ const { getAxLLMClient } = await import('../../llm/ax-client.js');
43
+ const client = getAxLLMClient();
44
+ return client.classifyRole({
45
+ className: inputData.className,
46
+ methodNames: inputData.methodNames,
47
+ annotations: inputData.annotations,
48
+ imports: inputData.imports,
49
+ });
50
+ },
51
+ });
52
+ /**
53
+ * Tool: Discover Taint Sources
54
+ * Finds additional user-controlled input sources in code
55
+ */
56
+ const discoverSourcesTool = createTool({
57
+ id: 'discover-sources',
58
+ description: 'Discover additional taint sources (user-controlled inputs) in Java code',
59
+ inputSchema: z.object({
60
+ methodCode: z.string().describe('The method source code to analyze'),
61
+ methodName: z.string().describe('Name of the method'),
62
+ classRole: z.string().describe('Role of the class (controller, service, etc.)'),
63
+ existingSources: z.string().describe('Already identified sources'),
64
+ }),
65
+ outputSchema: z.object({
66
+ sources: z.array(z.object({
67
+ line: z.number(),
68
+ variable: z.string(),
69
+ type: z.string(),
70
+ confidence: z.number(),
71
+ reasoning: z.string(),
72
+ })),
73
+ }),
74
+ execute: async (inputData) => {
75
+ const { getAxLLMClient } = await import('../../llm/ax-client.js');
76
+ const client = getAxLLMClient();
77
+ const sources = await client.discoverSources({
78
+ methodCode: inputData.methodCode,
79
+ methodName: inputData.methodName,
80
+ classRole: inputData.classRole,
81
+ existingSources: inputData.existingSources,
82
+ });
83
+ return { sources };
84
+ },
85
+ });
86
+ /**
87
+ * Tool: Discover Taint Sinks
88
+ * Finds dangerous operations that could be vulnerable
89
+ */
90
+ const discoverSinksTool = createTool({
91
+ id: 'discover-sinks',
92
+ description: 'Discover dangerous operations (sinks) that could be vulnerable in Java code',
93
+ inputSchema: z.object({
94
+ methodCode: z.string().describe('The method source code to analyze'),
95
+ methodName: z.string().describe('Name of the method'),
96
+ methodCalls: z.string().describe('List of method calls in the code'),
97
+ existingSinks: z.string().describe('Already identified sinks'),
98
+ }),
99
+ outputSchema: z.object({
100
+ sinks: z.array(z.object({
101
+ line: z.number(),
102
+ method: z.string(),
103
+ type: z.string(),
104
+ cwe: z.string(),
105
+ argPositions: z.array(z.number()),
106
+ confidence: z.number(),
107
+ reasoning: z.string(),
108
+ })),
109
+ }),
110
+ execute: async (inputData) => {
111
+ const { getAxLLMClient } = await import('../../llm/ax-client.js');
112
+ const client = getAxLLMClient();
113
+ const sinks = await client.discoverSinks({
114
+ methodCode: inputData.methodCode,
115
+ methodName: inputData.methodName,
116
+ methodCalls: inputData.methodCalls,
117
+ existingSinks: inputData.existingSinks,
118
+ });
119
+ return { sinks };
120
+ },
121
+ });
122
+ /**
123
+ * Tool: Verify Vulnerability
124
+ * Determines if a potential vulnerability is exploitable
125
+ */
126
+ const verifyVulnerabilityTool = createTool({
127
+ id: 'verify-vulnerability',
128
+ description: 'Verify if a potential security vulnerability is actually exploitable',
129
+ inputSchema: z.object({
130
+ sourceCode: z.string().describe('Code at the taint source'),
131
+ sourceLine: z.number().describe('Line number of the source'),
132
+ sourceType: z.string().describe('Type of source (http_param, etc.)'),
133
+ sinkCode: z.string().describe('Code at the dangerous sink'),
134
+ sinkLine: z.number().describe('Line number of the sink'),
135
+ sinkType: z.string().describe('Type of sink (sql_injection, etc.)'),
136
+ cwe: z.string().describe('CWE identifier'),
137
+ methodCode: z.string().describe('Full method code for context'),
138
+ methodName: z.string().describe('Name of the method'),
139
+ className: z.string().describe('Name of the class'),
140
+ sanitizersInPath: z.array(z.string()).describe('Known sanitizers in the data flow path'),
141
+ }),
142
+ outputSchema: z.object({
143
+ verdict: z.enum(['TRUE_POSITIVE', 'FALSE_POSITIVE', 'UNCERTAIN']),
144
+ confidence: z.number(),
145
+ reasoning: z.string(),
146
+ exploitability: z.enum(['high', 'medium', 'low', 'none']),
147
+ sanitizersFound: z.array(z.string()),
148
+ attackVector: z.string(),
149
+ }),
150
+ execute: async (inputData) => {
151
+ const { getAxLLMClient } = await import('../../llm/ax-client.js');
152
+ const client = getAxLLMClient();
153
+ return client.verify({
154
+ sourceCode: inputData.sourceCode,
155
+ sourceLine: inputData.sourceLine,
156
+ sourceType: inputData.sourceType,
157
+ sinkCode: inputData.sinkCode,
158
+ sinkLine: inputData.sinkLine,
159
+ sinkType: inputData.sinkType,
160
+ cwe: inputData.cwe,
161
+ methodCode: inputData.methodCode,
162
+ methodName: inputData.methodName,
163
+ className: inputData.className,
164
+ sanitizersInPath: inputData.sanitizersInPath,
165
+ });
166
+ },
167
+ });
168
+ /**
169
+ * Tool: Analyze Cross-File Taint
170
+ * Tracks taint flow between files
171
+ */
172
+ const crossFileTaintTool = createTool({
173
+ id: 'cross-file-taint',
174
+ description: 'Analyze taint flow between two source files',
175
+ inputSchema: z.object({
176
+ sourceFile: z.string().describe('Path of the source file'),
177
+ sourceCode: z.string().describe('Content of the source file'),
178
+ targetFile: z.string().describe('Path of the target file'),
179
+ targetCode: z.string().describe('Content of the target file'),
180
+ exportedTaint: z.array(z.object({
181
+ symbol: z.string(),
182
+ type: z.string(),
183
+ line: z.number(),
184
+ })).describe('Tainted data exported from source'),
185
+ importedSymbols: z.array(z.string()).describe('Symbols imported by target'),
186
+ }),
187
+ outputSchema: z.object({
188
+ taintFlows: z.array(z.object({
189
+ sourceSymbol: z.string(),
190
+ targetSymbol: z.string(),
191
+ flowType: z.enum(['direct', 'transitive', 'conditional']),
192
+ confidence: z.number(),
193
+ })),
194
+ reasoning: z.string(),
195
+ }),
196
+ execute: async (inputData) => {
197
+ const { getAxLLMClient } = await import('../../llm/ax-client.js');
198
+ const client = getAxLLMClient();
199
+ return client.analyzeCrossFileTaint({
200
+ sourceFile: inputData.sourceFile,
201
+ sourceCode: inputData.sourceCode,
202
+ targetFile: inputData.targetFile,
203
+ targetCode: inputData.targetCode,
204
+ exportedTaint: inputData.exportedTaint,
205
+ importedSymbols: inputData.importedSymbols,
206
+ });
207
+ },
208
+ });
209
+ // ============================================================================
210
+ // Agents
211
+ // ============================================================================
212
+ /**
213
+ * Enrichment Agent
214
+ *
215
+ * Specializes in discovering additional security-relevant patterns in code
216
+ * that static analysis might miss.
217
+ */
218
+ export const enrichmentAgent = new Agent({
219
+ id: 'enrichment-agent',
220
+ name: 'Security Enrichment Agent',
221
+ model: getDefaultModel(),
222
+ instructions: `You are a security expert specialized in code analysis.
223
+ Your role is to discover additional taint sources and sinks that static pattern matching might miss.
224
+
225
+ For SOURCES, look for:
226
+ - HTTP request parameters, headers, cookies
227
+ - File uploads and input streams
228
+ - Database query results
229
+ - Environment variables and system properties
230
+ - User session data
231
+
232
+ For SINKS, look for:
233
+ - SQL query construction without parameterization
234
+ - Command execution with string concatenation
235
+ - File path construction with user input
236
+ - Response output without encoding
237
+ - Deserialization of untrusted data
238
+
239
+ Always explain your reasoning and provide confidence scores.`,
240
+ tools: {
241
+ classifyRole: classifyRoleTool,
242
+ discoverSources: discoverSourcesTool,
243
+ discoverSinks: discoverSinksTool,
244
+ },
245
+ });
246
+ /**
247
+ * Verification Agent
248
+ *
249
+ * Specializes in determining whether potential vulnerabilities are actually
250
+ * exploitable by analyzing data flow and sanitization.
251
+ */
252
+ export const verificationAgent = new Agent({
253
+ id: 'verification-agent',
254
+ name: 'Vulnerability Verification Agent',
255
+ model: getDefaultModel(),
256
+ instructions: `You are a security expert specialized in vulnerability verification.
257
+ Your role is to determine whether potential vulnerabilities identified by static analysis are actually exploitable.
258
+
259
+ When verifying a vulnerability:
260
+ 1. TRACE the data flow from source to sink step by step
261
+ 2. IDENTIFY any sanitization, encoding, or validation
262
+ 3. EVALUATE conditions that might prevent exploitation
263
+ 4. CONSIDER the context (is this test code, production code, etc.)
264
+
265
+ Key sanitization patterns to recognize:
266
+ - SQL: PreparedStatement, parameterized queries, ORMs
267
+ - XSS: HTML encoding, escapeHtml, ESAPI
268
+ - Command: Array-based exec, input validation
269
+ - Path: Canonical path checks, whitelist validation
270
+
271
+ Be conservative: only mark TRUE_POSITIVE if clearly exploitable.
272
+ Mark FALSE_POSITIVE if any effective sanitization exists.
273
+ Mark UNCERTAIN if you cannot determine with confidence.`,
274
+ tools: {
275
+ verifyVulnerability: verifyVulnerabilityTool,
276
+ },
277
+ });
278
+ /**
279
+ * Cross-File Analysis Agent
280
+ *
281
+ * Specializes in tracking taint flow across file boundaries.
282
+ */
283
+ export const crossFileAgent = new Agent({
284
+ id: 'cross-file-agent',
285
+ name: 'Cross-File Taint Analysis Agent',
286
+ model: getDefaultModel(),
287
+ instructions: `You are a security expert specialized in cross-file taint analysis.
288
+ Your role is to track how tainted data flows between source files through imports, exports, and method calls.
289
+
290
+ When analyzing cross-file taint:
291
+ 1. IDENTIFY tainted data exported from the source file
292
+ 2. TRACE imports and dependencies in the target file
293
+ 3. DETERMINE if tainted data reaches dangerous sinks
294
+ 4. CONSIDER indirect flows through intermediate variables
295
+
296
+ Pay attention to:
297
+ - Method parameters that carry taint
298
+ - Return values from tainted operations
299
+ - Shared state and class fields
300
+ - Dependency injection patterns`,
301
+ tools: {
302
+ crossFileTaint: crossFileTaintTool,
303
+ },
304
+ });
305
+ /**
306
+ * Orchestrator Agent
307
+ *
308
+ * Coordinates the analysis workflow and makes high-level decisions.
309
+ */
310
+ export const orchestratorAgent = new Agent({
311
+ id: 'orchestrator-agent',
312
+ name: 'Security Analysis Orchestrator',
313
+ model: getDefaultModel(),
314
+ instructions: `You are the orchestrator for security analysis workflows.
315
+ Your role is to coordinate enrichment and verification agents to analyze code for vulnerabilities.
316
+
317
+ Workflow steps:
318
+ 1. Run static pattern matching first
319
+ 2. Use enrichment agent to discover additional sources/sinks
320
+ 3. Merge pattern and LLM results
321
+ 4. Prioritize verification targets by severity
322
+ 5. Use verification agent to confirm exploitability
323
+ 6. Generate final vulnerability report
324
+
325
+ Make efficient decisions about which findings need verification based on:
326
+ - Confidence levels from both tracks
327
+ - Severity of the potential vulnerability
328
+ - Code patterns that indicate real vs. test code`,
329
+ tools: {
330
+ classifyRole: classifyRoleTool,
331
+ discoverSources: discoverSourcesTool,
332
+ discoverSinks: discoverSinksTool,
333
+ verifyVulnerability: verifyVulnerabilityTool,
334
+ crossFileTaint: crossFileTaintTool,
335
+ },
336
+ });
337
+ // ============================================================================
338
+ // Agent Registry
339
+ // ============================================================================
340
+ export const agents = {
341
+ enrichment: enrichmentAgent,
342
+ verification: verificationAgent,
343
+ crossFile: crossFileAgent,
344
+ orchestrator: orchestratorAgent,
345
+ };
346
+ export default agents;
347
+ //# sourceMappingURL=agents.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agents.js","sourceRoot":"","sources":["../../../src/agents/mastra/agents.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Mastra Integration Module
3
+ *
4
+ * Exports Mastra-based workflows, agents, and swarm capabilities
5
+ * for security analysis.
6
+ */
7
+ export { patternMatchStep, enrichStep, mergeStep, verifyStep, reportStep, } from './steps.js';
8
+ export { securityAnalysisWorkflow, analyzeFile, analyzeFileStream, } from './workflow.js';
9
+ export { swarmAnalysisWorkflow, analyzeFilesSwarm, analyzeFilesSwarmStream, analyzeFilesInBatches, type FileInput, type SwarmOptions, } from './swarm.js';
10
+ export { enrichmentAgent, verificationAgent, crossFileAgent, orchestratorAgent, agents, } from './agents.js';
11
+ export { createMastraInstance } from './instance.js';
12
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/agents/mastra/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EACL,gBAAgB,EAChB,UAAU,EACV,SAAS,EACT,UAAU,EACV,UAAU,GACX,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,wBAAwB,EACxB,WAAW,EACX,iBAAiB,GAClB,MAAM,eAAe,CAAC;AAGvB,OAAO,EACL,qBAAqB,EACrB,iBAAiB,EACjB,uBAAuB,EACvB,qBAAqB,EACrB,KAAK,SAAS,EACd,KAAK,YAAY,GAClB,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,cAAc,EACd,iBAAiB,EACjB,MAAM,GACP,MAAM,aAAa,CAAC;AAGrB,OAAO,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Mastra Integration Module
3
+ *
4
+ * Exports Mastra-based workflows, agents, and swarm capabilities
5
+ * for security analysis.
6
+ */
7
+ // Steps
8
+ export { patternMatchStep, enrichStep, mergeStep, verifyStep, reportStep, } from './steps.js';
9
+ // Single-file workflow
10
+ export { securityAnalysisWorkflow, analyzeFile, analyzeFileStream, } from './workflow.js';
11
+ // Swarm (multi-file parallel) workflow
12
+ export { swarmAnalysisWorkflow, analyzeFilesSwarm, analyzeFilesSwarmStream, analyzeFilesInBatches, } from './swarm.js';
13
+ // Agents
14
+ export { enrichmentAgent, verificationAgent, crossFileAgent, orchestratorAgent, agents, } from './agents.js';
15
+ // Re-export Mastra instance setup
16
+ export { createMastraInstance } from './instance.js';
17
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/agents/mastra/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,QAAQ;AACR,OAAO,EACL,gBAAgB,EAChB,UAAU,EACV,SAAS,EACT,UAAU,EACV,UAAU,GACX,MAAM,YAAY,CAAC;AAEpB,uBAAuB;AACvB,OAAO,EACL,wBAAwB,EACxB,WAAW,EACX,iBAAiB,GAClB,MAAM,eAAe,CAAC;AAEvB,uCAAuC;AACvC,OAAO,EACL,qBAAqB,EACrB,iBAAiB,EACjB,uBAAuB,EACvB,qBAAqB,GAGtB,MAAM,YAAY,CAAC;AAEpB,SAAS;AACT,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,cAAc,EACd,iBAAiB,EACjB,MAAM,GACP,MAAM,aAAa,CAAC;AAErB,kCAAkC;AAClC,OAAO,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC"}