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 @@
1
+ {"version":3,"file":"enrichment-agent.d.ts","sourceRoot":"","sources":["../../src/agents/enrichment-agent.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EACV,oBAAoB,EACpB,qBAAqB,EACrB,eAAe,EAChB,MAAM,YAAY,CAAC;AAMpB;;GAEG;AACH,wBAAsB,aAAa,CACjC,KAAK,EAAE,oBAAoB,GAC1B,OAAO,CAAC,qBAAqB,CAAC,CA8BhC;AA4ED;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,eAAe,EACxB,MAAM,EAAE,qBAAqB,GAC5B,eAAe,CAKjB"}
@@ -0,0 +1,102 @@
1
+ /**
2
+ * Enrichment Agent
3
+ *
4
+ * Uses Phase 1 LLM (fast/cheap) to discover additional sources and sinks
5
+ * beyond pattern matching.
6
+ */
7
+ import { getEnrichmentEngine } from '../llm/index.js';
8
+ // ============================================================================
9
+ // Enrichment Logic
10
+ // ============================================================================
11
+ /**
12
+ * Run enrichment on an analysis context
13
+ */
14
+ export async function runEnrichment(input) {
15
+ const startTime = Date.now();
16
+ const engine = getEnrichmentEngine();
17
+ const enrichmentResults = [];
18
+ // Process each type in the context
19
+ for (const type of input.context.types) {
20
+ const result = await engine.enrichType(type, input.context.sourceCode, input.context.imports, input.context.patternSources, input.context.patternSinks);
21
+ enrichmentResults.push(result);
22
+ }
23
+ // Merge all enrichment results
24
+ const mergedResult = mergeEnrichmentResults(enrichmentResults);
25
+ const processingTimeMs = Date.now() - startTime;
26
+ return {
27
+ enrichmentResult: mergedResult,
28
+ additionalSourcesCount: mergedResult.additionalSources.length,
29
+ additionalSinksCount: mergedResult.additionalSinks.length,
30
+ processingTimeMs,
31
+ };
32
+ }
33
+ /**
34
+ * Merge multiple enrichment results into one
35
+ */
36
+ function mergeEnrichmentResults(results) {
37
+ if (results.length === 0) {
38
+ return {
39
+ additionalSources: [],
40
+ additionalSinks: [],
41
+ virtualCallResolutions: [],
42
+ enrichedAt: new Date().toISOString(),
43
+ modelUsed: 'none',
44
+ };
45
+ }
46
+ if (results.length === 1) {
47
+ return results[0];
48
+ }
49
+ // Merge all results
50
+ const merged = {
51
+ additionalSources: [],
52
+ additionalSinks: [],
53
+ virtualCallResolutions: [],
54
+ enrichedAt: new Date().toISOString(),
55
+ modelUsed: results[0].modelUsed,
56
+ };
57
+ for (const result of results) {
58
+ merged.additionalSources.push(...result.additionalSources);
59
+ merged.additionalSinks.push(...result.additionalSinks);
60
+ merged.virtualCallResolutions.push(...result.virtualCallResolutions);
61
+ // Keep highest confidence framework detection
62
+ if (result.framework) {
63
+ if (!merged.framework || result.framework.confidence > merged.framework.confidence) {
64
+ merged.framework = result.framework;
65
+ }
66
+ }
67
+ // Keep any role classification
68
+ if (result.role && !merged.role) {
69
+ merged.role = result.role;
70
+ }
71
+ }
72
+ // Deduplicate sources by line number
73
+ merged.additionalSources = deduplicateByLine(merged.additionalSources);
74
+ merged.additionalSinks = deduplicateByLine(merged.additionalSinks);
75
+ return merged;
76
+ }
77
+ /**
78
+ * Deduplicate items by line number, keeping highest confidence
79
+ */
80
+ function deduplicateByLine(items) {
81
+ const byLine = new Map();
82
+ for (const item of items) {
83
+ const existing = byLine.get(item.line);
84
+ if (!existing || item.confidence > existing.confidence) {
85
+ byLine.set(item.line, item);
86
+ }
87
+ }
88
+ return Array.from(byLine.values());
89
+ }
90
+ // ============================================================================
91
+ // Context Update Helper
92
+ // ============================================================================
93
+ /**
94
+ * Update analysis context with enrichment results
95
+ */
96
+ export function applyEnrichmentToContext(context, output) {
97
+ return {
98
+ ...context,
99
+ enrichmentResult: output.enrichmentResult,
100
+ };
101
+ }
102
+ //# sourceMappingURL=enrichment-agent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enrichment-agent.js","sourceRoot":"","sources":["../../src/agents/enrichment-agent.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Agent Orchestration Module
3
+ *
4
+ * Provides agents and workflows for hybrid security analysis.
5
+ */
6
+ export type { AgentStatus, AgentState, AnalysisContext, EnrichmentAgentInput, EnrichmentAgentOutput, VerificationTarget, VerificationAgentInput, VerificationAgentOutput, SecurityAgentInput, SecurityAgentOutput, SecurityAgentOptions, VerifiedVulnerability, AnalysisStats, WorkflowPhase, WorkflowStep, WorkflowState, ConfidenceLevel, DecisionMatrix, } from './types.js';
7
+ export { defaultDecisionMatrix } from './types.js';
8
+ export { runEnrichment, applyEnrichmentToContext, } from './enrichment-agent.js';
9
+ export { runVerification, generateVerificationTargets, applyVerificationToContext, } from './verification-agent.js';
10
+ export { runSecurityAnalysis, } from './security-agent.js';
11
+ export { runHybridAnalysis, createWorkflowState, updateWorkflowState, } from './workflow.js';
12
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/agents/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,YAAY,EACV,WAAW,EACX,UAAU,EACV,eAAe,EACf,oBAAoB,EACpB,qBAAqB,EACrB,kBAAkB,EAClB,sBAAsB,EACtB,uBAAuB,EACvB,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,aAAa,EACb,aAAa,EACb,YAAY,EACZ,aAAa,EACb,eAAe,EACf,cAAc,GACf,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAGnD,OAAO,EACL,aAAa,EACb,wBAAwB,GACzB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EACL,eAAe,EACf,2BAA2B,EAC3B,0BAA0B,GAC3B,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EACL,mBAAmB,GACpB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,eAAe,CAAC"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Agent Orchestration Module
3
+ *
4
+ * Provides agents and workflows for hybrid security analysis.
5
+ */
6
+ export { defaultDecisionMatrix } from './types.js';
7
+ // Enrichment Agent
8
+ export { runEnrichment, applyEnrichmentToContext, } from './enrichment-agent.js';
9
+ // Verification Agent
10
+ export { runVerification, generateVerificationTargets, applyVerificationToContext, } from './verification-agent.js';
11
+ // Security Agent (Orchestrator)
12
+ export { runSecurityAnalysis, } from './security-agent.js';
13
+ // Workflow
14
+ export { runHybridAnalysis, createWorkflowState, updateWorkflowState, } from './workflow.js';
15
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/agents/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAwBH,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAEnD,mBAAmB;AACnB,OAAO,EACL,aAAa,EACb,wBAAwB,GACzB,MAAM,uBAAuB,CAAC;AAE/B,qBAAqB;AACrB,OAAO,EACL,eAAe,EACf,2BAA2B,EAC3B,0BAA0B,GAC3B,MAAM,yBAAyB,CAAC;AAEjC,gCAAgC;AAChC,OAAO,EACL,mBAAmB,GACpB,MAAM,qBAAqB,CAAC;AAE7B,WAAW;AACX,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,eAAe,CAAC"}
@@ -0,0 +1,373 @@
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
+ /**
9
+ * Enrichment Agent
10
+ *
11
+ * Specializes in discovering additional security-relevant patterns in code
12
+ * that static analysis might miss.
13
+ */
14
+ export declare const enrichmentAgent: Agent<"enrichment-agent", {
15
+ classifyRole: import("@mastra/core/tools").Tool<{
16
+ className: string;
17
+ methodNames: string;
18
+ annotations: string;
19
+ imports: string;
20
+ }, {
21
+ role: "controller" | "service" | "repository" | "utility" | "entity" | "unknown";
22
+ confidence: number;
23
+ reasoning: string;
24
+ indicators: string[];
25
+ }, unknown, unknown, import("@mastra/core/tools").ToolExecutionContext<unknown, unknown, unknown>, "classify-role", unknown>;
26
+ discoverSources: import("@mastra/core/tools").Tool<{
27
+ methodName: string;
28
+ classRole: string;
29
+ existingSources: string;
30
+ methodCode: string;
31
+ }, {
32
+ sources: {
33
+ line: number;
34
+ variable: string;
35
+ type: string;
36
+ confidence: number;
37
+ reasoning: string;
38
+ }[];
39
+ }, unknown, unknown, import("@mastra/core/tools").ToolExecutionContext<unknown, unknown, unknown>, "discover-sources", unknown>;
40
+ discoverSinks: import("@mastra/core/tools").Tool<{
41
+ methodName: string;
42
+ methodCalls: string;
43
+ existingSinks: string;
44
+ methodCode: string;
45
+ }, {
46
+ sinks: {
47
+ line: number;
48
+ method: string;
49
+ type: string;
50
+ cwe: string;
51
+ argPositions: number[];
52
+ confidence: number;
53
+ reasoning: string;
54
+ }[];
55
+ }, unknown, unknown, import("@mastra/core/tools").ToolExecutionContext<unknown, unknown, unknown>, "discover-sinks", unknown>;
56
+ }, undefined, unknown>;
57
+ /**
58
+ * Verification Agent
59
+ *
60
+ * Specializes in determining whether potential vulnerabilities are actually
61
+ * exploitable by analyzing data flow and sanitization.
62
+ */
63
+ export declare const verificationAgent: Agent<"verification-agent", {
64
+ verifyVulnerability: import("@mastra/core/tools").Tool<{
65
+ cwe: string;
66
+ sourceType: string;
67
+ className: string;
68
+ methodName: string;
69
+ methodCode: string;
70
+ sourceLine: number;
71
+ sourceCode: string;
72
+ sinkLine: number;
73
+ sinkCode: string;
74
+ sinkType: string;
75
+ sanitizersInPath: string[];
76
+ }, {
77
+ verdict: "TRUE_POSITIVE" | "FALSE_POSITIVE" | "UNCERTAIN";
78
+ confidence: number;
79
+ reasoning: string;
80
+ exploitability: "high" | "medium" | "low" | "none";
81
+ sanitizersFound: string[];
82
+ attackVector: string;
83
+ }, unknown, unknown, import("@mastra/core/tools").ToolExecutionContext<unknown, unknown, unknown>, "verify-vulnerability", unknown>;
84
+ }, undefined, unknown>;
85
+ /**
86
+ * Cross-File Analysis Agent
87
+ *
88
+ * Specializes in tracking taint flow across file boundaries.
89
+ */
90
+ export declare const crossFileAgent: Agent<"cross-file-agent", {
91
+ crossFileTaint: import("@mastra/core/tools").Tool<{
92
+ sourceCode: string;
93
+ sourceFile: string;
94
+ targetFile: string;
95
+ targetCode: string;
96
+ exportedTaint: {
97
+ symbol: string;
98
+ type: string;
99
+ line: number;
100
+ }[];
101
+ importedSymbols: string[];
102
+ }, {
103
+ taintFlows: Array<{
104
+ sourceSymbol: string;
105
+ targetSymbol: string;
106
+ flowType: "direct" | "transitive" | "conditional";
107
+ confidence: number;
108
+ }>;
109
+ reasoning: string;
110
+ }, unknown, unknown, import("@mastra/core/tools").ToolExecutionContext<unknown, unknown, unknown>, "cross-file-taint", unknown>;
111
+ }, undefined, unknown>;
112
+ /**
113
+ * Orchestrator Agent
114
+ *
115
+ * Coordinates the analysis workflow and makes high-level decisions.
116
+ */
117
+ export declare const orchestratorAgent: Agent<"orchestrator-agent", {
118
+ classifyRole: import("@mastra/core/tools").Tool<{
119
+ className: string;
120
+ methodNames: string;
121
+ annotations: string;
122
+ imports: string;
123
+ }, {
124
+ role: "controller" | "service" | "repository" | "utility" | "entity" | "unknown";
125
+ confidence: number;
126
+ reasoning: string;
127
+ indicators: string[];
128
+ }, unknown, unknown, import("@mastra/core/tools").ToolExecutionContext<unknown, unknown, unknown>, "classify-role", unknown>;
129
+ discoverSources: import("@mastra/core/tools").Tool<{
130
+ methodName: string;
131
+ classRole: string;
132
+ existingSources: string;
133
+ methodCode: string;
134
+ }, {
135
+ sources: {
136
+ line: number;
137
+ variable: string;
138
+ type: string;
139
+ confidence: number;
140
+ reasoning: string;
141
+ }[];
142
+ }, unknown, unknown, import("@mastra/core/tools").ToolExecutionContext<unknown, unknown, unknown>, "discover-sources", unknown>;
143
+ discoverSinks: import("@mastra/core/tools").Tool<{
144
+ methodName: string;
145
+ methodCalls: string;
146
+ existingSinks: string;
147
+ methodCode: string;
148
+ }, {
149
+ sinks: {
150
+ line: number;
151
+ method: string;
152
+ type: string;
153
+ cwe: string;
154
+ argPositions: number[];
155
+ confidence: number;
156
+ reasoning: string;
157
+ }[];
158
+ }, unknown, unknown, import("@mastra/core/tools").ToolExecutionContext<unknown, unknown, unknown>, "discover-sinks", unknown>;
159
+ verifyVulnerability: import("@mastra/core/tools").Tool<{
160
+ cwe: string;
161
+ sourceType: string;
162
+ className: string;
163
+ methodName: string;
164
+ methodCode: string;
165
+ sourceLine: number;
166
+ sourceCode: string;
167
+ sinkLine: number;
168
+ sinkCode: string;
169
+ sinkType: string;
170
+ sanitizersInPath: string[];
171
+ }, {
172
+ verdict: "TRUE_POSITIVE" | "FALSE_POSITIVE" | "UNCERTAIN";
173
+ confidence: number;
174
+ reasoning: string;
175
+ exploitability: "high" | "medium" | "low" | "none";
176
+ sanitizersFound: string[];
177
+ attackVector: string;
178
+ }, unknown, unknown, import("@mastra/core/tools").ToolExecutionContext<unknown, unknown, unknown>, "verify-vulnerability", unknown>;
179
+ crossFileTaint: import("@mastra/core/tools").Tool<{
180
+ sourceCode: string;
181
+ sourceFile: string;
182
+ targetFile: string;
183
+ targetCode: string;
184
+ exportedTaint: {
185
+ symbol: string;
186
+ type: string;
187
+ line: number;
188
+ }[];
189
+ importedSymbols: string[];
190
+ }, {
191
+ taintFlows: Array<{
192
+ sourceSymbol: string;
193
+ targetSymbol: string;
194
+ flowType: "direct" | "transitive" | "conditional";
195
+ confidence: number;
196
+ }>;
197
+ reasoning: string;
198
+ }, unknown, unknown, import("@mastra/core/tools").ToolExecutionContext<unknown, unknown, unknown>, "cross-file-taint", unknown>;
199
+ }, undefined, unknown>;
200
+ export declare const agents: {
201
+ enrichment: Agent<"enrichment-agent", {
202
+ classifyRole: import("@mastra/core/tools").Tool<{
203
+ className: string;
204
+ methodNames: string;
205
+ annotations: string;
206
+ imports: string;
207
+ }, {
208
+ role: "controller" | "service" | "repository" | "utility" | "entity" | "unknown";
209
+ confidence: number;
210
+ reasoning: string;
211
+ indicators: string[];
212
+ }, unknown, unknown, import("@mastra/core/tools").ToolExecutionContext<unknown, unknown, unknown>, "classify-role", unknown>;
213
+ discoverSources: import("@mastra/core/tools").Tool<{
214
+ methodName: string;
215
+ classRole: string;
216
+ existingSources: string;
217
+ methodCode: string;
218
+ }, {
219
+ sources: {
220
+ line: number;
221
+ variable: string;
222
+ type: string;
223
+ confidence: number;
224
+ reasoning: string;
225
+ }[];
226
+ }, unknown, unknown, import("@mastra/core/tools").ToolExecutionContext<unknown, unknown, unknown>, "discover-sources", unknown>;
227
+ discoverSinks: import("@mastra/core/tools").Tool<{
228
+ methodName: string;
229
+ methodCalls: string;
230
+ existingSinks: string;
231
+ methodCode: string;
232
+ }, {
233
+ sinks: {
234
+ line: number;
235
+ method: string;
236
+ type: string;
237
+ cwe: string;
238
+ argPositions: number[];
239
+ confidence: number;
240
+ reasoning: string;
241
+ }[];
242
+ }, unknown, unknown, import("@mastra/core/tools").ToolExecutionContext<unknown, unknown, unknown>, "discover-sinks", unknown>;
243
+ }, undefined, unknown>;
244
+ verification: Agent<"verification-agent", {
245
+ verifyVulnerability: import("@mastra/core/tools").Tool<{
246
+ cwe: string;
247
+ sourceType: string;
248
+ className: string;
249
+ methodName: string;
250
+ methodCode: string;
251
+ sourceLine: number;
252
+ sourceCode: string;
253
+ sinkLine: number;
254
+ sinkCode: string;
255
+ sinkType: string;
256
+ sanitizersInPath: string[];
257
+ }, {
258
+ verdict: "TRUE_POSITIVE" | "FALSE_POSITIVE" | "UNCERTAIN";
259
+ confidence: number;
260
+ reasoning: string;
261
+ exploitability: "high" | "medium" | "low" | "none";
262
+ sanitizersFound: string[];
263
+ attackVector: string;
264
+ }, unknown, unknown, import("@mastra/core/tools").ToolExecutionContext<unknown, unknown, unknown>, "verify-vulnerability", unknown>;
265
+ }, undefined, unknown>;
266
+ crossFile: Agent<"cross-file-agent", {
267
+ crossFileTaint: import("@mastra/core/tools").Tool<{
268
+ sourceCode: string;
269
+ sourceFile: string;
270
+ targetFile: string;
271
+ targetCode: string;
272
+ exportedTaint: {
273
+ symbol: string;
274
+ type: string;
275
+ line: number;
276
+ }[];
277
+ importedSymbols: string[];
278
+ }, {
279
+ taintFlows: Array<{
280
+ sourceSymbol: string;
281
+ targetSymbol: string;
282
+ flowType: "direct" | "transitive" | "conditional";
283
+ confidence: number;
284
+ }>;
285
+ reasoning: string;
286
+ }, unknown, unknown, import("@mastra/core/tools").ToolExecutionContext<unknown, unknown, unknown>, "cross-file-taint", unknown>;
287
+ }, undefined, unknown>;
288
+ orchestrator: Agent<"orchestrator-agent", {
289
+ classifyRole: import("@mastra/core/tools").Tool<{
290
+ className: string;
291
+ methodNames: string;
292
+ annotations: string;
293
+ imports: string;
294
+ }, {
295
+ role: "controller" | "service" | "repository" | "utility" | "entity" | "unknown";
296
+ confidence: number;
297
+ reasoning: string;
298
+ indicators: string[];
299
+ }, unknown, unknown, import("@mastra/core/tools").ToolExecutionContext<unknown, unknown, unknown>, "classify-role", unknown>;
300
+ discoverSources: import("@mastra/core/tools").Tool<{
301
+ methodName: string;
302
+ classRole: string;
303
+ existingSources: string;
304
+ methodCode: string;
305
+ }, {
306
+ sources: {
307
+ line: number;
308
+ variable: string;
309
+ type: string;
310
+ confidence: number;
311
+ reasoning: string;
312
+ }[];
313
+ }, unknown, unknown, import("@mastra/core/tools").ToolExecutionContext<unknown, unknown, unknown>, "discover-sources", unknown>;
314
+ discoverSinks: import("@mastra/core/tools").Tool<{
315
+ methodName: string;
316
+ methodCalls: string;
317
+ existingSinks: string;
318
+ methodCode: string;
319
+ }, {
320
+ sinks: {
321
+ line: number;
322
+ method: string;
323
+ type: string;
324
+ cwe: string;
325
+ argPositions: number[];
326
+ confidence: number;
327
+ reasoning: string;
328
+ }[];
329
+ }, unknown, unknown, import("@mastra/core/tools").ToolExecutionContext<unknown, unknown, unknown>, "discover-sinks", unknown>;
330
+ verifyVulnerability: import("@mastra/core/tools").Tool<{
331
+ cwe: string;
332
+ sourceType: string;
333
+ className: string;
334
+ methodName: string;
335
+ methodCode: string;
336
+ sourceLine: number;
337
+ sourceCode: string;
338
+ sinkLine: number;
339
+ sinkCode: string;
340
+ sinkType: string;
341
+ sanitizersInPath: string[];
342
+ }, {
343
+ verdict: "TRUE_POSITIVE" | "FALSE_POSITIVE" | "UNCERTAIN";
344
+ confidence: number;
345
+ reasoning: string;
346
+ exploitability: "high" | "medium" | "low" | "none";
347
+ sanitizersFound: string[];
348
+ attackVector: string;
349
+ }, unknown, unknown, import("@mastra/core/tools").ToolExecutionContext<unknown, unknown, unknown>, "verify-vulnerability", unknown>;
350
+ crossFileTaint: import("@mastra/core/tools").Tool<{
351
+ sourceCode: string;
352
+ sourceFile: string;
353
+ targetFile: string;
354
+ targetCode: string;
355
+ exportedTaint: {
356
+ symbol: string;
357
+ type: string;
358
+ line: number;
359
+ }[];
360
+ importedSymbols: string[];
361
+ }, {
362
+ taintFlows: Array<{
363
+ sourceSymbol: string;
364
+ targetSymbol: string;
365
+ flowType: "direct" | "transitive" | "conditional";
366
+ confidence: number;
367
+ }>;
368
+ reasoning: string;
369
+ }, unknown, unknown, import("@mastra/core/tools").ToolExecutionContext<unknown, unknown, unknown>, "cross-file-taint", unknown>;
370
+ }, undefined, unknown>;
371
+ };
372
+ export default agents;
373
+ //# sourceMappingURL=agents.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agents.d.ts","sourceRoot":"","sources":["../../../src/agents/mastra/agents.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AA8N3C;;;;;GAKG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBA2B1B,CAAC;AAEH;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;sBAyB5B,CAAC;AAEH;;;;GAIG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;sBAqBzB,CAAC;AAEH;;;;GAIG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBA0B5B,CAAC;AAMH,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKlB,CAAC;AAEF,eAAe,MAAM,CAAC"}