@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.
- package/README.md +38 -0
- package/bin/pensar.js +12 -4
- package/build/agent-b37fm1yh.js +13 -0
- package/build/{agent-m30a62kh.js → agent-f8rpt4sb.js} +48 -50
- package/build/agent-gqexqg2q.js +13 -0
- package/build/agent-qk30vqmf.js +15 -0
- package/build/agent-runs-nw7dwp1d.js +313 -0
- package/build/{apps-x4ef2gpc.js → apps-zeqbjbs4.js} +50 -58
- package/build/{auth-7ay8qgxm.js → auth-038hsg1s.js} +61 -68
- package/build/blackboxAgent-fjrv4q3d.js +13 -0
- package/build/blackboxPentest-6dtb7vnq.js +59 -0
- package/build/{cli-73k43t1r.js → cli-17ndymmb.js} +53 -78
- package/build/{cli-3py0a0wg.js → cli-1rwe9a9v.js} +206 -136
- package/build/{cli-y3dpm18e.js → cli-2tfnaeca.js} +75 -92
- package/build/{cli-ee3axgts.js → cli-3gt761d2.js} +7 -1
- package/build/cli-3qznjsnr.js +14 -0
- package/build/{cli-sx3jkv7p.js → cli-3w0mx2mv.js} +28872 -25951
- package/build/cli-5qq1655n.js +175 -0
- package/build/{cli-53rm0rrz.js → cli-8w8k4dph.js} +1 -1
- package/build/{cli-68260ckj.js → cli-91gs9whc.js} +1658 -1606
- package/build/cli-99gxp2yb.js +62 -0
- package/build/cli-ayqhdajr.js +22 -0
- package/build/{cli-knd276ed.js → cli-bb02pjt0.js} +31 -31
- package/build/{cli-p4r7q012.js → cli-bw31v3z7.js} +16743 -13352
- package/build/{cli-j54qa6tm.js → cli-c2k4xxaw.js} +42 -42
- package/build/{cli-z5c0ypg1.js → cli-czwr2xmh.js} +4 -4
- package/build/{cli-k71t434r.js → cli-ec2hwkv3.js} +34 -76
- package/build/{cli-vkbzcnw1.js → cli-fxmref08.js} +43 -40
- package/build/cli-g06s7edq.js +11 -0
- package/build/cli-gsaf4jk3.js +280 -0
- package/build/{cli-bc05qbss.js → cli-h6y3bt60.js} +13 -21
- package/build/cli-jdrx44ge.js +14 -0
- package/build/{cli-x92fkt2f.js → cli-m3btkdbx.js} +55 -97
- package/build/cli-mdk51kby.js +429 -0
- package/build/{cli-bw2ddttk.js → cli-mnpzhtg6.js} +4730 -267
- package/build/cli-mz5pk30x.js +5508 -0
- package/build/cli-pwm29ks7.js +6337 -0
- package/build/cli-retw3rw5.js +12 -0
- package/build/{cli-kff2bbq7.js → cli-rxj14t82.js} +43 -43
- package/build/cli-se8ae8z3.js +2250 -0
- package/build/cli-skedjgqy.js +186 -0
- package/build/{cli-dm0fc0bm.js → cli-v1sarr4y.js} +5 -9
- package/build/cli-vfzpbv3g.js +355 -0
- package/build/cli-xcy2vxj2.js +1732 -0
- package/build/{cli-zav1yx5k.js → cli-yn4sj3z1.js} +990 -632
- package/build/{cli-7vg06q5r.js → cli-zsq8kfgc.js} +135 -125
- package/build/cli.js +769 -195
- package/build/{config-4kzh88xz.js → config-4emx9c35.js} +16 -19
- package/build/{doctor-rz7sx6ev.js → doctor-z94afr10.js} +26 -15
- package/build/export-trajectory-rt4tf07k.js +112 -0
- package/build/{fastStrike-a54atjc8.js → fastStrike-mnn8g4ay.js} +56 -31
- package/build/{fixes-fv66yn1z.js → fixes-hm5569vq.js} +22 -30
- package/build/{getMachineId-bsd-xj3bn2fv.js → getMachineId-bsd-zr67nd9p.js} +5 -5
- package/build/{getMachineId-darwin-07jzjcx6.js → getMachineId-darwin-fd1d562d.js} +5 -5
- package/build/{getMachineId-linux-ahngynxd.js → getMachineId-linux-kjmg243j.js} +4 -4
- package/build/{getMachineId-unsupported-vy43b44z.js → getMachineId-unsupported-n4r58vke.js} +4 -4
- package/build/{getMachineId-win-8x66cynz.js → getMachineId-win-yzgpfsrb.js} +5 -5
- package/build/index-0yfxwj9h.js +25 -0
- package/build/{index-kyd1jm89.js → index-1qjwwg4x.js} +159 -169
- package/build/index-939ypn8a.js +12 -0
- package/build/index-a0bxw5zq.js +17477 -0
- package/build/{index-cbwn03kz.js → index-a2xycbjs.js} +12 -31
- package/build/{index-psqjpw5m.js → index-c1h0g35p.js} +11 -11
- package/build/{index-fpwr10qm.js → index-f2xpfw4x.js} +5106 -3803
- package/build/index-g9akqryt.js +9 -0
- package/build/index-mrrfbsyz.js +17 -0
- package/build/index-qnyevb6q.js +1563 -0
- package/build/index-ttwhf2se.js +36 -0
- package/build/index-vy2pm5zf.js +121 -0
- package/build/index-x8ab8x86.js +102 -0
- package/build/{issues-019678t0.js → issues-wxd3ca1d.js} +51 -47
- package/build/knowledge-rvcpbak8.js +139 -0
- package/build/lib/chunk-0y40tebt.js +102 -0
- package/build/lib/chunk-0ydfy4hq.js +510 -0
- package/build/lib/chunk-2njv7wz3.js +178 -0
- package/build/lib/chunk-3q89v4xv.js +21 -0
- package/build/lib/chunk-4p2n69vn.js +62 -0
- package/build/lib/chunk-7gjdygcx.js +171 -0
- package/build/lib/chunk-8d8w07a9.js +431 -0
- package/build/lib/chunk-8dqz8cwa.js +27 -0
- package/build/lib/chunk-8vhr65w3.js +272 -0
- package/build/lib/chunk-8xnzgfs0.js +56 -0
- package/build/lib/chunk-9nsrd4xg.js +12 -0
- package/build/lib/chunk-a3gxgj9r.js +317 -0
- package/build/lib/chunk-afef65e0.js +7150 -0
- package/build/lib/chunk-b8eq85d2.js +143 -0
- package/build/lib/chunk-bqrmw2tn.js +439 -0
- package/build/lib/chunk-bx94rwt5.js +24 -0
- package/build/lib/chunk-c2b0hxs7.js +143 -0
- package/build/lib/chunk-cwj17b1f.js +345 -0
- package/build/lib/chunk-cx7yrzh1.js +2429 -0
- package/build/lib/chunk-eb4h4k1f.js +213 -0
- package/build/lib/chunk-esymacwg.js +14 -0
- package/build/lib/chunk-fy3bbbqy.js +7896 -0
- package/build/lib/chunk-gdrv2h1p.js +11157 -0
- package/build/lib/chunk-ja7j565c.js +743 -0
- package/build/lib/chunk-jdjagvgr.js +85 -0
- package/build/lib/chunk-k4rz1yvj.js +31 -0
- package/build/lib/chunk-kfvq4m1s.js +685 -0
- package/build/lib/chunk-mgppdr6j.js +980 -0
- package/build/lib/chunk-mhxe717m.js +572 -0
- package/build/lib/chunk-mv74mq5n.js +59 -0
- package/build/lib/chunk-n0ba7khr.js +64 -0
- package/build/lib/chunk-q5e23acz.js +52 -0
- package/build/lib/chunk-q8bk9dys.js +922 -0
- package/build/lib/chunk-sgd2126b.js +9294 -0
- package/build/lib/chunk-t5bt5vn1.js +146 -0
- package/build/lib/chunk-v2q8anzw.js +120 -0
- package/build/lib/chunk-vd6hr8pm.js +212 -0
- package/build/lib/chunk-ve7m90fb.js +317 -0
- package/build/lib/chunk-vx228eeq.js +82 -0
- package/build/lib/chunk-wchtd611.js +186 -0
- package/build/lib/chunk-ws86wx87.js +1412 -0
- package/build/lib/chunk-xpfg2fbk.js +90 -0
- package/build/lib/chunk-zrbqn62x.js +697 -0
- package/build/lib/core/agents/agentRuntime.d.ts +47 -0
- package/build/lib/core/agents/defineAgent.d.ts +82 -0
- package/build/lib/core/agents/offSecAgent/index.d.ts +9 -0
- package/build/lib/core/agents/offSecAgent/index.js +225 -0
- package/build/lib/core/agents/offSecAgent/interruptedStepFinalization.d.ts +23 -0
- package/build/lib/core/agents/offSecAgent/interruptedStepMessages.d.ts +42 -0
- package/build/lib/core/agents/offSecAgent/messagePersistence.d.ts +39 -0
- package/build/lib/core/agents/offSecAgent/offensiveSecurityAgent.d.ts +233 -0
- package/build/lib/core/agents/offSecAgent/prompt.d.ts +35 -0
- package/build/lib/core/agents/offSecAgent/recordedTools.d.ts +11 -0
- package/build/lib/core/agents/offSecAgent/runtimeContext.d.ts +43 -0
- package/build/lib/core/agents/offSecAgent/streamDiagnostics.d.ts +67 -0
- package/build/lib/core/agents/offSecAgent/subagentSpawner.d.ts +223 -0
- package/build/lib/core/agents/offSecAgent/subagentSpawner.js +19 -0
- package/build/lib/core/agents/offSecAgent/toolLifecycle.d.ts +54 -0
- package/build/lib/core/agents/offSecAgent/tools/__tests__/sandboxScript.d.ts +1 -0
- package/build/lib/core/agents/offSecAgent/tools/addMemory.d.ts +16 -0
- package/build/lib/core/agents/offSecAgent/tools/agentScratch.d.ts +17 -0
- package/build/lib/core/agents/offSecAgent/tools/applyPatch.d.ts +8 -0
- package/build/lib/core/agents/offSecAgent/tools/applyPatchImpl.d.ts +24 -0
- package/build/lib/core/agents/offSecAgent/tools/askUserQuestions.d.ts +42 -0
- package/build/lib/core/agents/offSecAgent/tools/browserHeaderRouting.d.ts +9 -0
- package/build/lib/core/agents/offSecAgent/tools/browserToolFactories.d.ts +40 -0
- package/build/lib/core/agents/offSecAgent/tools/browserTools.d.ts +96 -0
- package/build/lib/core/agents/offSecAgent/tools/callbackListener.d.ts +212 -0
- package/build/lib/core/agents/offSecAgent/tools/camoufox.d.ts +106 -0
- package/build/lib/core/agents/offSecAgent/tools/checkpointState.d.ts +17 -0
- package/build/lib/core/agents/offSecAgent/tools/completeAuthentication.d.ts +39 -0
- package/build/lib/core/agents/offSecAgent/tools/crawlAuthenticated.d.ts +36 -0
- package/build/lib/core/agents/offSecAgent/tools/createAttackSurfaceReport.d.ts +31 -0
- package/build/lib/core/agents/offSecAgent/tools/createFile.d.ts +12 -0
- package/build/lib/core/agents/offSecAgent/tools/createTask.d.ts +20 -0
- package/build/lib/core/agents/offSecAgent/tools/delegateAuth.d.ts +72 -0
- package/build/lib/core/agents/offSecAgent/tools/deleteFile.d.ts +10 -0
- package/build/lib/core/agents/offSecAgent/tools/destructiveGuard.d.ts +94 -0
- package/build/lib/core/agents/offSecAgent/tools/detectAuthScheme.d.ts +72 -0
- package/build/lib/core/agents/offSecAgent/tools/documentApp.d.ts +38 -0
- package/build/lib/core/agents/offSecAgent/tools/documentEndpoint.d.ts +111 -0
- package/build/lib/core/agents/offSecAgent/tools/documentFinding.d.ts +285 -0
- package/build/lib/core/agents/offSecAgent/tools/email/adapters.d.ts +45 -0
- package/build/lib/core/agents/offSecAgent/tools/email/adapters.js +8 -0
- package/build/lib/core/agents/offSecAgent/tools/email/getAttachments.d.ts +33 -0
- package/build/lib/core/agents/offSecAgent/tools/email/getMessage.d.ts +20 -0
- package/build/lib/core/agents/offSecAgent/tools/email/index.d.ts +145 -0
- package/build/lib/core/agents/offSecAgent/tools/email/listInboxes.d.ts +23 -0
- package/build/lib/core/agents/offSecAgent/tools/email/listMessages.d.ts +22 -0
- package/build/lib/core/agents/offSecAgent/tools/email/markRead.d.ts +20 -0
- package/build/lib/core/agents/offSecAgent/tools/email/searchMessages.d.ts +24 -0
- package/build/lib/core/agents/offSecAgent/tools/email/sendEmail.d.ts +28 -0
- package/build/lib/core/agents/offSecAgent/tools/email/types.d.ts +40 -0
- package/build/lib/core/agents/offSecAgent/tools/email/types.js +0 -0
- package/build/lib/core/agents/offSecAgent/tools/executeCommand.d.ts +84 -0
- package/build/lib/core/agents/offSecAgent/tools/extractJsEndpoints.d.ts +13 -0
- package/build/lib/core/agents/offSecAgent/tools/fileWorkspace.d.ts +21 -0
- package/build/lib/core/agents/offSecAgent/tools/fileWorkspaceRemote.d.ts +13 -0
- package/build/lib/core/agents/offSecAgent/tools/getMemory.d.ts +12 -0
- package/build/lib/core/agents/offSecAgent/tools/getPage.d.ts +17 -0
- package/build/lib/core/agents/offSecAgent/tools/gitDiff.d.ts +12 -0
- package/build/lib/core/agents/offSecAgent/tools/gitStatus.d.ts +10 -0
- package/build/lib/core/agents/offSecAgent/tools/glob.d.ts +8 -0
- package/build/lib/core/agents/offSecAgent/tools/globImpl.d.ts +13 -0
- package/build/lib/core/agents/offSecAgent/tools/globPattern.d.ts +7 -0
- package/build/lib/core/agents/offSecAgent/tools/grep.d.ts +10 -0
- package/build/lib/core/agents/offSecAgent/tools/grepImpl.d.ts +34 -0
- package/build/lib/core/agents/offSecAgent/tools/httpRequest.d.ts +70 -0
- package/build/lib/core/agents/offSecAgent/tools/index.d.ts +466 -0
- package/build/lib/core/agents/offSecAgent/tools/index.js +262 -0
- package/build/lib/core/agents/offSecAgent/tools/listFiles.d.ts +9 -0
- package/build/lib/core/agents/offSecAgent/tools/listFilesImpl.d.ts +27 -0
- package/build/lib/core/agents/offSecAgent/tools/listMemories.d.ts +13 -0
- package/build/lib/core/agents/offSecAgent/tools/listPromptInjections.d.ts +18 -0
- package/build/lib/core/agents/offSecAgent/tools/listTasks.d.ts +24 -0
- package/build/lib/core/agents/offSecAgent/tools/patchApply.d.ts +24 -0
- package/build/lib/core/agents/offSecAgent/tools/patchParse.d.ts +24 -0
- package/build/lib/core/agents/offSecAgent/tools/perCommandShell.d.ts +82 -0
- package/build/lib/core/agents/offSecAgent/tools/playwrightMcp.d.ts +369 -0
- package/build/lib/core/agents/offSecAgent/tools/probeAuthEndpoints.d.ts +28 -0
- package/build/lib/core/agents/offSecAgent/tools/profileCodebase.d.ts +33 -0
- package/build/lib/core/agents/offSecAgent/tools/provideComparisonResults.d.ts +31 -0
- package/build/lib/core/agents/offSecAgent/tools/queryWhiteboxCatalog.d.ts +17 -0
- package/build/lib/core/agents/offSecAgent/tools/readFile.d.ts +11 -0
- package/build/lib/core/agents/offSecAgent/tools/readFileImpl.d.ts +31 -0
- package/build/lib/core/agents/offSecAgent/tools/readSkill.d.ts +15 -0
- package/build/lib/core/agents/offSecAgent/tools/reportError.d.ts +31 -0
- package/build/lib/core/agents/offSecAgent/tools/response.d.ts +15 -0
- package/build/lib/core/agents/offSecAgent/tools/runAttackSurface.d.ts +81 -0
- package/build/lib/core/agents/offSecAgent/tools/runCodeQuery.d.ts +44 -0
- package/build/lib/core/agents/offSecAgent/tools/runPentestWorkflow.d.ts +32 -0
- package/build/lib/core/agents/offSecAgent/tools/runWhiteboxScan.d.ts +52 -0
- package/build/lib/core/agents/offSecAgent/tools/sandbox.d.ts +30 -0
- package/build/lib/core/agents/offSecAgent/tools/sandboxPlaywright.d.ts +137 -0
- package/build/lib/core/agents/offSecAgent/tools/sandboxScript.d.ts +6 -0
- package/build/lib/core/agents/offSecAgent/tools/scopeGuard.d.ts +91 -0
- package/build/lib/core/agents/offSecAgent/tools/scriptSyntaxCheck.d.ts +45 -0
- package/build/lib/core/agents/offSecAgent/tools/smsInbox.d.ts +67 -0
- package/build/lib/core/agents/offSecAgent/tools/smsInbox.js +6 -0
- package/build/lib/core/agents/offSecAgent/tools/smsListMessages.d.ts +29 -0
- package/build/lib/core/agents/offSecAgent/tools/spawnCodingAgent.d.ts +43 -0
- package/build/lib/core/agents/offSecAgent/tools/spawnPentestAgent.d.ts +51 -0
- package/build/lib/core/agents/offSecAgent/tools/spawnPentestSwarm.d.ts +52 -0
- package/build/lib/core/agents/offSecAgent/tools/submitPlan.d.ts +12 -0
- package/build/lib/core/agents/offSecAgent/tools/testEndpointVariations.d.ts +34 -0
- package/build/lib/core/agents/offSecAgent/tools/threatModelGenerator.d.ts +32 -0
- package/build/lib/core/agents/offSecAgent/tools/toolOutput.d.ts +23 -0
- package/build/lib/core/agents/offSecAgent/tools/types.d.ts +215 -0
- package/build/lib/core/agents/offSecAgent/tools/updateFile.d.ts +14 -0
- package/build/lib/core/agents/offSecAgent/tools/updateTask.d.ts +20 -0
- package/build/lib/core/agents/offSecAgent/tools/validateDiscovery.d.ts +24 -0
- package/build/lib/core/agents/offSecAgent/tools/webSearch.d.ts +16 -0
- package/build/lib/core/agents/offSecAgent/tools/whiteboxCandidates.d.ts +108 -0
- package/build/lib/core/agents/offSecAgent/tools/whiteboxJobs.d.ts +157 -0
- package/build/lib/core/agents/offSecAgent/tools/windowsCurl.d.ts +20 -0
- package/build/lib/core/agents/offSecAgent/tools/workspaceApps.d.ts +120 -0
- package/build/lib/core/agents/offSecAgent/tools/workspaceDomains.d.ts +22 -0
- package/build/lib/core/agents/offSecAgent/tools/workspaceFailure.d.ts +6 -0
- package/build/lib/core/agents/offSecAgent/tools/writePlan.d.ts +13 -0
- package/build/lib/core/agents/offSecAgent/trace.d.ts +268 -0
- package/build/lib/core/agents/offSecAgent/types.d.ts +543 -0
- package/build/lib/core/agents/offSecAgent/types.js +7 -0
- package/build/lib/core/agents/specialized/attackSurface/blackboxAgent.d.ts +66 -0
- package/build/lib/core/agents/specialized/attackSurface/blackboxAgent.js +33 -0
- package/build/lib/core/agents/specialized/attackSurface/blackboxRiskScoring.d.ts +30 -0
- package/build/lib/core/agents/specialized/attackSurface/grpcSchema.d.ts +93 -0
- package/build/lib/core/agents/specialized/attackSurface/jsExtraction.d.ts +42 -0
- package/build/lib/core/agents/specialized/attackSurface/prompts.d.ts +1 -0
- package/build/lib/core/agents/specialized/attackSurface/schemas.d.ts +284 -0
- package/build/lib/core/agents/specialized/attackSurface/schemas.js +144 -0
- package/build/lib/core/agents/specialized/attackSurface/types.d.ts +32 -0
- package/build/lib/core/agents/specialized/authenticationAgent/agent.d.ts +73 -0
- package/build/lib/core/agents/specialized/authenticationAgent/index.d.ts +4 -0
- package/build/lib/core/agents/specialized/authenticationAgent/index.js +71 -0
- package/build/lib/core/agents/specialized/authenticationAgent/prompts.d.ts +10 -0
- package/build/lib/core/agents/specialized/authenticationAgent/types.d.ts +620 -0
- package/build/lib/core/agents/specialized/benchmark/comparisonAgent.d.ts +10 -0
- package/build/lib/core/agents/specialized/benchmark/docker-utils.d.ts +17 -0
- package/build/lib/core/agents/specialized/benchmark/flag-detector.d.ts +60 -0
- package/build/lib/core/agents/specialized/benchmark/index.d.ts +8 -0
- package/build/lib/core/agents/specialized/benchmark/prompts.d.ts +1 -0
- package/build/lib/core/agents/specialized/benchmark/remote/circuit-breaker.d.ts +22 -0
- package/build/lib/core/agents/specialized/benchmark/remote/daytona-wrapper.d.ts +33 -0
- package/build/lib/core/agents/specialized/benchmark/remote/index.d.ts +2 -0
- package/build/lib/core/agents/specialized/benchmark/types.d.ts +92 -0
- package/build/lib/core/agents/specialized/benchmarkComparisonAgent.d.ts +27 -0
- package/build/lib/core/agents/specialized/codeAgent/agent.d.ts +50 -0
- package/build/lib/core/agents/specialized/codeAgent/agent.js +31 -0
- package/build/lib/core/agents/specialized/codeAgent/prompts.d.ts +1 -0
- package/build/lib/core/agents/specialized/codeAgent/schemas.d.ts +11 -0
- package/build/lib/core/agents/specialized/codeAgent/schemas.js +10 -0
- package/build/lib/core/agents/specialized/cvssScorer/index.d.ts +56 -0
- package/build/lib/core/agents/specialized/environment/agent.d.ts +43 -0
- package/build/lib/core/agents/specialized/environment/index.d.ts +4 -0
- package/build/lib/core/agents/specialized/environment/prompts.d.ts +10 -0
- package/build/lib/core/agents/specialized/environment/types.d.ts +37 -0
- package/build/lib/core/agents/specialized/findingJudge/agent.d.ts +22 -0
- package/build/lib/core/agents/specialized/findingJudge/agent.js +224 -0
- package/build/lib/core/agents/specialized/findingJudge/index.d.ts +31 -0
- package/build/lib/core/agents/specialized/findingJudge/index.js +13 -0
- package/build/lib/core/agents/specialized/findingJudge/prompts.d.ts +3 -0
- package/build/lib/core/agents/specialized/findingJudge/types.d.ts +77 -0
- package/build/lib/core/agents/specialized/googleSignInPrompt.d.ts +4 -0
- package/build/lib/core/agents/specialized/mobileOtpPrompt.d.ts +1 -0
- package/build/lib/core/agents/specialized/patching/agent.d.ts +64 -0
- package/build/lib/core/agents/specialized/patching/index.d.ts +4 -0
- package/build/lib/core/agents/specialized/patching/index.js +44 -0
- package/build/lib/core/agents/specialized/patching/prompts.d.ts +17 -0
- package/build/lib/core/agents/specialized/patching/types.d.ts +40 -0
- package/build/lib/core/agents/specialized/pentest/agent.d.ts +172 -0
- package/build/lib/core/agents/specialized/pentest/agent.js +43 -0
- package/build/lib/core/agents/specialized/pentest/helperWorkspace.d.ts +16 -0
- package/build/lib/core/agents/specialized/pentest/planPrompt.d.ts +13 -0
- package/build/lib/core/agents/specialized/utils.d.ts +7 -0
- package/build/lib/core/agents/specialized/vulnerabilityReproduction/agent.d.ts +94 -0
- package/build/lib/core/agents/specialized/whiteboxAttackSurface/agent.d.ts +148 -0
- package/build/lib/core/agents/specialized/whiteboxAttackSurface/endpointDocumentationAgent.d.ts +61 -0
- package/build/lib/core/agents/specialized/whiteboxAttackSurface/index.d.ts +5 -0
- package/build/lib/core/agents/specialized/whiteboxAttackSurface/index.js +47 -0
- package/build/lib/core/agents/specialized/whiteboxAttackSurface/prompts.d.ts +34 -0
- package/build/lib/core/agents/specialized/whiteboxAttackSurface/types.d.ts +382 -0
- package/build/lib/core/agents/specialized/whiteboxAttackSurface/types.js +21 -0
- package/build/lib/core/ai/ai.d.ts +342 -0
- package/build/lib/core/ai/ai.js +68 -0
- package/build/lib/core/ai/caching.d.ts +26 -0
- package/build/lib/core/ai/compactionEvidence.d.ts +15 -0
- package/build/lib/core/ai/compactionTelemetry.d.ts +55 -0
- package/build/lib/core/ai/contextManagement.d.ts +85 -0
- package/build/lib/core/ai/index.d.ts +10 -0
- package/build/lib/core/ai/index.js +72 -0
- package/build/lib/core/ai/inference-attempt/adapters.d.ts +15 -0
- package/build/lib/core/ai/inference-attempt/builder.d.ts +31 -0
- package/build/lib/core/ai/inference-attempt/envelope.d.ts +120 -0
- package/build/lib/core/ai/inference-attempt/errors.d.ts +6 -0
- package/build/lib/core/ai/inference-attempt/identity.d.ts +13 -0
- package/build/lib/core/ai/inference-attempt/index.d.ts +36 -0
- package/build/lib/core/ai/inference-attempt/project.d.ts +21 -0
- package/build/lib/core/ai/inference-attempt/recording.d.ts +23 -0
- package/build/lib/core/ai/inference-attempt/tokens.d.ts +13 -0
- package/build/lib/core/ai/inference-attempt/validate.d.ts +2 -0
- package/build/lib/core/ai/mantle.d.ts +28 -0
- package/build/lib/core/ai/model-history.d.ts +4 -0
- package/build/lib/core/ai/models/anthropic.d.ts +2 -0
- package/build/lib/core/ai/models/bedrock.d.ts +2 -0
- package/build/lib/core/ai/models/claude-capabilities.d.ts +7 -0
- package/build/lib/core/ai/models/concentrate.d.ts +2 -0
- package/build/lib/core/ai/models/google.d.ts +2 -0
- package/build/lib/core/ai/models/inception.d.ts +2 -0
- package/build/lib/core/ai/models/index.d.ts +29 -0
- package/build/lib/core/ai/models/mantle.d.ts +2 -0
- package/build/lib/core/ai/models/openai.d.ts +2 -0
- package/build/lib/core/ai/models/openrouter.d.ts +2 -0
- package/build/lib/core/ai/models/pensar.d.ts +2 -0
- package/build/lib/core/ai/native-rollout-evidence/capture.d.ts +31 -0
- package/build/lib/core/ai/native-rollout-evidence/content.d.ts +14 -0
- package/build/lib/core/ai/native-rollout-evidence/index.d.ts +9 -0
- package/build/lib/core/ai/native-rollout-evidence/provider-metadata.d.ts +15 -0
- package/build/lib/core/ai/native-rollout-evidence/schema.d.ts +554 -0
- package/build/lib/core/ai/native-rollout-evidence/validate.d.ts +8 -0
- package/build/lib/core/ai/providers/anthropic.d.ts +2 -0
- package/build/lib/core/ai/providers/concentrate.d.ts +9 -0
- package/build/lib/core/ai/providers/custom.d.ts +3 -0
- package/build/lib/core/ai/providers/hoonify.d.ts +6 -0
- package/build/lib/core/ai/providers/openai-pro-fetch.d.ts +2 -0
- package/build/lib/core/ai/providers/pensar.d.ts +34 -0
- package/build/lib/core/ai/providers/pensarFormatters.d.ts +2 -0
- package/build/lib/core/ai/providers/pensarResponsesStream.d.ts +15 -0
- package/build/lib/core/ai/providers/pensarSSE.d.ts +23 -0
- package/build/lib/core/ai/providers/pensarSigning.d.ts +1 -0
- package/build/lib/core/ai/providers/pensarStreamUsage.d.ts +19 -0
- package/build/lib/core/ai/streamTelemetry.d.ts +22 -0
- package/build/lib/core/ai/utils.d.ts +90 -0
- package/build/lib/core/ai/utils.js +22 -0
- package/build/lib/core/api/apiClient.d.ts +7 -0
- package/build/lib/core/api/apps.d.ts +213 -0
- package/build/lib/core/api/attackSurface.d.ts +14 -0
- package/build/lib/core/api/authentication.d.ts +3 -0
- package/build/lib/core/api/benchmark.d.ts +5 -0
- package/build/lib/core/api/blackboxPentest.d.ts +11 -0
- package/build/lib/core/api/clientIdentity.d.ts +10 -0
- package/build/lib/core/api/constants.d.ts +5 -0
- package/build/lib/core/api/domains.d.ts +19 -0
- package/build/lib/core/api/environment.d.ts +16 -0
- package/build/lib/core/api/index.d.ts +41 -0
- package/build/lib/core/api/index.js +187 -0
- package/build/lib/core/api/issues.d.ts +273 -0
- package/build/lib/core/api/knowledge.d.ts +33 -0
- package/build/lib/core/api/localWorker.d.ts +4 -0
- package/build/lib/core/api/offesecAgent.d.ts +34 -0
- package/build/lib/core/api/patching.d.ts +15 -0
- package/build/lib/core/api/recordedRun.d.ts +36 -0
- package/build/lib/core/api/targetedPentest.d.ts +15 -0
- package/build/lib/core/api/targetedPentest.js +32 -0
- package/build/lib/core/api/threatModel.d.ts +1 -0
- package/build/lib/core/api/trajectoryExport.d.ts +38 -0
- package/build/lib/core/api/vulnerabilityReproduction.d.ts +10 -0
- package/build/lib/core/assets/wordlists.d.ts +31 -0
- package/build/lib/core/atif/convert.d.ts +27 -0
- package/build/lib/core/atif/index.d.ts +7 -0
- package/build/lib/core/atif/schema.d.ts +459 -0
- package/build/lib/core/atif/serialize.d.ts +2 -0
- package/build/lib/core/atif/test-fixtures.d.ts +28 -0
- package/build/lib/core/atif/validate.d.ts +12 -0
- package/build/lib/core/auth/connection.d.ts +12 -0
- package/build/lib/core/auth/device-flow.d.ts +38 -0
- package/build/lib/core/auth/gateway.d.ts +25 -0
- package/build/lib/core/auth/index.d.ts +8 -0
- package/build/lib/core/auth/signing.d.ts +14 -0
- package/build/lib/core/auth/token.d.ts +17 -0
- package/build/lib/core/auth/types.d.ts +85 -0
- package/build/lib/core/auth/workspaces.d.ts +34 -0
- package/build/lib/core/benchmark/index.d.ts +3 -0
- package/build/lib/core/benchmark/report.d.ts +3 -0
- package/build/lib/core/benchmark/runner.d.ts +3 -0
- package/build/lib/core/benchmark/types.d.ts +80 -0
- package/build/lib/core/cli/logLevelArgs.d.ts +18 -0
- package/build/lib/core/cli/model.d.ts +9 -0
- package/build/lib/core/cli/pentestMode.d.ts +5 -0
- package/build/lib/core/cli/tuiArgs.d.ts +5 -0
- package/build/lib/core/config/config.d.ts +86 -0
- package/build/lib/core/config/customProviders.d.ts +62 -0
- package/build/lib/core/config/index.d.ts +6 -0
- package/build/lib/core/config/index.js +6 -0
- package/build/lib/core/credentials/index.d.ts +2 -0
- package/build/lib/core/credentials/manager.d.ts +85 -0
- package/build/lib/core/credentials/types.d.ts +79 -0
- package/build/lib/core/doctor.d.ts +1 -0
- package/build/lib/core/eventBus.d.ts +195 -0
- package/build/lib/core/eventBus.js +6 -0
- package/build/lib/core/findings/attackSurfaceRegistry.d.ts +88 -0
- package/build/lib/core/findings/attackSurfaceRegistry.js +6 -0
- package/build/lib/core/findings/registry.d.ts +177 -0
- package/build/lib/core/findings/registry.js +21 -0
- package/build/lib/core/history.d.ts +23 -0
- package/build/lib/core/hoonify.d.ts +8 -0
- package/build/lib/core/http/parse.d.ts +50 -0
- package/build/lib/core/http/redirects.d.ts +23 -0
- package/build/lib/core/http/targetHeaders.d.ts +30 -0
- package/build/lib/core/http/targetScope.d.ts +12 -0
- package/build/lib/core/http/types.d.ts +11 -0
- package/build/lib/core/id/id.d.ts +60 -0
- package/build/lib/core/id/id.js +28 -0
- package/build/lib/core/installation/index.d.ts +25 -0
- package/build/lib/core/integrations/herdr.d.ts +13 -0
- package/build/lib/core/integrations/surface/index.d.ts +37 -0
- package/build/lib/core/integrations/surface/types.d.ts +22 -0
- package/build/lib/core/integrations/wandb/client.d.ts +23 -0
- package/build/lib/core/integrations/wandb/upload.d.ts +36 -0
- package/build/lib/core/logger/index.d.ts +62 -0
- package/build/lib/core/logger/structured.d.ts +30 -0
- package/build/lib/core/memory/index.d.ts +92 -0
- package/build/lib/core/memory/index.js +21 -0
- package/build/lib/core/messages/types.d.ts +96 -0
- package/build/lib/core/obfuscation/engine.d.ts +51 -0
- package/build/lib/core/obfuscation/index.d.ts +20 -0
- package/build/lib/core/observability/active-root-spans.d.ts +5 -0
- package/build/lib/core/observability/active-spans.d.ts +22 -0
- package/build/lib/core/observability/index.d.ts +36 -0
- package/build/lib/core/observability/index.js +27 -0
- package/build/lib/core/observability/runtime.d.ts +63 -0
- package/build/lib/core/observability/telemetry.d.ts +52 -0
- package/build/lib/core/observability/testkit.d.ts +24 -0
- package/build/lib/core/operator/approvalGate.d.ts +61 -0
- package/build/lib/core/operator/index.d.ts +9 -0
- package/build/lib/core/operator/types.d.ts +167 -0
- package/build/lib/core/plan/index.d.ts +16 -0
- package/build/lib/core/prompt-injections/index.d.ts +111 -0
- package/build/lib/core/prompt-injections/index.js +24 -0
- package/build/lib/core/providers/index.d.ts +5 -0
- package/build/lib/core/providers/types.d.ts +13 -0
- package/build/lib/core/providers/utils.d.ts +15 -0
- package/build/lib/core/providers/verify.d.ts +11 -0
- package/build/lib/core/report/builder.d.ts +9 -0
- package/build/lib/core/report/index.d.ts +7 -0
- package/build/lib/core/report/renderers/json.d.ts +2 -0
- package/build/lib/core/report/renderers/markdown.d.ts +2 -0
- package/build/lib/core/report/schemas.d.ts +115 -0
- package/build/lib/core/runtime/agentExecution.d.ts +15 -0
- package/build/lib/core/runtime/launchLocalWorker.d.ts +33 -0
- package/build/lib/core/runtime/localRunLock.d.ts +9 -0
- package/build/lib/core/runtime/localRunWorker.d.ts +18 -0
- package/build/lib/core/runtime/localWorkerEndpoint.d.ts +14 -0
- package/build/lib/core/runtime/localWorkerProtocol.d.ts +294 -0
- package/build/lib/core/runtime/localWorkerTransport.d.ts +30 -0
- package/build/lib/core/runtime/persistenceError.d.ts +9 -0
- package/build/lib/core/runtime/recordedExecution.d.ts +6 -0
- package/build/lib/core/runtime/recordedRunClient.d.ts +34 -0
- package/build/lib/core/runtime/runCheckpointStore.d.ts +11 -0
- package/build/lib/core/runtime/runContext.d.ts +48 -0
- package/build/lib/core/runtime/runControl.d.ts +44 -0
- package/build/lib/core/runtime/runControlStore.d.ts +83 -0
- package/build/lib/core/runtime/runDeadline.d.ts +4 -0
- package/build/lib/core/runtime/runEvidence.d.ts +37 -0
- package/build/lib/core/runtime/runInference.d.ts +9 -0
- package/build/lib/core/runtime/runModelStore.d.ts +27 -0
- package/build/lib/core/runtime/runObservation.d.ts +19 -0
- package/build/lib/core/runtime/runRecoveryContext.d.ts +20 -0
- package/build/lib/core/runtime/runRecoveryPlan.d.ts +38 -0
- package/build/lib/core/runtime/runRecoveryStore.d.ts +77 -0
- package/build/lib/core/runtime/runStore.d.ts +133 -0
- package/build/lib/core/runtime/runStorePath.d.ts +1 -0
- package/build/lib/core/runtime/runToolStore.d.ts +50 -0
- package/build/lib/core/runtime/runTools.d.ts +16 -0
- package/build/lib/core/runtime/sqliteControlStore.d.ts +41 -0
- package/build/lib/core/runtime/sqliteModelStore.d.ts +20 -0
- package/build/lib/core/runtime/sqliteRecoveryStore.d.ts +35 -0
- package/build/lib/core/runtime/sqliteRunStore.d.ts +8 -0
- package/build/lib/core/runtime/sqliteToolStore.d.ts +30 -0
- package/build/lib/core/runtime/testfixtures/localWorkerChild.d.ts +1 -0
- package/build/lib/core/runtime/testfixtures/localWorkerLauncher.d.ts +1 -0
- package/build/lib/core/runtime/testfixtures/recoveryChild.d.ts +1 -0
- package/build/lib/core/services/rateLimiter/index.d.ts +36 -0
- package/build/lib/core/services/rateLimiter/types.d.ts +10 -0
- package/build/lib/core/session/execution-metrics.d.ts +37 -0
- package/build/lib/core/session/index.d.ts +586 -0
- package/build/lib/core/session/index.js +36 -0
- package/build/lib/core/session/loader.d.ts +30 -0
- package/build/lib/core/session/persistence.d.ts +215 -0
- package/build/lib/core/session/persistence.js +35 -0
- package/build/lib/core/session/types.d.ts +59 -0
- package/build/lib/core/session/usage.d.ts +37 -0
- package/build/lib/core/skills/builtins/index.d.ts +13 -0
- package/build/lib/core/skills/builtins/pentest.d.ts +19 -0
- package/build/lib/core/skills/builtins/promptInjection.d.ts +2 -0
- package/build/lib/core/skills/builtins/threatModel.d.ts +11 -0
- package/build/lib/core/skills/index.d.ts +5 -0
- package/build/lib/core/skills/parser.d.ts +11 -0
- package/build/lib/core/skills/registry.d.ts +30 -0
- package/build/lib/core/skills/scanner.d.ts +12 -0
- package/build/lib/core/skills/types.d.ts +44 -0
- package/build/lib/core/skills/utils.d.ts +6 -0
- package/build/lib/core/storage/index.d.ts +248 -0
- package/build/lib/core/tasks/index.d.ts +78 -0
- package/build/lib/core/tools/backends/capture.d.ts +10 -0
- package/build/lib/core/tools/backends/collectCommand.d.ts +9 -0
- package/build/lib/core/tools/backends/helpers.d.ts +43 -0
- package/build/lib/core/tools/backends/httpTransport.d.ts +18 -0
- package/build/lib/core/tools/backends/index.d.ts +8 -0
- package/build/lib/core/tools/backends/index.js +31 -0
- package/build/lib/core/tools/backends/local.d.ts +11 -0
- package/build/lib/core/tools/backends/policy.d.ts +39 -0
- package/build/lib/core/tools/backends/resolve.d.ts +25 -0
- package/build/lib/core/tools/backends/types.d.ts +240 -0
- package/build/lib/core/tools/backends/whitebox.d.ts +6 -0
- package/build/lib/core/tools/backends/whiteboxJobs.d.ts +18 -0
- package/build/lib/core/tools/backends/windowsProgram.d.ts +4 -0
- package/build/lib/core/tools/daytonaSandbox.d.ts +14 -0
- package/build/lib/core/toolset/index.d.ts +28 -0
- package/build/lib/core/util/lazyLogger.d.ts +16 -0
- package/build/lib/core/utils/concurrency.d.ts +16 -0
- package/build/lib/core/utils/prompt.d.ts +12 -0
- package/build/lib/core/whitebox/adapters.d.ts +29 -0
- package/build/lib/core/whitebox/artifacts.d.ts +32 -0
- package/build/lib/core/whitebox/boundedProcess.d.ts +35 -0
- package/build/lib/core/whitebox/candidates.d.ts +29 -0
- package/build/lib/core/whitebox/catalog.d.ts +10 -0
- package/build/lib/core/whitebox/index.d.ts +9 -0
- package/build/lib/core/whitebox/jobKernel.d.ts +33 -0
- package/build/lib/core/whitebox/jobSupervisor.d.ts +14 -0
- package/build/lib/core/whitebox/jobs.d.ts +17 -0
- package/build/lib/core/whitebox/paths.d.ts +22 -0
- package/build/lib/core/whitebox/profileTransport.d.ts +10 -0
- package/build/lib/core/whitebox/profiles.d.ts +3 -0
- package/build/lib/core/whitebox/repoProfile.d.ts +4 -0
- package/build/lib/core/whitebox/types.d.ts +108 -0
- package/build/lib/core/workflows/fastStrike.d.ts +4 -0
- package/build/lib/core/workflows/pentest.d.ts +167 -0
- package/build/lib/core/workflows/pentest.js +42 -0
- package/build/lib/core/workflows/seams.d.ts +102 -0
- package/build/lib/core/workflows/seams.js +37 -0
- package/build/lib/core/workflows/threatModel.d.ts +26 -0
- package/build/lib/core/workflows/whiteboxAttackSurface.d.ts +142 -0
- package/build/lib/core/workflows/whiteboxAttackSurface.js +36 -0
- package/build/lib/index.d.ts +26 -0
- package/build/lib/index.js +96 -0
- package/build/lib/lib/attack-path/types.d.ts +9 -0
- package/build/lib/lib/cvss/calculator.d.ts +31 -0
- package/build/lib/lib/cvss/index.d.ts +24 -0
- package/build/lib/lib/cvss/index.js +24 -0
- package/build/lib/lib/cvss/macrovector-scores.d.ts +59 -0
- package/build/lib/lib/cvss/types.d.ts +114 -0
- package/build/lib/lib/cvss/types.js +8 -0
- package/build/lib/lib/cwe/cwe-catalog.d.ts +13 -0
- package/build/lib/lib/cwe/types.d.ts +28 -0
- package/build/lib/lib/cwe/validate.d.ts +15 -0
- package/build/lib/lib/evidence/types.d.ts +12 -0
- package/build/lib/util/errors.d.ts +186 -0
- package/build/lib/util/lock.d.ts +2 -0
- package/build/lib/util/name.d.ts +14 -0
- package/build/lib/util/url.d.ts +40 -0
- package/build/{logs-wzr5176k.js → logs-v5503qqk.js} +22 -30
- package/build/{multipart-parser-g2xxkezz.js → multipart-parser-vjjdbpd1.js} +10 -10
- package/build/native-rollout-evidence-1qwze8nm.js +135 -0
- package/build/offesecAgent-w5a2r0wa.js +22 -0
- package/build/{parse-rtccymzn.js → parse-cqecqrc5.js} +0 -4
- package/build/pentest-fxya42cg.js +22 -0
- package/build/pentests-6qntz6wz.js +143 -0
- package/build/recordedRunClient-rtdeagzx.js +11 -0
- package/build/{targetedPentest-tdwtgmxm.js → targetedPentest-khnxcvmb.js} +22 -22
- package/build/{targets-763n91t7.js → targets-ty7dahv4.js} +24 -32
- package/build/threatModel-28ayxe0n.js +21 -0
- package/build/{token-3bbp59y6.js → token-mk7t8y0y.js} +2 -2
- package/build/{token-util-6xjme11b.js → token-util-vd776hrv.js} +1 -2
- package/build/{uninstall-d33159cz.js → uninstall-nrhvt32a.js} +3 -3
- package/build/{upload-9qj1kpt9.js → upload-sx9gth59.js} +8 -14
- package/build/{utils-t7gc2903.js → utils-qetcfvgg.js} +29 -29
- package/package.json +230 -5
- package/src/cli/agent-runs.attach.test.ts +359 -0
- package/src/cli/agent-runs.test.ts +1172 -0
- package/src/cli/agent-runs.ts +430 -0
- package/src/cli/apps.test.ts +63 -0
- package/src/cli/apps.ts +526 -0
- package/src/cli/auth.ts +375 -0
- package/src/cli/command-exit.test.ts +15 -0
- package/src/cli/command-exit.ts +3 -0
- package/src/cli/config.ts +210 -0
- package/src/cli/export-trajectory.test.ts +224 -0
- package/src/cli/export-trajectory.ts +119 -0
- package/src/cli/fixes.ts +56 -0
- package/src/cli/issues.test.ts +214 -0
- package/src/cli/issues.ts +242 -0
- package/src/cli/json-output.test.ts +62 -0
- package/src/cli/knowledge.test.ts +140 -0
- package/src/cli/knowledge.ts +146 -0
- package/src/cli/launcher.test.ts +81 -0
- package/src/cli/logs.ts +111 -0
- package/src/cli/native-rollout-evidence.test.ts +322 -0
- package/src/cli/native-rollout-evidence.ts +206 -0
- package/src/cli/pentests.test.ts +194 -0
- package/src/cli/pentests.ts +159 -0
- package/src/cli/resume.test.ts +107 -0
- package/src/cli/targets.ts +125 -0
- package/src/cli/uninstall.ts +302 -0
- package/src/cli.ts +882 -0
- package/src/core/agents/agentRuntime.test.ts +242 -0
- package/src/core/agents/agentRuntime.ts +120 -0
- package/src/core/agents/defineAgent.ts +134 -0
- package/src/core/agents/offSecAgent/index.ts +162 -0
- package/src/core/agents/offSecAgent/interruptedStepFinalization.test.ts +295 -0
- package/src/core/agents/offSecAgent/interruptedStepFinalization.ts +162 -0
- package/src/core/agents/offSecAgent/interruptedStepMessages.test.ts +296 -0
- package/src/core/agents/offSecAgent/interruptedStepMessages.ts +137 -0
- package/src/core/agents/offSecAgent/messagePersistence.test.ts +281 -0
- package/src/core/agents/offSecAgent/messagePersistence.ts +111 -0
- package/src/core/agents/offSecAgent/offensiveSecurityAgent.runtimeContext.test.ts +689 -0
- package/src/core/agents/offSecAgent/offensiveSecurityAgent.test.ts +2899 -0
- package/src/core/agents/offSecAgent/offensiveSecurityAgent.ts +1610 -0
- package/src/core/agents/offSecAgent/prompt.test.ts +72 -0
- package/src/core/agents/offSecAgent/prompt.ts +368 -0
- package/src/core/agents/offSecAgent/recordedTools.test.ts +580 -0
- package/src/core/agents/offSecAgent/recordedTools.ts +162 -0
- package/src/core/agents/offSecAgent/runtimeContext.test.ts +531 -0
- package/src/core/agents/offSecAgent/runtimeContext.ts +387 -0
- package/src/core/agents/offSecAgent/selectiveConstruction.publicPath.test.ts +295 -0
- package/src/core/agents/offSecAgent/selectiveConstruction.test.ts +498 -0
- package/src/core/agents/offSecAgent/streamDiagnostics.test.ts +310 -0
- package/src/core/agents/offSecAgent/streamDiagnostics.ts +237 -0
- package/src/core/agents/offSecAgent/subagentSpawner.hooks.test.ts +102 -0
- package/src/core/agents/offSecAgent/subagentSpawner.test.ts +384 -0
- package/src/core/agents/offSecAgent/subagentSpawner.ts +664 -0
- package/src/core/agents/offSecAgent/toolLifecycle.test.ts +199 -0
- package/src/core/agents/offSecAgent/toolLifecycle.ts +171 -0
- package/src/core/agents/offSecAgent/tools/__tests__/sandboxScript.ts +14 -0
- package/src/core/agents/offSecAgent/tools/addMemory.ts +87 -0
- package/src/core/agents/offSecAgent/tools/agentScratch.test.ts +36 -0
- package/src/core/agents/offSecAgent/tools/agentScratch.ts +23 -0
- package/src/core/agents/offSecAgent/tools/applyPatch.test.ts +546 -0
- package/src/core/agents/offSecAgent/tools/applyPatch.ts +58 -0
- package/src/core/agents/offSecAgent/tools/applyPatchImpl.ts +300 -0
- package/src/core/agents/offSecAgent/tools/askUserQuestions.ts +81 -0
- package/src/core/agents/offSecAgent/tools/authBackendStatus.test.ts +112 -0
- package/src/core/agents/offSecAgent/tools/browserHeaderRouting.test.ts +136 -0
- package/src/core/agents/offSecAgent/tools/browserHeaderRouting.ts +81 -0
- package/src/core/agents/offSecAgent/tools/browserToolFactories.ts +372 -0
- package/src/core/agents/offSecAgent/tools/browserTools.test.ts +243 -0
- package/src/core/agents/offSecAgent/tools/browserTools.ts +285 -0
- package/src/core/agents/offSecAgent/tools/callbackListener.test.ts +1011 -0
- package/src/core/agents/offSecAgent/tools/callbackListener.ts +1038 -0
- package/src/core/agents/offSecAgent/tools/camoufox.test.ts +119 -0
- package/src/core/agents/offSecAgent/tools/camoufox.ts +199 -0
- package/src/core/agents/offSecAgent/tools/checkpointState.ts +79 -0
- package/src/core/agents/offSecAgent/tools/codingTools.windows.test.ts +625 -0
- package/src/core/agents/offSecAgent/tools/completeAuthentication.ts +136 -0
- package/src/core/agents/offSecAgent/tools/crawlAuthenticated.test.ts +267 -0
- package/src/core/agents/offSecAgent/tools/crawlAuthenticated.ts +170 -0
- package/src/core/agents/offSecAgent/tools/createAttackSurfaceReport.ts +75 -0
- package/src/core/agents/offSecAgent/tools/createFile.test.ts +111 -0
- package/src/core/agents/offSecAgent/tools/createFile.ts +44 -0
- package/src/core/agents/offSecAgent/tools/createTask.ts +118 -0
- package/src/core/agents/offSecAgent/tools/delegateAuth.ts +391 -0
- package/src/core/agents/offSecAgent/tools/deleteFile.test.ts +102 -0
- package/src/core/agents/offSecAgent/tools/deleteFile.ts +39 -0
- package/src/core/agents/offSecAgent/tools/destructiveGuard.test.ts +827 -0
- package/src/core/agents/offSecAgent/tools/destructiveGuard.ts +747 -0
- package/src/core/agents/offSecAgent/tools/detectAuthScheme.ts +191 -0
- package/src/core/agents/offSecAgent/tools/documentApp.ts +242 -0
- package/src/core/agents/offSecAgent/tools/documentEndpoint.ts +291 -0
- package/src/core/agents/offSecAgent/tools/documentFinding.test.ts +2091 -0
- package/src/core/agents/offSecAgent/tools/documentFinding.ts +1240 -0
- package/src/core/agents/offSecAgent/tools/email/adapters.test.ts +279 -0
- package/src/core/agents/offSecAgent/tools/email/adapters.ts +1121 -0
- package/src/core/agents/offSecAgent/tools/email/getAttachments.ts +73 -0
- package/src/core/agents/offSecAgent/tools/email/getMessage.ts +56 -0
- package/src/core/agents/offSecAgent/tools/email/inboxBackend.test.ts +137 -0
- package/src/core/agents/offSecAgent/tools/email/index.ts +55 -0
- package/src/core/agents/offSecAgent/tools/email/listInboxes.ts +47 -0
- package/src/core/agents/offSecAgent/tools/email/listMessages.ts +67 -0
- package/src/core/agents/offSecAgent/tools/email/markRead.ts +57 -0
- package/src/core/agents/offSecAgent/tools/email/searchMessages.ts +76 -0
- package/src/core/agents/offSecAgent/tools/email/sendEmail.ts +165 -0
- package/src/core/agents/offSecAgent/tools/email/types.ts +45 -0
- package/src/core/agents/offSecAgent/tools/executeCommand.backends.test.ts +171 -0
- package/src/core/agents/offSecAgent/tools/executeCommand.test.ts +1153 -0
- package/src/core/agents/offSecAgent/tools/executeCommand.ts +604 -0
- package/src/core/agents/offSecAgent/tools/extractJsEndpoints.ts +44 -0
- package/src/core/agents/offSecAgent/tools/fileBackends.test.ts +66 -0
- package/src/core/agents/offSecAgent/tools/fileMutations.test.ts +159 -0
- package/src/core/agents/offSecAgent/tools/fileToolBackendPurity.test.ts +72 -0
- package/src/core/agents/offSecAgent/tools/fileWorkspace.test.ts +357 -0
- package/src/core/agents/offSecAgent/tools/fileWorkspace.ts +434 -0
- package/src/core/agents/offSecAgent/tools/fileWorkspaceRemote.ts +263 -0
- package/src/core/agents/offSecAgent/tools/getMemory.ts +69 -0
- package/src/core/agents/offSecAgent/tools/getPage.test.ts +1127 -0
- package/src/core/agents/offSecAgent/tools/getPage.ts +70 -0
- package/src/core/agents/offSecAgent/tools/gitDiff.ts +67 -0
- package/src/core/agents/offSecAgent/tools/gitStatus.ts +61 -0
- package/src/core/agents/offSecAgent/tools/gitTools.test.ts +237 -0
- package/src/core/agents/offSecAgent/tools/glob.test.ts +695 -0
- package/src/core/agents/offSecAgent/tools/glob.ts +51 -0
- package/src/core/agents/offSecAgent/tools/globImpl.ts +313 -0
- package/src/core/agents/offSecAgent/tools/globPattern.ts +203 -0
- package/src/core/agents/offSecAgent/tools/grep.test.ts +922 -0
- package/src/core/agents/offSecAgent/tools/grep.ts +73 -0
- package/src/core/agents/offSecAgent/tools/grepImpl.ts +718 -0
- package/src/core/agents/offSecAgent/tools/httpBackends.test.ts +534 -0
- package/src/core/agents/offSecAgent/tools/httpRequest.test.ts +2409 -0
- package/src/core/agents/offSecAgent/tools/httpRequest.ts +425 -0
- package/src/core/agents/offSecAgent/tools/index.ts +787 -0
- package/src/core/agents/offSecAgent/tools/listFiles.bounded.test.ts +514 -0
- package/src/core/agents/offSecAgent/tools/listFiles.public-counters.test.ts +163 -0
- package/src/core/agents/offSecAgent/tools/listFiles.test.ts +521 -0
- package/src/core/agents/offSecAgent/tools/listFiles.ts +49 -0
- package/src/core/agents/offSecAgent/tools/listFilesImpl.ts +351 -0
- package/src/core/agents/offSecAgent/tools/listMemories.ts +71 -0
- package/src/core/agents/offSecAgent/tools/listPromptInjections.test.ts +201 -0
- package/src/core/agents/offSecAgent/tools/listPromptInjections.ts +78 -0
- package/src/core/agents/offSecAgent/tools/listTasks.ts +100 -0
- package/src/core/agents/offSecAgent/tools/patchApply.test.ts +573 -0
- package/src/core/agents/offSecAgent/tools/patchApply.ts +430 -0
- package/src/core/agents/offSecAgent/tools/patchParse.test.ts +383 -0
- package/src/core/agents/offSecAgent/tools/patchParse.ts +354 -0
- package/src/core/agents/offSecAgent/tools/perCommandShell.drain.test.ts +109 -0
- package/src/core/agents/offSecAgent/tools/perCommandShell.test.ts +565 -0
- package/src/core/agents/offSecAgent/tools/perCommandShell.ts +516 -0
- package/src/core/agents/offSecAgent/tools/perCommandShell.windows.test.ts +142 -0
- package/src/core/agents/offSecAgent/tools/playwrightMcp.test.ts +778 -0
- package/src/core/agents/offSecAgent/tools/playwrightMcp.ts +1426 -0
- package/src/core/agents/offSecAgent/tools/probeAuthEndpoints.ts +262 -0
- package/src/core/agents/offSecAgent/tools/profileCodebase.ts +110 -0
- package/src/core/agents/offSecAgent/tools/provideComparisonResults.ts +106 -0
- package/src/core/agents/offSecAgent/tools/queryWhiteboxCatalog.coalescing-cost.test.ts +108 -0
- package/src/core/agents/offSecAgent/tools/queryWhiteboxCatalog.test.ts +183 -0
- package/src/core/agents/offSecAgent/tools/queryWhiteboxCatalog.ts +143 -0
- package/src/core/agents/offSecAgent/tools/readFile.test.ts +1242 -0
- package/src/core/agents/offSecAgent/tools/readFile.ts +89 -0
- package/src/core/agents/offSecAgent/tools/readFileImpl.ts +956 -0
- package/src/core/agents/offSecAgent/tools/readSkill.ts +38 -0
- package/src/core/agents/offSecAgent/tools/reportError.test.ts +48 -0
- package/src/core/agents/offSecAgent/tools/reportError.ts +65 -0
- package/src/core/agents/offSecAgent/tools/response.ts +27 -0
- package/src/core/agents/offSecAgent/tools/runAttackSurface.ts +198 -0
- package/src/core/agents/offSecAgent/tools/runCodeQuery.test.ts +82 -0
- package/src/core/agents/offSecAgent/tools/runCodeQuery.ts +237 -0
- package/src/core/agents/offSecAgent/tools/runPentestWorkflow.ts +122 -0
- package/src/core/agents/offSecAgent/tools/runWhiteboxScan.ts +189 -0
- package/src/core/agents/offSecAgent/tools/runtimeBackendConsumers.test.ts +143 -0
- package/src/core/agents/offSecAgent/tools/sandbox.ts +37 -0
- package/src/core/agents/offSecAgent/tools/sandboxPlaywright.test.ts +235 -0
- package/src/core/agents/offSecAgent/tools/sandboxPlaywright.ts +1029 -0
- package/src/core/agents/offSecAgent/tools/sandboxScript.test.ts +31 -0
- package/src/core/agents/offSecAgent/tools/sandboxScript.ts +60 -0
- package/src/core/agents/offSecAgent/tools/scopeGuard.test.ts +574 -0
- package/src/core/agents/offSecAgent/tools/scopeGuard.ts +317 -0
- package/src/core/agents/offSecAgent/tools/scriptSyntaxCheck.test.ts +566 -0
- package/src/core/agents/offSecAgent/tools/scriptSyntaxCheck.ts +240 -0
- package/src/core/agents/offSecAgent/tools/selectiveFactories.test.ts +476 -0
- package/src/core/agents/offSecAgent/tools/smsInbox.ts +130 -0
- package/src/core/agents/offSecAgent/tools/smsListMessages.test.ts +443 -0
- package/src/core/agents/offSecAgent/tools/smsListMessages.ts +123 -0
- package/src/core/agents/offSecAgent/tools/spawnCodingAgent.ts +229 -0
- package/src/core/agents/offSecAgent/tools/spawnPentestAgent.test.ts +413 -0
- package/src/core/agents/offSecAgent/tools/spawnPentestAgent.ts +266 -0
- package/src/core/agents/offSecAgent/tools/spawnPentestSwarm.ts +146 -0
- package/src/core/agents/offSecAgent/tools/submitPlan.ts +51 -0
- package/src/core/agents/offSecAgent/tools/testEndpointVariations.ts +127 -0
- package/src/core/agents/offSecAgent/tools/threatModelGenerator.ts +664 -0
- package/src/core/agents/offSecAgent/tools/toolOutput.test.ts +480 -0
- package/src/core/agents/offSecAgent/tools/toolOutput.ts +160 -0
- package/src/core/agents/offSecAgent/tools/types.ts +267 -0
- package/src/core/agents/offSecAgent/tools/updateFile.ts +121 -0
- package/src/core/agents/offSecAgent/tools/updateTask.ts +107 -0
- package/src/core/agents/offSecAgent/tools/validateDiscovery.ts +123 -0
- package/src/core/agents/offSecAgent/tools/webSearch.ts +265 -0
- package/src/core/agents/offSecAgent/tools/whiteboxCandidates.ts +197 -0
- package/src/core/agents/offSecAgent/tools/whiteboxJobs.ts +312 -0
- package/src/core/agents/offSecAgent/tools/windowsCurl.test.ts +801 -0
- package/src/core/agents/offSecAgent/tools/windowsCurl.ts +202 -0
- package/src/core/agents/offSecAgent/tools/workspaceApps.test.ts +257 -0
- package/src/core/agents/offSecAgent/tools/workspaceApps.ts +334 -0
- package/src/core/agents/offSecAgent/tools/workspaceDomains.test.ts +113 -0
- package/src/core/agents/offSecAgent/tools/workspaceDomains.ts +57 -0
- package/src/core/agents/offSecAgent/tools/workspaceFailure.ts +11 -0
- package/src/core/agents/offSecAgent/tools/writePlan.ts +65 -0
- package/src/core/agents/offSecAgent/trace.test.ts +796 -0
- package/src/core/agents/offSecAgent/trace.ts +633 -0
- package/src/core/agents/offSecAgent/types.test.ts +224 -0
- package/src/core/agents/offSecAgent/types.ts +676 -0
- package/src/core/agents/specialized/attackSurface/blackboxAgent.test.ts +31 -0
- package/src/core/agents/specialized/attackSurface/blackboxAgent.ts +272 -0
- package/src/core/agents/specialized/attackSurface/blackboxRiskScoring.ts +276 -0
- package/src/core/agents/specialized/attackSurface/grpcSchema.ts +142 -0
- package/src/core/agents/specialized/attackSurface/jsExtraction.test.ts +237 -0
- package/src/core/agents/specialized/attackSurface/jsExtraction.ts +174 -0
- package/src/core/agents/specialized/attackSurface/prompts.ts +349 -0
- package/src/core/agents/specialized/attackSurface/schemas.ts +300 -0
- package/src/core/agents/specialized/attackSurface/types.ts +100 -0
- package/src/core/agents/specialized/authenticationAgent/agent.test.ts +111 -0
- package/src/core/agents/specialized/authenticationAgent/agent.ts +300 -0
- package/src/core/agents/specialized/authenticationAgent/index.ts +74 -0
- package/src/core/agents/specialized/authenticationAgent/prompts.test.ts +36 -0
- package/src/core/agents/specialized/authenticationAgent/prompts.ts +645 -0
- package/src/core/agents/specialized/authenticationAgent/types.ts +833 -0
- package/src/core/agents/specialized/benchmark/comparisonAgent.ts +344 -0
- package/src/core/agents/specialized/benchmark/docker-utils.ts +257 -0
- package/src/core/agents/specialized/benchmark/flag-detector.ts +686 -0
- package/src/core/agents/specialized/benchmark/index.ts +28 -0
- package/src/core/agents/specialized/benchmark/prompts.ts +257 -0
- package/src/core/agents/specialized/benchmark/remote/circuit-breaker.ts +108 -0
- package/src/core/agents/specialized/benchmark/remote/daytona-wrapper.ts +1005 -0
- package/src/core/agents/specialized/benchmark/remote/index.ts +2 -0
- package/src/core/agents/specialized/benchmark/types.ts +98 -0
- package/src/core/agents/specialized/benchmarkComparisonAgent.test.ts +111 -0
- package/src/core/agents/specialized/benchmarkComparisonAgent.ts +203 -0
- package/src/core/agents/specialized/codeAgent/agent.test.ts +89 -0
- package/src/core/agents/specialized/codeAgent/agent.ts +134 -0
- package/src/core/agents/specialized/codeAgent/prompts.ts +48 -0
- package/src/core/agents/specialized/codeAgent/schemas.ts +33 -0
- package/src/core/agents/specialized/cvssScorer/index.test.ts +87 -0
- package/src/core/agents/specialized/cvssScorer/index.ts +546 -0
- package/src/core/agents/specialized/environment/agent.ts +75 -0
- package/src/core/agents/specialized/environment/index.ts +16 -0
- package/src/core/agents/specialized/environment/prompts.ts +194 -0
- package/src/core/agents/specialized/environment/types.ts +48 -0
- package/src/core/agents/specialized/findingJudge/agent.test.ts +114 -0
- package/src/core/agents/specialized/findingJudge/agent.ts +59 -0
- package/src/core/agents/specialized/findingJudge/index.test.ts +155 -0
- package/src/core/agents/specialized/findingJudge/index.ts +166 -0
- package/src/core/agents/specialized/findingJudge/prompts.ts +140 -0
- package/src/core/agents/specialized/findingJudge/types.ts +115 -0
- package/src/core/agents/specialized/googleSignInPrompt.test.ts +29 -0
- package/src/core/agents/specialized/googleSignInPrompt.ts +18 -0
- package/src/core/agents/specialized/mobileOtpPrompt.ts +9 -0
- package/src/core/agents/specialized/patching/agent.test.ts +220 -0
- package/src/core/agents/specialized/patching/agent.ts +146 -0
- package/src/core/agents/specialized/patching/index.ts +20 -0
- package/src/core/agents/specialized/patching/prompts.test.ts +172 -0
- package/src/core/agents/specialized/patching/prompts.ts +396 -0
- package/src/core/agents/specialized/patching/types.ts +49 -0
- package/src/core/agents/specialized/pentest/agent.test.ts +1046 -0
- package/src/core/agents/specialized/pentest/agent.ts +1482 -0
- package/src/core/agents/specialized/pentest/helperLifecycle.test.ts +425 -0
- package/src/core/agents/specialized/pentest/helperWorkspace.test.ts +84 -0
- package/src/core/agents/specialized/pentest/helperWorkspace.ts +33 -0
- package/src/core/agents/specialized/pentest/planPrompt.ts +68 -0
- package/src/core/agents/specialized/pentest/results.test.ts +198 -0
- package/src/core/agents/specialized/utils.test.ts +16 -0
- package/src/core/agents/specialized/utils.ts +28 -0
- package/src/core/agents/specialized/vulnerabilityReproduction/agent.test.ts +195 -0
- package/src/core/agents/specialized/vulnerabilityReproduction/agent.ts +159 -0
- package/src/core/agents/specialized/whiteboxAttackSurface/agent.test.ts +39 -0
- package/src/core/agents/specialized/whiteboxAttackSurface/agent.ts +227 -0
- package/src/core/agents/specialized/whiteboxAttackSurface/endpointDocumentationAgent.concurrency.test.ts +138 -0
- package/src/core/agents/specialized/whiteboxAttackSurface/endpointDocumentationAgent.test.ts +199 -0
- package/src/core/agents/specialized/whiteboxAttackSurface/endpointDocumentationAgent.ts +330 -0
- package/src/core/agents/specialized/whiteboxAttackSurface/index.ts +24 -0
- package/src/core/agents/specialized/whiteboxAttackSurface/prompts.ts +345 -0
- package/src/core/agents/specialized/whiteboxAttackSurface/types.test.ts +67 -0
- package/src/core/agents/specialized/whiteboxAttackSurface/types.ts +234 -0
- package/src/core/ai/ai.contract.test.ts +43 -0
- package/src/core/ai/ai.durability-hooks.test.ts +527 -0
- package/src/core/ai/ai.effective-tools.test.ts +739 -0
- package/src/core/ai/ai.native-rollout-evidence.test.ts +373 -0
- package/src/core/ai/ai.outer-catch-recovery.test.ts +82 -0
- package/src/core/ai/ai.proactive-recovery.test.ts +69 -0
- package/src/core/ai/ai.recorded-attempts.test.ts +621 -0
- package/src/core/ai/ai.recorded-context.test.ts +448 -0
- package/src/core/ai/ai.recorded-tools.test.ts +850 -0
- package/src/core/ai/ai.request-retention.test.ts +296 -0
- package/src/core/ai/ai.test.ts +690 -0
- package/src/core/ai/ai.ts +2377 -0
- package/src/core/ai/caching.test.ts +179 -0
- package/src/core/ai/caching.ts +119 -0
- package/src/core/ai/compactionEvidence.test.ts +52 -0
- package/src/core/ai/compactionEvidence.ts +101 -0
- package/src/core/ai/compactionTelemetry.test.ts +621 -0
- package/src/core/ai/compactionTelemetry.ts +287 -0
- package/src/core/ai/concentrate.test.ts +28 -0
- package/src/core/ai/contextManagement.test.ts +350 -0
- package/src/core/ai/contextManagement.ts +594 -0
- package/src/core/ai/index.ts +73 -0
- package/src/core/ai/inference-attempt/adapters.test.ts +84 -0
- package/src/core/ai/inference-attempt/adapters.ts +391 -0
- package/src/core/ai/inference-attempt/attempt.test.ts +198 -0
- package/src/core/ai/inference-attempt/builder.ts +171 -0
- package/src/core/ai/inference-attempt/envelope.ts +120 -0
- package/src/core/ai/inference-attempt/errors.ts +15 -0
- package/src/core/ai/inference-attempt/fixtures/anthropic-messages-cache-create.json +18 -0
- package/src/core/ai/inference-attempt/fixtures/anthropic-messages-cache-read.json +18 -0
- package/src/core/ai/inference-attempt/fixtures/anthropic-messages-incomplete.json +16 -0
- package/src/core/ai/inference-attempt/fixtures/anthropic-messages-mixed.json +22 -0
- package/src/core/ai/inference-attempt/fixtures/anthropic-messages-non-cache.json +26 -0
- package/src/core/ai/inference-attempt/fixtures/bedrock-converse-cache-create.json +18 -0
- package/src/core/ai/inference-attempt/fixtures/bedrock-converse-cache-read.json +26 -0
- package/src/core/ai/inference-attempt/fixtures/bedrock-converse-incomplete.json +19 -0
- package/src/core/ai/inference-attempt/fixtures/bedrock-converse-mixed.json +20 -0
- package/src/core/ai/inference-attempt/fixtures/bedrock-converse-non-cache.json +24 -0
- package/src/core/ai/inference-attempt/fixtures/openai-responses-cache-read.json +17 -0
- package/src/core/ai/inference-attempt/fixtures/openai-responses-incomplete.json +16 -0
- package/src/core/ai/inference-attempt/fixtures/openai-responses-non-cache.json +23 -0
- package/src/core/ai/inference-attempt/fixtures/pensar-anthropic-rest-incomplete.json +21 -0
- package/src/core/ai/inference-attempt/fixtures/pensar-anthropic-rest-native.json +16 -0
- package/src/core/ai/inference-attempt/fixtures/pensar-anthropic-stream-cache-create.json +20 -0
- package/src/core/ai/inference-attempt/fixtures/pensar-anthropic-stream-cache-read.json +20 -0
- package/src/core/ai/inference-attempt/fixtures/pensar-anthropic-stream-incomplete.json +16 -0
- package/src/core/ai/inference-attempt/fixtures/pensar-anthropic-stream-mixed.json +21 -0
- package/src/core/ai/inference-attempt/fixtures/pensar-anthropic-stream-non-cache.json +19 -0
- package/src/core/ai/inference-attempt/fixtures/reject-cache-read-exceeds-inclusive.json +11 -0
- package/src/core/ai/inference-attempt/fixtures/reject-components-exceed-inclusive.json +12 -0
- package/src/core/ai/inference-attempt/fixtures/reject-identity-mismatch.json +13 -0
- package/src/core/ai/inference-attempt/fixtures/reject-negative-token.json +9 -0
- package/src/core/ai/inference-attempt/fixtures/reject-non-integer-token.json +8 -0
- package/src/core/ai/inference-attempt/fixtures/sdk-normalized-cache-read.json +19 -0
- package/src/core/ai/inference-attempt/fixtures/sdk-normalized-incomplete.json +15 -0
- package/src/core/ai/inference-attempt/fixtures/sdk-normalized-mixed.json +20 -0
- package/src/core/ai/inference-attempt/fixtures/sdk-normalized-non-cache.json +16 -0
- package/src/core/ai/inference-attempt/identity.ts +25 -0
- package/src/core/ai/inference-attempt/index.ts +70 -0
- package/src/core/ai/inference-attempt/project.test.ts +118 -0
- package/src/core/ai/inference-attempt/project.ts +60 -0
- package/src/core/ai/inference-attempt/recording.ts +46 -0
- package/src/core/ai/inference-attempt/tokens.ts +165 -0
- package/src/core/ai/inference-attempt/validate.ts +20 -0
- package/src/core/ai/mantle.test.ts +50 -0
- package/src/core/ai/mantle.ts +45 -0
- package/src/core/ai/model-history.test.ts +53 -0
- package/src/core/ai/model-history.ts +38 -0
- package/src/core/ai/models/anthropic.ts +151 -0
- package/src/core/ai/models/bedrock.ts +618 -0
- package/src/core/ai/models/claude-capabilities.ts +43 -0
- package/src/core/ai/models/concentrate.ts +192 -0
- package/src/core/ai/models/google.ts +154 -0
- package/src/core/ai/models/inception.ts +10 -0
- package/src/core/ai/models/index.ts +253 -0
- package/src/core/ai/models/mantle.ts +14 -0
- package/src/core/ai/models/models.test.ts +313 -0
- package/src/core/ai/models/openai.ts +409 -0
- package/src/core/ai/models/openrouter.ts +342 -0
- package/src/core/ai/models/pensar.ts +66 -0
- package/src/core/ai/native-rollout-evidence/capture.test.ts +1836 -0
- package/src/core/ai/native-rollout-evidence/capture.ts +1572 -0
- package/src/core/ai/native-rollout-evidence/content.test.ts +55 -0
- package/src/core/ai/native-rollout-evidence/content.ts +129 -0
- package/src/core/ai/native-rollout-evidence/index.ts +68 -0
- package/src/core/ai/native-rollout-evidence/provider-metadata.test.ts +85 -0
- package/src/core/ai/native-rollout-evidence/provider-metadata.ts +129 -0
- package/src/core/ai/native-rollout-evidence/recording.test.ts +398 -0
- package/src/core/ai/native-rollout-evidence/schema.test.ts +210 -0
- package/src/core/ai/native-rollout-evidence/schema.ts +353 -0
- package/src/core/ai/native-rollout-evidence/validate.ts +141 -0
- package/src/core/ai/providers/anthropic-models.test.ts +348 -0
- package/src/core/ai/providers/anthropic.ts +73 -0
- package/src/core/ai/providers/bedrock-models.test.ts +81 -0
- package/src/core/ai/providers/concentrate.live.test.ts +71 -0
- package/src/core/ai/providers/concentrate.test.ts +160 -0
- package/src/core/ai/providers/concentrate.ts +145 -0
- package/src/core/ai/providers/custom.live.test.ts +42 -0
- package/src/core/ai/providers/custom.test.ts +474 -0
- package/src/core/ai/providers/custom.ts +70 -0
- package/src/core/ai/providers/gateway-models.test.ts +648 -0
- package/src/core/ai/providers/hoonify.live.test.ts +72 -0
- package/src/core/ai/providers/hoonify.test.ts +284 -0
- package/src/core/ai/providers/hoonify.ts +32 -0
- package/src/core/ai/providers/openai-models.test.ts +356 -0
- package/src/core/ai/providers/openai-pro-fetch.test.ts +64 -0
- package/src/core/ai/providers/openai-pro-fetch.ts +32 -0
- package/src/core/ai/providers/pensar.ts +645 -0
- package/src/core/ai/providers/pensarFormatters.test.ts +272 -0
- package/src/core/ai/providers/pensarFormatters.ts +533 -0
- package/src/core/ai/providers/pensarResponsesStream.test.ts +191 -0
- package/src/core/ai/providers/pensarResponsesStream.ts +294 -0
- package/src/core/ai/providers/pensarSSE.test.ts +83 -0
- package/src/core/ai/providers/pensarSSE.ts +128 -0
- package/src/core/ai/providers/pensarSigning.ts +2 -0
- package/src/core/ai/providers/pensarStreamUsage.test.ts +79 -0
- package/src/core/ai/providers/pensarStreamUsage.ts +62 -0
- package/src/core/ai/stepContext.test.ts +61 -0
- package/src/core/ai/streamIdleTimeout.test.ts +390 -0
- package/src/core/ai/streamTelemetry.ts +90 -0
- package/src/core/ai/usage-callback.test.ts +511 -0
- package/src/core/ai/utils.native-rollout-evidence.test.ts +135 -0
- package/src/core/ai/utils.pensar.test.ts +59 -0
- package/src/core/ai/utils.ts +795 -0
- package/src/core/api/apiClient.test.ts +58 -0
- package/src/core/api/apiClient.ts +73 -0
- package/src/core/api/apps.test.ts +78 -0
- package/src/core/api/apps.ts +388 -0
- package/src/core/api/attackSurface.test.ts +24 -0
- package/src/core/api/attackSurface.ts +89 -0
- package/src/core/api/authentication.ts +8 -0
- package/src/core/api/benchmark.ts +35 -0
- package/src/core/api/blackboxPentest.test.ts +89 -0
- package/src/core/api/blackboxPentest.ts +64 -0
- package/src/core/api/clientIdentity.test.ts +61 -0
- package/src/core/api/clientIdentity.ts +57 -0
- package/src/core/api/comments.test.ts +69 -0
- package/src/core/api/constants.ts +15 -0
- package/src/core/api/domains.test.ts +35 -0
- package/src/core/api/domains.ts +32 -0
- package/src/core/api/environment.ts +47 -0
- package/src/core/api/index.ts +219 -0
- package/src/core/api/issues.test.ts +82 -0
- package/src/core/api/issues.ts +439 -0
- package/src/core/api/knowledge.ts +70 -0
- package/src/core/api/localWorker.ts +29 -0
- package/src/core/api/offesecAgent.test.ts +289 -0
- package/src/core/api/offesecAgent.ts +77 -0
- package/src/core/api/patching.ts +44 -0
- package/src/core/api/recordedRun.control.test.ts +830 -0
- package/src/core/api/recordedRun.inference.test.ts +529 -0
- package/src/core/api/recordedRun.loop.test.ts +290 -0
- package/src/core/api/recordedRun.recovery.test.ts +651 -0
- package/src/core/api/recordedRun.test.ts +646 -0
- package/src/core/api/recordedRun.ts +542 -0
- package/src/core/api/targetedPentest.test.ts +177 -0
- package/src/core/api/targetedPentest.ts +83 -0
- package/src/core/api/threatModel.ts +5 -0
- package/src/core/api/trajectoryExport.test.ts +299 -0
- package/src/core/api/trajectoryExport.ts +362 -0
- package/src/core/api/vulnerabilityReproduction.test.ts +56 -0
- package/src/core/api/vulnerabilityReproduction.ts +54 -0
- package/src/core/assets/wordlists.test.ts +85 -0
- package/src/core/assets/wordlists.ts +111 -0
- package/src/core/atif/compatibility.test.ts +107 -0
- package/src/core/atif/convert.test.ts +815 -0
- package/src/core/atif/convert.ts +1658 -0
- package/src/core/atif/fixtures/portable-bundle-v1.json +813 -0
- package/src/core/atif/index.ts +34 -0
- package/src/core/atif/schema.ts +345 -0
- package/src/core/atif/serialize.test.ts +244 -0
- package/src/core/atif/serialize.ts +419 -0
- package/src/core/atif/test-fixtures.ts +184 -0
- package/src/core/atif/validate.test.ts +188 -0
- package/src/core/atif/validate.ts +289 -0
- package/src/core/auth/connection.ts +26 -0
- package/src/core/auth/device-flow.ts +203 -0
- package/src/core/auth/gateway.ts +66 -0
- package/src/core/auth/index.ts +29 -0
- package/src/core/auth/signing.ts +25 -0
- package/src/core/auth/token.ts +140 -0
- package/src/core/auth/types.ts +106 -0
- package/src/core/auth/workspaces.ts +192 -0
- package/src/core/benchmark/index.ts +11 -0
- package/src/core/benchmark/report.ts +257 -0
- package/src/core/benchmark/runner.ts +698 -0
- package/src/core/benchmark/types.ts +80 -0
- package/src/core/cli/logLevelArgs.test.ts +83 -0
- package/src/core/cli/logLevelArgs.ts +62 -0
- package/src/core/cli/model.ts +35 -0
- package/src/core/cli/pentestMode.test.ts +24 -0
- package/src/core/cli/pentestMode.ts +23 -0
- package/src/core/cli/tuiArgs.test.ts +58 -0
- package/src/core/cli/tuiArgs.ts +28 -0
- package/src/core/config/config.test.ts +183 -0
- package/src/core/config/config.ts +201 -0
- package/src/core/config/customProviders.test.ts +183 -0
- package/src/core/config/customProviders.ts +190 -0
- package/src/core/config/index.ts +7 -0
- package/src/core/credentials/index.ts +6 -0
- package/src/core/credentials/manager.ts +313 -0
- package/src/core/credentials/types.ts +112 -0
- package/src/core/doctor.ts +138 -0
- package/src/core/eventBus.test.ts +374 -0
- package/src/core/eventBus.ts +410 -0
- package/src/core/findings/attackSurfaceRegistry.ts +294 -0
- package/src/core/findings/registry.test.ts +1680 -0
- package/src/core/findings/registry.ts +800 -0
- package/src/core/history.ts +82 -0
- package/src/core/hoonify.test.ts +250 -0
- package/src/core/hoonify.ts +163 -0
- package/src/core/http/headers.contract.test.ts +1161 -0
- package/src/core/http/parse.ts +257 -0
- package/src/core/http/redirects.test.ts +207 -0
- package/src/core/http/redirects.ts +145 -0
- package/src/core/http/targetHeaders.ts +604 -0
- package/src/core/http/targetScope.ts +52 -0
- package/src/core/http/types.ts +39 -0
- package/src/core/id/id.test.ts +88 -0
- package/src/core/id/id.ts +138 -0
- package/src/core/installation/index.ts +222 -0
- package/src/core/installation/installation.test.ts +415 -0
- package/src/core/integrations/herdr.test.ts +335 -0
- package/src/core/integrations/herdr.ts +163 -0
- package/src/core/integrations/surface/index.test.ts +534 -0
- package/src/core/integrations/surface/index.ts +224 -0
- package/src/core/integrations/surface/types.ts +29 -0
- package/src/core/integrations/wandb/client.ts +167 -0
- package/src/core/integrations/wandb/upload.test.ts +415 -0
- package/src/core/integrations/wandb/upload.ts +76 -0
- package/src/core/logger/errorLog.test.ts +98 -0
- package/src/core/logger/index.ts +214 -0
- package/src/core/logger/structured.test.ts +212 -0
- package/src/core/logger/structured.ts +207 -0
- package/src/core/memory/backend.test.ts +186 -0
- package/src/core/memory/index.ts +279 -0
- package/src/core/memory/memory.test.ts +362 -0
- package/src/core/messages/types.ts +141 -0
- package/src/core/obfuscation/engine.test.ts +314 -0
- package/src/core/obfuscation/engine.ts +647 -0
- package/src/core/obfuscation/index.ts +27 -0
- package/src/core/observability/active-root-spans.ts +30 -0
- package/src/core/observability/active-spans.ts +80 -0
- package/src/core/observability/index.ts +91 -0
- package/src/core/observability/log-correlation.test.ts +276 -0
- package/src/core/observability/payload-capture.test.ts +59 -0
- package/src/core/observability/runtime.test.ts +743 -0
- package/src/core/observability/runtime.ts +371 -0
- package/src/core/observability/shutdown.test.ts +551 -0
- package/src/core/observability/telemetry.test.ts +895 -0
- package/src/core/observability/telemetry.ts +220 -0
- package/src/core/observability/testkit.test.ts +66 -0
- package/src/core/observability/testkit.ts +97 -0
- package/src/core/observability/trace-contract.test.ts +1031 -0
- package/src/core/observability.test.ts +135 -0
- package/src/core/operator/approvalGate.test.ts +300 -0
- package/src/core/operator/approvalGate.ts +287 -0
- package/src/core/operator/index.ts +30 -0
- package/src/core/operator/types.ts +355 -0
- package/src/core/plan/index.ts +44 -0
- package/src/core/prompt-injections/index.test.ts +248 -0
- package/src/core/prompt-injections/index.ts +350 -0
- package/src/core/providers/index.ts +5 -0
- package/src/core/providers/types.ts +87 -0
- package/src/core/providers/utils.test.ts +189 -0
- package/src/core/providers/utils.ts +183 -0
- package/src/core/providers/verify.test.ts +49 -0
- package/src/core/providers/verify.ts +198 -0
- package/src/core/report/builder.test.ts +229 -0
- package/src/core/report/builder.ts +58 -0
- package/src/core/report/index.ts +13 -0
- package/src/core/report/renderers/json.test.ts +76 -0
- package/src/core/report/renderers/json.ts +5 -0
- package/src/core/report/renderers/markdown.test.ts +366 -0
- package/src/core/report/renderers/markdown.ts +133 -0
- package/src/core/report/schemas.ts +48 -0
- package/src/core/runtime/agentExecution.test.ts +94 -0
- package/src/core/runtime/agentExecution.ts +27 -0
- package/src/core/runtime/launchLocalWorker.test.ts +707 -0
- package/src/core/runtime/launchLocalWorker.ts +273 -0
- package/src/core/runtime/localRunLock.ts +118 -0
- package/src/core/runtime/localRunWorker.test.ts +381 -0
- package/src/core/runtime/localRunWorker.ts +287 -0
- package/src/core/runtime/localWorker.acceptance.test.ts +548 -0
- package/src/core/runtime/localWorkerEndpoint.test.ts +145 -0
- package/src/core/runtime/localWorkerEndpoint.ts +82 -0
- package/src/core/runtime/localWorkerProtocol.ts +176 -0
- package/src/core/runtime/localWorkerTransport.test.ts +841 -0
- package/src/core/runtime/localWorkerTransport.ts +434 -0
- package/src/core/runtime/persistenceError.ts +14 -0
- package/src/core/runtime/recordedExecution.ts +43 -0
- package/src/core/runtime/recordedRunClient.integration.test.ts +106 -0
- package/src/core/runtime/recordedRunClient.test.ts +677 -0
- package/src/core/runtime/recordedRunClient.ts +303 -0
- package/src/core/runtime/runCheckpointStore.ts +23 -0
- package/src/core/runtime/runContext.test.ts +445 -0
- package/src/core/runtime/runContext.ts +184 -0
- package/src/core/runtime/runControl.test.ts +923 -0
- package/src/core/runtime/runControl.ts +419 -0
- package/src/core/runtime/runControlStore.ts +106 -0
- package/src/core/runtime/runDeadline.test.ts +44 -0
- package/src/core/runtime/runDeadline.ts +28 -0
- package/src/core/runtime/runEvidence.test.ts +384 -0
- package/src/core/runtime/runEvidence.ts +267 -0
- package/src/core/runtime/runInference.test.ts +408 -0
- package/src/core/runtime/runInference.ts +125 -0
- package/src/core/runtime/runModelStore.ts +55 -0
- package/src/core/runtime/runObservation.ts +24 -0
- package/src/core/runtime/runRecoveryContext.test.ts +602 -0
- package/src/core/runtime/runRecoveryContext.ts +195 -0
- package/src/core/runtime/runRecoveryPlan.test.ts +851 -0
- package/src/core/runtime/runRecoveryPlan.ts +540 -0
- package/src/core/runtime/runRecoveryStore.ts +78 -0
- package/src/core/runtime/runStore.ts +148 -0
- package/src/core/runtime/runStorePath.ts +13 -0
- package/src/core/runtime/runToolStore.ts +66 -0
- package/src/core/runtime/runTools.crash.test.ts +414 -0
- package/src/core/runtime/runTools.test.ts +689 -0
- package/src/core/runtime/runTools.ts +208 -0
- package/src/core/runtime/sqliteControlStore.test.ts +917 -0
- package/src/core/runtime/sqliteControlStore.ts +555 -0
- package/src/core/runtime/sqliteModelStore.test.ts +619 -0
- package/src/core/runtime/sqliteModelStore.ts +286 -0
- package/src/core/runtime/sqliteRecoveryStore.public.test.ts +374 -0
- package/src/core/runtime/sqliteRecoveryStore.test.ts +836 -0
- package/src/core/runtime/sqliteRecoveryStore.ts +435 -0
- package/src/core/runtime/sqliteRunContext.test.ts +1000 -0
- package/src/core/runtime/sqliteRunObservation.test.ts +432 -0
- package/src/core/runtime/sqliteRunStore.test.ts +698 -0
- package/src/core/runtime/sqliteRunStore.ts +593 -0
- package/src/core/runtime/sqliteToolStore.test.ts +1231 -0
- package/src/core/runtime/sqliteToolStore.ts +419 -0
- package/src/core/runtime/testfixtures/localWorkerChild.ts +254 -0
- package/src/core/runtime/testfixtures/localWorkerLauncher.ts +15 -0
- package/src/core/runtime/testfixtures/recoveryChild.ts +159 -0
- package/src/core/services/rateLimiter/index.test.ts +106 -0
- package/src/core/services/rateLimiter/index.ts +157 -0
- package/src/core/services/rateLimiter/types.ts +10 -0
- package/src/core/session/admitted-config.test.ts +50 -0
- package/src/core/session/deprecated-headers-shim.test.ts +111 -0
- package/src/core/session/execution-metrics.test.ts +297 -0
- package/src/core/session/execution-metrics.ts +176 -0
- package/src/core/session/index.ts +1085 -0
- package/src/core/session/loader.ts +212 -0
- package/src/core/session/persistence.test.ts +1210 -0
- package/src/core/session/persistence.ts +1076 -0
- package/src/core/session/rehydrate.test.ts +393 -0
- package/src/core/session/types.ts +139 -0
- package/src/core/session/usage.test.ts +99 -0
- package/src/core/session/usage.ts +84 -0
- package/src/core/skills/builtins/index.ts +22 -0
- package/src/core/skills/builtins/pentest.ts +135 -0
- package/src/core/skills/builtins/promptInjection.ts +44 -0
- package/src/core/skills/builtins/threatModel.ts +336 -0
- package/src/core/skills/index.ts +15 -0
- package/src/core/skills/parser.test.ts +120 -0
- package/src/core/skills/parser.ts +106 -0
- package/src/core/skills/registry.test.ts +202 -0
- package/src/core/skills/registry.ts +109 -0
- package/src/core/skills/scanner.test.ts +157 -0
- package/src/core/skills/scanner.ts +115 -0
- package/src/core/skills/types.ts +45 -0
- package/src/core/skills/utils.ts +16 -0
- package/src/core/storage/index.ts +150 -0
- package/src/core/tasks/index.ts +242 -0
- package/src/core/tools/backends/capture.ts +38 -0
- package/src/core/tools/backends/collectCommand.test.ts +33 -0
- package/src/core/tools/backends/collectCommand.ts +28 -0
- package/src/core/tools/backends/helpers.ts +140 -0
- package/src/core/tools/backends/httpTransport.ts +534 -0
- package/src/core/tools/backends/index.ts +61 -0
- package/src/core/tools/backends/local.test.ts +307 -0
- package/src/core/tools/backends/local.ts +820 -0
- package/src/core/tools/backends/policy.test.ts +137 -0
- package/src/core/tools/backends/policy.ts +129 -0
- package/src/core/tools/backends/resolve.test.ts +309 -0
- package/src/core/tools/backends/resolve.ts +152 -0
- package/src/core/tools/backends/types.ts +279 -0
- package/src/core/tools/backends/whitebox.test.ts +275 -0
- package/src/core/tools/backends/whitebox.ts +14 -0
- package/src/core/tools/backends/whiteboxJobs.test.ts +375 -0
- package/src/core/tools/backends/whiteboxJobs.ts +157 -0
- package/src/core/tools/backends/windowsProgram.ts +36 -0
- package/src/core/tools/daytonaSandbox.test.ts +491 -0
- package/src/core/tools/daytonaSandbox.ts +232 -0
- package/src/core/toolset/index.ts +583 -0
- package/src/core/util/lazyLogger.ts +32 -0
- package/src/core/utils/concurrency.test.ts +204 -0
- package/src/core/utils/concurrency.ts +75 -0
- package/src/core/utils/prompt.ts +28 -0
- package/src/core/whitebox/adapters.ts +277 -0
- package/src/core/whitebox/artifacts.ts +128 -0
- package/src/core/whitebox/boundedProcess.ts +265 -0
- package/src/core/whitebox/candidates.ts +268 -0
- package/src/core/whitebox/catalog.ts +82 -0
- package/src/core/whitebox/index.ts +53 -0
- package/src/core/whitebox/jobKernel.test.ts +91 -0
- package/src/core/whitebox/jobKernel.ts +347 -0
- package/src/core/whitebox/jobSupervisor.ts +264 -0
- package/src/core/whitebox/jobs.ts +21 -0
- package/src/core/whitebox/paths.ts +94 -0
- package/src/core/whitebox/profileTransport.ts +225 -0
- package/src/core/whitebox/profiles.ts +294 -0
- package/src/core/whitebox/repoProfile.test.ts +217 -0
- package/src/core/whitebox/repoProfile.ts +256 -0
- package/src/core/whitebox/types.ts +189 -0
- package/src/core/whitebox/whitebox.test.ts +789 -0
- package/src/core/workflows/fastStrike.seams.test.ts +217 -0
- package/src/core/workflows/fastStrike.test.ts +29 -0
- package/src/core/workflows/fastStrike.ts +239 -0
- package/src/core/workflows/pentest.test.ts +575 -0
- package/src/core/workflows/pentest.ts +1022 -0
- package/src/core/workflows/seams.test.ts +386 -0
- package/src/core/workflows/seams.ts +276 -0
- package/src/core/workflows/threatModel.ts +108 -0
- package/src/core/workflows/usage-forwarding.test.ts +203 -0
- package/src/core/workflows/whiteboxAttackSurface.test.ts +695 -0
- package/src/core/workflows/whiteboxAttackSurface.ts +1740 -0
- package/src/index.ts +49 -0
- package/src/lib/attack-path/types.ts +13 -0
- package/src/lib/cvss/calculator.test.ts +2090 -0
- package/src/lib/cvss/calculator.ts +643 -0
- package/src/lib/cvss/index.ts +65 -0
- package/src/lib/cvss/macrovector-scores.ts +402 -0
- package/src/lib/cvss/types.ts +241 -0
- package/src/lib/cwe/cwe-catalog.ts +444 -0
- package/src/lib/cwe/types.test.ts +142 -0
- package/src/lib/cwe/types.ts +37 -0
- package/src/lib/cwe/validate.test.ts +110 -0
- package/src/lib/cwe/validate.ts +53 -0
- package/src/lib/evidence/types.ts +9 -0
- package/src/tests/agentWorkingDirectory.test.ts +175 -0
- package/src/tests/attackSurface.test.ts +35 -0
- package/src/tests/auth.test.ts +196 -0
- package/src/tests/authCookieExport.test.ts +143 -0
- package/src/tests/authPentestHandoff.test.ts +231 -0
- package/src/tests/browserCookies.test.ts +128 -0
- package/src/tests/credentialManager.test.ts +657 -0
- package/src/tests/data/console.openapi.json +1037 -0
- package/src/tests/data/console.sitemap.xml +348 -0
- package/src/tests/delegateAuthMerge.test.ts +48 -0
- package/src/tui/auto-copy.ts +36 -0
- package/src/tui/clipboard.ts +65 -0
- package/src/tui/command-registry.test.ts +124 -0
- package/src/tui/command-registry.ts +645 -0
- package/src/tui/command-router.ts +81 -0
- package/src/tui/components/agent-display.tsx +480 -0
- package/src/tui/components/ascii-art.tsx +225 -0
- package/src/tui/components/chat/approval-inline.tsx +51 -0
- package/src/tui/components/chat/config-view.tsx +279 -0
- package/src/tui/components/chat/home-view.tsx +288 -0
- package/src/tui/components/chat/index.tsx +161 -0
- package/src/tui/components/chat/input-area.tsx +529 -0
- package/src/tui/components/chat/lib/play-core/num.ts +102 -0
- package/src/tui/components/chat/lib/wave-simulation.ts +124 -0
- package/src/tui/components/chat/loading-indicator.test.ts +33 -0
- package/src/tui/components/chat/loading-indicator.tsx +131 -0
- package/src/tui/components/chat/message-list.tsx +265 -0
- package/src/tui/components/chat/petri-animation.tsx +175 -0
- package/src/tui/components/chat/plan-review-message.tsx +49 -0
- package/src/tui/components/chat/questions-form.tsx +756 -0
- package/src/tui/components/commands/__tests__/recorded-runs-lifecycle.tsx +907 -0
- package/src/tui/components/commands/advanced-settings.tsx +94 -0
- package/src/tui/components/commands/api-key-input.tsx +122 -0
- package/src/tui/components/commands/auth-flow-logic.test.ts +58 -0
- package/src/tui/components/commands/auth-flow-logic.ts +30 -0
- package/src/tui/components/commands/auth-flow.tsx +702 -0
- package/src/tui/components/commands/credits-flow.tsx +210 -0
- package/src/tui/components/commands/help-dialog.tsx +238 -0
- package/src/tui/components/commands/models-display.tsx +111 -0
- package/src/tui/components/commands/operator-wizard.tsx +328 -0
- package/src/tui/components/commands/provider-manager.tsx +241 -0
- package/src/tui/components/commands/provider-selection.tsx +129 -0
- package/src/tui/components/commands/recorded-runs.test.ts +40 -0
- package/src/tui/components/commands/recorded-runs.tsx +793 -0
- package/src/tui/components/commands/sessions-display.tsx +365 -0
- package/src/tui/components/commands/shortcuts-dialog.tsx +52 -0
- package/src/tui/components/commands/skills-dialog.tsx +308 -0
- package/src/tui/components/commands/theme-picker.tsx +177 -0
- package/src/tui/components/commands/web-wizard.tsx +965 -0
- package/src/tui/components/dialog-layout.tsx +73 -0
- package/src/tui/components/error-boundary.tsx +82 -0
- package/src/tui/components/footer.tsx +101 -0
- package/src/tui/components/input.tsx +43 -0
- package/src/tui/components/loaders.tsx +784 -0
- package/src/tui/components/model-picker/ModelPicker.tsx +907 -0
- package/src/tui/components/model-picker/ModelPickerDialog.tsx +75 -0
- package/src/tui/components/model-picker/index.ts +2 -0
- package/src/tui/components/model-picker/model-navigation.test.ts +102 -0
- package/src/tui/components/model-picker/model-navigation.ts +54 -0
- package/src/tui/components/model-picker/model-search.test.ts +62 -0
- package/src/tui/components/model-picker/model-search.ts +42 -0
- package/src/tui/components/model-picker/model-visibility.test.ts +65 -0
- package/src/tui/components/model-picker/model-visibility.ts +59 -0
- package/src/tui/components/operator-dashboard/conversation.test.ts +431 -0
- package/src/tui/components/operator-dashboard/conversation.ts +179 -0
- package/src/tui/components/operator-dashboard/display-state.test.ts +369 -0
- package/src/tui/components/operator-dashboard/display-state.ts +163 -0
- package/src/tui/components/operator-dashboard/herdr-state.test.ts +162 -0
- package/src/tui/components/operator-dashboard/herdr-state.ts +81 -0
- package/src/tui/components/operator-dashboard/index.tsx +2044 -0
- package/src/tui/components/operator-dashboard/logic.test.ts +753 -0
- package/src/tui/components/operator-dashboard/logic.ts +465 -0
- package/src/tui/components/operator-dashboard/queue.test.ts +147 -0
- package/src/tui/components/operator-dashboard/queue.ts +55 -0
- package/src/tui/components/operator-dashboard/queued-messages.tsx +50 -0
- package/src/tui/components/operator-dashboard/run-events.test.ts +915 -0
- package/src/tui/components/operator-dashboard/run-events.ts +507 -0
- package/src/tui/components/operator-dashboard/run-tracing.test.ts +206 -0
- package/src/tui/components/operator-dashboard/run-tracing.ts +105 -0
- package/src/tui/components/operator-dashboard/subagent-detail-view.tsx +51 -0
- package/src/tui/components/operator-dashboard/subagent-dialog.tsx +142 -0
- package/src/tui/components/operator-dashboard/subagent-hub.test.ts +162 -0
- package/src/tui/components/operator-dashboard/subagent-hub.tsx +266 -0
- package/src/tui/components/operator-dashboard/subagent-state.test.ts +431 -0
- package/src/tui/components/operator-dashboard/subagent-state.ts +404 -0
- package/src/tui/components/operator-dashboard/subagent-status-bar.tsx +80 -0
- package/src/tui/components/operator-dashboard/tool-argument-buffer.test.ts +317 -0
- package/src/tui/components/operator-dashboard/tool-arguments.perf.test.ts +121 -0
- package/src/tui/components/operator-dashboard/welcome-logo.tsx +79 -0
- package/src/tui/components/operator-dashboard/workflow-data.test.ts +291 -0
- package/src/tui/components/operator-dashboard/workflow-data.ts +130 -0
- package/src/tui/components/report-viewer-dialog.tsx +98 -0
- package/src/tui/components/responsible-use-disclosure.tsx +55 -0
- package/src/tui/components/screenshot-modal.tsx +204 -0
- package/src/tui/components/shared/__tests__/prompt-input-lifecycle.tsx +64 -0
- package/src/tui/components/shared/__tests__/tool-renderer-lifecycle.tsx +87 -0
- package/src/tui/components/shared/action-label.test.ts +142 -0
- package/src/tui/components/shared/action-label.ts +18 -0
- package/src/tui/components/shared/ascii-spinner.tsx +40 -0
- package/src/tui/components/shared/compacting-icon.tsx +18 -0
- package/src/tui/components/shared/dialog-controls.tsx +76 -0
- package/src/tui/components/shared/index.ts +38 -0
- package/src/tui/components/shared/markdown-viewer.tsx +188 -0
- package/src/tui/components/shared/markdown.ts +239 -0
- package/src/tui/components/shared/message-renderer.tsx +178 -0
- package/src/tui/components/shared/message-utils.ts +175 -0
- package/src/tui/components/shared/pentest-workflow-display.tsx +330 -0
- package/src/tui/components/shared/prompt-input-lifecycle.test.ts +22 -0
- package/src/tui/components/shared/prompt-input-logic.test.ts +782 -0
- package/src/tui/components/shared/prompt-input-logic.ts +423 -0
- package/src/tui/components/shared/prompt-input.tsx +782 -0
- package/src/tui/components/shared/result-registry.test.ts +90 -0
- package/src/tui/components/shared/result-registry.ts +900 -0
- package/src/tui/components/shared/syntax-highlight.ts +242 -0
- package/src/tui/components/shared/tool-registry.test.ts +59 -0
- package/src/tui/components/shared/tool-registry.ts +280 -0
- package/src/tui/components/shared/tool-renderer.test.ts +13 -0
- package/src/tui/components/shared/tool-renderer.tsx +237 -0
- package/src/tui/components/shared/type-guards.ts +64 -0
- package/src/tui/components/shared/use-paste-extmarks.ts +109 -0
- package/src/tui/components/switch.tsx +81 -0
- package/src/tui/components/terminal-focus-handler.tsx +34 -0
- package/src/tui/components/toast.tsx +82 -0
- package/src/tui/components/usage-labels.test.ts +191 -0
- package/src/tui/components/usage-labels.ts +78 -0
- package/src/tui/console-theme.ts +59 -0
- package/src/tui/context/agent.tsx +251 -0
- package/src/tui/context/command.tsx +291 -0
- package/src/tui/context/config.tsx +59 -0
- package/src/tui/context/dialog.tsx +206 -0
- package/src/tui/context/dimensions.tsx +31 -0
- package/src/tui/context/focus-ownership.test.ts +26 -0
- package/src/tui/context/focus-ownership.ts +12 -0
- package/src/tui/context/focus.tsx +86 -0
- package/src/tui/context/herdr.tsx +28 -0
- package/src/tui/context/input.tsx +45 -0
- package/src/tui/context/keybinding.tsx +92 -0
- package/src/tui/context/obfuscation.tsx +114 -0
- package/src/tui/context/route.tsx +127 -0
- package/src/tui/context/session-usage.test.ts +295 -0
- package/src/tui/context/session-usage.ts +204 -0
- package/src/tui/context/session.tsx +62 -0
- package/src/tui/context/toast.tsx +66 -0
- package/src/tui/generated-ascii-art.json +1 -0
- package/src/tui/generated-ascii-art.json.d.ts +2 -0
- package/src/tui/herdr-startup.test.ts +157 -0
- package/src/tui/hooks/use-sessions-list.ts +165 -0
- package/src/tui/index.tsx +838 -0
- package/src/tui/keybindings/index.ts +126 -0
- package/src/tui/keybindings/registry.ts +146 -0
- package/src/tui/keybindings-registry.ts +43 -0
- package/src/tui/obfuscation/patch.ts +139 -0
- package/src/tui/terminal-focus.ts +218 -0
- package/src/tui/theme/colors.ts +43 -0
- package/src/tui/theme/context.tsx +137 -0
- package/src/tui/theme/detect-mode.ts +56 -0
- package/src/tui/theme/index.ts +75 -0
- package/src/tui/theme/registry.ts +29 -0
- package/src/tui/theme/themes/apex.ts +190 -0
- package/src/tui/theme/themes/ayu.ts +189 -0
- package/src/tui/theme/themes/catppuccin.ts +189 -0
- package/src/tui/theme/themes/dracula.ts +190 -0
- package/src/tui/theme/themes/everforest.ts +189 -0
- package/src/tui/theme/themes/flexoki.ts +190 -0
- package/src/tui/theme/themes/github.ts +189 -0
- package/src/tui/theme/themes/gruvbox.ts +189 -0
- package/src/tui/theme/themes/index.ts +54 -0
- package/src/tui/theme/themes/kanagawa.ts +189 -0
- package/src/tui/theme/themes/material.ts +190 -0
- package/src/tui/theme/themes/monokai.ts +190 -0
- package/src/tui/theme/themes/nightfox.ts +189 -0
- package/src/tui/theme/themes/nord.ts +190 -0
- package/src/tui/theme/themes/onedark.ts +190 -0
- package/src/tui/theme/themes/rose-pine.ts +189 -0
- package/src/tui/theme/themes/solarized.ts +189 -0
- package/src/tui/theme/themes/tokyonight.ts +189 -0
- package/src/tui/theme/themes/vesper.ts +191 -0
- package/src/tui/theme/types.ts +143 -0
- package/src/tui/utils/command-flags.test.ts +269 -0
- package/src/tui/utils/command-flags.ts +377 -0
- package/src/tui/utils/kitty-graphics.ts +76 -0
- package/src/tui/utils/open-file.ts +37 -0
- package/src/tui/utils/open-report.ts +34 -0
- package/src/tui/utils/open-url.ts +39 -0
- package/src/tui/utils/paste.ts +8 -0
- package/src/tui/utils/scroll.ts +81 -0
- package/src/util/errors.ts +58 -0
- package/src/util/lock.ts +100 -0
- package/src/util/name.ts +148 -0
- package/src/util/url.test.ts +162 -0
- package/src/util/url.ts +107 -0
- package/build/agent-13rrhp8d.js +0 -20
- package/build/agent-zbj2331s.js +0 -30
- package/build/authentication-f4j3w5vs.js +0 -20
- package/build/blackboxAgent-v2vx9ws4.js +0 -20
- package/build/blackboxPentest-w5nwzpvk.js +0 -70
- package/build/cli-5wemv37a.js +0 -194
- package/build/cli-7s062hr6.js +0 -22
- package/build/cli-9qbxkhye.js +0 -55
- package/build/cli-avmhkjtv.js +0 -22961
- package/build/cli-g3czc3jz.js +0 -204
- package/build/cli-ww7hbazg.js +0 -88
- package/build/index-18vyy6mj.js +0 -19
- package/build/index-5wh7gq37.js +0 -12858
- package/build/index-e23zc8g4.js +0 -34
- package/build/index-hnwhswqj.js +0 -213
- package/build/index-wkmnr4nm.js +0 -39
- package/build/index-ywmfnd30.js +0 -12
- package/build/offesecAgent-c97pqzcn.js +0 -27
- package/build/pentest-4p5jt7gj.js +0 -30
- package/build/pentests-v98eg8n3.js +0 -92
- package/build/threatModel-81d4rcbk.js +0 -29
- /package/build/{cli-c8131c4q.js → cli-0wsh8j2t.js} +0 -0
- /package/build/{cli-9pbk8m32.js → cli-ag6jtndp.js} +0 -0
- /package/build/{cli-e08r86zk.js → cli-b3dvxjgk.js} +0 -0
- /package/build/{cli-fw5r7pfj.js → cli-q126f6ef.js} +0 -0
- /package/build/{cli-9fsre5pt.js → cli-qba2x69h.js} +0 -0
- /package/build/{cli-7q3ae3ft.js → cli-z82n3qk1.js} +0 -0
|
@@ -0,0 +1,543 @@
|
|
|
1
|
+
import type { LanguageModelMiddleware, ModelMessage, StopCondition, StreamTextOnFinishCallback, StreamTextOnStepFinishCallback, StreamTextResult, ToolChoice, ToolSet } from "ai";
|
|
2
|
+
import { z } from "zod";
|
|
3
|
+
import type { AIAuthConfig, AIModel, CacheMetrics, InferenceRecorder, OpenAIReasoningEffort, ThinkingEffort, UsageRecorder } from "../../ai";
|
|
4
|
+
import type { CredentialManager } from "../../credentials";
|
|
5
|
+
import type { AgentEventBus } from "../../eventBus";
|
|
6
|
+
import type { AttackSurfaceRegistry } from "../../findings/attackSurfaceRegistry";
|
|
7
|
+
import type { FindingsRegistry } from "../../findings/registry";
|
|
8
|
+
import type { ApprovalGate } from "../../operator";
|
|
9
|
+
import type { PromptInjectionLibrary } from "../../prompt-injections";
|
|
10
|
+
import type { RunContextRecorder } from "../../runtime/runContext";
|
|
11
|
+
import type { ToolExecutionRecorder } from "../../runtime/runToolStore";
|
|
12
|
+
import type { SessionConfig, SessionInfo } from "../../session";
|
|
13
|
+
import type { SkillsRegistry } from "../../skills/registry";
|
|
14
|
+
import type { ToolBackends } from "../../tools/backends/types";
|
|
15
|
+
import type { GrpcPentestContext } from "../specialized/attackSurface/grpcSchema";
|
|
16
|
+
import type { SubagentSpawner } from "./subagentSpawner";
|
|
17
|
+
import type { BrowserEngine, PlaywrightMcpSession, ToolName, UnifiedSandbox } from "./tools";
|
|
18
|
+
import type { EmailAdapterResolver } from "./tools/email/adapters";
|
|
19
|
+
import type { SmsInbox } from "./tools/smsInbox";
|
|
20
|
+
export declare const ApexFindingObject: z.ZodObject<{
|
|
21
|
+
title: z.ZodString;
|
|
22
|
+
severity: z.ZodPreprocess<z.ZodEnum<{
|
|
23
|
+
CRITICAL: "CRITICAL";
|
|
24
|
+
HIGH: "HIGH";
|
|
25
|
+
MEDIUM: "MEDIUM";
|
|
26
|
+
LOW: "LOW";
|
|
27
|
+
}>>;
|
|
28
|
+
description: z.ZodString;
|
|
29
|
+
impact: z.ZodString;
|
|
30
|
+
evidence: z.ZodString;
|
|
31
|
+
endpoint: z.ZodString;
|
|
32
|
+
pocPath: z.ZodString;
|
|
33
|
+
remediation: z.ZodString;
|
|
34
|
+
references: z.ZodOptional<z.ZodString>;
|
|
35
|
+
toolCallDescription: z.ZodOptional<z.ZodString>;
|
|
36
|
+
cwes: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodObject<{
|
|
37
|
+
id: z.ZodString;
|
|
38
|
+
reasoning: z.ZodString;
|
|
39
|
+
name: z.ZodString;
|
|
40
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
41
|
+
id: z.ZodString;
|
|
42
|
+
reasoning: z.ZodString;
|
|
43
|
+
}, z.core.$strip>]>>>;
|
|
44
|
+
rootCauseGroup: z.ZodOptional<z.ZodString>;
|
|
45
|
+
relatedFindings: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
46
|
+
rootCauseLead: z.ZodOptional<z.ZodBoolean>;
|
|
47
|
+
evidenceFiles: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
48
|
+
path: z.ZodString;
|
|
49
|
+
type: z.ZodEnum<{
|
|
50
|
+
"http-response": "http-response";
|
|
51
|
+
screenshot: "screenshot";
|
|
52
|
+
"poc-output": "poc-output";
|
|
53
|
+
"raw-evidence": "raw-evidence";
|
|
54
|
+
}>;
|
|
55
|
+
description: z.ZodString;
|
|
56
|
+
}, z.core.$strip>>>;
|
|
57
|
+
attackPath: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
58
|
+
applicationId: z.ZodOptional<z.ZodString>;
|
|
59
|
+
applicationName: z.ZodOptional<z.ZodString>;
|
|
60
|
+
host: z.ZodOptional<z.ZodString>;
|
|
61
|
+
relationshipType: z.ZodOptional<z.ZodString>;
|
|
62
|
+
notes: z.ZodOptional<z.ZodString>;
|
|
63
|
+
}, z.core.$strip>>>;
|
|
64
|
+
credentialIds: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
65
|
+
}, z.core.$strip>;
|
|
66
|
+
export type Finding = Omit<z.infer<typeof ApexFindingObject>, "credentialIds"> & {
|
|
67
|
+
credentialIds?: string[];
|
|
68
|
+
};
|
|
69
|
+
/**
|
|
70
|
+
* Input for the general-purpose OffensiveSecurityAgent harness.
|
|
71
|
+
*
|
|
72
|
+
* The base agent owns tool creation — specific agents just declare
|
|
73
|
+
* which tools they need via `activeTools`.
|
|
74
|
+
*
|
|
75
|
+
* @typeParam TResult - The type returned by `consume()`. Defaults to `void`.
|
|
76
|
+
*/
|
|
77
|
+
/** Agent operating mode that controls which tools are available. */
|
|
78
|
+
export type AgentMode = "default" | "plan" | "fast-strike";
|
|
79
|
+
/** Structured authorization envelope for a multi-application System pentest. */
|
|
80
|
+
export type SystemPentestScope = {
|
|
81
|
+
systemId: string;
|
|
82
|
+
memberHosts: string[];
|
|
83
|
+
};
|
|
84
|
+
/** Identifies which streamed event a {@link StreamIdFactory} is minting an id for. */
|
|
85
|
+
export type StreamIdFactoryContext = {
|
|
86
|
+
kind: "message";
|
|
87
|
+
stepIndex: number;
|
|
88
|
+
} | {
|
|
89
|
+
kind: "text-part";
|
|
90
|
+
stepIndex: number;
|
|
91
|
+
textPartIndex: number;
|
|
92
|
+
} | {
|
|
93
|
+
kind: "tool-part";
|
|
94
|
+
toolCallId: string;
|
|
95
|
+
};
|
|
96
|
+
/**
|
|
97
|
+
* Mints message/part ids for streamed events. Defaults to random ULIDs
|
|
98
|
+
* ({@link newMessageId}/{@link newPartId}) when unset; a durable runtime injects
|
|
99
|
+
* a factory that derives deterministic, replay-stable ids from the context.
|
|
100
|
+
*/
|
|
101
|
+
export type StreamIdFactory = (context: StreamIdFactoryContext) => string;
|
|
102
|
+
/**
|
|
103
|
+
* The hooks a host injects to control agent execution: tool
|
|
104
|
+
* backends, the sub-agent fan-out seam, model-call middleware/telemetry, the
|
|
105
|
+
* inbound-message transports, and the abort/extra-tools/sandbox escape
|
|
106
|
+
* hatches. Every specialized agent input extends this ONE type instead of
|
|
107
|
+
* re-declaring the fields, so a specialized agent can no longer drop a hook
|
|
108
|
+
* by forgetting to list it in a hand-written constructor.
|
|
109
|
+
*/
|
|
110
|
+
export interface AgentHooks {
|
|
111
|
+
/** Opt-in shared backend directory for incremental recon endpoint artifacts. */
|
|
112
|
+
attackSurfaceArtifactsPath?: string;
|
|
113
|
+
/** Execution backends for fs / command / http / browser / inbox. Unset means local execution. */
|
|
114
|
+
backends?: ToolBackends;
|
|
115
|
+
/** Seam through which orchestration tools spawn sub-agents. Unset → the in-process spawner. */
|
|
116
|
+
subagentSpawner?: SubagentSpawner;
|
|
117
|
+
/** Provider middleware applied only to this agent's model calls. Unset → raw model. */
|
|
118
|
+
languageModelMiddleware?: LanguageModelMiddleware | LanguageModelMiddleware[];
|
|
119
|
+
/** Records physical model attempts for this agent; never inherited by spawned agents. */
|
|
120
|
+
inferenceRecorder?: InferenceRecorder;
|
|
121
|
+
/** Recorded-run durable context authority. Unset → no canonical persistence. */
|
|
122
|
+
contextRecorder?: RunContextRecorder;
|
|
123
|
+
/** Recorded-run tool journal. Unset → tool executes are never wrapped. */
|
|
124
|
+
toolExecutionRecorder?: ToolExecutionRecorder;
|
|
125
|
+
/** Per-run usage recorder. Unset → the process-global usage callback fires as today. */
|
|
126
|
+
usageRecorder?: UsageRecorder;
|
|
127
|
+
/** Factory for streamed message/part ids. Unset → random ULIDs, unchanged. */
|
|
128
|
+
streamIdFactory?: StreamIdFactory;
|
|
129
|
+
/** Transport for inbound SMS reads. Unset → the Console agent API over HTTP. */
|
|
130
|
+
smsInbox?: SmsInbox;
|
|
131
|
+
/** Supplies an adapter for a `pensar-managed` inbox. Unset → the config-driven factory. */
|
|
132
|
+
emailAdapterFor?: EmailAdapterResolver;
|
|
133
|
+
/** AbortSignal to cancel the agent mid-run. */
|
|
134
|
+
abortSignal?: AbortSignal;
|
|
135
|
+
/** Additional tools merged on top of the built-in toolset. */
|
|
136
|
+
extraTools?: ToolSet;
|
|
137
|
+
/** When set, tools route execution through this sandbox instead of running locally. */
|
|
138
|
+
sandbox?: UnifiedSandbox;
|
|
139
|
+
}
|
|
140
|
+
export type OffensiveSecurityAgentInput<TResult = void> = AgentHooks & {
|
|
141
|
+
attackSurfaceArtifactsPath?: string;
|
|
142
|
+
/** System prompt defining agent persona and behavior. Defaults to BASE_SYSTEM_PROMPT when omitted. */
|
|
143
|
+
system?: string;
|
|
144
|
+
/** Initial user prompt that kicks off the agent */
|
|
145
|
+
prompt: string;
|
|
146
|
+
/** AI model identifier */
|
|
147
|
+
model: AIModel;
|
|
148
|
+
/**
|
|
149
|
+
* Operating mode that controls which tools are available.
|
|
150
|
+
*
|
|
151
|
+
* - `"default"` — all tools in `activeTools` are available (default)
|
|
152
|
+
* - `"plan"` — only read-only / non-mutating tools are available
|
|
153
|
+
* - `"fast-strike"` — live registry minus {@link FAST_STRIKE_EXCLUDED_TOOL_NAMES}; ignores `activeTools`
|
|
154
|
+
*
|
|
155
|
+
* When set to `"plan"`, the agent's `activeTools` are intersected with
|
|
156
|
+
* {@link PLAN_MODE_TOOL_NAMES} so that mutation tools (create_file,
|
|
157
|
+
* update_file, document_vulnerability, document_app,
|
|
158
|
+
* document_endpoint) are excluded.
|
|
159
|
+
*
|
|
160
|
+
* @default "default"
|
|
161
|
+
*/
|
|
162
|
+
mode?: AgentMode;
|
|
163
|
+
/** Session providing paths for findings, POCs, logs, etc. */
|
|
164
|
+
session: SessionInfo;
|
|
165
|
+
/**
|
|
166
|
+
* Explicit working directory for this agent instance. Overrides
|
|
167
|
+
* `session.config.agentCwd`; defaults to `session.rootPath`. Drives command
|
|
168
|
+
* cwd and relative-path resolution for tools that have no
|
|
169
|
+
* {@link OffensiveSecurityAgentInput.fileWorkspaceRoot}.
|
|
170
|
+
*/
|
|
171
|
+
agentCwd?: string;
|
|
172
|
+
/**
|
|
173
|
+
* Root that scopes this agent's native file tools when resolving relative
|
|
174
|
+
* paths and enforcing confinement. File-tool scoping only — command cwd and
|
|
175
|
+
* shell/OS permissions are not restricted by this value.
|
|
176
|
+
*/
|
|
177
|
+
fileWorkspaceRoot?: string;
|
|
178
|
+
/** The target URL / host — passed to browser tools for context */
|
|
179
|
+
target?: string;
|
|
180
|
+
/**
|
|
181
|
+
* gRPC context when the target is a gRPC method rather than an HTTP
|
|
182
|
+
* endpoint. Forwarded into the {@link ToolContext} so `spawn_pentest_agent`
|
|
183
|
+
* can hand it down to spawned workers.
|
|
184
|
+
*/
|
|
185
|
+
grpc?: GrpcPentestContext;
|
|
186
|
+
/** Structured multi-application scope forwarded to pentest workers. */
|
|
187
|
+
systemScope?: SystemPentestScope;
|
|
188
|
+
/**
|
|
189
|
+
* Which tools the agent is allowed to use.
|
|
190
|
+
*
|
|
191
|
+
* Accepts both built-in tool names and custom tool names (from `extraTools`).
|
|
192
|
+
* This array controls which tools the model can see and invoke
|
|
193
|
+
* (maps to the AI SDK `activeTools`).
|
|
194
|
+
*/
|
|
195
|
+
activeTools: (ToolName | (string & {}))[];
|
|
196
|
+
/**
|
|
197
|
+
* Additional tools to merge into the toolset.
|
|
198
|
+
*
|
|
199
|
+
* Use this to inject agent-specific tools (e.g. a structured response
|
|
200
|
+
* tool) without modifying the shared tool registry. These are merged
|
|
201
|
+
* on top of the built-in tools created by `createAllTools`.
|
|
202
|
+
*/
|
|
203
|
+
extraTools?: ToolSet;
|
|
204
|
+
/** Existing conversation history (for resumption / multi-turn) */
|
|
205
|
+
messages?: Array<ModelMessage>;
|
|
206
|
+
/** Condition(s) under which the agent should stop */
|
|
207
|
+
stopWhen?: StopCondition<NoInfer<ToolSet>> | StopCondition<NoInfer<ToolSet>>[];
|
|
208
|
+
/** Strategy for selecting which tool to call */
|
|
209
|
+
toolChoice?: ToolChoice<ToolSet>;
|
|
210
|
+
/** Callback fired after each agent step completes */
|
|
211
|
+
onStepFinish?: StreamTextOnStepFinishCallback<ToolSet>;
|
|
212
|
+
/** Provider middleware applied only to this agent's model calls. Unset → raw model. */
|
|
213
|
+
languageModelMiddleware?: LanguageModelMiddleware | LanguageModelMiddleware[];
|
|
214
|
+
/** Per-run usage recorder. Unset → the process-global usage callback fires as today. */
|
|
215
|
+
usageRecorder?: UsageRecorder;
|
|
216
|
+
/** Factory for streamed message/part ids. Unset → random ULIDs, unchanged. */
|
|
217
|
+
streamIdFactory?: StreamIdFactory;
|
|
218
|
+
/** Callback fired when the entire stream finishes */
|
|
219
|
+
onFinish?: StreamTextOnFinishCallback<ToolSet>;
|
|
220
|
+
/** Called when Anthropic cache metrics are present in a step's providerMetadata */
|
|
221
|
+
onCacheMetrics?: (metrics: CacheMetrics) => void;
|
|
222
|
+
/**
|
|
223
|
+
* Forward usage callbacks through tools that spawn agents. Enable only when
|
|
224
|
+
* the caller does not already account for subagents from trace events.
|
|
225
|
+
*/
|
|
226
|
+
forwardUsageCallbacksToSpawnedAgents?: boolean;
|
|
227
|
+
/** AbortSignal to cancel the agent mid-run */
|
|
228
|
+
abortSignal?: AbortSignal;
|
|
229
|
+
/** Per-provider API key overrides */
|
|
230
|
+
authConfig?: AIAuthConfig;
|
|
231
|
+
/**
|
|
232
|
+
* When set, tools like execute_command / http_request / document_vulnerability
|
|
233
|
+
* route execution through this sandbox instead of running locally.
|
|
234
|
+
*/
|
|
235
|
+
sandbox?: UnifiedSandbox;
|
|
236
|
+
/**
|
|
237
|
+
* Execution backends for fs / command / http / browser / inbox, forwarded into the
|
|
238
|
+
* {@link ToolContext}. Unset means local execution; a durable runtime injects
|
|
239
|
+
* sandbox-backed implementations.
|
|
240
|
+
*/
|
|
241
|
+
backends?: ToolBackends;
|
|
242
|
+
/**
|
|
243
|
+
* Seam through which orchestration tools spawn sub-agents. Forwarded into the
|
|
244
|
+
* {@link ToolContext}; unset → tools use the in-process spawner.
|
|
245
|
+
*/
|
|
246
|
+
subagentSpawner?: SubagentSpawner;
|
|
247
|
+
/**
|
|
248
|
+
* Transport for inbound SMS reads. Forwarded into the {@link ToolContext};
|
|
249
|
+
* unset → the Console agent API over HTTP, which needs sandbox dispatch.
|
|
250
|
+
*/
|
|
251
|
+
smsInbox?: SmsInbox;
|
|
252
|
+
/**
|
|
253
|
+
* Supplies an adapter for a `pensar-managed` inbox, forwarded into the
|
|
254
|
+
* ToolContext. Unset → the config-driven factory, which rejects that provider.
|
|
255
|
+
*/
|
|
256
|
+
emailAdapterFor?: EmailAdapterResolver;
|
|
257
|
+
/**
|
|
258
|
+
* Shared findings registry for cross-agent dedup.
|
|
259
|
+
* When present, `document_vulnerability` checks for duplicates before writing.
|
|
260
|
+
*/
|
|
261
|
+
findingsRegistry?: FindingsRegistry;
|
|
262
|
+
/**
|
|
263
|
+
* Shared attack surface registry for cross-agent asset dedup.
|
|
264
|
+
* When present, `document_endpoint` checks for duplicates before writing.
|
|
265
|
+
*/
|
|
266
|
+
attackSurfaceRegistry?: AttackSurfaceRegistry;
|
|
267
|
+
/**
|
|
268
|
+
* In-memory credential store. When present, tools resolve credential
|
|
269
|
+
* IDs to secrets at execution time and prompt builders emit only
|
|
270
|
+
* safe {@link CredentialReference} metadata — the agent never sees
|
|
271
|
+
* raw passwords, tokens, or API keys.
|
|
272
|
+
*/
|
|
273
|
+
credentialManager?: CredentialManager;
|
|
274
|
+
/**
|
|
275
|
+
* Called after the stream is fully consumed to produce a typed result.
|
|
276
|
+
*
|
|
277
|
+
* Receives the completed `StreamTextResult` — at this point all lazy
|
|
278
|
+
* properties (`.steps`, `.text`, `.response`, etc.) are resolved.
|
|
279
|
+
*
|
|
280
|
+
* If omitted, `consume()` returns `void`.
|
|
281
|
+
*/
|
|
282
|
+
resolveResult?: (streamResult: StreamTextResult<ToolSet, never>) => TResult | Promise<TResult>;
|
|
283
|
+
/** The subagent ID if this agent is a subagent */
|
|
284
|
+
subagentId?: string;
|
|
285
|
+
/** Display label for the OTel span name / `gen_ai.agent.name`. */
|
|
286
|
+
subagentName?: string;
|
|
287
|
+
/**
|
|
288
|
+
* Override the auto-computed task directory. When set, takes precedence
|
|
289
|
+
* over the directory derived from `subagentId`. Use this when a plan
|
|
290
|
+
* agent needs to write tasks to the execution agent's task directory.
|
|
291
|
+
*/
|
|
292
|
+
tasksDir?: string;
|
|
293
|
+
/**
|
|
294
|
+
* Override for plan file scoping. When set, write_plan uses this ID
|
|
295
|
+
* instead of `subagentId` to derive the plan file path, allowing
|
|
296
|
+
* plan agents to write plans scoped to their corresponding execution agent.
|
|
297
|
+
*/
|
|
298
|
+
planSubagentId?: string;
|
|
299
|
+
/**
|
|
300
|
+
* Event bus for streaming agent output.
|
|
301
|
+
*
|
|
302
|
+
* When provided, the agent emits all streaming events (text deltas,
|
|
303
|
+
* tool calls, tool results, errors) on this bus. Multiple consumers
|
|
304
|
+
* can subscribe independently — TUI, DB persistence, metrics, etc.
|
|
305
|
+
*
|
|
306
|
+
* The bus is also passed through to tools so orchestration tools
|
|
307
|
+
* (run_attack_surface, spawn_pentest_swarm) can emit subagent events
|
|
308
|
+
* on the same bus.
|
|
309
|
+
*
|
|
310
|
+
* When omitted, a fresh bus is created internally — callers can access
|
|
311
|
+
* it via `agent.eventBus` after construction.
|
|
312
|
+
*/
|
|
313
|
+
eventBus?: AgentEventBus;
|
|
314
|
+
/**
|
|
315
|
+
* Zod schema for structured output via the `response` tool.
|
|
316
|
+
*
|
|
317
|
+
* When provided, the base class automatically:
|
|
318
|
+
* 1. Creates and injects a `response` tool with this schema
|
|
319
|
+
* 2. Merges `hasToolCall("response")` into the stop conditions
|
|
320
|
+
* 3. Defaults `resolveResult` to return the captured structured data
|
|
321
|
+
*
|
|
322
|
+
* Specialized agents just set this and include `"response"` in
|
|
323
|
+
* `activeTools` to get typed structured output from `consume()`.
|
|
324
|
+
*/
|
|
325
|
+
responseSchema?: z.ZodSchema;
|
|
326
|
+
/**
|
|
327
|
+
* Skills registry for on-demand skill loading.
|
|
328
|
+
* When provided, read_skill is available.
|
|
329
|
+
*/
|
|
330
|
+
skillsRegistry?: SkillsRegistry;
|
|
331
|
+
/**
|
|
332
|
+
* Runtime-only prompt-injection library. Raw payloads are resolved inside
|
|
333
|
+
* trusted tool execution paths, not in prompts or model-visible messages.
|
|
334
|
+
*/
|
|
335
|
+
promptInjectionLibrary?: PromptInjectionLibrary;
|
|
336
|
+
/**
|
|
337
|
+
* Local filesystem path for a prompt-injection payload library. Falls back
|
|
338
|
+
* to PENSAR_PROMPT_INJECTION_LIBRARY / APEX_PROMPT_INJECTION_LIBRARY.
|
|
339
|
+
*/
|
|
340
|
+
promptInjectionLibrarySource?: string;
|
|
341
|
+
/**
|
|
342
|
+
* When provided, each tool call is gated through the approval gate.
|
|
343
|
+
* The gate will pause execution until the operator approves or denies
|
|
344
|
+
* the call (when `requireApproval` is enabled on the gate).
|
|
345
|
+
*/
|
|
346
|
+
approvalGate?: ApprovalGate;
|
|
347
|
+
/**
|
|
348
|
+
* Directory where `messages.json` is persisted after each step.
|
|
349
|
+
* Defaults to `session.rootPath`.
|
|
350
|
+
*/
|
|
351
|
+
messagesDir?: string;
|
|
352
|
+
/**
|
|
353
|
+
* Mutable handle the agent populates so the caller can cancel the
|
|
354
|
+
* currently running shell command without killing the agent.
|
|
355
|
+
*/
|
|
356
|
+
commandCancelHandle?: CommandCancelHandle;
|
|
357
|
+
/**
|
|
358
|
+
* Environment variables to inject into the agent's per-command executor.
|
|
359
|
+
* Each key-value pair is set in every invocation's process environment,
|
|
360
|
+
* so they're available to every `execute_command` call. Scoped to this
|
|
361
|
+
* agent instance — other agents on the same machine never see them.
|
|
362
|
+
*/
|
|
363
|
+
environmentVariables?: Record<string, string>;
|
|
364
|
+
/** Secret values to scrub from execute_command output. Forwarded into the {@link ToolContext}. */
|
|
365
|
+
secretValues?: string[];
|
|
366
|
+
/** Enable extended thinking (reasoning) for supported models. */
|
|
367
|
+
enableThinking?: boolean;
|
|
368
|
+
/** Adaptive-thinking effort hint (Anthropic Opus/Sonnet 4.6+); ignored elsewhere. */
|
|
369
|
+
thinkingEffort?: ThinkingEffort | null;
|
|
370
|
+
/** OpenAI reasoning effort for GPT/o-series reasoning models. */
|
|
371
|
+
openAIReasoningEffort?: OpenAIReasoningEffort | null;
|
|
372
|
+
/**
|
|
373
|
+
* Whitebox attack surface flag forwarded into the {@link ToolContext} for
|
|
374
|
+
* orchestrator-driven pentests. Defaults to `true` when undefined.
|
|
375
|
+
*/
|
|
376
|
+
surfaceIntegrationEnabled?: boolean;
|
|
377
|
+
/**
|
|
378
|
+
* Project-level threat model content (e.g. from `.pensar/threat_model.md`).
|
|
379
|
+
* Forwarded into the {@link ToolContext} so tools that spawn dedicated
|
|
380
|
+
* per-endpoint threat-model sub-agents can include this as additional
|
|
381
|
+
* grounding context.
|
|
382
|
+
*/
|
|
383
|
+
projectThreatModel?: string;
|
|
384
|
+
/**
|
|
385
|
+
* Pre-constructed Playwright MCP browser session to use for this agent
|
|
386
|
+
* instead of constructing a fresh one. Used by `spawn_pentest_agent` to
|
|
387
|
+
* hand a worker a freshly-cloned-and-seeded session — fresh Chromium,
|
|
388
|
+
* own MCP child-process, but pre-loaded with a snapshot of the
|
|
389
|
+
* orchestrator's cookies + per-origin localStorage so the worker is
|
|
390
|
+
* already authenticated for the same origins the orchestrator was.
|
|
391
|
+
*
|
|
392
|
+
* The agent does NOT share this session with any other agent at runtime
|
|
393
|
+
* — each agent owns its own isolated Chromium and a sub-agent's
|
|
394
|
+
* browser-side mutations (navigations, `localStorage.setItem`,
|
|
395
|
+
* `browser_evaluate` calls, alerts, etc.) never leak back into the
|
|
396
|
+
* caller's browser. Lifecycle of an externally-supplied session belongs
|
|
397
|
+
* to whoever supplied it (e.g. `spawn_pentest_agent` disconnects the
|
|
398
|
+
* worker session on completion).
|
|
399
|
+
*/
|
|
400
|
+
browserSession?: PlaywrightMcpSession;
|
|
401
|
+
/**
|
|
402
|
+
* X display (e.g. `":11"`) for this agent's browser. Overrides
|
|
403
|
+
* `process.env.DISPLAY` for the session this agent constructs, so several
|
|
404
|
+
* headed agents in one process (concurrent per-endpoint pentests) each run
|
|
405
|
+
* on their own virtual desktop. Ignored when `browserSession` is supplied
|
|
406
|
+
* (that session already owns its display). Omit to fall back to the
|
|
407
|
+
* process-wide `DISPLAY`.
|
|
408
|
+
*/
|
|
409
|
+
display?: string;
|
|
410
|
+
/**
|
|
411
|
+
* Browser engine for the session this agent constructs. Chrome is required
|
|
412
|
+
* for Sign in with Google; Camoufox is the default. Ignored when
|
|
413
|
+
* `browserSession` is supplied.
|
|
414
|
+
*/
|
|
415
|
+
browserEngine?: BrowserEngine;
|
|
416
|
+
};
|
|
417
|
+
/**
|
|
418
|
+
* Mutable handle for cancelling the running shell command.
|
|
419
|
+
* The agent populates `cancel` at construction time; the caller invokes it.
|
|
420
|
+
*/
|
|
421
|
+
export type CommandCancelHandle = {
|
|
422
|
+
cancel: () => boolean;
|
|
423
|
+
};
|
|
424
|
+
/**
|
|
425
|
+
* Shared input fields for all specialized agents.
|
|
426
|
+
*
|
|
427
|
+
* Specialized agent input interfaces should extend this to inherit
|
|
428
|
+
* the common harness fields, then add only their agent-specific ones.
|
|
429
|
+
*
|
|
430
|
+
* Extends {@link AgentHooks} rather than re-declaring `backends` /
|
|
431
|
+
* `subagentSpawner` / `languageModelMiddleware` / `usageRecorder` /
|
|
432
|
+
* `streamIdFactory` / `smsInbox` / `emailAdapterFor` / `abortSignal` /
|
|
433
|
+
* `extraTools` / `sandbox` — that was the drop bug: a
|
|
434
|
+
* hand-rolled copy of this list silently omitted a field, and every hook
|
|
435
|
+
* lived past the constructor that forgot to forward it.
|
|
436
|
+
*/
|
|
437
|
+
export interface SpecializedAgentInput extends AgentHooks {
|
|
438
|
+
/** AI model to drive the agent */
|
|
439
|
+
model: AIModel;
|
|
440
|
+
/** Session providing paths for findings, POCs, logs, etc. */
|
|
441
|
+
session: SessionInfo;
|
|
442
|
+
/** Optional per-provider API key overrides */
|
|
443
|
+
authConfig?: AIAuthConfig;
|
|
444
|
+
/** Existing conversation history for resumption */
|
|
445
|
+
messages?: Array<ModelMessage>;
|
|
446
|
+
/** Callback fired after each agent step */
|
|
447
|
+
onStepFinish?: StreamTextOnStepFinishCallback<ToolSet>;
|
|
448
|
+
/** Called when Anthropic cache metrics are present in a step's providerMetadata */
|
|
449
|
+
onCacheMetrics?: (metrics: CacheMetrics) => void;
|
|
450
|
+
/** Event bus for streaming agent output */
|
|
451
|
+
eventBus?: AgentEventBus;
|
|
452
|
+
/**
|
|
453
|
+
* When set, stream chunks emitted during {@link OffensiveSecurityAgent.consume}
|
|
454
|
+
* are tagged with this id on the event bus (for multi-agent UIs).
|
|
455
|
+
*/
|
|
456
|
+
subagentId?: string;
|
|
457
|
+
/** Display label forwarded to {@link OffensiveSecurityAgentInput} for span names. */
|
|
458
|
+
subagentName?: string;
|
|
459
|
+
/** Shared findings registry for cross-agent dedup */
|
|
460
|
+
findingsRegistry?: FindingsRegistry;
|
|
461
|
+
/** Shared attack surface registry for cross-agent asset dedup */
|
|
462
|
+
attackSurfaceRegistry?: AttackSurfaceRegistry;
|
|
463
|
+
/** In-memory credential store for secret-free agent prompts */
|
|
464
|
+
credentialManager?: CredentialManager;
|
|
465
|
+
/** Override the default stop condition */
|
|
466
|
+
stopWhen?: StopCondition<ToolSet>;
|
|
467
|
+
/**
|
|
468
|
+
* Environment variables to inject into the agent's per-command executor.
|
|
469
|
+
* Forwarded to the underlying {@link OffensiveSecurityAgentInput}.
|
|
470
|
+
*/
|
|
471
|
+
environmentVariables?: Record<string, string>;
|
|
472
|
+
/** Secret values to scrub from execute_command output. Forwarded into the {@link ToolContext}. */
|
|
473
|
+
secretValues?: string[];
|
|
474
|
+
/** Enable extended thinking (reasoning) for supported models. */
|
|
475
|
+
enableThinking?: boolean;
|
|
476
|
+
/** Adaptive-thinking effort hint (Anthropic Opus/Sonnet 4.6+); ignored elsewhere. */
|
|
477
|
+
thinkingEffort?: ThinkingEffort | null;
|
|
478
|
+
/** OpenAI reasoning effort for GPT/o-series reasoning models. */
|
|
479
|
+
openAIReasoningEffort?: OpenAIReasoningEffort | null;
|
|
480
|
+
/**
|
|
481
|
+
* Whitebox attack surface flag forwarded into the {@link ToolContext} for
|
|
482
|
+
* orchestrator-driven pentests. Defaults to `true` when undefined.
|
|
483
|
+
*/
|
|
484
|
+
surfaceIntegrationEnabled?: boolean;
|
|
485
|
+
/**
|
|
486
|
+
* Project-level threat model content. Forwarded into {@link ToolContext}
|
|
487
|
+
* so per-endpoint threat-model sub-agents can incorporate it as grounding.
|
|
488
|
+
*/
|
|
489
|
+
projectThreatModel?: string;
|
|
490
|
+
/**
|
|
491
|
+
* Pre-constructed Playwright MCP browser session for this sub-agent —
|
|
492
|
+
* typically a freshly-cloned-and-seeded session built by
|
|
493
|
+
* `spawn_pentest_agent` so the worker inherits the orchestrator's
|
|
494
|
+
* cookies + localStorage but operates against its OWN isolated Chromium
|
|
495
|
+
* (so its browser mutations don't leak back to the orchestrator or to
|
|
496
|
+
* sibling workers). Forwarded to the underlying
|
|
497
|
+
* {@link OffensiveSecurityAgentInput}.
|
|
498
|
+
*/
|
|
499
|
+
browserSession?: PlaywrightMcpSession;
|
|
500
|
+
/**
|
|
501
|
+
* X display (e.g. `":11"`) for this agent's browser, forwarded to the
|
|
502
|
+
* underlying {@link OffensiveSecurityAgentInput} so concurrent per-endpoint
|
|
503
|
+
* pentests can each run headed on their own virtual desktop.
|
|
504
|
+
*/
|
|
505
|
+
display?: string;
|
|
506
|
+
/**
|
|
507
|
+
* Browser engine forwarded to {@link OffensiveSecurityAgentInput}. Chrome
|
|
508
|
+
* when any session credential is Sign in with Google; Camoufox otherwise.
|
|
509
|
+
*/
|
|
510
|
+
browserEngine?: BrowserEngine;
|
|
511
|
+
/** Target URL/host forwarded to {@link OffensiveSecurityAgentInput}. */
|
|
512
|
+
target?: string;
|
|
513
|
+
/** gRPC context forwarded to {@link OffensiveSecurityAgentInput}. */
|
|
514
|
+
grpc?: GrpcPentestContext;
|
|
515
|
+
/** Explicit working directory forwarded to {@link OffensiveSecurityAgentInput}. */
|
|
516
|
+
agentCwd?: string;
|
|
517
|
+
/** File-tool workspace root forwarded to {@link OffensiveSecurityAgentInput}. */
|
|
518
|
+
fileWorkspaceRoot?: string;
|
|
519
|
+
/** Structured multi-application scope forwarded to {@link OffensiveSecurityAgentInput}. */
|
|
520
|
+
systemScope?: SystemPentestScope;
|
|
521
|
+
/** Harness operating mode forwarded to {@link OffensiveSecurityAgentInput}. */
|
|
522
|
+
mode?: AgentMode;
|
|
523
|
+
}
|
|
524
|
+
/**
|
|
525
|
+
* Input for the `OffensiveSecurityAgent.create()` async factory.
|
|
526
|
+
*
|
|
527
|
+
* Identical to {@link OffensiveSecurityAgentInput} except `session` is
|
|
528
|
+
* optional. When omitted, the factory creates a new session automatically
|
|
529
|
+
* using the remaining fields.
|
|
530
|
+
*
|
|
531
|
+
* Pass an existing `session` to reuse one (e.g. from the console API or
|
|
532
|
+
* when spawning subagents).
|
|
533
|
+
*/
|
|
534
|
+
export type CreateAgentInput<TResult = void> = Omit<OffensiveSecurityAgentInput<TResult>, "session" | "system"> & {
|
|
535
|
+
/** Existing session to reuse. When omitted a new one is created. */
|
|
536
|
+
session?: SessionInfo;
|
|
537
|
+
/** Session config used when auto-creating a session (ignored when `session` is provided). */
|
|
538
|
+
sessionConfig?: SessionConfig;
|
|
539
|
+
/** System prompt override. When omitted, BASE_SYSTEM_PROMPT is used. The session workspace section is always appended. */
|
|
540
|
+
system?: string;
|
|
541
|
+
/** Called when the async AI name generation resolves with a name. */
|
|
542
|
+
onNameGenerated?: (name: string) => void;
|
|
543
|
+
};
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import type { SessionInfo } from "../../../session";
|
|
2
|
+
import { AgentRuntime } from "../../agentRuntime";
|
|
3
|
+
import type { SpecializedAgentInput } from "../../offSecAgent";
|
|
4
|
+
import type { AttackSurfaceAnalysisResults, PentestTarget } from "./types";
|
|
5
|
+
/** At least one of `target` or `cwd` must be provided. */
|
|
6
|
+
export type AttackSurfaceAgentInput = SpecializedAgentInput & ({
|
|
7
|
+
/** The target to analyze (domain, IP, URL, network range, or org name) */
|
|
8
|
+
target: string;
|
|
9
|
+
cwd?: string;
|
|
10
|
+
} | {
|
|
11
|
+
target?: string;
|
|
12
|
+
/** Working directory for source-code based analysis */
|
|
13
|
+
cwd: string;
|
|
14
|
+
}) & {
|
|
15
|
+
/**
|
|
16
|
+
* Whitebox-only: when false, the workflow skips the `@pensar/surface`
|
|
17
|
+
* deterministic-enumeration path and uses the legacy pages+apiEndpoints
|
|
18
|
+
* discovery agents. Defaults to `true`. Has no effect on blackbox runs.
|
|
19
|
+
*/
|
|
20
|
+
surfaceIntegrationEnabled?: boolean;
|
|
21
|
+
};
|
|
22
|
+
/** The typed result returned by `AttackSurfaceAgent.consume()`. */
|
|
23
|
+
export interface AttackSurfaceResult {
|
|
24
|
+
/** The full analysis results (targets, assets, key findings) */
|
|
25
|
+
results: AttackSurfaceAnalysisResults | null;
|
|
26
|
+
/** All targets identified for deep penetration testing */
|
|
27
|
+
targets: PentestTarget[];
|
|
28
|
+
/** Absolute path to the attack-surface-results.json file */
|
|
29
|
+
resultsPath: string;
|
|
30
|
+
/** Absolute path to the session's assets directory */
|
|
31
|
+
assetsPath: string;
|
|
32
|
+
}
|
|
33
|
+
interface BlackboxState {
|
|
34
|
+
target: string;
|
|
35
|
+
subagentFolder: string;
|
|
36
|
+
}
|
|
37
|
+
export declare const blackboxAttackSurfaceDefinition: import("../../defineAgent").AgentDefinition<AttackSurfaceAgentInput, AttackSurfaceResult, BlackboxState>;
|
|
38
|
+
/**
|
|
39
|
+
* A recon-focused specialisation of {@link OffensiveSecurityAgent}.
|
|
40
|
+
*
|
|
41
|
+
* Maps the entire attack surface of a target — discovers assets, endpoints,
|
|
42
|
+
* authentication flows, and produces a list of targets for deep testing.
|
|
43
|
+
*
|
|
44
|
+
* `consume()` returns an {@link AttackSurfaceResult} with the full analysis.
|
|
45
|
+
*
|
|
46
|
+
* @example
|
|
47
|
+
* ```ts
|
|
48
|
+
* const agent = new AttackSurfaceAgent({
|
|
49
|
+
* target: "https://example.com",
|
|
50
|
+
* model: "claude-sonnet-4-20250514",
|
|
51
|
+
* session,
|
|
52
|
+
* });
|
|
53
|
+
*
|
|
54
|
+
* const { targets, results } = await agent.consume({
|
|
55
|
+
* onTextDelta: (d) => process.stdout.write(d.text),
|
|
56
|
+
* onToolCall: (d) => console.log(`→ ${d.toolName}`),
|
|
57
|
+
* });
|
|
58
|
+
*
|
|
59
|
+
* console.log(`Identified ${targets.length} targets for deep testing`);
|
|
60
|
+
* ```
|
|
61
|
+
*/
|
|
62
|
+
export declare class BlackboxAttackSurfaceAgent extends AgentRuntime<AttackSurfaceAgentInput, AttackSurfaceResult, BlackboxState> {
|
|
63
|
+
constructor(opts: AttackSurfaceAgentInput);
|
|
64
|
+
}
|
|
65
|
+
export declare function buildBlackboxPrompt(target: string, session: SessionInfo): string;
|
|
66
|
+
export {};
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import {
|
|
2
|
+
blackboxAttackSurfaceDefinition2,
|
|
3
|
+
BlackboxAttackSurfaceAgent2,
|
|
4
|
+
buildBlackboxPrompt2
|
|
5
|
+
} from "../../../../chunk-0ydfy4hq.js";
|
|
6
|
+
import"../../../../chunk-4p2n69vn.js";
|
|
7
|
+
import"../../../../chunk-cx7yrzh1.js";
|
|
8
|
+
import"../../../../chunk-ve7m90fb.js";
|
|
9
|
+
import"../../../../chunk-c2b0hxs7.js";
|
|
10
|
+
import"../../../../chunk-7gjdygcx.js";
|
|
11
|
+
import"../../../../chunk-b8eq85d2.js";
|
|
12
|
+
import"../../../../chunk-gdrv2h1p.js";
|
|
13
|
+
import"../../../../chunk-ja7j565c.js";
|
|
14
|
+
import"../../../../chunk-3q89v4xv.js";
|
|
15
|
+
import"../../../../chunk-fy3bbbqy.js";
|
|
16
|
+
import"../../../../chunk-8d8w07a9.js";
|
|
17
|
+
import"../../../../chunk-t5bt5vn1.js";
|
|
18
|
+
import"../../../../chunk-eb4h4k1f.js";
|
|
19
|
+
import"../../../../chunk-vx228eeq.js";
|
|
20
|
+
import"../../../../chunk-sgd2126b.js";
|
|
21
|
+
import"../../../../chunk-8vhr65w3.js";
|
|
22
|
+
import"../../../../chunk-2njv7wz3.js";
|
|
23
|
+
import"../../../../chunk-jdjagvgr.js";
|
|
24
|
+
import"../../../../chunk-kfvq4m1s.js";
|
|
25
|
+
import"../../../../chunk-zrbqn62x.js";
|
|
26
|
+
import"../../../../chunk-mv74mq5n.js";
|
|
27
|
+
import"../../../../chunk-q5e23acz.js";
|
|
28
|
+
import"../../../../chunk-bx94rwt5.js";
|
|
29
|
+
export {
|
|
30
|
+
BlackboxAttackSurfaceAgent2 as BlackboxAttackSurfaceAgent,
|
|
31
|
+
blackboxAttackSurfaceDefinition2 as blackboxAttackSurfaceDefinition,
|
|
32
|
+
buildBlackboxPrompt2 as buildBlackboxPrompt
|
|
33
|
+
};
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { RiskScore } from "../whiteboxAttackSurface";
|
|
2
|
+
import type { RiskLevel } from "./schemas";
|
|
3
|
+
interface EndpointDetails {
|
|
4
|
+
url?: string;
|
|
5
|
+
method?: string | string[];
|
|
6
|
+
authentication?: string;
|
|
7
|
+
authRequired?: boolean;
|
|
8
|
+
handler?: string;
|
|
9
|
+
file?: string;
|
|
10
|
+
line?: number;
|
|
11
|
+
services?: string[];
|
|
12
|
+
technology?: string[];
|
|
13
|
+
status?: string | number;
|
|
14
|
+
[key: string]: unknown;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Compute a heuristic {@link RiskScore} for a blackbox-discovered asset.
|
|
18
|
+
*
|
|
19
|
+
* Since there is no source code to read, we derive the four breakdown
|
|
20
|
+
* dimensions from the agent-assigned `riskLevel`, the `assetType`, and
|
|
21
|
+
* observable metadata (authentication, services, technology stack).
|
|
22
|
+
*
|
|
23
|
+
* The breakdown dimensions match the whitebox model:
|
|
24
|
+
* - **exposure** (0-3): How reachable is the asset from the outside?
|
|
25
|
+
* - **dataSensitivity** (0-3): How sensitive is the data it likely handles?
|
|
26
|
+
* - **functionCriticality** (0-2): How critical is the business function?
|
|
27
|
+
* - **securityIndicators** (0-2): Are there observable security concerns?
|
|
28
|
+
*/
|
|
29
|
+
export declare function computeBlackboxRiskScore(riskLevel: RiskLevel, assetType: string, details?: EndpointDetails, notes?: string): RiskScore;
|
|
30
|
+
export {};
|