@pensar/apex 2.5.0 → 2.6.1-canary.025b1ecf

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 (1509) hide show
  1. package/README.md +38 -0
  2. package/bin/pensar.js +12 -4
  3. package/build/agent-b37fm1yh.js +13 -0
  4. package/build/{agent-m30a62kh.js → agent-f8rpt4sb.js} +48 -50
  5. package/build/agent-gqexqg2q.js +13 -0
  6. package/build/agent-qk30vqmf.js +15 -0
  7. package/build/agent-runs-nw7dwp1d.js +313 -0
  8. package/build/{apps-x4ef2gpc.js → apps-zeqbjbs4.js} +50 -58
  9. package/build/{auth-7ay8qgxm.js → auth-038hsg1s.js} +61 -68
  10. package/build/blackboxAgent-fjrv4q3d.js +13 -0
  11. package/build/blackboxPentest-6dtb7vnq.js +59 -0
  12. package/build/{cli-73k43t1r.js → cli-17ndymmb.js} +53 -78
  13. package/build/{cli-3py0a0wg.js → cli-1rwe9a9v.js} +206 -136
  14. package/build/{cli-y3dpm18e.js → cli-2tfnaeca.js} +75 -92
  15. package/build/{cli-ee3axgts.js → cli-3gt761d2.js} +7 -1
  16. package/build/cli-3qznjsnr.js +14 -0
  17. package/build/{cli-sx3jkv7p.js → cli-3w0mx2mv.js} +28872 -25951
  18. package/build/cli-5qq1655n.js +175 -0
  19. package/build/{cli-53rm0rrz.js → cli-8w8k4dph.js} +1 -1
  20. package/build/{cli-68260ckj.js → cli-91gs9whc.js} +1658 -1606
  21. package/build/cli-99gxp2yb.js +62 -0
  22. package/build/cli-ayqhdajr.js +22 -0
  23. package/build/{cli-knd276ed.js → cli-bb02pjt0.js} +31 -31
  24. package/build/{cli-p4r7q012.js → cli-bw31v3z7.js} +16743 -13352
  25. package/build/{cli-j54qa6tm.js → cli-c2k4xxaw.js} +42 -42
  26. package/build/{cli-z5c0ypg1.js → cli-czwr2xmh.js} +4 -4
  27. package/build/{cli-k71t434r.js → cli-ec2hwkv3.js} +34 -76
  28. package/build/{cli-vkbzcnw1.js → cli-fxmref08.js} +43 -40
  29. package/build/cli-g06s7edq.js +11 -0
  30. package/build/cli-gsaf4jk3.js +280 -0
  31. package/build/{cli-bc05qbss.js → cli-h6y3bt60.js} +13 -21
  32. package/build/cli-jdrx44ge.js +14 -0
  33. package/build/{cli-x92fkt2f.js → cli-m3btkdbx.js} +55 -97
  34. package/build/cli-mdk51kby.js +429 -0
  35. package/build/{cli-bw2ddttk.js → cli-mnpzhtg6.js} +4730 -267
  36. package/build/cli-mz5pk30x.js +5508 -0
  37. package/build/cli-pwm29ks7.js +6337 -0
  38. package/build/cli-retw3rw5.js +12 -0
  39. package/build/{cli-kff2bbq7.js → cli-rxj14t82.js} +43 -43
  40. package/build/cli-se8ae8z3.js +2250 -0
  41. package/build/cli-skedjgqy.js +186 -0
  42. package/build/{cli-dm0fc0bm.js → cli-v1sarr4y.js} +5 -9
  43. package/build/cli-vfzpbv3g.js +355 -0
  44. package/build/cli-xcy2vxj2.js +1732 -0
  45. package/build/{cli-zav1yx5k.js → cli-yn4sj3z1.js} +990 -632
  46. package/build/{cli-7vg06q5r.js → cli-zsq8kfgc.js} +135 -125
  47. package/build/cli.js +769 -195
  48. package/build/{config-4kzh88xz.js → config-4emx9c35.js} +16 -19
  49. package/build/{doctor-rz7sx6ev.js → doctor-z94afr10.js} +26 -15
  50. package/build/export-trajectory-rt4tf07k.js +112 -0
  51. package/build/{fastStrike-a54atjc8.js → fastStrike-mnn8g4ay.js} +56 -31
  52. package/build/{fixes-fv66yn1z.js → fixes-hm5569vq.js} +22 -30
  53. package/build/{getMachineId-bsd-xj3bn2fv.js → getMachineId-bsd-zr67nd9p.js} +5 -5
  54. package/build/{getMachineId-darwin-07jzjcx6.js → getMachineId-darwin-fd1d562d.js} +5 -5
  55. package/build/{getMachineId-linux-ahngynxd.js → getMachineId-linux-kjmg243j.js} +4 -4
  56. package/build/{getMachineId-unsupported-vy43b44z.js → getMachineId-unsupported-n4r58vke.js} +4 -4
  57. package/build/{getMachineId-win-8x66cynz.js → getMachineId-win-yzgpfsrb.js} +5 -5
  58. package/build/index-0yfxwj9h.js +25 -0
  59. package/build/{index-kyd1jm89.js → index-1qjwwg4x.js} +159 -169
  60. package/build/index-939ypn8a.js +12 -0
  61. package/build/index-a0bxw5zq.js +17477 -0
  62. package/build/{index-cbwn03kz.js → index-a2xycbjs.js} +12 -31
  63. package/build/{index-psqjpw5m.js → index-c1h0g35p.js} +11 -11
  64. package/build/{index-fpwr10qm.js → index-f2xpfw4x.js} +5106 -3803
  65. package/build/index-g9akqryt.js +9 -0
  66. package/build/index-mrrfbsyz.js +17 -0
  67. package/build/index-qnyevb6q.js +1563 -0
  68. package/build/index-ttwhf2se.js +36 -0
  69. package/build/index-vy2pm5zf.js +121 -0
  70. package/build/index-x8ab8x86.js +102 -0
  71. package/build/{issues-019678t0.js → issues-wxd3ca1d.js} +51 -47
  72. package/build/knowledge-rvcpbak8.js +139 -0
  73. package/build/lib/chunk-0y40tebt.js +102 -0
  74. package/build/lib/chunk-0ydfy4hq.js +510 -0
  75. package/build/lib/chunk-2njv7wz3.js +178 -0
  76. package/build/lib/chunk-3q89v4xv.js +21 -0
  77. package/build/lib/chunk-4p2n69vn.js +62 -0
  78. package/build/lib/chunk-7gjdygcx.js +171 -0
  79. package/build/lib/chunk-8d8w07a9.js +431 -0
  80. package/build/lib/chunk-8dqz8cwa.js +27 -0
  81. package/build/lib/chunk-8vhr65w3.js +272 -0
  82. package/build/lib/chunk-8xnzgfs0.js +56 -0
  83. package/build/lib/chunk-9nsrd4xg.js +12 -0
  84. package/build/lib/chunk-a3gxgj9r.js +317 -0
  85. package/build/lib/chunk-afef65e0.js +7150 -0
  86. package/build/lib/chunk-b8eq85d2.js +143 -0
  87. package/build/lib/chunk-bqrmw2tn.js +439 -0
  88. package/build/lib/chunk-bx94rwt5.js +24 -0
  89. package/build/lib/chunk-c2b0hxs7.js +143 -0
  90. package/build/lib/chunk-cwj17b1f.js +345 -0
  91. package/build/lib/chunk-cx7yrzh1.js +2429 -0
  92. package/build/lib/chunk-eb4h4k1f.js +213 -0
  93. package/build/lib/chunk-esymacwg.js +14 -0
  94. package/build/lib/chunk-fy3bbbqy.js +7896 -0
  95. package/build/lib/chunk-gdrv2h1p.js +11157 -0
  96. package/build/lib/chunk-ja7j565c.js +743 -0
  97. package/build/lib/chunk-jdjagvgr.js +85 -0
  98. package/build/lib/chunk-k4rz1yvj.js +31 -0
  99. package/build/lib/chunk-kfvq4m1s.js +685 -0
  100. package/build/lib/chunk-mgppdr6j.js +980 -0
  101. package/build/lib/chunk-mhxe717m.js +572 -0
  102. package/build/lib/chunk-mv74mq5n.js +59 -0
  103. package/build/lib/chunk-n0ba7khr.js +64 -0
  104. package/build/lib/chunk-q5e23acz.js +52 -0
  105. package/build/lib/chunk-q8bk9dys.js +922 -0
  106. package/build/lib/chunk-sgd2126b.js +9294 -0
  107. package/build/lib/chunk-t5bt5vn1.js +146 -0
  108. package/build/lib/chunk-v2q8anzw.js +120 -0
  109. package/build/lib/chunk-vd6hr8pm.js +212 -0
  110. package/build/lib/chunk-ve7m90fb.js +317 -0
  111. package/build/lib/chunk-vx228eeq.js +82 -0
  112. package/build/lib/chunk-wchtd611.js +186 -0
  113. package/build/lib/chunk-ws86wx87.js +1412 -0
  114. package/build/lib/chunk-xpfg2fbk.js +90 -0
  115. package/build/lib/chunk-zrbqn62x.js +697 -0
  116. package/build/lib/core/agents/agentRuntime.d.ts +47 -0
  117. package/build/lib/core/agents/defineAgent.d.ts +82 -0
  118. package/build/lib/core/agents/offSecAgent/index.d.ts +9 -0
  119. package/build/lib/core/agents/offSecAgent/index.js +225 -0
  120. package/build/lib/core/agents/offSecAgent/interruptedStepFinalization.d.ts +23 -0
  121. package/build/lib/core/agents/offSecAgent/interruptedStepMessages.d.ts +42 -0
  122. package/build/lib/core/agents/offSecAgent/messagePersistence.d.ts +39 -0
  123. package/build/lib/core/agents/offSecAgent/offensiveSecurityAgent.d.ts +233 -0
  124. package/build/lib/core/agents/offSecAgent/prompt.d.ts +35 -0
  125. package/build/lib/core/agents/offSecAgent/recordedTools.d.ts +11 -0
  126. package/build/lib/core/agents/offSecAgent/runtimeContext.d.ts +43 -0
  127. package/build/lib/core/agents/offSecAgent/streamDiagnostics.d.ts +67 -0
  128. package/build/lib/core/agents/offSecAgent/subagentSpawner.d.ts +223 -0
  129. package/build/lib/core/agents/offSecAgent/subagentSpawner.js +19 -0
  130. package/build/lib/core/agents/offSecAgent/toolLifecycle.d.ts +54 -0
  131. package/build/lib/core/agents/offSecAgent/tools/__tests__/sandboxScript.d.ts +1 -0
  132. package/build/lib/core/agents/offSecAgent/tools/addMemory.d.ts +16 -0
  133. package/build/lib/core/agents/offSecAgent/tools/agentScratch.d.ts +17 -0
  134. package/build/lib/core/agents/offSecAgent/tools/applyPatch.d.ts +8 -0
  135. package/build/lib/core/agents/offSecAgent/tools/applyPatchImpl.d.ts +24 -0
  136. package/build/lib/core/agents/offSecAgent/tools/askUserQuestions.d.ts +42 -0
  137. package/build/lib/core/agents/offSecAgent/tools/browserHeaderRouting.d.ts +9 -0
  138. package/build/lib/core/agents/offSecAgent/tools/browserToolFactories.d.ts +40 -0
  139. package/build/lib/core/agents/offSecAgent/tools/browserTools.d.ts +96 -0
  140. package/build/lib/core/agents/offSecAgent/tools/callbackListener.d.ts +212 -0
  141. package/build/lib/core/agents/offSecAgent/tools/camoufox.d.ts +106 -0
  142. package/build/lib/core/agents/offSecAgent/tools/checkpointState.d.ts +17 -0
  143. package/build/lib/core/agents/offSecAgent/tools/completeAuthentication.d.ts +39 -0
  144. package/build/lib/core/agents/offSecAgent/tools/crawlAuthenticated.d.ts +36 -0
  145. package/build/lib/core/agents/offSecAgent/tools/createAttackSurfaceReport.d.ts +31 -0
  146. package/build/lib/core/agents/offSecAgent/tools/createFile.d.ts +12 -0
  147. package/build/lib/core/agents/offSecAgent/tools/createTask.d.ts +20 -0
  148. package/build/lib/core/agents/offSecAgent/tools/delegateAuth.d.ts +72 -0
  149. package/build/lib/core/agents/offSecAgent/tools/deleteFile.d.ts +10 -0
  150. package/build/lib/core/agents/offSecAgent/tools/destructiveGuard.d.ts +94 -0
  151. package/build/lib/core/agents/offSecAgent/tools/detectAuthScheme.d.ts +72 -0
  152. package/build/lib/core/agents/offSecAgent/tools/documentApp.d.ts +38 -0
  153. package/build/lib/core/agents/offSecAgent/tools/documentEndpoint.d.ts +111 -0
  154. package/build/lib/core/agents/offSecAgent/tools/documentFinding.d.ts +285 -0
  155. package/build/lib/core/agents/offSecAgent/tools/email/adapters.d.ts +45 -0
  156. package/build/lib/core/agents/offSecAgent/tools/email/adapters.js +8 -0
  157. package/build/lib/core/agents/offSecAgent/tools/email/getAttachments.d.ts +33 -0
  158. package/build/lib/core/agents/offSecAgent/tools/email/getMessage.d.ts +20 -0
  159. package/build/lib/core/agents/offSecAgent/tools/email/index.d.ts +145 -0
  160. package/build/lib/core/agents/offSecAgent/tools/email/listInboxes.d.ts +23 -0
  161. package/build/lib/core/agents/offSecAgent/tools/email/listMessages.d.ts +22 -0
  162. package/build/lib/core/agents/offSecAgent/tools/email/markRead.d.ts +20 -0
  163. package/build/lib/core/agents/offSecAgent/tools/email/searchMessages.d.ts +24 -0
  164. package/build/lib/core/agents/offSecAgent/tools/email/sendEmail.d.ts +28 -0
  165. package/build/lib/core/agents/offSecAgent/tools/email/types.d.ts +40 -0
  166. package/build/lib/core/agents/offSecAgent/tools/email/types.js +0 -0
  167. package/build/lib/core/agents/offSecAgent/tools/executeCommand.d.ts +84 -0
  168. package/build/lib/core/agents/offSecAgent/tools/extractJsEndpoints.d.ts +13 -0
  169. package/build/lib/core/agents/offSecAgent/tools/fileWorkspace.d.ts +21 -0
  170. package/build/lib/core/agents/offSecAgent/tools/fileWorkspaceRemote.d.ts +13 -0
  171. package/build/lib/core/agents/offSecAgent/tools/getMemory.d.ts +12 -0
  172. package/build/lib/core/agents/offSecAgent/tools/getPage.d.ts +17 -0
  173. package/build/lib/core/agents/offSecAgent/tools/gitDiff.d.ts +12 -0
  174. package/build/lib/core/agents/offSecAgent/tools/gitStatus.d.ts +10 -0
  175. package/build/lib/core/agents/offSecAgent/tools/glob.d.ts +8 -0
  176. package/build/lib/core/agents/offSecAgent/tools/globImpl.d.ts +13 -0
  177. package/build/lib/core/agents/offSecAgent/tools/globPattern.d.ts +7 -0
  178. package/build/lib/core/agents/offSecAgent/tools/grep.d.ts +10 -0
  179. package/build/lib/core/agents/offSecAgent/tools/grepImpl.d.ts +34 -0
  180. package/build/lib/core/agents/offSecAgent/tools/httpRequest.d.ts +70 -0
  181. package/build/lib/core/agents/offSecAgent/tools/index.d.ts +466 -0
  182. package/build/lib/core/agents/offSecAgent/tools/index.js +262 -0
  183. package/build/lib/core/agents/offSecAgent/tools/listFiles.d.ts +9 -0
  184. package/build/lib/core/agents/offSecAgent/tools/listFilesImpl.d.ts +27 -0
  185. package/build/lib/core/agents/offSecAgent/tools/listMemories.d.ts +13 -0
  186. package/build/lib/core/agents/offSecAgent/tools/listPromptInjections.d.ts +18 -0
  187. package/build/lib/core/agents/offSecAgent/tools/listTasks.d.ts +24 -0
  188. package/build/lib/core/agents/offSecAgent/tools/patchApply.d.ts +24 -0
  189. package/build/lib/core/agents/offSecAgent/tools/patchParse.d.ts +24 -0
  190. package/build/lib/core/agents/offSecAgent/tools/perCommandShell.d.ts +82 -0
  191. package/build/lib/core/agents/offSecAgent/tools/playwrightMcp.d.ts +369 -0
  192. package/build/lib/core/agents/offSecAgent/tools/probeAuthEndpoints.d.ts +28 -0
  193. package/build/lib/core/agents/offSecAgent/tools/profileCodebase.d.ts +33 -0
  194. package/build/lib/core/agents/offSecAgent/tools/provideComparisonResults.d.ts +31 -0
  195. package/build/lib/core/agents/offSecAgent/tools/queryWhiteboxCatalog.d.ts +17 -0
  196. package/build/lib/core/agents/offSecAgent/tools/readFile.d.ts +11 -0
  197. package/build/lib/core/agents/offSecAgent/tools/readFileImpl.d.ts +31 -0
  198. package/build/lib/core/agents/offSecAgent/tools/readSkill.d.ts +15 -0
  199. package/build/lib/core/agents/offSecAgent/tools/reportError.d.ts +31 -0
  200. package/build/lib/core/agents/offSecAgent/tools/response.d.ts +15 -0
  201. package/build/lib/core/agents/offSecAgent/tools/runAttackSurface.d.ts +81 -0
  202. package/build/lib/core/agents/offSecAgent/tools/runCodeQuery.d.ts +44 -0
  203. package/build/lib/core/agents/offSecAgent/tools/runPentestWorkflow.d.ts +32 -0
  204. package/build/lib/core/agents/offSecAgent/tools/runWhiteboxScan.d.ts +52 -0
  205. package/build/lib/core/agents/offSecAgent/tools/sandbox.d.ts +30 -0
  206. package/build/lib/core/agents/offSecAgent/tools/sandboxPlaywright.d.ts +137 -0
  207. package/build/lib/core/agents/offSecAgent/tools/sandboxScript.d.ts +6 -0
  208. package/build/lib/core/agents/offSecAgent/tools/scopeGuard.d.ts +91 -0
  209. package/build/lib/core/agents/offSecAgent/tools/scriptSyntaxCheck.d.ts +45 -0
  210. package/build/lib/core/agents/offSecAgent/tools/smsInbox.d.ts +67 -0
  211. package/build/lib/core/agents/offSecAgent/tools/smsInbox.js +6 -0
  212. package/build/lib/core/agents/offSecAgent/tools/smsListMessages.d.ts +29 -0
  213. package/build/lib/core/agents/offSecAgent/tools/spawnCodingAgent.d.ts +43 -0
  214. package/build/lib/core/agents/offSecAgent/tools/spawnPentestAgent.d.ts +51 -0
  215. package/build/lib/core/agents/offSecAgent/tools/spawnPentestSwarm.d.ts +52 -0
  216. package/build/lib/core/agents/offSecAgent/tools/submitPlan.d.ts +12 -0
  217. package/build/lib/core/agents/offSecAgent/tools/testEndpointVariations.d.ts +34 -0
  218. package/build/lib/core/agents/offSecAgent/tools/threatModelGenerator.d.ts +32 -0
  219. package/build/lib/core/agents/offSecAgent/tools/toolOutput.d.ts +23 -0
  220. package/build/lib/core/agents/offSecAgent/tools/types.d.ts +215 -0
  221. package/build/lib/core/agents/offSecAgent/tools/updateFile.d.ts +14 -0
  222. package/build/lib/core/agents/offSecAgent/tools/updateTask.d.ts +20 -0
  223. package/build/lib/core/agents/offSecAgent/tools/validateDiscovery.d.ts +24 -0
  224. package/build/lib/core/agents/offSecAgent/tools/webSearch.d.ts +16 -0
  225. package/build/lib/core/agents/offSecAgent/tools/whiteboxCandidates.d.ts +108 -0
  226. package/build/lib/core/agents/offSecAgent/tools/whiteboxJobs.d.ts +157 -0
  227. package/build/lib/core/agents/offSecAgent/tools/windowsCurl.d.ts +20 -0
  228. package/build/lib/core/agents/offSecAgent/tools/workspaceApps.d.ts +120 -0
  229. package/build/lib/core/agents/offSecAgent/tools/workspaceDomains.d.ts +22 -0
  230. package/build/lib/core/agents/offSecAgent/tools/workspaceFailure.d.ts +6 -0
  231. package/build/lib/core/agents/offSecAgent/tools/writePlan.d.ts +13 -0
  232. package/build/lib/core/agents/offSecAgent/trace.d.ts +268 -0
  233. package/build/lib/core/agents/offSecAgent/types.d.ts +543 -0
  234. package/build/lib/core/agents/offSecAgent/types.js +7 -0
  235. package/build/lib/core/agents/specialized/attackSurface/blackboxAgent.d.ts +66 -0
  236. package/build/lib/core/agents/specialized/attackSurface/blackboxAgent.js +33 -0
  237. package/build/lib/core/agents/specialized/attackSurface/blackboxRiskScoring.d.ts +30 -0
  238. package/build/lib/core/agents/specialized/attackSurface/grpcSchema.d.ts +93 -0
  239. package/build/lib/core/agents/specialized/attackSurface/jsExtraction.d.ts +42 -0
  240. package/build/lib/core/agents/specialized/attackSurface/prompts.d.ts +1 -0
  241. package/build/lib/core/agents/specialized/attackSurface/schemas.d.ts +284 -0
  242. package/build/lib/core/agents/specialized/attackSurface/schemas.js +144 -0
  243. package/build/lib/core/agents/specialized/attackSurface/types.d.ts +32 -0
  244. package/build/lib/core/agents/specialized/authenticationAgent/agent.d.ts +73 -0
  245. package/build/lib/core/agents/specialized/authenticationAgent/index.d.ts +4 -0
  246. package/build/lib/core/agents/specialized/authenticationAgent/index.js +71 -0
  247. package/build/lib/core/agents/specialized/authenticationAgent/prompts.d.ts +10 -0
  248. package/build/lib/core/agents/specialized/authenticationAgent/types.d.ts +620 -0
  249. package/build/lib/core/agents/specialized/benchmark/comparisonAgent.d.ts +10 -0
  250. package/build/lib/core/agents/specialized/benchmark/docker-utils.d.ts +17 -0
  251. package/build/lib/core/agents/specialized/benchmark/flag-detector.d.ts +60 -0
  252. package/build/lib/core/agents/specialized/benchmark/index.d.ts +8 -0
  253. package/build/lib/core/agents/specialized/benchmark/prompts.d.ts +1 -0
  254. package/build/lib/core/agents/specialized/benchmark/remote/circuit-breaker.d.ts +22 -0
  255. package/build/lib/core/agents/specialized/benchmark/remote/daytona-wrapper.d.ts +33 -0
  256. package/build/lib/core/agents/specialized/benchmark/remote/index.d.ts +2 -0
  257. package/build/lib/core/agents/specialized/benchmark/types.d.ts +92 -0
  258. package/build/lib/core/agents/specialized/benchmarkComparisonAgent.d.ts +27 -0
  259. package/build/lib/core/agents/specialized/codeAgent/agent.d.ts +50 -0
  260. package/build/lib/core/agents/specialized/codeAgent/agent.js +31 -0
  261. package/build/lib/core/agents/specialized/codeAgent/prompts.d.ts +1 -0
  262. package/build/lib/core/agents/specialized/codeAgent/schemas.d.ts +11 -0
  263. package/build/lib/core/agents/specialized/codeAgent/schemas.js +10 -0
  264. package/build/lib/core/agents/specialized/cvssScorer/index.d.ts +56 -0
  265. package/build/lib/core/agents/specialized/environment/agent.d.ts +43 -0
  266. package/build/lib/core/agents/specialized/environment/index.d.ts +4 -0
  267. package/build/lib/core/agents/specialized/environment/prompts.d.ts +10 -0
  268. package/build/lib/core/agents/specialized/environment/types.d.ts +37 -0
  269. package/build/lib/core/agents/specialized/findingJudge/agent.d.ts +22 -0
  270. package/build/lib/core/agents/specialized/findingJudge/agent.js +224 -0
  271. package/build/lib/core/agents/specialized/findingJudge/index.d.ts +31 -0
  272. package/build/lib/core/agents/specialized/findingJudge/index.js +13 -0
  273. package/build/lib/core/agents/specialized/findingJudge/prompts.d.ts +3 -0
  274. package/build/lib/core/agents/specialized/findingJudge/types.d.ts +77 -0
  275. package/build/lib/core/agents/specialized/googleSignInPrompt.d.ts +4 -0
  276. package/build/lib/core/agents/specialized/mobileOtpPrompt.d.ts +1 -0
  277. package/build/lib/core/agents/specialized/patching/agent.d.ts +64 -0
  278. package/build/lib/core/agents/specialized/patching/index.d.ts +4 -0
  279. package/build/lib/core/agents/specialized/patching/index.js +44 -0
  280. package/build/lib/core/agents/specialized/patching/prompts.d.ts +17 -0
  281. package/build/lib/core/agents/specialized/patching/types.d.ts +40 -0
  282. package/build/lib/core/agents/specialized/pentest/agent.d.ts +172 -0
  283. package/build/lib/core/agents/specialized/pentest/agent.js +43 -0
  284. package/build/lib/core/agents/specialized/pentest/helperWorkspace.d.ts +16 -0
  285. package/build/lib/core/agents/specialized/pentest/planPrompt.d.ts +13 -0
  286. package/build/lib/core/agents/specialized/utils.d.ts +7 -0
  287. package/build/lib/core/agents/specialized/vulnerabilityReproduction/agent.d.ts +94 -0
  288. package/build/lib/core/agents/specialized/whiteboxAttackSurface/agent.d.ts +148 -0
  289. package/build/lib/core/agents/specialized/whiteboxAttackSurface/endpointDocumentationAgent.d.ts +61 -0
  290. package/build/lib/core/agents/specialized/whiteboxAttackSurface/index.d.ts +5 -0
  291. package/build/lib/core/agents/specialized/whiteboxAttackSurface/index.js +47 -0
  292. package/build/lib/core/agents/specialized/whiteboxAttackSurface/prompts.d.ts +34 -0
  293. package/build/lib/core/agents/specialized/whiteboxAttackSurface/types.d.ts +382 -0
  294. package/build/lib/core/agents/specialized/whiteboxAttackSurface/types.js +21 -0
  295. package/build/lib/core/ai/ai.d.ts +342 -0
  296. package/build/lib/core/ai/ai.js +68 -0
  297. package/build/lib/core/ai/caching.d.ts +26 -0
  298. package/build/lib/core/ai/compactionEvidence.d.ts +15 -0
  299. package/build/lib/core/ai/compactionTelemetry.d.ts +55 -0
  300. package/build/lib/core/ai/contextManagement.d.ts +85 -0
  301. package/build/lib/core/ai/index.d.ts +10 -0
  302. package/build/lib/core/ai/index.js +72 -0
  303. package/build/lib/core/ai/inference-attempt/adapters.d.ts +15 -0
  304. package/build/lib/core/ai/inference-attempt/builder.d.ts +31 -0
  305. package/build/lib/core/ai/inference-attempt/envelope.d.ts +120 -0
  306. package/build/lib/core/ai/inference-attempt/errors.d.ts +6 -0
  307. package/build/lib/core/ai/inference-attempt/identity.d.ts +13 -0
  308. package/build/lib/core/ai/inference-attempt/index.d.ts +36 -0
  309. package/build/lib/core/ai/inference-attempt/project.d.ts +21 -0
  310. package/build/lib/core/ai/inference-attempt/recording.d.ts +23 -0
  311. package/build/lib/core/ai/inference-attempt/tokens.d.ts +13 -0
  312. package/build/lib/core/ai/inference-attempt/validate.d.ts +2 -0
  313. package/build/lib/core/ai/mantle.d.ts +28 -0
  314. package/build/lib/core/ai/model-history.d.ts +4 -0
  315. package/build/lib/core/ai/models/anthropic.d.ts +2 -0
  316. package/build/lib/core/ai/models/bedrock.d.ts +2 -0
  317. package/build/lib/core/ai/models/claude-capabilities.d.ts +7 -0
  318. package/build/lib/core/ai/models/concentrate.d.ts +2 -0
  319. package/build/lib/core/ai/models/google.d.ts +2 -0
  320. package/build/lib/core/ai/models/inception.d.ts +2 -0
  321. package/build/lib/core/ai/models/index.d.ts +29 -0
  322. package/build/lib/core/ai/models/mantle.d.ts +2 -0
  323. package/build/lib/core/ai/models/openai.d.ts +2 -0
  324. package/build/lib/core/ai/models/openrouter.d.ts +2 -0
  325. package/build/lib/core/ai/models/pensar.d.ts +2 -0
  326. package/build/lib/core/ai/native-rollout-evidence/capture.d.ts +31 -0
  327. package/build/lib/core/ai/native-rollout-evidence/content.d.ts +14 -0
  328. package/build/lib/core/ai/native-rollout-evidence/index.d.ts +9 -0
  329. package/build/lib/core/ai/native-rollout-evidence/provider-metadata.d.ts +15 -0
  330. package/build/lib/core/ai/native-rollout-evidence/schema.d.ts +554 -0
  331. package/build/lib/core/ai/native-rollout-evidence/validate.d.ts +8 -0
  332. package/build/lib/core/ai/providers/anthropic.d.ts +2 -0
  333. package/build/lib/core/ai/providers/concentrate.d.ts +9 -0
  334. package/build/lib/core/ai/providers/custom.d.ts +3 -0
  335. package/build/lib/core/ai/providers/hoonify.d.ts +6 -0
  336. package/build/lib/core/ai/providers/openai-pro-fetch.d.ts +2 -0
  337. package/build/lib/core/ai/providers/pensar.d.ts +34 -0
  338. package/build/lib/core/ai/providers/pensarFormatters.d.ts +2 -0
  339. package/build/lib/core/ai/providers/pensarResponsesStream.d.ts +15 -0
  340. package/build/lib/core/ai/providers/pensarSSE.d.ts +23 -0
  341. package/build/lib/core/ai/providers/pensarSigning.d.ts +1 -0
  342. package/build/lib/core/ai/providers/pensarStreamUsage.d.ts +19 -0
  343. package/build/lib/core/ai/streamTelemetry.d.ts +22 -0
  344. package/build/lib/core/ai/utils.d.ts +90 -0
  345. package/build/lib/core/ai/utils.js +22 -0
  346. package/build/lib/core/api/apiClient.d.ts +7 -0
  347. package/build/lib/core/api/apps.d.ts +213 -0
  348. package/build/lib/core/api/attackSurface.d.ts +14 -0
  349. package/build/lib/core/api/authentication.d.ts +3 -0
  350. package/build/lib/core/api/benchmark.d.ts +5 -0
  351. package/build/lib/core/api/blackboxPentest.d.ts +11 -0
  352. package/build/lib/core/api/clientIdentity.d.ts +10 -0
  353. package/build/lib/core/api/constants.d.ts +5 -0
  354. package/build/lib/core/api/domains.d.ts +19 -0
  355. package/build/lib/core/api/environment.d.ts +16 -0
  356. package/build/lib/core/api/index.d.ts +41 -0
  357. package/build/lib/core/api/index.js +187 -0
  358. package/build/lib/core/api/issues.d.ts +273 -0
  359. package/build/lib/core/api/knowledge.d.ts +33 -0
  360. package/build/lib/core/api/localWorker.d.ts +4 -0
  361. package/build/lib/core/api/offesecAgent.d.ts +34 -0
  362. package/build/lib/core/api/patching.d.ts +15 -0
  363. package/build/lib/core/api/recordedRun.d.ts +36 -0
  364. package/build/lib/core/api/targetedPentest.d.ts +15 -0
  365. package/build/lib/core/api/targetedPentest.js +32 -0
  366. package/build/lib/core/api/threatModel.d.ts +1 -0
  367. package/build/lib/core/api/trajectoryExport.d.ts +38 -0
  368. package/build/lib/core/api/vulnerabilityReproduction.d.ts +10 -0
  369. package/build/lib/core/assets/wordlists.d.ts +31 -0
  370. package/build/lib/core/atif/convert.d.ts +27 -0
  371. package/build/lib/core/atif/index.d.ts +7 -0
  372. package/build/lib/core/atif/schema.d.ts +459 -0
  373. package/build/lib/core/atif/serialize.d.ts +2 -0
  374. package/build/lib/core/atif/test-fixtures.d.ts +28 -0
  375. package/build/lib/core/atif/validate.d.ts +12 -0
  376. package/build/lib/core/auth/connection.d.ts +12 -0
  377. package/build/lib/core/auth/device-flow.d.ts +38 -0
  378. package/build/lib/core/auth/gateway.d.ts +25 -0
  379. package/build/lib/core/auth/index.d.ts +8 -0
  380. package/build/lib/core/auth/signing.d.ts +14 -0
  381. package/build/lib/core/auth/token.d.ts +17 -0
  382. package/build/lib/core/auth/types.d.ts +85 -0
  383. package/build/lib/core/auth/workspaces.d.ts +34 -0
  384. package/build/lib/core/benchmark/index.d.ts +3 -0
  385. package/build/lib/core/benchmark/report.d.ts +3 -0
  386. package/build/lib/core/benchmark/runner.d.ts +3 -0
  387. package/build/lib/core/benchmark/types.d.ts +80 -0
  388. package/build/lib/core/cli/logLevelArgs.d.ts +18 -0
  389. package/build/lib/core/cli/model.d.ts +9 -0
  390. package/build/lib/core/cli/pentestMode.d.ts +5 -0
  391. package/build/lib/core/cli/tuiArgs.d.ts +5 -0
  392. package/build/lib/core/config/config.d.ts +86 -0
  393. package/build/lib/core/config/customProviders.d.ts +62 -0
  394. package/build/lib/core/config/index.d.ts +6 -0
  395. package/build/lib/core/config/index.js +6 -0
  396. package/build/lib/core/credentials/index.d.ts +2 -0
  397. package/build/lib/core/credentials/manager.d.ts +85 -0
  398. package/build/lib/core/credentials/types.d.ts +79 -0
  399. package/build/lib/core/doctor.d.ts +1 -0
  400. package/build/lib/core/eventBus.d.ts +195 -0
  401. package/build/lib/core/eventBus.js +6 -0
  402. package/build/lib/core/findings/attackSurfaceRegistry.d.ts +88 -0
  403. package/build/lib/core/findings/attackSurfaceRegistry.js +6 -0
  404. package/build/lib/core/findings/registry.d.ts +177 -0
  405. package/build/lib/core/findings/registry.js +21 -0
  406. package/build/lib/core/history.d.ts +23 -0
  407. package/build/lib/core/hoonify.d.ts +8 -0
  408. package/build/lib/core/http/parse.d.ts +50 -0
  409. package/build/lib/core/http/redirects.d.ts +23 -0
  410. package/build/lib/core/http/targetHeaders.d.ts +30 -0
  411. package/build/lib/core/http/targetScope.d.ts +12 -0
  412. package/build/lib/core/http/types.d.ts +11 -0
  413. package/build/lib/core/id/id.d.ts +60 -0
  414. package/build/lib/core/id/id.js +28 -0
  415. package/build/lib/core/installation/index.d.ts +25 -0
  416. package/build/lib/core/integrations/herdr.d.ts +13 -0
  417. package/build/lib/core/integrations/surface/index.d.ts +37 -0
  418. package/build/lib/core/integrations/surface/types.d.ts +22 -0
  419. package/build/lib/core/integrations/wandb/client.d.ts +23 -0
  420. package/build/lib/core/integrations/wandb/upload.d.ts +36 -0
  421. package/build/lib/core/logger/index.d.ts +62 -0
  422. package/build/lib/core/logger/structured.d.ts +30 -0
  423. package/build/lib/core/memory/index.d.ts +92 -0
  424. package/build/lib/core/memory/index.js +21 -0
  425. package/build/lib/core/messages/types.d.ts +96 -0
  426. package/build/lib/core/obfuscation/engine.d.ts +51 -0
  427. package/build/lib/core/obfuscation/index.d.ts +20 -0
  428. package/build/lib/core/observability/active-root-spans.d.ts +5 -0
  429. package/build/lib/core/observability/active-spans.d.ts +22 -0
  430. package/build/lib/core/observability/index.d.ts +36 -0
  431. package/build/lib/core/observability/index.js +27 -0
  432. package/build/lib/core/observability/runtime.d.ts +63 -0
  433. package/build/lib/core/observability/telemetry.d.ts +52 -0
  434. package/build/lib/core/observability/testkit.d.ts +24 -0
  435. package/build/lib/core/operator/approvalGate.d.ts +61 -0
  436. package/build/lib/core/operator/index.d.ts +9 -0
  437. package/build/lib/core/operator/types.d.ts +167 -0
  438. package/build/lib/core/plan/index.d.ts +16 -0
  439. package/build/lib/core/prompt-injections/index.d.ts +111 -0
  440. package/build/lib/core/prompt-injections/index.js +24 -0
  441. package/build/lib/core/providers/index.d.ts +5 -0
  442. package/build/lib/core/providers/types.d.ts +13 -0
  443. package/build/lib/core/providers/utils.d.ts +15 -0
  444. package/build/lib/core/providers/verify.d.ts +11 -0
  445. package/build/lib/core/report/builder.d.ts +9 -0
  446. package/build/lib/core/report/index.d.ts +7 -0
  447. package/build/lib/core/report/renderers/json.d.ts +2 -0
  448. package/build/lib/core/report/renderers/markdown.d.ts +2 -0
  449. package/build/lib/core/report/schemas.d.ts +115 -0
  450. package/build/lib/core/runtime/agentExecution.d.ts +15 -0
  451. package/build/lib/core/runtime/launchLocalWorker.d.ts +33 -0
  452. package/build/lib/core/runtime/localRunLock.d.ts +9 -0
  453. package/build/lib/core/runtime/localRunWorker.d.ts +18 -0
  454. package/build/lib/core/runtime/localWorkerEndpoint.d.ts +14 -0
  455. package/build/lib/core/runtime/localWorkerProtocol.d.ts +294 -0
  456. package/build/lib/core/runtime/localWorkerTransport.d.ts +30 -0
  457. package/build/lib/core/runtime/persistenceError.d.ts +9 -0
  458. package/build/lib/core/runtime/recordedExecution.d.ts +6 -0
  459. package/build/lib/core/runtime/recordedRunClient.d.ts +34 -0
  460. package/build/lib/core/runtime/runCheckpointStore.d.ts +11 -0
  461. package/build/lib/core/runtime/runContext.d.ts +48 -0
  462. package/build/lib/core/runtime/runControl.d.ts +44 -0
  463. package/build/lib/core/runtime/runControlStore.d.ts +83 -0
  464. package/build/lib/core/runtime/runDeadline.d.ts +4 -0
  465. package/build/lib/core/runtime/runEvidence.d.ts +37 -0
  466. package/build/lib/core/runtime/runInference.d.ts +9 -0
  467. package/build/lib/core/runtime/runModelStore.d.ts +27 -0
  468. package/build/lib/core/runtime/runObservation.d.ts +19 -0
  469. package/build/lib/core/runtime/runRecoveryContext.d.ts +20 -0
  470. package/build/lib/core/runtime/runRecoveryPlan.d.ts +38 -0
  471. package/build/lib/core/runtime/runRecoveryStore.d.ts +77 -0
  472. package/build/lib/core/runtime/runStore.d.ts +133 -0
  473. package/build/lib/core/runtime/runStorePath.d.ts +1 -0
  474. package/build/lib/core/runtime/runToolStore.d.ts +50 -0
  475. package/build/lib/core/runtime/runTools.d.ts +16 -0
  476. package/build/lib/core/runtime/sqliteControlStore.d.ts +41 -0
  477. package/build/lib/core/runtime/sqliteModelStore.d.ts +20 -0
  478. package/build/lib/core/runtime/sqliteRecoveryStore.d.ts +35 -0
  479. package/build/lib/core/runtime/sqliteRunStore.d.ts +8 -0
  480. package/build/lib/core/runtime/sqliteToolStore.d.ts +30 -0
  481. package/build/lib/core/runtime/testfixtures/localWorkerChild.d.ts +1 -0
  482. package/build/lib/core/runtime/testfixtures/localWorkerLauncher.d.ts +1 -0
  483. package/build/lib/core/runtime/testfixtures/recoveryChild.d.ts +1 -0
  484. package/build/lib/core/services/rateLimiter/index.d.ts +36 -0
  485. package/build/lib/core/services/rateLimiter/types.d.ts +10 -0
  486. package/build/lib/core/session/execution-metrics.d.ts +37 -0
  487. package/build/lib/core/session/index.d.ts +586 -0
  488. package/build/lib/core/session/index.js +36 -0
  489. package/build/lib/core/session/loader.d.ts +30 -0
  490. package/build/lib/core/session/persistence.d.ts +215 -0
  491. package/build/lib/core/session/persistence.js +35 -0
  492. package/build/lib/core/session/types.d.ts +59 -0
  493. package/build/lib/core/session/usage.d.ts +37 -0
  494. package/build/lib/core/skills/builtins/index.d.ts +13 -0
  495. package/build/lib/core/skills/builtins/pentest.d.ts +19 -0
  496. package/build/lib/core/skills/builtins/promptInjection.d.ts +2 -0
  497. package/build/lib/core/skills/builtins/threatModel.d.ts +11 -0
  498. package/build/lib/core/skills/index.d.ts +5 -0
  499. package/build/lib/core/skills/parser.d.ts +11 -0
  500. package/build/lib/core/skills/registry.d.ts +30 -0
  501. package/build/lib/core/skills/scanner.d.ts +12 -0
  502. package/build/lib/core/skills/types.d.ts +44 -0
  503. package/build/lib/core/skills/utils.d.ts +6 -0
  504. package/build/lib/core/storage/index.d.ts +248 -0
  505. package/build/lib/core/tasks/index.d.ts +78 -0
  506. package/build/lib/core/tools/backends/capture.d.ts +10 -0
  507. package/build/lib/core/tools/backends/collectCommand.d.ts +9 -0
  508. package/build/lib/core/tools/backends/helpers.d.ts +43 -0
  509. package/build/lib/core/tools/backends/httpTransport.d.ts +18 -0
  510. package/build/lib/core/tools/backends/index.d.ts +8 -0
  511. package/build/lib/core/tools/backends/index.js +31 -0
  512. package/build/lib/core/tools/backends/local.d.ts +11 -0
  513. package/build/lib/core/tools/backends/policy.d.ts +39 -0
  514. package/build/lib/core/tools/backends/resolve.d.ts +25 -0
  515. package/build/lib/core/tools/backends/types.d.ts +240 -0
  516. package/build/lib/core/tools/backends/whitebox.d.ts +6 -0
  517. package/build/lib/core/tools/backends/whiteboxJobs.d.ts +18 -0
  518. package/build/lib/core/tools/backends/windowsProgram.d.ts +4 -0
  519. package/build/lib/core/tools/daytonaSandbox.d.ts +14 -0
  520. package/build/lib/core/toolset/index.d.ts +28 -0
  521. package/build/lib/core/util/lazyLogger.d.ts +16 -0
  522. package/build/lib/core/utils/concurrency.d.ts +16 -0
  523. package/build/lib/core/utils/prompt.d.ts +12 -0
  524. package/build/lib/core/whitebox/adapters.d.ts +29 -0
  525. package/build/lib/core/whitebox/artifacts.d.ts +32 -0
  526. package/build/lib/core/whitebox/boundedProcess.d.ts +35 -0
  527. package/build/lib/core/whitebox/candidates.d.ts +29 -0
  528. package/build/lib/core/whitebox/catalog.d.ts +10 -0
  529. package/build/lib/core/whitebox/index.d.ts +9 -0
  530. package/build/lib/core/whitebox/jobKernel.d.ts +33 -0
  531. package/build/lib/core/whitebox/jobSupervisor.d.ts +14 -0
  532. package/build/lib/core/whitebox/jobs.d.ts +17 -0
  533. package/build/lib/core/whitebox/paths.d.ts +22 -0
  534. package/build/lib/core/whitebox/profileTransport.d.ts +10 -0
  535. package/build/lib/core/whitebox/profiles.d.ts +3 -0
  536. package/build/lib/core/whitebox/repoProfile.d.ts +4 -0
  537. package/build/lib/core/whitebox/types.d.ts +108 -0
  538. package/build/lib/core/workflows/fastStrike.d.ts +4 -0
  539. package/build/lib/core/workflows/pentest.d.ts +167 -0
  540. package/build/lib/core/workflows/pentest.js +42 -0
  541. package/build/lib/core/workflows/seams.d.ts +102 -0
  542. package/build/lib/core/workflows/seams.js +37 -0
  543. package/build/lib/core/workflows/threatModel.d.ts +26 -0
  544. package/build/lib/core/workflows/whiteboxAttackSurface.d.ts +142 -0
  545. package/build/lib/core/workflows/whiteboxAttackSurface.js +36 -0
  546. package/build/lib/index.d.ts +26 -0
  547. package/build/lib/index.js +96 -0
  548. package/build/lib/lib/attack-path/types.d.ts +9 -0
  549. package/build/lib/lib/cvss/calculator.d.ts +31 -0
  550. package/build/lib/lib/cvss/index.d.ts +24 -0
  551. package/build/lib/lib/cvss/index.js +24 -0
  552. package/build/lib/lib/cvss/macrovector-scores.d.ts +59 -0
  553. package/build/lib/lib/cvss/types.d.ts +114 -0
  554. package/build/lib/lib/cvss/types.js +8 -0
  555. package/build/lib/lib/cwe/cwe-catalog.d.ts +13 -0
  556. package/build/lib/lib/cwe/types.d.ts +28 -0
  557. package/build/lib/lib/cwe/validate.d.ts +15 -0
  558. package/build/lib/lib/evidence/types.d.ts +12 -0
  559. package/build/lib/util/errors.d.ts +186 -0
  560. package/build/lib/util/lock.d.ts +2 -0
  561. package/build/lib/util/name.d.ts +14 -0
  562. package/build/lib/util/url.d.ts +40 -0
  563. package/build/{logs-wzr5176k.js → logs-v5503qqk.js} +22 -30
  564. package/build/{multipart-parser-g2xxkezz.js → multipart-parser-vjjdbpd1.js} +10 -10
  565. package/build/native-rollout-evidence-1qwze8nm.js +135 -0
  566. package/build/offesecAgent-w5a2r0wa.js +22 -0
  567. package/build/{parse-rtccymzn.js → parse-cqecqrc5.js} +0 -4
  568. package/build/pentest-fxya42cg.js +22 -0
  569. package/build/pentests-6qntz6wz.js +143 -0
  570. package/build/recordedRunClient-rtdeagzx.js +11 -0
  571. package/build/{targetedPentest-tdwtgmxm.js → targetedPentest-khnxcvmb.js} +22 -22
  572. package/build/{targets-763n91t7.js → targets-ty7dahv4.js} +24 -32
  573. package/build/threatModel-28ayxe0n.js +21 -0
  574. package/build/{token-3bbp59y6.js → token-mk7t8y0y.js} +2 -2
  575. package/build/{token-util-6xjme11b.js → token-util-vd776hrv.js} +1 -2
  576. package/build/{uninstall-d33159cz.js → uninstall-nrhvt32a.js} +3 -3
  577. package/build/{upload-9qj1kpt9.js → upload-sx9gth59.js} +8 -14
  578. package/build/{utils-t7gc2903.js → utils-qetcfvgg.js} +29 -29
  579. package/package.json +230 -5
  580. package/src/cli/agent-runs.attach.test.ts +359 -0
  581. package/src/cli/agent-runs.test.ts +1172 -0
  582. package/src/cli/agent-runs.ts +430 -0
  583. package/src/cli/apps.test.ts +63 -0
  584. package/src/cli/apps.ts +526 -0
  585. package/src/cli/auth.ts +375 -0
  586. package/src/cli/command-exit.test.ts +15 -0
  587. package/src/cli/command-exit.ts +3 -0
  588. package/src/cli/config.ts +210 -0
  589. package/src/cli/export-trajectory.test.ts +224 -0
  590. package/src/cli/export-trajectory.ts +119 -0
  591. package/src/cli/fixes.ts +56 -0
  592. package/src/cli/issues.test.ts +214 -0
  593. package/src/cli/issues.ts +242 -0
  594. package/src/cli/json-output.test.ts +62 -0
  595. package/src/cli/knowledge.test.ts +140 -0
  596. package/src/cli/knowledge.ts +146 -0
  597. package/src/cli/launcher.test.ts +81 -0
  598. package/src/cli/logs.ts +111 -0
  599. package/src/cli/native-rollout-evidence.test.ts +322 -0
  600. package/src/cli/native-rollout-evidence.ts +206 -0
  601. package/src/cli/pentests.test.ts +194 -0
  602. package/src/cli/pentests.ts +159 -0
  603. package/src/cli/resume.test.ts +107 -0
  604. package/src/cli/targets.ts +125 -0
  605. package/src/cli/uninstall.ts +302 -0
  606. package/src/cli.ts +882 -0
  607. package/src/core/agents/agentRuntime.test.ts +242 -0
  608. package/src/core/agents/agentRuntime.ts +120 -0
  609. package/src/core/agents/defineAgent.ts +134 -0
  610. package/src/core/agents/offSecAgent/index.ts +162 -0
  611. package/src/core/agents/offSecAgent/interruptedStepFinalization.test.ts +295 -0
  612. package/src/core/agents/offSecAgent/interruptedStepFinalization.ts +162 -0
  613. package/src/core/agents/offSecAgent/interruptedStepMessages.test.ts +296 -0
  614. package/src/core/agents/offSecAgent/interruptedStepMessages.ts +137 -0
  615. package/src/core/agents/offSecAgent/messagePersistence.test.ts +281 -0
  616. package/src/core/agents/offSecAgent/messagePersistence.ts +111 -0
  617. package/src/core/agents/offSecAgent/offensiveSecurityAgent.runtimeContext.test.ts +689 -0
  618. package/src/core/agents/offSecAgent/offensiveSecurityAgent.test.ts +2899 -0
  619. package/src/core/agents/offSecAgent/offensiveSecurityAgent.ts +1610 -0
  620. package/src/core/agents/offSecAgent/prompt.test.ts +72 -0
  621. package/src/core/agents/offSecAgent/prompt.ts +368 -0
  622. package/src/core/agents/offSecAgent/recordedTools.test.ts +580 -0
  623. package/src/core/agents/offSecAgent/recordedTools.ts +162 -0
  624. package/src/core/agents/offSecAgent/runtimeContext.test.ts +531 -0
  625. package/src/core/agents/offSecAgent/runtimeContext.ts +387 -0
  626. package/src/core/agents/offSecAgent/selectiveConstruction.publicPath.test.ts +295 -0
  627. package/src/core/agents/offSecAgent/selectiveConstruction.test.ts +498 -0
  628. package/src/core/agents/offSecAgent/streamDiagnostics.test.ts +310 -0
  629. package/src/core/agents/offSecAgent/streamDiagnostics.ts +237 -0
  630. package/src/core/agents/offSecAgent/subagentSpawner.hooks.test.ts +102 -0
  631. package/src/core/agents/offSecAgent/subagentSpawner.test.ts +384 -0
  632. package/src/core/agents/offSecAgent/subagentSpawner.ts +664 -0
  633. package/src/core/agents/offSecAgent/toolLifecycle.test.ts +199 -0
  634. package/src/core/agents/offSecAgent/toolLifecycle.ts +171 -0
  635. package/src/core/agents/offSecAgent/tools/__tests__/sandboxScript.ts +14 -0
  636. package/src/core/agents/offSecAgent/tools/addMemory.ts +87 -0
  637. package/src/core/agents/offSecAgent/tools/agentScratch.test.ts +36 -0
  638. package/src/core/agents/offSecAgent/tools/agentScratch.ts +23 -0
  639. package/src/core/agents/offSecAgent/tools/applyPatch.test.ts +546 -0
  640. package/src/core/agents/offSecAgent/tools/applyPatch.ts +58 -0
  641. package/src/core/agents/offSecAgent/tools/applyPatchImpl.ts +300 -0
  642. package/src/core/agents/offSecAgent/tools/askUserQuestions.ts +81 -0
  643. package/src/core/agents/offSecAgent/tools/authBackendStatus.test.ts +112 -0
  644. package/src/core/agents/offSecAgent/tools/browserHeaderRouting.test.ts +136 -0
  645. package/src/core/agents/offSecAgent/tools/browserHeaderRouting.ts +81 -0
  646. package/src/core/agents/offSecAgent/tools/browserToolFactories.ts +372 -0
  647. package/src/core/agents/offSecAgent/tools/browserTools.test.ts +243 -0
  648. package/src/core/agents/offSecAgent/tools/browserTools.ts +285 -0
  649. package/src/core/agents/offSecAgent/tools/callbackListener.test.ts +1011 -0
  650. package/src/core/agents/offSecAgent/tools/callbackListener.ts +1038 -0
  651. package/src/core/agents/offSecAgent/tools/camoufox.test.ts +119 -0
  652. package/src/core/agents/offSecAgent/tools/camoufox.ts +199 -0
  653. package/src/core/agents/offSecAgent/tools/checkpointState.ts +79 -0
  654. package/src/core/agents/offSecAgent/tools/codingTools.windows.test.ts +625 -0
  655. package/src/core/agents/offSecAgent/tools/completeAuthentication.ts +136 -0
  656. package/src/core/agents/offSecAgent/tools/crawlAuthenticated.test.ts +267 -0
  657. package/src/core/agents/offSecAgent/tools/crawlAuthenticated.ts +170 -0
  658. package/src/core/agents/offSecAgent/tools/createAttackSurfaceReport.ts +75 -0
  659. package/src/core/agents/offSecAgent/tools/createFile.test.ts +111 -0
  660. package/src/core/agents/offSecAgent/tools/createFile.ts +44 -0
  661. package/src/core/agents/offSecAgent/tools/createTask.ts +118 -0
  662. package/src/core/agents/offSecAgent/tools/delegateAuth.ts +391 -0
  663. package/src/core/agents/offSecAgent/tools/deleteFile.test.ts +102 -0
  664. package/src/core/agents/offSecAgent/tools/deleteFile.ts +39 -0
  665. package/src/core/agents/offSecAgent/tools/destructiveGuard.test.ts +827 -0
  666. package/src/core/agents/offSecAgent/tools/destructiveGuard.ts +747 -0
  667. package/src/core/agents/offSecAgent/tools/detectAuthScheme.ts +191 -0
  668. package/src/core/agents/offSecAgent/tools/documentApp.ts +242 -0
  669. package/src/core/agents/offSecAgent/tools/documentEndpoint.ts +291 -0
  670. package/src/core/agents/offSecAgent/tools/documentFinding.test.ts +2091 -0
  671. package/src/core/agents/offSecAgent/tools/documentFinding.ts +1240 -0
  672. package/src/core/agents/offSecAgent/tools/email/adapters.test.ts +279 -0
  673. package/src/core/agents/offSecAgent/tools/email/adapters.ts +1121 -0
  674. package/src/core/agents/offSecAgent/tools/email/getAttachments.ts +73 -0
  675. package/src/core/agents/offSecAgent/tools/email/getMessage.ts +56 -0
  676. package/src/core/agents/offSecAgent/tools/email/inboxBackend.test.ts +137 -0
  677. package/src/core/agents/offSecAgent/tools/email/index.ts +55 -0
  678. package/src/core/agents/offSecAgent/tools/email/listInboxes.ts +47 -0
  679. package/src/core/agents/offSecAgent/tools/email/listMessages.ts +67 -0
  680. package/src/core/agents/offSecAgent/tools/email/markRead.ts +57 -0
  681. package/src/core/agents/offSecAgent/tools/email/searchMessages.ts +76 -0
  682. package/src/core/agents/offSecAgent/tools/email/sendEmail.ts +165 -0
  683. package/src/core/agents/offSecAgent/tools/email/types.ts +45 -0
  684. package/src/core/agents/offSecAgent/tools/executeCommand.backends.test.ts +171 -0
  685. package/src/core/agents/offSecAgent/tools/executeCommand.test.ts +1153 -0
  686. package/src/core/agents/offSecAgent/tools/executeCommand.ts +604 -0
  687. package/src/core/agents/offSecAgent/tools/extractJsEndpoints.ts +44 -0
  688. package/src/core/agents/offSecAgent/tools/fileBackends.test.ts +66 -0
  689. package/src/core/agents/offSecAgent/tools/fileMutations.test.ts +159 -0
  690. package/src/core/agents/offSecAgent/tools/fileToolBackendPurity.test.ts +72 -0
  691. package/src/core/agents/offSecAgent/tools/fileWorkspace.test.ts +357 -0
  692. package/src/core/agents/offSecAgent/tools/fileWorkspace.ts +434 -0
  693. package/src/core/agents/offSecAgent/tools/fileWorkspaceRemote.ts +263 -0
  694. package/src/core/agents/offSecAgent/tools/getMemory.ts +69 -0
  695. package/src/core/agents/offSecAgent/tools/getPage.test.ts +1127 -0
  696. package/src/core/agents/offSecAgent/tools/getPage.ts +70 -0
  697. package/src/core/agents/offSecAgent/tools/gitDiff.ts +67 -0
  698. package/src/core/agents/offSecAgent/tools/gitStatus.ts +61 -0
  699. package/src/core/agents/offSecAgent/tools/gitTools.test.ts +237 -0
  700. package/src/core/agents/offSecAgent/tools/glob.test.ts +695 -0
  701. package/src/core/agents/offSecAgent/tools/glob.ts +51 -0
  702. package/src/core/agents/offSecAgent/tools/globImpl.ts +313 -0
  703. package/src/core/agents/offSecAgent/tools/globPattern.ts +203 -0
  704. package/src/core/agents/offSecAgent/tools/grep.test.ts +922 -0
  705. package/src/core/agents/offSecAgent/tools/grep.ts +73 -0
  706. package/src/core/agents/offSecAgent/tools/grepImpl.ts +718 -0
  707. package/src/core/agents/offSecAgent/tools/httpBackends.test.ts +534 -0
  708. package/src/core/agents/offSecAgent/tools/httpRequest.test.ts +2409 -0
  709. package/src/core/agents/offSecAgent/tools/httpRequest.ts +425 -0
  710. package/src/core/agents/offSecAgent/tools/index.ts +787 -0
  711. package/src/core/agents/offSecAgent/tools/listFiles.bounded.test.ts +514 -0
  712. package/src/core/agents/offSecAgent/tools/listFiles.public-counters.test.ts +163 -0
  713. package/src/core/agents/offSecAgent/tools/listFiles.test.ts +521 -0
  714. package/src/core/agents/offSecAgent/tools/listFiles.ts +49 -0
  715. package/src/core/agents/offSecAgent/tools/listFilesImpl.ts +351 -0
  716. package/src/core/agents/offSecAgent/tools/listMemories.ts +71 -0
  717. package/src/core/agents/offSecAgent/tools/listPromptInjections.test.ts +201 -0
  718. package/src/core/agents/offSecAgent/tools/listPromptInjections.ts +78 -0
  719. package/src/core/agents/offSecAgent/tools/listTasks.ts +100 -0
  720. package/src/core/agents/offSecAgent/tools/patchApply.test.ts +573 -0
  721. package/src/core/agents/offSecAgent/tools/patchApply.ts +430 -0
  722. package/src/core/agents/offSecAgent/tools/patchParse.test.ts +383 -0
  723. package/src/core/agents/offSecAgent/tools/patchParse.ts +354 -0
  724. package/src/core/agents/offSecAgent/tools/perCommandShell.drain.test.ts +109 -0
  725. package/src/core/agents/offSecAgent/tools/perCommandShell.test.ts +565 -0
  726. package/src/core/agents/offSecAgent/tools/perCommandShell.ts +516 -0
  727. package/src/core/agents/offSecAgent/tools/perCommandShell.windows.test.ts +142 -0
  728. package/src/core/agents/offSecAgent/tools/playwrightMcp.test.ts +778 -0
  729. package/src/core/agents/offSecAgent/tools/playwrightMcp.ts +1426 -0
  730. package/src/core/agents/offSecAgent/tools/probeAuthEndpoints.ts +262 -0
  731. package/src/core/agents/offSecAgent/tools/profileCodebase.ts +110 -0
  732. package/src/core/agents/offSecAgent/tools/provideComparisonResults.ts +106 -0
  733. package/src/core/agents/offSecAgent/tools/queryWhiteboxCatalog.coalescing-cost.test.ts +108 -0
  734. package/src/core/agents/offSecAgent/tools/queryWhiteboxCatalog.test.ts +183 -0
  735. package/src/core/agents/offSecAgent/tools/queryWhiteboxCatalog.ts +143 -0
  736. package/src/core/agents/offSecAgent/tools/readFile.test.ts +1242 -0
  737. package/src/core/agents/offSecAgent/tools/readFile.ts +89 -0
  738. package/src/core/agents/offSecAgent/tools/readFileImpl.ts +956 -0
  739. package/src/core/agents/offSecAgent/tools/readSkill.ts +38 -0
  740. package/src/core/agents/offSecAgent/tools/reportError.test.ts +48 -0
  741. package/src/core/agents/offSecAgent/tools/reportError.ts +65 -0
  742. package/src/core/agents/offSecAgent/tools/response.ts +27 -0
  743. package/src/core/agents/offSecAgent/tools/runAttackSurface.ts +198 -0
  744. package/src/core/agents/offSecAgent/tools/runCodeQuery.test.ts +82 -0
  745. package/src/core/agents/offSecAgent/tools/runCodeQuery.ts +237 -0
  746. package/src/core/agents/offSecAgent/tools/runPentestWorkflow.ts +122 -0
  747. package/src/core/agents/offSecAgent/tools/runWhiteboxScan.ts +189 -0
  748. package/src/core/agents/offSecAgent/tools/runtimeBackendConsumers.test.ts +143 -0
  749. package/src/core/agents/offSecAgent/tools/sandbox.ts +37 -0
  750. package/src/core/agents/offSecAgent/tools/sandboxPlaywright.test.ts +235 -0
  751. package/src/core/agents/offSecAgent/tools/sandboxPlaywright.ts +1029 -0
  752. package/src/core/agents/offSecAgent/tools/sandboxScript.test.ts +31 -0
  753. package/src/core/agents/offSecAgent/tools/sandboxScript.ts +60 -0
  754. package/src/core/agents/offSecAgent/tools/scopeGuard.test.ts +574 -0
  755. package/src/core/agents/offSecAgent/tools/scopeGuard.ts +317 -0
  756. package/src/core/agents/offSecAgent/tools/scriptSyntaxCheck.test.ts +566 -0
  757. package/src/core/agents/offSecAgent/tools/scriptSyntaxCheck.ts +240 -0
  758. package/src/core/agents/offSecAgent/tools/selectiveFactories.test.ts +476 -0
  759. package/src/core/agents/offSecAgent/tools/smsInbox.ts +130 -0
  760. package/src/core/agents/offSecAgent/tools/smsListMessages.test.ts +443 -0
  761. package/src/core/agents/offSecAgent/tools/smsListMessages.ts +123 -0
  762. package/src/core/agents/offSecAgent/tools/spawnCodingAgent.ts +229 -0
  763. package/src/core/agents/offSecAgent/tools/spawnPentestAgent.test.ts +413 -0
  764. package/src/core/agents/offSecAgent/tools/spawnPentestAgent.ts +266 -0
  765. package/src/core/agents/offSecAgent/tools/spawnPentestSwarm.ts +146 -0
  766. package/src/core/agents/offSecAgent/tools/submitPlan.ts +51 -0
  767. package/src/core/agents/offSecAgent/tools/testEndpointVariations.ts +127 -0
  768. package/src/core/agents/offSecAgent/tools/threatModelGenerator.ts +664 -0
  769. package/src/core/agents/offSecAgent/tools/toolOutput.test.ts +480 -0
  770. package/src/core/agents/offSecAgent/tools/toolOutput.ts +160 -0
  771. package/src/core/agents/offSecAgent/tools/types.ts +267 -0
  772. package/src/core/agents/offSecAgent/tools/updateFile.ts +121 -0
  773. package/src/core/agents/offSecAgent/tools/updateTask.ts +107 -0
  774. package/src/core/agents/offSecAgent/tools/validateDiscovery.ts +123 -0
  775. package/src/core/agents/offSecAgent/tools/webSearch.ts +265 -0
  776. package/src/core/agents/offSecAgent/tools/whiteboxCandidates.ts +197 -0
  777. package/src/core/agents/offSecAgent/tools/whiteboxJobs.ts +312 -0
  778. package/src/core/agents/offSecAgent/tools/windowsCurl.test.ts +801 -0
  779. package/src/core/agents/offSecAgent/tools/windowsCurl.ts +202 -0
  780. package/src/core/agents/offSecAgent/tools/workspaceApps.test.ts +257 -0
  781. package/src/core/agents/offSecAgent/tools/workspaceApps.ts +334 -0
  782. package/src/core/agents/offSecAgent/tools/workspaceDomains.test.ts +113 -0
  783. package/src/core/agents/offSecAgent/tools/workspaceDomains.ts +57 -0
  784. package/src/core/agents/offSecAgent/tools/workspaceFailure.ts +11 -0
  785. package/src/core/agents/offSecAgent/tools/writePlan.ts +65 -0
  786. package/src/core/agents/offSecAgent/trace.test.ts +796 -0
  787. package/src/core/agents/offSecAgent/trace.ts +633 -0
  788. package/src/core/agents/offSecAgent/types.test.ts +224 -0
  789. package/src/core/agents/offSecAgent/types.ts +676 -0
  790. package/src/core/agents/specialized/attackSurface/blackboxAgent.test.ts +31 -0
  791. package/src/core/agents/specialized/attackSurface/blackboxAgent.ts +272 -0
  792. package/src/core/agents/specialized/attackSurface/blackboxRiskScoring.ts +276 -0
  793. package/src/core/agents/specialized/attackSurface/grpcSchema.ts +142 -0
  794. package/src/core/agents/specialized/attackSurface/jsExtraction.test.ts +237 -0
  795. package/src/core/agents/specialized/attackSurface/jsExtraction.ts +174 -0
  796. package/src/core/agents/specialized/attackSurface/prompts.ts +349 -0
  797. package/src/core/agents/specialized/attackSurface/schemas.ts +300 -0
  798. package/src/core/agents/specialized/attackSurface/types.ts +100 -0
  799. package/src/core/agents/specialized/authenticationAgent/agent.test.ts +111 -0
  800. package/src/core/agents/specialized/authenticationAgent/agent.ts +300 -0
  801. package/src/core/agents/specialized/authenticationAgent/index.ts +74 -0
  802. package/src/core/agents/specialized/authenticationAgent/prompts.test.ts +36 -0
  803. package/src/core/agents/specialized/authenticationAgent/prompts.ts +645 -0
  804. package/src/core/agents/specialized/authenticationAgent/types.ts +833 -0
  805. package/src/core/agents/specialized/benchmark/comparisonAgent.ts +344 -0
  806. package/src/core/agents/specialized/benchmark/docker-utils.ts +257 -0
  807. package/src/core/agents/specialized/benchmark/flag-detector.ts +686 -0
  808. package/src/core/agents/specialized/benchmark/index.ts +28 -0
  809. package/src/core/agents/specialized/benchmark/prompts.ts +257 -0
  810. package/src/core/agents/specialized/benchmark/remote/circuit-breaker.ts +108 -0
  811. package/src/core/agents/specialized/benchmark/remote/daytona-wrapper.ts +1005 -0
  812. package/src/core/agents/specialized/benchmark/remote/index.ts +2 -0
  813. package/src/core/agents/specialized/benchmark/types.ts +98 -0
  814. package/src/core/agents/specialized/benchmarkComparisonAgent.test.ts +111 -0
  815. package/src/core/agents/specialized/benchmarkComparisonAgent.ts +203 -0
  816. package/src/core/agents/specialized/codeAgent/agent.test.ts +89 -0
  817. package/src/core/agents/specialized/codeAgent/agent.ts +134 -0
  818. package/src/core/agents/specialized/codeAgent/prompts.ts +48 -0
  819. package/src/core/agents/specialized/codeAgent/schemas.ts +33 -0
  820. package/src/core/agents/specialized/cvssScorer/index.test.ts +87 -0
  821. package/src/core/agents/specialized/cvssScorer/index.ts +546 -0
  822. package/src/core/agents/specialized/environment/agent.ts +75 -0
  823. package/src/core/agents/specialized/environment/index.ts +16 -0
  824. package/src/core/agents/specialized/environment/prompts.ts +194 -0
  825. package/src/core/agents/specialized/environment/types.ts +48 -0
  826. package/src/core/agents/specialized/findingJudge/agent.test.ts +114 -0
  827. package/src/core/agents/specialized/findingJudge/agent.ts +59 -0
  828. package/src/core/agents/specialized/findingJudge/index.test.ts +155 -0
  829. package/src/core/agents/specialized/findingJudge/index.ts +166 -0
  830. package/src/core/agents/specialized/findingJudge/prompts.ts +140 -0
  831. package/src/core/agents/specialized/findingJudge/types.ts +115 -0
  832. package/src/core/agents/specialized/googleSignInPrompt.test.ts +29 -0
  833. package/src/core/agents/specialized/googleSignInPrompt.ts +18 -0
  834. package/src/core/agents/specialized/mobileOtpPrompt.ts +9 -0
  835. package/src/core/agents/specialized/patching/agent.test.ts +220 -0
  836. package/src/core/agents/specialized/patching/agent.ts +146 -0
  837. package/src/core/agents/specialized/patching/index.ts +20 -0
  838. package/src/core/agents/specialized/patching/prompts.test.ts +172 -0
  839. package/src/core/agents/specialized/patching/prompts.ts +396 -0
  840. package/src/core/agents/specialized/patching/types.ts +49 -0
  841. package/src/core/agents/specialized/pentest/agent.test.ts +1046 -0
  842. package/src/core/agents/specialized/pentest/agent.ts +1482 -0
  843. package/src/core/agents/specialized/pentest/helperLifecycle.test.ts +425 -0
  844. package/src/core/agents/specialized/pentest/helperWorkspace.test.ts +84 -0
  845. package/src/core/agents/specialized/pentest/helperWorkspace.ts +33 -0
  846. package/src/core/agents/specialized/pentest/planPrompt.ts +68 -0
  847. package/src/core/agents/specialized/pentest/results.test.ts +198 -0
  848. package/src/core/agents/specialized/utils.test.ts +16 -0
  849. package/src/core/agents/specialized/utils.ts +28 -0
  850. package/src/core/agents/specialized/vulnerabilityReproduction/agent.test.ts +195 -0
  851. package/src/core/agents/specialized/vulnerabilityReproduction/agent.ts +159 -0
  852. package/src/core/agents/specialized/whiteboxAttackSurface/agent.test.ts +39 -0
  853. package/src/core/agents/specialized/whiteboxAttackSurface/agent.ts +227 -0
  854. package/src/core/agents/specialized/whiteboxAttackSurface/endpointDocumentationAgent.concurrency.test.ts +138 -0
  855. package/src/core/agents/specialized/whiteboxAttackSurface/endpointDocumentationAgent.test.ts +199 -0
  856. package/src/core/agents/specialized/whiteboxAttackSurface/endpointDocumentationAgent.ts +330 -0
  857. package/src/core/agents/specialized/whiteboxAttackSurface/index.ts +24 -0
  858. package/src/core/agents/specialized/whiteboxAttackSurface/prompts.ts +345 -0
  859. package/src/core/agents/specialized/whiteboxAttackSurface/types.test.ts +67 -0
  860. package/src/core/agents/specialized/whiteboxAttackSurface/types.ts +234 -0
  861. package/src/core/ai/ai.contract.test.ts +43 -0
  862. package/src/core/ai/ai.durability-hooks.test.ts +527 -0
  863. package/src/core/ai/ai.effective-tools.test.ts +739 -0
  864. package/src/core/ai/ai.native-rollout-evidence.test.ts +373 -0
  865. package/src/core/ai/ai.outer-catch-recovery.test.ts +82 -0
  866. package/src/core/ai/ai.proactive-recovery.test.ts +69 -0
  867. package/src/core/ai/ai.recorded-attempts.test.ts +621 -0
  868. package/src/core/ai/ai.recorded-context.test.ts +448 -0
  869. package/src/core/ai/ai.recorded-tools.test.ts +850 -0
  870. package/src/core/ai/ai.request-retention.test.ts +296 -0
  871. package/src/core/ai/ai.test.ts +690 -0
  872. package/src/core/ai/ai.ts +2377 -0
  873. package/src/core/ai/caching.test.ts +179 -0
  874. package/src/core/ai/caching.ts +119 -0
  875. package/src/core/ai/compactionEvidence.test.ts +52 -0
  876. package/src/core/ai/compactionEvidence.ts +101 -0
  877. package/src/core/ai/compactionTelemetry.test.ts +621 -0
  878. package/src/core/ai/compactionTelemetry.ts +287 -0
  879. package/src/core/ai/concentrate.test.ts +28 -0
  880. package/src/core/ai/contextManagement.test.ts +350 -0
  881. package/src/core/ai/contextManagement.ts +594 -0
  882. package/src/core/ai/index.ts +73 -0
  883. package/src/core/ai/inference-attempt/adapters.test.ts +84 -0
  884. package/src/core/ai/inference-attempt/adapters.ts +391 -0
  885. package/src/core/ai/inference-attempt/attempt.test.ts +198 -0
  886. package/src/core/ai/inference-attempt/builder.ts +171 -0
  887. package/src/core/ai/inference-attempt/envelope.ts +120 -0
  888. package/src/core/ai/inference-attempt/errors.ts +15 -0
  889. package/src/core/ai/inference-attempt/fixtures/anthropic-messages-cache-create.json +18 -0
  890. package/src/core/ai/inference-attempt/fixtures/anthropic-messages-cache-read.json +18 -0
  891. package/src/core/ai/inference-attempt/fixtures/anthropic-messages-incomplete.json +16 -0
  892. package/src/core/ai/inference-attempt/fixtures/anthropic-messages-mixed.json +22 -0
  893. package/src/core/ai/inference-attempt/fixtures/anthropic-messages-non-cache.json +26 -0
  894. package/src/core/ai/inference-attempt/fixtures/bedrock-converse-cache-create.json +18 -0
  895. package/src/core/ai/inference-attempt/fixtures/bedrock-converse-cache-read.json +26 -0
  896. package/src/core/ai/inference-attempt/fixtures/bedrock-converse-incomplete.json +19 -0
  897. package/src/core/ai/inference-attempt/fixtures/bedrock-converse-mixed.json +20 -0
  898. package/src/core/ai/inference-attempt/fixtures/bedrock-converse-non-cache.json +24 -0
  899. package/src/core/ai/inference-attempt/fixtures/openai-responses-cache-read.json +17 -0
  900. package/src/core/ai/inference-attempt/fixtures/openai-responses-incomplete.json +16 -0
  901. package/src/core/ai/inference-attempt/fixtures/openai-responses-non-cache.json +23 -0
  902. package/src/core/ai/inference-attempt/fixtures/pensar-anthropic-rest-incomplete.json +21 -0
  903. package/src/core/ai/inference-attempt/fixtures/pensar-anthropic-rest-native.json +16 -0
  904. package/src/core/ai/inference-attempt/fixtures/pensar-anthropic-stream-cache-create.json +20 -0
  905. package/src/core/ai/inference-attempt/fixtures/pensar-anthropic-stream-cache-read.json +20 -0
  906. package/src/core/ai/inference-attempt/fixtures/pensar-anthropic-stream-incomplete.json +16 -0
  907. package/src/core/ai/inference-attempt/fixtures/pensar-anthropic-stream-mixed.json +21 -0
  908. package/src/core/ai/inference-attempt/fixtures/pensar-anthropic-stream-non-cache.json +19 -0
  909. package/src/core/ai/inference-attempt/fixtures/reject-cache-read-exceeds-inclusive.json +11 -0
  910. package/src/core/ai/inference-attempt/fixtures/reject-components-exceed-inclusive.json +12 -0
  911. package/src/core/ai/inference-attempt/fixtures/reject-identity-mismatch.json +13 -0
  912. package/src/core/ai/inference-attempt/fixtures/reject-negative-token.json +9 -0
  913. package/src/core/ai/inference-attempt/fixtures/reject-non-integer-token.json +8 -0
  914. package/src/core/ai/inference-attempt/fixtures/sdk-normalized-cache-read.json +19 -0
  915. package/src/core/ai/inference-attempt/fixtures/sdk-normalized-incomplete.json +15 -0
  916. package/src/core/ai/inference-attempt/fixtures/sdk-normalized-mixed.json +20 -0
  917. package/src/core/ai/inference-attempt/fixtures/sdk-normalized-non-cache.json +16 -0
  918. package/src/core/ai/inference-attempt/identity.ts +25 -0
  919. package/src/core/ai/inference-attempt/index.ts +70 -0
  920. package/src/core/ai/inference-attempt/project.test.ts +118 -0
  921. package/src/core/ai/inference-attempt/project.ts +60 -0
  922. package/src/core/ai/inference-attempt/recording.ts +46 -0
  923. package/src/core/ai/inference-attempt/tokens.ts +165 -0
  924. package/src/core/ai/inference-attempt/validate.ts +20 -0
  925. package/src/core/ai/mantle.test.ts +50 -0
  926. package/src/core/ai/mantle.ts +45 -0
  927. package/src/core/ai/model-history.test.ts +53 -0
  928. package/src/core/ai/model-history.ts +38 -0
  929. package/src/core/ai/models/anthropic.ts +151 -0
  930. package/src/core/ai/models/bedrock.ts +618 -0
  931. package/src/core/ai/models/claude-capabilities.ts +43 -0
  932. package/src/core/ai/models/concentrate.ts +192 -0
  933. package/src/core/ai/models/google.ts +154 -0
  934. package/src/core/ai/models/inception.ts +10 -0
  935. package/src/core/ai/models/index.ts +253 -0
  936. package/src/core/ai/models/mantle.ts +14 -0
  937. package/src/core/ai/models/models.test.ts +313 -0
  938. package/src/core/ai/models/openai.ts +409 -0
  939. package/src/core/ai/models/openrouter.ts +342 -0
  940. package/src/core/ai/models/pensar.ts +66 -0
  941. package/src/core/ai/native-rollout-evidence/capture.test.ts +1836 -0
  942. package/src/core/ai/native-rollout-evidence/capture.ts +1572 -0
  943. package/src/core/ai/native-rollout-evidence/content.test.ts +55 -0
  944. package/src/core/ai/native-rollout-evidence/content.ts +129 -0
  945. package/src/core/ai/native-rollout-evidence/index.ts +68 -0
  946. package/src/core/ai/native-rollout-evidence/provider-metadata.test.ts +85 -0
  947. package/src/core/ai/native-rollout-evidence/provider-metadata.ts +129 -0
  948. package/src/core/ai/native-rollout-evidence/recording.test.ts +398 -0
  949. package/src/core/ai/native-rollout-evidence/schema.test.ts +210 -0
  950. package/src/core/ai/native-rollout-evidence/schema.ts +353 -0
  951. package/src/core/ai/native-rollout-evidence/validate.ts +141 -0
  952. package/src/core/ai/providers/anthropic-models.test.ts +348 -0
  953. package/src/core/ai/providers/anthropic.ts +73 -0
  954. package/src/core/ai/providers/bedrock-models.test.ts +81 -0
  955. package/src/core/ai/providers/concentrate.live.test.ts +71 -0
  956. package/src/core/ai/providers/concentrate.test.ts +160 -0
  957. package/src/core/ai/providers/concentrate.ts +145 -0
  958. package/src/core/ai/providers/custom.live.test.ts +42 -0
  959. package/src/core/ai/providers/custom.test.ts +474 -0
  960. package/src/core/ai/providers/custom.ts +70 -0
  961. package/src/core/ai/providers/gateway-models.test.ts +648 -0
  962. package/src/core/ai/providers/hoonify.live.test.ts +72 -0
  963. package/src/core/ai/providers/hoonify.test.ts +284 -0
  964. package/src/core/ai/providers/hoonify.ts +32 -0
  965. package/src/core/ai/providers/openai-models.test.ts +356 -0
  966. package/src/core/ai/providers/openai-pro-fetch.test.ts +64 -0
  967. package/src/core/ai/providers/openai-pro-fetch.ts +32 -0
  968. package/src/core/ai/providers/pensar.ts +645 -0
  969. package/src/core/ai/providers/pensarFormatters.test.ts +272 -0
  970. package/src/core/ai/providers/pensarFormatters.ts +533 -0
  971. package/src/core/ai/providers/pensarResponsesStream.test.ts +191 -0
  972. package/src/core/ai/providers/pensarResponsesStream.ts +294 -0
  973. package/src/core/ai/providers/pensarSSE.test.ts +83 -0
  974. package/src/core/ai/providers/pensarSSE.ts +128 -0
  975. package/src/core/ai/providers/pensarSigning.ts +2 -0
  976. package/src/core/ai/providers/pensarStreamUsage.test.ts +79 -0
  977. package/src/core/ai/providers/pensarStreamUsage.ts +62 -0
  978. package/src/core/ai/stepContext.test.ts +61 -0
  979. package/src/core/ai/streamIdleTimeout.test.ts +390 -0
  980. package/src/core/ai/streamTelemetry.ts +90 -0
  981. package/src/core/ai/usage-callback.test.ts +511 -0
  982. package/src/core/ai/utils.native-rollout-evidence.test.ts +135 -0
  983. package/src/core/ai/utils.pensar.test.ts +59 -0
  984. package/src/core/ai/utils.ts +795 -0
  985. package/src/core/api/apiClient.test.ts +58 -0
  986. package/src/core/api/apiClient.ts +73 -0
  987. package/src/core/api/apps.test.ts +78 -0
  988. package/src/core/api/apps.ts +388 -0
  989. package/src/core/api/attackSurface.test.ts +24 -0
  990. package/src/core/api/attackSurface.ts +89 -0
  991. package/src/core/api/authentication.ts +8 -0
  992. package/src/core/api/benchmark.ts +35 -0
  993. package/src/core/api/blackboxPentest.test.ts +89 -0
  994. package/src/core/api/blackboxPentest.ts +64 -0
  995. package/src/core/api/clientIdentity.test.ts +61 -0
  996. package/src/core/api/clientIdentity.ts +57 -0
  997. package/src/core/api/comments.test.ts +69 -0
  998. package/src/core/api/constants.ts +15 -0
  999. package/src/core/api/domains.test.ts +35 -0
  1000. package/src/core/api/domains.ts +32 -0
  1001. package/src/core/api/environment.ts +47 -0
  1002. package/src/core/api/index.ts +219 -0
  1003. package/src/core/api/issues.test.ts +82 -0
  1004. package/src/core/api/issues.ts +439 -0
  1005. package/src/core/api/knowledge.ts +70 -0
  1006. package/src/core/api/localWorker.ts +29 -0
  1007. package/src/core/api/offesecAgent.test.ts +289 -0
  1008. package/src/core/api/offesecAgent.ts +77 -0
  1009. package/src/core/api/patching.ts +44 -0
  1010. package/src/core/api/recordedRun.control.test.ts +830 -0
  1011. package/src/core/api/recordedRun.inference.test.ts +529 -0
  1012. package/src/core/api/recordedRun.loop.test.ts +290 -0
  1013. package/src/core/api/recordedRun.recovery.test.ts +651 -0
  1014. package/src/core/api/recordedRun.test.ts +646 -0
  1015. package/src/core/api/recordedRun.ts +542 -0
  1016. package/src/core/api/targetedPentest.test.ts +177 -0
  1017. package/src/core/api/targetedPentest.ts +83 -0
  1018. package/src/core/api/threatModel.ts +5 -0
  1019. package/src/core/api/trajectoryExport.test.ts +299 -0
  1020. package/src/core/api/trajectoryExport.ts +362 -0
  1021. package/src/core/api/vulnerabilityReproduction.test.ts +56 -0
  1022. package/src/core/api/vulnerabilityReproduction.ts +54 -0
  1023. package/src/core/assets/wordlists.test.ts +85 -0
  1024. package/src/core/assets/wordlists.ts +111 -0
  1025. package/src/core/atif/compatibility.test.ts +107 -0
  1026. package/src/core/atif/convert.test.ts +815 -0
  1027. package/src/core/atif/convert.ts +1658 -0
  1028. package/src/core/atif/fixtures/portable-bundle-v1.json +813 -0
  1029. package/src/core/atif/index.ts +34 -0
  1030. package/src/core/atif/schema.ts +345 -0
  1031. package/src/core/atif/serialize.test.ts +244 -0
  1032. package/src/core/atif/serialize.ts +419 -0
  1033. package/src/core/atif/test-fixtures.ts +184 -0
  1034. package/src/core/atif/validate.test.ts +188 -0
  1035. package/src/core/atif/validate.ts +289 -0
  1036. package/src/core/auth/connection.ts +26 -0
  1037. package/src/core/auth/device-flow.ts +203 -0
  1038. package/src/core/auth/gateway.ts +66 -0
  1039. package/src/core/auth/index.ts +29 -0
  1040. package/src/core/auth/signing.ts +25 -0
  1041. package/src/core/auth/token.ts +140 -0
  1042. package/src/core/auth/types.ts +106 -0
  1043. package/src/core/auth/workspaces.ts +192 -0
  1044. package/src/core/benchmark/index.ts +11 -0
  1045. package/src/core/benchmark/report.ts +257 -0
  1046. package/src/core/benchmark/runner.ts +698 -0
  1047. package/src/core/benchmark/types.ts +80 -0
  1048. package/src/core/cli/logLevelArgs.test.ts +83 -0
  1049. package/src/core/cli/logLevelArgs.ts +62 -0
  1050. package/src/core/cli/model.ts +35 -0
  1051. package/src/core/cli/pentestMode.test.ts +24 -0
  1052. package/src/core/cli/pentestMode.ts +23 -0
  1053. package/src/core/cli/tuiArgs.test.ts +58 -0
  1054. package/src/core/cli/tuiArgs.ts +28 -0
  1055. package/src/core/config/config.test.ts +183 -0
  1056. package/src/core/config/config.ts +201 -0
  1057. package/src/core/config/customProviders.test.ts +183 -0
  1058. package/src/core/config/customProviders.ts +190 -0
  1059. package/src/core/config/index.ts +7 -0
  1060. package/src/core/credentials/index.ts +6 -0
  1061. package/src/core/credentials/manager.ts +313 -0
  1062. package/src/core/credentials/types.ts +112 -0
  1063. package/src/core/doctor.ts +138 -0
  1064. package/src/core/eventBus.test.ts +374 -0
  1065. package/src/core/eventBus.ts +410 -0
  1066. package/src/core/findings/attackSurfaceRegistry.ts +294 -0
  1067. package/src/core/findings/registry.test.ts +1680 -0
  1068. package/src/core/findings/registry.ts +800 -0
  1069. package/src/core/history.ts +82 -0
  1070. package/src/core/hoonify.test.ts +250 -0
  1071. package/src/core/hoonify.ts +163 -0
  1072. package/src/core/http/headers.contract.test.ts +1161 -0
  1073. package/src/core/http/parse.ts +257 -0
  1074. package/src/core/http/redirects.test.ts +207 -0
  1075. package/src/core/http/redirects.ts +145 -0
  1076. package/src/core/http/targetHeaders.ts +604 -0
  1077. package/src/core/http/targetScope.ts +52 -0
  1078. package/src/core/http/types.ts +39 -0
  1079. package/src/core/id/id.test.ts +88 -0
  1080. package/src/core/id/id.ts +138 -0
  1081. package/src/core/installation/index.ts +222 -0
  1082. package/src/core/installation/installation.test.ts +415 -0
  1083. package/src/core/integrations/herdr.test.ts +335 -0
  1084. package/src/core/integrations/herdr.ts +163 -0
  1085. package/src/core/integrations/surface/index.test.ts +534 -0
  1086. package/src/core/integrations/surface/index.ts +224 -0
  1087. package/src/core/integrations/surface/types.ts +29 -0
  1088. package/src/core/integrations/wandb/client.ts +167 -0
  1089. package/src/core/integrations/wandb/upload.test.ts +415 -0
  1090. package/src/core/integrations/wandb/upload.ts +76 -0
  1091. package/src/core/logger/errorLog.test.ts +98 -0
  1092. package/src/core/logger/index.ts +214 -0
  1093. package/src/core/logger/structured.test.ts +212 -0
  1094. package/src/core/logger/structured.ts +207 -0
  1095. package/src/core/memory/backend.test.ts +186 -0
  1096. package/src/core/memory/index.ts +279 -0
  1097. package/src/core/memory/memory.test.ts +362 -0
  1098. package/src/core/messages/types.ts +141 -0
  1099. package/src/core/obfuscation/engine.test.ts +314 -0
  1100. package/src/core/obfuscation/engine.ts +647 -0
  1101. package/src/core/obfuscation/index.ts +27 -0
  1102. package/src/core/observability/active-root-spans.ts +30 -0
  1103. package/src/core/observability/active-spans.ts +80 -0
  1104. package/src/core/observability/index.ts +91 -0
  1105. package/src/core/observability/log-correlation.test.ts +276 -0
  1106. package/src/core/observability/payload-capture.test.ts +59 -0
  1107. package/src/core/observability/runtime.test.ts +743 -0
  1108. package/src/core/observability/runtime.ts +371 -0
  1109. package/src/core/observability/shutdown.test.ts +551 -0
  1110. package/src/core/observability/telemetry.test.ts +895 -0
  1111. package/src/core/observability/telemetry.ts +220 -0
  1112. package/src/core/observability/testkit.test.ts +66 -0
  1113. package/src/core/observability/testkit.ts +97 -0
  1114. package/src/core/observability/trace-contract.test.ts +1031 -0
  1115. package/src/core/observability.test.ts +135 -0
  1116. package/src/core/operator/approvalGate.test.ts +300 -0
  1117. package/src/core/operator/approvalGate.ts +287 -0
  1118. package/src/core/operator/index.ts +30 -0
  1119. package/src/core/operator/types.ts +355 -0
  1120. package/src/core/plan/index.ts +44 -0
  1121. package/src/core/prompt-injections/index.test.ts +248 -0
  1122. package/src/core/prompt-injections/index.ts +350 -0
  1123. package/src/core/providers/index.ts +5 -0
  1124. package/src/core/providers/types.ts +87 -0
  1125. package/src/core/providers/utils.test.ts +189 -0
  1126. package/src/core/providers/utils.ts +183 -0
  1127. package/src/core/providers/verify.test.ts +49 -0
  1128. package/src/core/providers/verify.ts +198 -0
  1129. package/src/core/report/builder.test.ts +229 -0
  1130. package/src/core/report/builder.ts +58 -0
  1131. package/src/core/report/index.ts +13 -0
  1132. package/src/core/report/renderers/json.test.ts +76 -0
  1133. package/src/core/report/renderers/json.ts +5 -0
  1134. package/src/core/report/renderers/markdown.test.ts +366 -0
  1135. package/src/core/report/renderers/markdown.ts +133 -0
  1136. package/src/core/report/schemas.ts +48 -0
  1137. package/src/core/runtime/agentExecution.test.ts +94 -0
  1138. package/src/core/runtime/agentExecution.ts +27 -0
  1139. package/src/core/runtime/launchLocalWorker.test.ts +707 -0
  1140. package/src/core/runtime/launchLocalWorker.ts +273 -0
  1141. package/src/core/runtime/localRunLock.ts +118 -0
  1142. package/src/core/runtime/localRunWorker.test.ts +381 -0
  1143. package/src/core/runtime/localRunWorker.ts +287 -0
  1144. package/src/core/runtime/localWorker.acceptance.test.ts +548 -0
  1145. package/src/core/runtime/localWorkerEndpoint.test.ts +145 -0
  1146. package/src/core/runtime/localWorkerEndpoint.ts +82 -0
  1147. package/src/core/runtime/localWorkerProtocol.ts +176 -0
  1148. package/src/core/runtime/localWorkerTransport.test.ts +841 -0
  1149. package/src/core/runtime/localWorkerTransport.ts +434 -0
  1150. package/src/core/runtime/persistenceError.ts +14 -0
  1151. package/src/core/runtime/recordedExecution.ts +43 -0
  1152. package/src/core/runtime/recordedRunClient.integration.test.ts +106 -0
  1153. package/src/core/runtime/recordedRunClient.test.ts +677 -0
  1154. package/src/core/runtime/recordedRunClient.ts +303 -0
  1155. package/src/core/runtime/runCheckpointStore.ts +23 -0
  1156. package/src/core/runtime/runContext.test.ts +445 -0
  1157. package/src/core/runtime/runContext.ts +184 -0
  1158. package/src/core/runtime/runControl.test.ts +923 -0
  1159. package/src/core/runtime/runControl.ts +419 -0
  1160. package/src/core/runtime/runControlStore.ts +106 -0
  1161. package/src/core/runtime/runDeadline.test.ts +44 -0
  1162. package/src/core/runtime/runDeadline.ts +28 -0
  1163. package/src/core/runtime/runEvidence.test.ts +384 -0
  1164. package/src/core/runtime/runEvidence.ts +267 -0
  1165. package/src/core/runtime/runInference.test.ts +408 -0
  1166. package/src/core/runtime/runInference.ts +125 -0
  1167. package/src/core/runtime/runModelStore.ts +55 -0
  1168. package/src/core/runtime/runObservation.ts +24 -0
  1169. package/src/core/runtime/runRecoveryContext.test.ts +602 -0
  1170. package/src/core/runtime/runRecoveryContext.ts +195 -0
  1171. package/src/core/runtime/runRecoveryPlan.test.ts +851 -0
  1172. package/src/core/runtime/runRecoveryPlan.ts +540 -0
  1173. package/src/core/runtime/runRecoveryStore.ts +78 -0
  1174. package/src/core/runtime/runStore.ts +148 -0
  1175. package/src/core/runtime/runStorePath.ts +13 -0
  1176. package/src/core/runtime/runToolStore.ts +66 -0
  1177. package/src/core/runtime/runTools.crash.test.ts +414 -0
  1178. package/src/core/runtime/runTools.test.ts +689 -0
  1179. package/src/core/runtime/runTools.ts +208 -0
  1180. package/src/core/runtime/sqliteControlStore.test.ts +917 -0
  1181. package/src/core/runtime/sqliteControlStore.ts +555 -0
  1182. package/src/core/runtime/sqliteModelStore.test.ts +619 -0
  1183. package/src/core/runtime/sqliteModelStore.ts +286 -0
  1184. package/src/core/runtime/sqliteRecoveryStore.public.test.ts +374 -0
  1185. package/src/core/runtime/sqliteRecoveryStore.test.ts +836 -0
  1186. package/src/core/runtime/sqliteRecoveryStore.ts +435 -0
  1187. package/src/core/runtime/sqliteRunContext.test.ts +1000 -0
  1188. package/src/core/runtime/sqliteRunObservation.test.ts +432 -0
  1189. package/src/core/runtime/sqliteRunStore.test.ts +698 -0
  1190. package/src/core/runtime/sqliteRunStore.ts +593 -0
  1191. package/src/core/runtime/sqliteToolStore.test.ts +1231 -0
  1192. package/src/core/runtime/sqliteToolStore.ts +419 -0
  1193. package/src/core/runtime/testfixtures/localWorkerChild.ts +254 -0
  1194. package/src/core/runtime/testfixtures/localWorkerLauncher.ts +15 -0
  1195. package/src/core/runtime/testfixtures/recoveryChild.ts +159 -0
  1196. package/src/core/services/rateLimiter/index.test.ts +106 -0
  1197. package/src/core/services/rateLimiter/index.ts +157 -0
  1198. package/src/core/services/rateLimiter/types.ts +10 -0
  1199. package/src/core/session/admitted-config.test.ts +50 -0
  1200. package/src/core/session/deprecated-headers-shim.test.ts +111 -0
  1201. package/src/core/session/execution-metrics.test.ts +297 -0
  1202. package/src/core/session/execution-metrics.ts +176 -0
  1203. package/src/core/session/index.ts +1085 -0
  1204. package/src/core/session/loader.ts +212 -0
  1205. package/src/core/session/persistence.test.ts +1210 -0
  1206. package/src/core/session/persistence.ts +1076 -0
  1207. package/src/core/session/rehydrate.test.ts +393 -0
  1208. package/src/core/session/types.ts +139 -0
  1209. package/src/core/session/usage.test.ts +99 -0
  1210. package/src/core/session/usage.ts +84 -0
  1211. package/src/core/skills/builtins/index.ts +22 -0
  1212. package/src/core/skills/builtins/pentest.ts +135 -0
  1213. package/src/core/skills/builtins/promptInjection.ts +44 -0
  1214. package/src/core/skills/builtins/threatModel.ts +336 -0
  1215. package/src/core/skills/index.ts +15 -0
  1216. package/src/core/skills/parser.test.ts +120 -0
  1217. package/src/core/skills/parser.ts +106 -0
  1218. package/src/core/skills/registry.test.ts +202 -0
  1219. package/src/core/skills/registry.ts +109 -0
  1220. package/src/core/skills/scanner.test.ts +157 -0
  1221. package/src/core/skills/scanner.ts +115 -0
  1222. package/src/core/skills/types.ts +45 -0
  1223. package/src/core/skills/utils.ts +16 -0
  1224. package/src/core/storage/index.ts +150 -0
  1225. package/src/core/tasks/index.ts +242 -0
  1226. package/src/core/tools/backends/capture.ts +38 -0
  1227. package/src/core/tools/backends/collectCommand.test.ts +33 -0
  1228. package/src/core/tools/backends/collectCommand.ts +28 -0
  1229. package/src/core/tools/backends/helpers.ts +140 -0
  1230. package/src/core/tools/backends/httpTransport.ts +534 -0
  1231. package/src/core/tools/backends/index.ts +61 -0
  1232. package/src/core/tools/backends/local.test.ts +307 -0
  1233. package/src/core/tools/backends/local.ts +820 -0
  1234. package/src/core/tools/backends/policy.test.ts +137 -0
  1235. package/src/core/tools/backends/policy.ts +129 -0
  1236. package/src/core/tools/backends/resolve.test.ts +309 -0
  1237. package/src/core/tools/backends/resolve.ts +152 -0
  1238. package/src/core/tools/backends/types.ts +279 -0
  1239. package/src/core/tools/backends/whitebox.test.ts +275 -0
  1240. package/src/core/tools/backends/whitebox.ts +14 -0
  1241. package/src/core/tools/backends/whiteboxJobs.test.ts +375 -0
  1242. package/src/core/tools/backends/whiteboxJobs.ts +157 -0
  1243. package/src/core/tools/backends/windowsProgram.ts +36 -0
  1244. package/src/core/tools/daytonaSandbox.test.ts +491 -0
  1245. package/src/core/tools/daytonaSandbox.ts +232 -0
  1246. package/src/core/toolset/index.ts +583 -0
  1247. package/src/core/util/lazyLogger.ts +32 -0
  1248. package/src/core/utils/concurrency.test.ts +204 -0
  1249. package/src/core/utils/concurrency.ts +75 -0
  1250. package/src/core/utils/prompt.ts +28 -0
  1251. package/src/core/whitebox/adapters.ts +277 -0
  1252. package/src/core/whitebox/artifacts.ts +128 -0
  1253. package/src/core/whitebox/boundedProcess.ts +265 -0
  1254. package/src/core/whitebox/candidates.ts +268 -0
  1255. package/src/core/whitebox/catalog.ts +82 -0
  1256. package/src/core/whitebox/index.ts +53 -0
  1257. package/src/core/whitebox/jobKernel.test.ts +91 -0
  1258. package/src/core/whitebox/jobKernel.ts +347 -0
  1259. package/src/core/whitebox/jobSupervisor.ts +264 -0
  1260. package/src/core/whitebox/jobs.ts +21 -0
  1261. package/src/core/whitebox/paths.ts +94 -0
  1262. package/src/core/whitebox/profileTransport.ts +225 -0
  1263. package/src/core/whitebox/profiles.ts +294 -0
  1264. package/src/core/whitebox/repoProfile.test.ts +217 -0
  1265. package/src/core/whitebox/repoProfile.ts +256 -0
  1266. package/src/core/whitebox/types.ts +189 -0
  1267. package/src/core/whitebox/whitebox.test.ts +789 -0
  1268. package/src/core/workflows/fastStrike.seams.test.ts +217 -0
  1269. package/src/core/workflows/fastStrike.test.ts +29 -0
  1270. package/src/core/workflows/fastStrike.ts +239 -0
  1271. package/src/core/workflows/pentest.test.ts +575 -0
  1272. package/src/core/workflows/pentest.ts +1022 -0
  1273. package/src/core/workflows/seams.test.ts +386 -0
  1274. package/src/core/workflows/seams.ts +276 -0
  1275. package/src/core/workflows/threatModel.ts +108 -0
  1276. package/src/core/workflows/usage-forwarding.test.ts +203 -0
  1277. package/src/core/workflows/whiteboxAttackSurface.test.ts +695 -0
  1278. package/src/core/workflows/whiteboxAttackSurface.ts +1740 -0
  1279. package/src/index.ts +49 -0
  1280. package/src/lib/attack-path/types.ts +13 -0
  1281. package/src/lib/cvss/calculator.test.ts +2090 -0
  1282. package/src/lib/cvss/calculator.ts +643 -0
  1283. package/src/lib/cvss/index.ts +65 -0
  1284. package/src/lib/cvss/macrovector-scores.ts +402 -0
  1285. package/src/lib/cvss/types.ts +241 -0
  1286. package/src/lib/cwe/cwe-catalog.ts +444 -0
  1287. package/src/lib/cwe/types.test.ts +142 -0
  1288. package/src/lib/cwe/types.ts +37 -0
  1289. package/src/lib/cwe/validate.test.ts +110 -0
  1290. package/src/lib/cwe/validate.ts +53 -0
  1291. package/src/lib/evidence/types.ts +9 -0
  1292. package/src/tests/agentWorkingDirectory.test.ts +175 -0
  1293. package/src/tests/attackSurface.test.ts +35 -0
  1294. package/src/tests/auth.test.ts +196 -0
  1295. package/src/tests/authCookieExport.test.ts +143 -0
  1296. package/src/tests/authPentestHandoff.test.ts +231 -0
  1297. package/src/tests/browserCookies.test.ts +128 -0
  1298. package/src/tests/credentialManager.test.ts +657 -0
  1299. package/src/tests/data/console.openapi.json +1037 -0
  1300. package/src/tests/data/console.sitemap.xml +348 -0
  1301. package/src/tests/delegateAuthMerge.test.ts +48 -0
  1302. package/src/tui/auto-copy.ts +36 -0
  1303. package/src/tui/clipboard.ts +65 -0
  1304. package/src/tui/command-registry.test.ts +124 -0
  1305. package/src/tui/command-registry.ts +645 -0
  1306. package/src/tui/command-router.ts +81 -0
  1307. package/src/tui/components/agent-display.tsx +480 -0
  1308. package/src/tui/components/ascii-art.tsx +225 -0
  1309. package/src/tui/components/chat/approval-inline.tsx +51 -0
  1310. package/src/tui/components/chat/config-view.tsx +279 -0
  1311. package/src/tui/components/chat/home-view.tsx +288 -0
  1312. package/src/tui/components/chat/index.tsx +161 -0
  1313. package/src/tui/components/chat/input-area.tsx +529 -0
  1314. package/src/tui/components/chat/lib/play-core/num.ts +102 -0
  1315. package/src/tui/components/chat/lib/wave-simulation.ts +124 -0
  1316. package/src/tui/components/chat/loading-indicator.test.ts +33 -0
  1317. package/src/tui/components/chat/loading-indicator.tsx +131 -0
  1318. package/src/tui/components/chat/message-list.tsx +265 -0
  1319. package/src/tui/components/chat/petri-animation.tsx +175 -0
  1320. package/src/tui/components/chat/plan-review-message.tsx +49 -0
  1321. package/src/tui/components/chat/questions-form.tsx +756 -0
  1322. package/src/tui/components/commands/__tests__/recorded-runs-lifecycle.tsx +907 -0
  1323. package/src/tui/components/commands/advanced-settings.tsx +94 -0
  1324. package/src/tui/components/commands/api-key-input.tsx +122 -0
  1325. package/src/tui/components/commands/auth-flow-logic.test.ts +58 -0
  1326. package/src/tui/components/commands/auth-flow-logic.ts +30 -0
  1327. package/src/tui/components/commands/auth-flow.tsx +702 -0
  1328. package/src/tui/components/commands/credits-flow.tsx +210 -0
  1329. package/src/tui/components/commands/help-dialog.tsx +238 -0
  1330. package/src/tui/components/commands/models-display.tsx +111 -0
  1331. package/src/tui/components/commands/operator-wizard.tsx +328 -0
  1332. package/src/tui/components/commands/provider-manager.tsx +241 -0
  1333. package/src/tui/components/commands/provider-selection.tsx +129 -0
  1334. package/src/tui/components/commands/recorded-runs.test.ts +40 -0
  1335. package/src/tui/components/commands/recorded-runs.tsx +793 -0
  1336. package/src/tui/components/commands/sessions-display.tsx +365 -0
  1337. package/src/tui/components/commands/shortcuts-dialog.tsx +52 -0
  1338. package/src/tui/components/commands/skills-dialog.tsx +308 -0
  1339. package/src/tui/components/commands/theme-picker.tsx +177 -0
  1340. package/src/tui/components/commands/web-wizard.tsx +965 -0
  1341. package/src/tui/components/dialog-layout.tsx +73 -0
  1342. package/src/tui/components/error-boundary.tsx +82 -0
  1343. package/src/tui/components/footer.tsx +101 -0
  1344. package/src/tui/components/input.tsx +43 -0
  1345. package/src/tui/components/loaders.tsx +784 -0
  1346. package/src/tui/components/model-picker/ModelPicker.tsx +907 -0
  1347. package/src/tui/components/model-picker/ModelPickerDialog.tsx +75 -0
  1348. package/src/tui/components/model-picker/index.ts +2 -0
  1349. package/src/tui/components/model-picker/model-navigation.test.ts +102 -0
  1350. package/src/tui/components/model-picker/model-navigation.ts +54 -0
  1351. package/src/tui/components/model-picker/model-search.test.ts +62 -0
  1352. package/src/tui/components/model-picker/model-search.ts +42 -0
  1353. package/src/tui/components/model-picker/model-visibility.test.ts +65 -0
  1354. package/src/tui/components/model-picker/model-visibility.ts +59 -0
  1355. package/src/tui/components/operator-dashboard/conversation.test.ts +431 -0
  1356. package/src/tui/components/operator-dashboard/conversation.ts +179 -0
  1357. package/src/tui/components/operator-dashboard/display-state.test.ts +369 -0
  1358. package/src/tui/components/operator-dashboard/display-state.ts +163 -0
  1359. package/src/tui/components/operator-dashboard/herdr-state.test.ts +162 -0
  1360. package/src/tui/components/operator-dashboard/herdr-state.ts +81 -0
  1361. package/src/tui/components/operator-dashboard/index.tsx +2044 -0
  1362. package/src/tui/components/operator-dashboard/logic.test.ts +753 -0
  1363. package/src/tui/components/operator-dashboard/logic.ts +465 -0
  1364. package/src/tui/components/operator-dashboard/queue.test.ts +147 -0
  1365. package/src/tui/components/operator-dashboard/queue.ts +55 -0
  1366. package/src/tui/components/operator-dashboard/queued-messages.tsx +50 -0
  1367. package/src/tui/components/operator-dashboard/run-events.test.ts +915 -0
  1368. package/src/tui/components/operator-dashboard/run-events.ts +507 -0
  1369. package/src/tui/components/operator-dashboard/run-tracing.test.ts +206 -0
  1370. package/src/tui/components/operator-dashboard/run-tracing.ts +105 -0
  1371. package/src/tui/components/operator-dashboard/subagent-detail-view.tsx +51 -0
  1372. package/src/tui/components/operator-dashboard/subagent-dialog.tsx +142 -0
  1373. package/src/tui/components/operator-dashboard/subagent-hub.test.ts +162 -0
  1374. package/src/tui/components/operator-dashboard/subagent-hub.tsx +266 -0
  1375. package/src/tui/components/operator-dashboard/subagent-state.test.ts +431 -0
  1376. package/src/tui/components/operator-dashboard/subagent-state.ts +404 -0
  1377. package/src/tui/components/operator-dashboard/subagent-status-bar.tsx +80 -0
  1378. package/src/tui/components/operator-dashboard/tool-argument-buffer.test.ts +317 -0
  1379. package/src/tui/components/operator-dashboard/tool-arguments.perf.test.ts +121 -0
  1380. package/src/tui/components/operator-dashboard/welcome-logo.tsx +79 -0
  1381. package/src/tui/components/operator-dashboard/workflow-data.test.ts +291 -0
  1382. package/src/tui/components/operator-dashboard/workflow-data.ts +130 -0
  1383. package/src/tui/components/report-viewer-dialog.tsx +98 -0
  1384. package/src/tui/components/responsible-use-disclosure.tsx +55 -0
  1385. package/src/tui/components/screenshot-modal.tsx +204 -0
  1386. package/src/tui/components/shared/__tests__/prompt-input-lifecycle.tsx +64 -0
  1387. package/src/tui/components/shared/__tests__/tool-renderer-lifecycle.tsx +87 -0
  1388. package/src/tui/components/shared/action-label.test.ts +142 -0
  1389. package/src/tui/components/shared/action-label.ts +18 -0
  1390. package/src/tui/components/shared/ascii-spinner.tsx +40 -0
  1391. package/src/tui/components/shared/compacting-icon.tsx +18 -0
  1392. package/src/tui/components/shared/dialog-controls.tsx +76 -0
  1393. package/src/tui/components/shared/index.ts +38 -0
  1394. package/src/tui/components/shared/markdown-viewer.tsx +188 -0
  1395. package/src/tui/components/shared/markdown.ts +239 -0
  1396. package/src/tui/components/shared/message-renderer.tsx +178 -0
  1397. package/src/tui/components/shared/message-utils.ts +175 -0
  1398. package/src/tui/components/shared/pentest-workflow-display.tsx +330 -0
  1399. package/src/tui/components/shared/prompt-input-lifecycle.test.ts +22 -0
  1400. package/src/tui/components/shared/prompt-input-logic.test.ts +782 -0
  1401. package/src/tui/components/shared/prompt-input-logic.ts +423 -0
  1402. package/src/tui/components/shared/prompt-input.tsx +782 -0
  1403. package/src/tui/components/shared/result-registry.test.ts +90 -0
  1404. package/src/tui/components/shared/result-registry.ts +900 -0
  1405. package/src/tui/components/shared/syntax-highlight.ts +242 -0
  1406. package/src/tui/components/shared/tool-registry.test.ts +59 -0
  1407. package/src/tui/components/shared/tool-registry.ts +280 -0
  1408. package/src/tui/components/shared/tool-renderer.test.ts +13 -0
  1409. package/src/tui/components/shared/tool-renderer.tsx +237 -0
  1410. package/src/tui/components/shared/type-guards.ts +64 -0
  1411. package/src/tui/components/shared/use-paste-extmarks.ts +109 -0
  1412. package/src/tui/components/switch.tsx +81 -0
  1413. package/src/tui/components/terminal-focus-handler.tsx +34 -0
  1414. package/src/tui/components/toast.tsx +82 -0
  1415. package/src/tui/components/usage-labels.test.ts +191 -0
  1416. package/src/tui/components/usage-labels.ts +78 -0
  1417. package/src/tui/console-theme.ts +59 -0
  1418. package/src/tui/context/agent.tsx +251 -0
  1419. package/src/tui/context/command.tsx +291 -0
  1420. package/src/tui/context/config.tsx +59 -0
  1421. package/src/tui/context/dialog.tsx +206 -0
  1422. package/src/tui/context/dimensions.tsx +31 -0
  1423. package/src/tui/context/focus-ownership.test.ts +26 -0
  1424. package/src/tui/context/focus-ownership.ts +12 -0
  1425. package/src/tui/context/focus.tsx +86 -0
  1426. package/src/tui/context/herdr.tsx +28 -0
  1427. package/src/tui/context/input.tsx +45 -0
  1428. package/src/tui/context/keybinding.tsx +92 -0
  1429. package/src/tui/context/obfuscation.tsx +114 -0
  1430. package/src/tui/context/route.tsx +127 -0
  1431. package/src/tui/context/session-usage.test.ts +295 -0
  1432. package/src/tui/context/session-usage.ts +204 -0
  1433. package/src/tui/context/session.tsx +62 -0
  1434. package/src/tui/context/toast.tsx +66 -0
  1435. package/src/tui/generated-ascii-art.json +1 -0
  1436. package/src/tui/generated-ascii-art.json.d.ts +2 -0
  1437. package/src/tui/herdr-startup.test.ts +157 -0
  1438. package/src/tui/hooks/use-sessions-list.ts +165 -0
  1439. package/src/tui/index.tsx +838 -0
  1440. package/src/tui/keybindings/index.ts +126 -0
  1441. package/src/tui/keybindings/registry.ts +146 -0
  1442. package/src/tui/keybindings-registry.ts +43 -0
  1443. package/src/tui/obfuscation/patch.ts +139 -0
  1444. package/src/tui/terminal-focus.ts +218 -0
  1445. package/src/tui/theme/colors.ts +43 -0
  1446. package/src/tui/theme/context.tsx +137 -0
  1447. package/src/tui/theme/detect-mode.ts +56 -0
  1448. package/src/tui/theme/index.ts +75 -0
  1449. package/src/tui/theme/registry.ts +29 -0
  1450. package/src/tui/theme/themes/apex.ts +190 -0
  1451. package/src/tui/theme/themes/ayu.ts +189 -0
  1452. package/src/tui/theme/themes/catppuccin.ts +189 -0
  1453. package/src/tui/theme/themes/dracula.ts +190 -0
  1454. package/src/tui/theme/themes/everforest.ts +189 -0
  1455. package/src/tui/theme/themes/flexoki.ts +190 -0
  1456. package/src/tui/theme/themes/github.ts +189 -0
  1457. package/src/tui/theme/themes/gruvbox.ts +189 -0
  1458. package/src/tui/theme/themes/index.ts +54 -0
  1459. package/src/tui/theme/themes/kanagawa.ts +189 -0
  1460. package/src/tui/theme/themes/material.ts +190 -0
  1461. package/src/tui/theme/themes/monokai.ts +190 -0
  1462. package/src/tui/theme/themes/nightfox.ts +189 -0
  1463. package/src/tui/theme/themes/nord.ts +190 -0
  1464. package/src/tui/theme/themes/onedark.ts +190 -0
  1465. package/src/tui/theme/themes/rose-pine.ts +189 -0
  1466. package/src/tui/theme/themes/solarized.ts +189 -0
  1467. package/src/tui/theme/themes/tokyonight.ts +189 -0
  1468. package/src/tui/theme/themes/vesper.ts +191 -0
  1469. package/src/tui/theme/types.ts +143 -0
  1470. package/src/tui/utils/command-flags.test.ts +269 -0
  1471. package/src/tui/utils/command-flags.ts +377 -0
  1472. package/src/tui/utils/kitty-graphics.ts +76 -0
  1473. package/src/tui/utils/open-file.ts +37 -0
  1474. package/src/tui/utils/open-report.ts +34 -0
  1475. package/src/tui/utils/open-url.ts +39 -0
  1476. package/src/tui/utils/paste.ts +8 -0
  1477. package/src/tui/utils/scroll.ts +81 -0
  1478. package/src/util/errors.ts +58 -0
  1479. package/src/util/lock.ts +100 -0
  1480. package/src/util/name.ts +148 -0
  1481. package/src/util/url.test.ts +162 -0
  1482. package/src/util/url.ts +107 -0
  1483. package/build/agent-13rrhp8d.js +0 -20
  1484. package/build/agent-zbj2331s.js +0 -30
  1485. package/build/authentication-f4j3w5vs.js +0 -20
  1486. package/build/blackboxAgent-v2vx9ws4.js +0 -20
  1487. package/build/blackboxPentest-w5nwzpvk.js +0 -70
  1488. package/build/cli-5wemv37a.js +0 -194
  1489. package/build/cli-7s062hr6.js +0 -22
  1490. package/build/cli-9qbxkhye.js +0 -55
  1491. package/build/cli-avmhkjtv.js +0 -22961
  1492. package/build/cli-g3czc3jz.js +0 -204
  1493. package/build/cli-ww7hbazg.js +0 -88
  1494. package/build/index-18vyy6mj.js +0 -19
  1495. package/build/index-5wh7gq37.js +0 -12858
  1496. package/build/index-e23zc8g4.js +0 -34
  1497. package/build/index-hnwhswqj.js +0 -213
  1498. package/build/index-wkmnr4nm.js +0 -39
  1499. package/build/index-ywmfnd30.js +0 -12
  1500. package/build/offesecAgent-c97pqzcn.js +0 -27
  1501. package/build/pentest-4p5jt7gj.js +0 -30
  1502. package/build/pentests-v98eg8n3.js +0 -92
  1503. package/build/threatModel-81d4rcbk.js +0 -29
  1504. /package/build/{cli-c8131c4q.js → cli-0wsh8j2t.js} +0 -0
  1505. /package/build/{cli-9pbk8m32.js → cli-ag6jtndp.js} +0 -0
  1506. /package/build/{cli-e08r86zk.js → cli-b3dvxjgk.js} +0 -0
  1507. /package/build/{cli-fw5r7pfj.js → cli-q126f6ef.js} +0 -0
  1508. /package/build/{cli-9fsre5pt.js → cli-qba2x69h.js} +0 -0
  1509. /package/build/{cli-7q3ae3ft.js → cli-z82n3qk1.js} +0 -0
@@ -0,0 +1,645 @@
1
+ import { GOOGLE_SIGNIN_PROMPT_GUIDANCE } from "../googleSignInPrompt";
2
+ import { MOBILE_OTP_PROMPT_GUIDANCE } from "../mobileOtpPrompt";
3
+
4
+ /**
5
+ * Authentication Subagent Prompts
6
+ *
7
+ * System prompts for the authentication agent.
8
+ * This agent authenticates via browser or API, whichever is applicable.
9
+ */
10
+
11
+ /**
12
+ * Main system prompt for the authentication agent
13
+ */
14
+ export const AUTH_SUBAGENT_SYSTEM_PROMPT = `You are an authentication specialist for autonomous penetration testing.
15
+
16
+ # Mission
17
+
18
+ Authenticate against the target using browser or API methods — whichever is applicable.
19
+ Obtain valid credentials/sessions that other agents can use for authenticated testing.
20
+
21
+ # Operating Mode
22
+
23
+ - Fully autonomous — no human intervention
24
+ - If you encounter barriers (CAPTCHA, or MFA with no TOTP seed available), report failure with details
25
+ - Call \`complete_authentication\` when done (success or failure)
26
+
27
+ # Available Tools
28
+
29
+ ## API Authentication
30
+ - \`execute_command\` — Run curl (or other shell commands) to submit credentials via form POST,
31
+ JSON POST, or HTTP Basic auth, and to capture the Set-Cookie / token response. Use this for all
32
+ custom and complex API auth flows.
33
+
34
+ ## Browser Authentication
35
+ - \`browser_navigate\` — Navigate to login page
36
+ - \`browser_snapshot\` — Get page accessibility tree with element refs (REQUIRED before click/fill)
37
+ - \`browser_fill\` — Fill a form field using its ref from the snapshot
38
+ - \`browser_click\` — Click a button/link using its ref from the snapshot
39
+ - \`browser_screenshot\` — Capture page state for verification
40
+ - \`browser_evaluate\` — Run JS to extract tokens from localStorage/sessionStorage
41
+ - \`browser_console\` — Check console output for errors
42
+ - \`browser_get_cookies\` — Extract session cookies (including httpOnly)
43
+
44
+ ## Completion (two-step — BOTH are required)
45
+ - \`complete_authentication\` — Persist cookies/headers to disk for downstream agents. Call this FIRST.
46
+ - \`response\` — Submit your final structured result and end the run. Call this AFTER complete_authentication.
47
+ - \`delegate_to_auth_subagent\` — Fallback for complex auth flows (OAuth, SAML, CSRF chains).
48
+ Use only if direct API and browser approaches both fail.
49
+
50
+ # Strategy
51
+
52
+ ## Step 1: Determine the auth method
53
+
54
+ If credentials AND a loginUrl hint are provided, skip probing and go straight to Step 2.
55
+
56
+ Otherwise, probe the target to detect the auth mechanism:
57
+ \`\`\`
58
+ execute_command: curl -i -s -o /dev/null -w "%{http_code}" <target>
59
+ \`\`\`
60
+
61
+ Look for:
62
+ - **401/403 response** → API auth likely. Check WWW-Authenticate header for Basic/Bearer.
63
+ - **302 redirect to login page** → Browser or form-based auth.
64
+ - **HTML with login form** → Browser-based or form POST auth.
65
+ - **JSON error (e.g. "unauthorized")** → JSON API auth.
66
+
67
+ ## Step 2: Authenticate
68
+
69
+ ### API path (use when target is an API or has a simple form):
70
+ 1. Use \`execute_command\` with curl to submit the credentials, matching the target's scheme:
71
+ - \`curl -i -d 'username=...&password=...' <loginUrl>\` for HTML form POST
72
+ - \`curl -i -H 'Content-Type: application/json' -d '{"username":"...","password":"..."}' <loginUrl>\` for JSON APIs
73
+ - \`curl -i -u '<user>:<pass>' <url>\` for HTTP Basic
74
+ 2. Inspect the response (\`-i\` shows headers) — capture any \`Set-Cookie\` value or token to use as the session credential.
75
+
76
+ ### Browser path (use for SPAs, OAuth, JS-rendered forms):
77
+ 1. \`browser_navigate\` to the login URL
78
+ 2. \`browser_snapshot\` to find form fields and their refs
79
+ 3. \`browser_screenshot\` to capture the login page before filling credentials
80
+ 4. \`browser_fill\` the username/email field (use ref from snapshot)
81
+ 5. \`browser_snapshot\` again (page may update after input)
82
+ 6. \`browser_fill\` the password field
83
+ 7. \`browser_click\` the submit/login button
84
+ 8. \`browser_snapshot\` AND \`browser_screenshot\` to verify and document the post-submit state
85
+ 9. \`browser_get_cookies\` to extract session cookies
86
+ 10. Optionally \`browser_evaluate\` to extract tokens from localStorage/sessionStorage:
87
+ \`\`\`javascript
88
+ (() => {
89
+ const tokens = {};
90
+ ['token', 'access_token', 'accessToken', 'auth_token', 'jwt', 'id_token'].forEach(key => {
91
+ const val = localStorage.getItem(key) || sessionStorage.getItem(key);
92
+ if (val) tokens[key] = val;
93
+ });
94
+ return JSON.stringify(tokens);
95
+ })()
96
+ \`\`\`
97
+
98
+ ### Fallback:
99
+ If both API and browser approaches fail, use \`delegate_to_auth_subagent\` for complex flows.
100
+
101
+ ## Step 3: Complete (two-step)
102
+
103
+ **First**, call \`complete_authentication\` with:
104
+ - \`success\`: whether auth succeeded
105
+ - \`summary\`: what happened and what credentials/cookies were obtained
106
+ - \`exportedCookies\`: the cookie string for downstream HTTP requests (from browser_get_cookies cookieHeader or the Set-Cookie header in the curl response)
107
+ - \`exportedHeaders\`: auth headers map, e.g. {"Authorization": "Bearer <token>"} (from browser_evaluate localStorage tokens or API response)
108
+ - \`strategy\`: method used ("browser", "form_post", "json_post", "basic_auth", "bearer")
109
+ - \`authBarrier\`: if a barrier was encountered (captcha, mfa, etc.)
110
+
111
+ CRITICAL: You MUST include exportedCookies and exportedHeaders when authentication succeeds.
112
+ These are the ONLY way downstream agents receive the session credentials.
113
+ - After browser auth: get cookies from \`browser_get_cookies\` (use the cookieHeader field) and tokens from \`browser_evaluate\`
114
+ - After API auth: use the session cookie and any auth headers from the response
115
+
116
+ **Then**, call the \`response\` tool with your final summary to end the run. This is required — complete_authentication persists the data, response terminates the agent.
117
+
118
+ # MFA / TOTP Codes
119
+
120
+ If the login asks for a 6-digit authenticator code, check whether a TOTP seed was provided for this
121
+ account — it appears as an extra secret field on the credential and as a matching environment variable
122
+ (look for a name containing TOTP, MFA, OTP, or 2FA). If one exists, do NOT report an MFA barrier —
123
+ compute the code yourself:
124
+
125
+ \`\`\`
126
+ python3 -c "import base64,hmac,hashlib,struct,time,os;s=os.environ['<ENV_VAR>'].replace(' ','').upper();k=base64.b32decode(s+'='*(-len(s)%8));d=hmac.new(k,struct.pack('>Q',int(time.time())//30),hashlib.sha1).digest();o=d[-1]&15;print('%06d'%((struct.unpack('>I',d[o:o+4])[0]&0x7fffffff)%1000000))"
127
+ \`\`\`
128
+
129
+ Read the seed from the environment variable — never paste a seed literal into a command. Codes rotate
130
+ every 30 seconds, so run this immediately before filling the field. If the code is rejected, re-run and
131
+ retry once (you may have crossed a period boundary). Only report an MFA barrier if no seed is available
132
+ or two fresh codes are both rejected.
133
+
134
+ ${MOBILE_OTP_PROMPT_GUIDANCE}
135
+
136
+ ${GOOGLE_SIGNIN_PROMPT_GUIDANCE}
137
+
138
+ TOTP-via-environment-variable above is unchanged and still applies when the login asks for an authenticator
139
+ app code.
140
+
141
+ # Error Recovery
142
+
143
+ If authentication fails, try these mechanical fixes (they are login mechanics, not credential changes):
144
+ 1. Try alternative field names (email vs username, passwd vs password)
145
+ 2. Check for CSRF token requirements (look in page source or hidden form fields)
146
+ 3. Verify the endpoint URL is correct
147
+ 4. Try a different method (form_post vs json_post)
148
+ 5. If all else fails, call \`complete_authentication\` with success=false
149
+
150
+ If credentials were provided to you, they are already verified and SHARED — do not modify them or their
151
+ account settings. When such provided credentials are genuinely rejected — wrong password, account locked, a
152
+ forced password change is required, MFA is required and no TOTP seed was provided, or the email is not
153
+ confirmed — do NOT try to recover by resetting or changing
154
+ the password, modifying MFA/2FA settings, or running any account-recovery flow. Fail fast: call
155
+ \`complete_authentication\` with success=false and a summary naming the reason. Do NOT register a new account
156
+ or self-sign-up to get around a rejected provided credential — that is a different account than the one
157
+ under test and only pollutes results.
158
+
159
+ ## Rate Limiting
160
+
161
+ If you encounter rate-limiting errors (e.g. "Rate limit exceeded", HTTP 429, "too many requests"):
162
+ 1. Do NOT give up or report failure immediately — rate limits are temporary
163
+ 2. Use \`execute_command\` to sleep and wait for the rate limit to reset: \`sleep 120\`
164
+ 3. After sleeping, retry the authentication attempt
165
+ 4. If rate-limited again, sleep for another 120 seconds and retry
166
+ 5. Continue this retry loop — be persistent. Only report failure after 5+ consecutive rate-limited retries
167
+ 6. NEVER treat rate-limiting as a finding or vulnerability — it is an operational obstacle to work through
168
+
169
+ # Key Rules
170
+
171
+ 1. **Be direct** — if credentials are provided, authenticate immediately. Don't over-analyze.
172
+ 2. **Snapshot before interact** — always call \`browser_snapshot\` before \`browser_fill\` or \`browser_click\`.
173
+ 3. **Always complete** — call \`complete_authentication\` to persist credentials, then call \`response\` to end the run. Both are required.
174
+ 4. **No human intervention** — return failure instead of requesting input.
175
+ 5. **Don't log passwords** — never output actual password values in summaries.
176
+
177
+ # Screenshot Evidence
178
+
179
+ - **Screenshot liberally.** A human reviews your run after it completes and relies on screenshots to follow along with what the browser actually did. Every time you navigate to a new page, fill a form field, click a button, or observe a state change, call \`browser_screenshot\` so the reviewer can see exactly what you saw. Aim for at least one screenshot per distinct page or state change — screenshots are cheap, missing visual context is not.
180
+ - **Always screenshot after login attempt** to document success (dashboard/welcome page) or failure (error message).
181
+ - Screenshot any error pages, CAPTCHA challenges, MFA prompts, or unexpected barriers.
182
+ - Use descriptive filenames: "login-form", "username-filled", "password-filled", "auth-success", "auth-error", "mfa-prompt", "captcha-detected".
183
+ - Screenshots are automatically stored and displayed in the console logs for debugging and human review.
184
+ `;
185
+
186
+ /**
187
+ * Prompt template for building user messages
188
+ */
189
+ function buildAuthUserPrompt(input: {
190
+ target: string;
191
+ credentials?: {
192
+ username?: string;
193
+ password?: string;
194
+ apiKey?: string;
195
+ loginUrl?: string;
196
+ role?: string;
197
+ context?: string;
198
+ tokens?: {
199
+ bearerToken?: string;
200
+ cookies?: string;
201
+ sessionToken?: string;
202
+ customHeaders?: Record<string, string>;
203
+ };
204
+ };
205
+ availableCredentials?: {
206
+ username?: string;
207
+ password?: string;
208
+ apiKey?: string;
209
+ loginUrl?: string;
210
+ role?: string;
211
+ context?: string;
212
+ tokens?: {
213
+ bearerToken?: string;
214
+ cookies?: string;
215
+ sessionToken?: string;
216
+ customHeaders?: Record<string, string>;
217
+ };
218
+ }[];
219
+ authFlowHints?: {
220
+ loginEndpoints?: string[];
221
+ protectedEndpoints?: string[];
222
+ authScheme?: string;
223
+ csrfRequired?: boolean;
224
+ captchaDetected?: boolean;
225
+ };
226
+ }): string {
227
+ const hasTokens =
228
+ input.credentials?.tokens &&
229
+ (input.credentials.tokens.bearerToken ||
230
+ input.credentials.tokens.cookies ||
231
+ input.credentials.tokens.sessionToken ||
232
+ (input.credentials.tokens.customHeaders &&
233
+ Object.keys(input.credentials.tokens.customHeaders).length > 0));
234
+
235
+ let prompt = `# Authentication Task
236
+
237
+ ## Target
238
+ ${input.target}
239
+
240
+ `;
241
+
242
+ // Show all available credentials stored on the domain as context
243
+ if (input.availableCredentials && input.availableCredentials.length > 0) {
244
+ prompt += `## Available Credentials (stored on domain)
245
+ The following credentials are configured for this domain:
246
+
247
+ `;
248
+ for (let i = 0; i < input.availableCredentials.length; i++) {
249
+ const cred = input.availableCredentials[i];
250
+ prompt += `### Credential ${i + 1}`;
251
+ if (cred.role) prompt += ` (${cred.role})`;
252
+ prompt += `\n`;
253
+ if (cred.context) prompt += `- Context: ${cred.context}\n`;
254
+ if (cred.username) prompt += `- Username: ${cred.username}\n`;
255
+ if (cred.loginUrl) prompt += `- Login URL: ${cred.loginUrl}\n`;
256
+ // Secrets omitted — referenced by credential ID via tools, never in prompt text.
257
+ prompt += `\n`;
258
+ }
259
+ }
260
+
261
+ // If pre-existing tokens are provided, prioritize them
262
+ if (hasTokens) {
263
+ prompt += `## Pre-existing Tokens (VERIFY THESE FIRST)
264
+ **Mode: Token Verification** - Your goal is to verify these tokens grant access.
265
+
266
+ `;
267
+ if (input.credentials?.role) {
268
+ prompt += `- Role: ${input.credentials?.role}
269
+ `;
270
+ }
271
+ if (input.credentials?.context) {
272
+ prompt += `- Context: ${input.credentials?.context}
273
+ `;
274
+ }
275
+ // Secrets omitted — session validated by credential ID via tools, never in prompt text.
276
+ prompt += `
277
+ **Instructions for Token Verification:**
278
+ 1. Use \`validate_session\` with the provided tokens to test if they grant access
279
+ - If protectedEndpoints are provided above, test against those FIRST (they are known to require auth)
280
+ - Otherwise try common endpoints: /api/data, /protected, /me, /api/me
281
+ 2. If valid: Report success and export the tokens for use
282
+ 3. If invalid: Report failure - do NOT fall back to username/password auth
283
+ 4. The goal is to verify IF these tokens work, not to acquire new ones
284
+
285
+ `;
286
+ }
287
+
288
+ // Regular credentials (only show if no tokens, or as fallback info)
289
+ if (input.credentials && !hasTokens) {
290
+ prompt += `## Provided Credentials - USE THESE NOW
291
+ `;
292
+ if (input.credentials.role) {
293
+ prompt += `- Role: ${input.credentials.role}
294
+ `;
295
+ }
296
+ if (input.credentials.context) {
297
+ prompt += `- Context: ${input.credentials.context}
298
+ `;
299
+ }
300
+ if (input.credentials.username) {
301
+ prompt += `- Username: ${input.credentials.username}
302
+ `;
303
+ }
304
+ // Secrets omitted — referenced by credential ID via tools, never in prompt text.
305
+ if (input.credentials.loginUrl) {
306
+ prompt += `- Login URL Hint: ${input.credentials.loginUrl}
307
+ `;
308
+ }
309
+ prompt += `
310
+ **CRITICAL: AUTHENTICATE MODE**
311
+ You have working credentials. Your task is to USE THEM to authenticate.
312
+ - DO NOT run discovery tools (detect_auth_scheme, probe_auth_endpoints)
313
+ - DO NOT just analyze or report on auth mechanisms
314
+ - GO DIRECTLY to authentication with these credentials
315
+
316
+ `;
317
+ }
318
+
319
+ if (input.authFlowHints) {
320
+ prompt += `## Auth Flow Hints (from attack surface analysis)
321
+ `;
322
+ if (input.authFlowHints.protectedEndpoints?.length) {
323
+ prompt += `- **Protected Endpoints (USE THESE FIRST)**:
324
+ `;
325
+ for (const endpoint of input.authFlowHints.protectedEndpoints) {
326
+ prompt += ` - ${endpoint}
327
+ `;
328
+ }
329
+ prompt += ` These endpoints require authentication. Test your tokens/credentials against these.
330
+ `;
331
+ }
332
+ if (input.authFlowHints.loginEndpoints?.length) {
333
+ prompt += `- Login Endpoints: ${input.authFlowHints.loginEndpoints.join(", ")}
334
+ `;
335
+ }
336
+ if (input.authFlowHints.authScheme) {
337
+ prompt += `- Auth Scheme: ${input.authFlowHints.authScheme}
338
+ `;
339
+ }
340
+ if (input.authFlowHints.csrfRequired) {
341
+ prompt += `- CSRF Required: Yes
342
+ `;
343
+ }
344
+ if (input.authFlowHints.captchaDetected) {
345
+ prompt += `- CAPTCHA Detected: Yes (barrier - may need to fail)
346
+ `;
347
+ }
348
+ prompt += `
349
+ `;
350
+ }
351
+
352
+ // Check if we have any credentials at all
353
+ const hasCredentials =
354
+ input.credentials &&
355
+ (input.credentials.username ||
356
+ input.credentials.password ||
357
+ input.credentials.apiKey);
358
+
359
+ // Different instructions based on what is provided
360
+ if (hasTokens) {
361
+ const hasProtectedEndpoints =
362
+ input.authFlowHints?.protectedEndpoints?.length;
363
+ prompt += `## Instructions (Token Verification Mode)
364
+
365
+ 1. Use \`validate_session\` to test if the provided tokens grant authenticated access
366
+ `;
367
+ if (hasProtectedEndpoints) {
368
+ prompt += ` - Test against the protected endpoints provided above: ${input.authFlowHints?.protectedEndpoints?.join(", ")}
369
+ - These are KNOWN to require auth - use them directly, don't guess endpoints
370
+ `;
371
+ } else {
372
+ prompt += ` - Try common protected endpoints: /api/data, /protected, /me, /api/me
373
+ `;
374
+ }
375
+ prompt += `2. If the tokens work, store them and call \`export_auth_for_agent\`
376
+ 3. Report success or failure via \`complete_authentication\`
377
+ 4. Do NOT attempt to log in with username/password - only verify the provided tokens
378
+
379
+ Begin token verification now.
380
+ `;
381
+ } else if (hasCredentials) {
382
+ prompt += `## Instructions (AUTHENTICATE MODE)
383
+
384
+ Your TASK_INTENT is AUTHENTICATE. You have credentials - use them.
385
+
386
+ 1. Call \`load_auth_flow\` to check for a documented auth flow
387
+ 2. If flow exists: Call \`authenticate\` immediately with the documented method
388
+ 3. If no flow: Make ONE request to detect the login method, then authenticate
389
+ - If loginUrl hint provided: Use it directly
390
+ - If API target: Try POST with JSON credentials to /api/login or similar
391
+ - If web target: Try form POST to login page
392
+ 4. Call \`validate_session\` to confirm authentication worked
393
+ 5. Call \`document_auth_flow\` to save for future runs
394
+ 6. Call \`export_auth_for_agent\` to prepare auth for other agents
395
+
396
+ IMPORTANT: Your goal is a SUCCESSFUL LOGIN, not a discovery report.
397
+ If authentication fails, report the failure - do not fall back to discovery mode.
398
+
399
+ Begin authentication NOW.
400
+ `;
401
+ } else {
402
+ prompt += `## Instructions (REGISTER MODE)
403
+
404
+ Your TASK_INTENT is REGISTER. No credentials provided - you must CREATE an account.
405
+
406
+ 1. Call \`load_auth_flow\` to check for documented registration info
407
+ 2. Call \`probe_registration\` to find registration endpoint
408
+ 3. If registration is OPEN (canRegister: true):
409
+ - Generate test credentials NOW:
410
+ - email: test-${Date.now()}@example.com
411
+ - username: testuser-${Date.now()}
412
+ - password: TestPassword123!@#
413
+ - Call \`attempt_registration\` IMMEDIATELY with these credentials
414
+ - If successful: Call \`authenticate\` with the new credentials
415
+ - Call \`validate_session\` and \`export_auth_for_agent\`
416
+ 4. If registration is BLOCKED (barriers detected):
417
+ - Document the specific barriers found
418
+ - Return failure explaining what manual steps are needed
419
+ 5. If NO registration endpoint found:
420
+ - Return failure - credentials are required
421
+
422
+ IMPORTANT: Your goal is a REGISTERED ACCOUNT, not a discovery report.
423
+ Actually SUBMIT the registration form - do not just analyze it.
424
+
425
+ Begin registration NOW.
426
+ `;
427
+ }
428
+
429
+ return prompt;
430
+ }
431
+
432
+ /**
433
+ * Context recovery reminder - added to prompts on resume
434
+ */
435
+ const CONTEXT_RECOVERY_REMINDER = `
436
+ ## Context Recovery
437
+
438
+ This may be a resumed session. Before doing any discovery:
439
+ 1. Call \`load_auth_flow\` to check if auth flow was previously documented
440
+ 2. If documented, use the saved flow details to authenticate directly
441
+ 3. This saves time and ensures consistent authentication
442
+ `;
443
+
444
+ /**
445
+ * Discovery mode system prompt - for standalone auth detection and reasoning
446
+ */
447
+ const AUTH_DISCOVERY_SYSTEM_PROMPT = `You are an authentication analysis specialist for security testing.
448
+
449
+ # Mission
450
+
451
+ Analyze endpoints to determine if authentication is required and reason about how to approach authentication.
452
+ You do NOT need credentials - you are performing reconnaissance to understand the auth landscape.
453
+
454
+ # Operating Mode
455
+
456
+ You operate in DISCOVERY mode:
457
+ - Analyze the endpoint to determine if auth is required
458
+ - Identify the authentication mechanism(s) in use
459
+ - Reason about how authentication would be approached
460
+ - Document your findings with confidence levels
461
+
462
+ # Cognitive Loop
463
+
464
+ You MUST follow this reasoning pattern:
465
+
466
+ ### For each analysis step:
467
+ \`\`\`
468
+ AUTH_ANALYSIS:
469
+ - Endpoint: [URL being analyzed]
470
+ - Evidence: [what you observed]
471
+ - Confidence: [0-100%]
472
+ - Conclusion: [what this tells us about auth]
473
+ \`\`\`
474
+
475
+ ### Final conclusion:
476
+ \`\`\`
477
+ AUTH_DETERMINATION:
478
+ - Requires Auth: [YES/NO]
479
+ - Auth Type: [none|form|json|basic|bearer|api_key|oauth|unknown]
480
+ - Login URL: [discovered login URL or "unknown"]
481
+ - Confidence: [0-100%]
482
+ - Reasoning: [step-by-step how you arrived at this conclusion]
483
+ - Approach: [how you would authenticate if credentials were provided]
484
+ \`\`\`
485
+
486
+ # Discovery Strategy
487
+
488
+ ## Step 1: Initial Probe
489
+ 1. Make a request to the target endpoint
490
+ 2. Analyze the response:
491
+ - Status code (401/403 suggests auth required)
492
+ - WWW-Authenticate header (reveals auth type)
493
+ - Redirect to login page
494
+ - Response body content
495
+
496
+ ## Step 2: Auth Indicator Analysis
497
+ Look for these authentication indicators:
498
+
499
+ | Indicator | Evidence | Auth Type |
500
+ |-----------|----------|-----------|
501
+ | 401 + WWW-Authenticate: Basic | Header present | HTTP Basic |
502
+ | 401 + WWW-Authenticate: Bearer | Header present | Bearer/JWT |
503
+ | 302 redirect to /login | Location header | Form-based |
504
+ | JSON {"error": "unauthorized"} | Response body | API/JWT |
505
+ | Login form in HTML | Form elements | Form-based |
506
+ | X-API-Key required | Error message | API Key |
507
+ | OAuth redirect | Authorization URL | OAuth |
508
+
509
+ ## Step 3: Endpoint Discovery (CRITICAL for 404 responses)
510
+ If the target returns 404 or detect_auth_scheme finds no clear auth scheme:
511
+ 1. **Use \`probe_auth_endpoints\`** to discover authentication endpoints
512
+ 2. This tool probes ~25 common paths (like /api/login, /api/token, /api/me)
513
+ 3. It tests both GET and POST methods for each path
514
+ 4. Look for endpoints with:
515
+ - POST method + 400/401 response = likely login endpoint
516
+ - GET method + 401 response = protected resource
517
+ 5. Use the recommended endpoint from the tool results
518
+
519
+ Common JSON API patterns discovered by this tool:
520
+ - POST /api/login - Accepts {"username": "...", "password": "..."}
521
+ - POST /api/token - OAuth-style token endpoint
522
+ - GET /api/me - User info (requires Authorization header)
523
+
524
+ ## Step 4: Deep Analysis (if needed)
525
+ If endpoint probing is inconclusive:
526
+ 1. Analyze JavaScript for auth patterns (if SPA)
527
+ 2. Check for CSRF tokens in forms
528
+ 3. Look for auth-related cookies
529
+
530
+ ## Step 5: Document Reasoning
531
+ Provide clear reasoning:
532
+ - What evidence led to your conclusion
533
+ - Confidence level and why
534
+ - What approach would work for authentication
535
+ - Any barriers detected (CAPTCHA, MFA)
536
+
537
+ # Tools Available
538
+
539
+ - \`detect_auth_scheme\` - Analyze endpoint for auth requirements
540
+ - \`probe_auth_endpoints\` - **Use this when 404 is returned** - probes common auth paths with GET/POST
541
+ - \`probe_registration\` - Discover registration endpoints and requirements
542
+ - \`browser_navigate\` - Load pages that require JavaScript
543
+ - \`browser_evaluate\` - Extract auth patterns from SPAs
544
+
545
+ # Output Requirements
546
+
547
+ You MUST call \`complete_auth_discovery\` with your findings:
548
+ - Whether auth is required (boolean)
549
+ - The auth type detected
550
+ - Your reasoning chain
551
+ - Recommended approach
552
+ - Confidence level
553
+ `;
554
+
555
+ /**
556
+ * Build user prompt for discovery mode
557
+ */
558
+ function buildAuthDiscoveryPrompt(input: {
559
+ target: string;
560
+ additionalEndpoints?: string[];
561
+ }): string {
562
+ let prompt = `# Authentication Discovery Task
563
+
564
+ ## Target Endpoint
565
+ ${input.target}
566
+
567
+ `;
568
+
569
+ if (input.additionalEndpoints?.length) {
570
+ prompt += `## Additional Endpoints to Check
571
+ ${input.additionalEndpoints.map((e) => `- ${e}`).join("\n")}
572
+
573
+ `;
574
+ }
575
+
576
+ prompt += `## Instructions
577
+
578
+ Analyze the target endpoint to determine:
579
+ 1. Is authentication required to access this endpoint?
580
+ 2. What type of authentication is used?
581
+ 3. How would you approach authenticating?
582
+
583
+ Use the cognitive loop to document your reasoning at each step.
584
+
585
+ When complete, call \`complete_auth_discovery\` with your findings.
586
+
587
+ Begin your analysis now.
588
+ `;
589
+
590
+ return prompt;
591
+ }
592
+
593
+ /**
594
+ * Browser flow prompt addition
595
+ */
596
+ const BROWSER_FLOW_GUIDANCE = `
597
+ ## Browser Flow Guidance
598
+
599
+ When browser authentication is required (SPA, OAuth, JS-rendered forms):
600
+
601
+ CRITICAL: Always call browser_snapshot BEFORE browser_fill or browser_click to get element refs!
602
+
603
+ ### Step-by-step workflow:
604
+
605
+ 1. **Navigate**: \`browser_navigate\` to the login URL
606
+ 2. **Get Snapshot**: \`browser_snapshot\` - returns accessibility tree with element refs like [ref=e3]
607
+ 3. **Screenshot the login page**: \`browser_screenshot\` before filling any fields — gives the human reviewer context on what the starting state looks like
608
+ 4. **Fill Email/Username**: \`browser_fill\` with element="Email field" AND ref="e3" (from snapshot)
609
+ 5. **Get New Snapshot**: \`browser_snapshot\` again (page may have changed after input)
610
+ 6. **Click Continue/Next**: \`browser_click\` with element="Continue" AND ref="eX" (from snapshot)
611
+ 7. **Screenshot the transition**: \`browser_screenshot\` after navigating between login steps (e.g. email → password screen) so the reviewer can see each intermediate state
612
+ 8. **Get Password Page Snapshot**: \`browser_snapshot\` to find password field on new page
613
+ 9. **Fill Password**: \`browser_fill\` with element="Password field" AND ref="eY" (from snapshot)
614
+ 10. **Click Login**: \`browser_click\` with element="Sign in" AND ref="eZ" (from snapshot)
615
+ 11. **Verify Result**: \`browser_screenshot\` to capture the post-login state (success dashboard or error) — a human will review your run, so screenshots provide essential visual evidence of what happened
616
+ 12. **Extract Session Cookies**: \`browser_get_cookies\` to get httpOnly session cookies
617
+ - This returns cookies including httpOnly ones that document.cookie can't access
618
+ - **Save the \`cookieHeader\` field** — you will need it for \`complete_authentication\`
619
+ 13. **Extract Bearer Tokens**: \`browser_evaluate\` with script to get tokens from storage:
620
+ \`\`\`javascript
621
+ (() => {
622
+ const tokens = {};
623
+ // Common token keys in localStorage
624
+ ['token', 'access_token', 'accessToken', 'auth_token', 'authToken', 'jwt', 'id_token', 'idToken'].forEach(key => {
625
+ const val = localStorage.getItem(key) || sessionStorage.getItem(key);
626
+ if (val) tokens[key] = val;
627
+ });
628
+ return JSON.stringify(tokens);
629
+ })()
630
+ \`\`\`
631
+ 14. **Persist credentials**: Call \`complete_authentication\` and include:
632
+ - \`exportedCookies\`: the \`cookieHeader\` string from step 12
633
+ - \`exportedHeaders\`: e.g. \`{"Authorization": "Bearer <token>"}\` if a JWT/access token was found in step 13
634
+ - \`strategy\`: "browser"
635
+ - This persists the session credentials for downstream agents
636
+ 15. **End the run**: Call the \`response\` tool with your final summary (success, summary, strategy). This terminates the agent.
637
+
638
+ ### Key Rules:
639
+ - The \`ref\` parameter is REQUIRED for browser_fill and browser_click to work reliably
640
+ - Call browser_snapshot after EVERY page change (navigation, clicking buttons, submitting forms)
641
+ - Element refs change when the DOM updates, so always use fresh refs from the most recent snapshot
642
+ - Parse the snapshot output to find elements like: textbox "Your email address" [ref=e5]
643
+
644
+ Remember to document browser flow specifics (selectors, indicators) in \`document_auth_flow\`.
645
+ `;