@pensar/apex 1.4.0 → 1.5.0-canary.b0cda641
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/build/agent-8c232d61.js +19 -0
- package/build/{agent-xw97p62b.js → agent-dw522m63.js} +8 -8
- package/build/{auth-sc1hmsgv.js → auth-8yzkdy95.js} +4 -4
- package/build/{authentication-jt2jbqj2.js → authentication-14dt3a8m.js} +8 -8
- package/build/{blackboxAgent-rq9z4g0p.js → blackboxAgent-tt428da8.js} +9 -9
- package/build/{blackboxPentest-3wwyqckx.js → blackboxPentest-hey4tzcg.js} +14 -14
- package/build/{cli-k0tycc78.js → cli-2rnp0zf0.js} +1 -1
- package/build/{cli-vwyn3es3.js → cli-4ssg1gxh.js} +9 -9
- package/build/{cli-am3dgbv8.js → cli-bxd4x3cx.js} +15 -10
- package/build/{cli-39d581n4.js → cli-f3hgmqfz.js} +1 -1
- package/build/{cli-jh6h1myg.js → cli-gj88wb62.js} +1 -1
- package/build/{cli-ctb1vg2p.js → cli-j5p8t7t6.js} +6 -6
- package/build/{cli-e1axrn0s.js → cli-rem73eb1.js} +1 -1
- package/build/{cli-mxms90xg.js → cli-rygppyh4.js} +1 -1
- package/build/{cli-a9bs4kq9.js → cli-sk682e3p.js} +2 -2
- package/build/{cli-6r72e7et.js → cli-ssekg228.js} +1 -1
- package/build/{cli-rn3mezj8.js → cli-tyn3ph6h.js} +12 -12
- package/build/{cli-e9n1z1dp.js → cli-y0v9ccnq.js} +1 -1
- package/build/{cli-jp69ygke.js → cli-y6s2z0y2.js} +2 -2
- package/build/{cli-evenmfmt.js → cli-yv9yjyjz.js} +1 -1
- package/build/cli.js +58 -46
- package/build/{fixes-05de9mv3.js → fixes-cmn3aej7.js} +4 -4
- package/build/{index-vaba4g8m.js → index-1pmr71k7.js} +21 -20
- package/build/{index-hg0e235k.js → index-cnebc5ff.js} +8 -8
- package/build/{index-8cn46ysy.js → index-ddwg070n.js} +8 -8
- package/build/{index-fh4dtkm8.js → index-dwk9e413.js} +4 -4
- package/build/{index-bx88n3qr.js → index-zrvtgcc1.js} +2 -2
- package/build/{issues-k3tx6cng.js → issues-0nmk2fqy.js} +4 -4
- package/build/{logs-q33a8qag.js → logs-rzz52khe.js} +4 -4
- package/build/{offesecAgent-pxnz905y.js → offesecAgent-acnq8r8r.js} +8 -8
- package/build/{pentest-tv2e2ygn.js → pentest-wbqe2vqn.js} +14 -14
- package/build/{pentests-s9462spt.js → pentests-v0ye0d02.js} +4 -4
- package/build/{projects-wxke4080.js → projects-ftzmxzp2.js} +4 -4
- package/build/{targetedPentest-nm0y2fv4.js → targetedPentest-k2xmt9by.js} +9 -9
- package/build/{threatModel-qrtk7rj4.js → threatModel-hk4hp4my.js} +9 -9
- package/build/{uninstall-cy8m1788.js → uninstall-xf1y3h63.js} +1 -1
- package/build/{utils-8yqe12jr.js → utils-jf52rmrb.js} +2 -1
- package/package.json +1 -1
- package/build/agent-xg2xarp3.js +0 -19
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import {
|
|
2
|
+
CodeAgent
|
|
3
|
+
} from "./cli-sk682e3p.js";
|
|
4
|
+
import"./cli-tyn3ph6h.js";
|
|
5
|
+
import"./cli-tp1tqn3k.js";
|
|
6
|
+
import"./cli-yv9yjyjz.js";
|
|
7
|
+
import"./cli-3y0dgy56.js";
|
|
8
|
+
import"./cli-j5p8t7t6.js";
|
|
9
|
+
import"./cli-0ghkg3w6.js";
|
|
10
|
+
import"./cli-f3hgmqfz.js";
|
|
11
|
+
import"./cli-rygppyh4.js";
|
|
12
|
+
import"./cli-gpnb45ck.js";
|
|
13
|
+
import"./cli-bxd4x3cx.js";
|
|
14
|
+
import"./cli-gj88wb62.js";
|
|
15
|
+
import"./cli-03z6pswp.js";
|
|
16
|
+
import"./cli-8rxa073f.js";
|
|
17
|
+
export {
|
|
18
|
+
CodeAgent
|
|
19
|
+
};
|
|
@@ -3,22 +3,22 @@ import {
|
|
|
3
3
|
} from "./cli-0fy9j5dw.js";
|
|
4
4
|
import {
|
|
5
5
|
OffensiveSecurityAgent
|
|
6
|
-
} from "./cli-
|
|
6
|
+
} from "./cli-tyn3ph6h.js";
|
|
7
7
|
import"./cli-tp1tqn3k.js";
|
|
8
|
-
import"./cli-
|
|
8
|
+
import"./cli-yv9yjyjz.js";
|
|
9
9
|
import"./cli-3y0dgy56.js";
|
|
10
10
|
import {
|
|
11
11
|
hasToolCall
|
|
12
|
-
} from "./cli-
|
|
13
|
-
import"./cli-03z6pswp.js";
|
|
12
|
+
} from "./cli-j5p8t7t6.js";
|
|
14
13
|
import {
|
|
15
14
|
tool
|
|
16
15
|
} from "./cli-0ghkg3w6.js";
|
|
17
|
-
import"./cli-
|
|
18
|
-
import"./cli-
|
|
19
|
-
import"./cli-am3dgbv8.js";
|
|
20
|
-
import"./cli-jh6h1myg.js";
|
|
16
|
+
import"./cli-f3hgmqfz.js";
|
|
17
|
+
import"./cli-rygppyh4.js";
|
|
21
18
|
import"./cli-gpnb45ck.js";
|
|
19
|
+
import"./cli-bxd4x3cx.js";
|
|
20
|
+
import"./cli-gj88wb62.js";
|
|
21
|
+
import"./cli-03z6pswp.js";
|
|
22
22
|
import"./cli-8rxa073f.js";
|
|
23
23
|
|
|
24
24
|
// src/core/agents/specialized/whiteboxAttackSurface/prompts.ts
|
|
@@ -8,14 +8,14 @@ import {
|
|
|
8
8
|
pollWorkOSToken,
|
|
9
9
|
selectWorkspace,
|
|
10
10
|
startDeviceFlow
|
|
11
|
-
} from "./cli-
|
|
11
|
+
} from "./cli-f3hgmqfz.js";
|
|
12
12
|
import {
|
|
13
13
|
config,
|
|
14
14
|
getPensarApiUrl,
|
|
15
15
|
getPensarConsoleUrl
|
|
16
|
-
} from "./cli-
|
|
17
|
-
import"./cli-
|
|
18
|
-
import"./cli-
|
|
16
|
+
} from "./cli-rygppyh4.js";
|
|
17
|
+
import"./cli-bxd4x3cx.js";
|
|
18
|
+
import"./cli-gj88wb62.js";
|
|
19
19
|
import {
|
|
20
20
|
__require
|
|
21
21
|
} from "./cli-8rxa073f.js";
|
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
import {
|
|
2
2
|
OffensiveSecurityAgent
|
|
3
|
-
} from "./cli-
|
|
3
|
+
} from "./cli-tyn3ph6h.js";
|
|
4
4
|
import {
|
|
5
5
|
detectOSAndEnhancePrompt
|
|
6
6
|
} from "./cli-tp1tqn3k.js";
|
|
7
|
-
import"./cli-
|
|
7
|
+
import"./cli-yv9yjyjz.js";
|
|
8
8
|
import"./cli-3y0dgy56.js";
|
|
9
9
|
import {
|
|
10
10
|
hasToolCall
|
|
11
|
-
} from "./cli-
|
|
12
|
-
import"./cli-03z6pswp.js";
|
|
11
|
+
} from "./cli-j5p8t7t6.js";
|
|
13
12
|
import"./cli-0ghkg3w6.js";
|
|
14
|
-
import"./cli-
|
|
15
|
-
import"./cli-
|
|
16
|
-
import"./cli-am3dgbv8.js";
|
|
17
|
-
import"./cli-jh6h1myg.js";
|
|
13
|
+
import"./cli-f3hgmqfz.js";
|
|
14
|
+
import"./cli-rygppyh4.js";
|
|
18
15
|
import"./cli-gpnb45ck.js";
|
|
16
|
+
import"./cli-bxd4x3cx.js";
|
|
17
|
+
import"./cli-gj88wb62.js";
|
|
18
|
+
import"./cli-03z6pswp.js";
|
|
19
19
|
import"./cli-8rxa073f.js";
|
|
20
20
|
|
|
21
21
|
// src/core/agents/specialized/authenticationAgent/agent.ts
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
import {
|
|
2
2
|
BlackboxAttackSurfaceAgent
|
|
3
|
-
} from "./cli-
|
|
4
|
-
import"./cli-
|
|
3
|
+
} from "./cli-y6s2z0y2.js";
|
|
4
|
+
import"./cli-tyn3ph6h.js";
|
|
5
5
|
import"./cli-tp1tqn3k.js";
|
|
6
|
-
import"./cli-
|
|
6
|
+
import"./cli-yv9yjyjz.js";
|
|
7
7
|
import"./cli-3y0dgy56.js";
|
|
8
|
-
import"./cli-
|
|
9
|
-
import"./cli-03z6pswp.js";
|
|
8
|
+
import"./cli-j5p8t7t6.js";
|
|
10
9
|
import"./cli-0ghkg3w6.js";
|
|
11
|
-
import"./cli-
|
|
12
|
-
import"./cli-
|
|
13
|
-
import"./cli-am3dgbv8.js";
|
|
14
|
-
import"./cli-jh6h1myg.js";
|
|
10
|
+
import"./cli-f3hgmqfz.js";
|
|
11
|
+
import"./cli-rygppyh4.js";
|
|
15
12
|
import"./cli-gpnb45ck.js";
|
|
13
|
+
import"./cli-bxd4x3cx.js";
|
|
14
|
+
import"./cli-gj88wb62.js";
|
|
15
|
+
import"./cli-03z6pswp.js";
|
|
16
16
|
import"./cli-8rxa073f.js";
|
|
17
17
|
export {
|
|
18
18
|
BlackboxAttackSurfaceAgent
|
|
@@ -1,24 +1,24 @@
|
|
|
1
1
|
import {
|
|
2
2
|
runPentestWorkflow
|
|
3
|
-
} from "./cli-
|
|
4
|
-
import"./cli-
|
|
5
|
-
import"./cli-
|
|
6
|
-
import"./cli-jp69ygke.js";
|
|
7
|
-
import"./cli-fw5r7pfj.js";
|
|
8
|
-
import"./cli-a9bs4kq9.js";
|
|
3
|
+
} from "./cli-4ssg1gxh.js";
|
|
4
|
+
import"./cli-rem73eb1.js";
|
|
5
|
+
import"./cli-y0v9ccnq.js";
|
|
9
6
|
import"./cli-0fy9j5dw.js";
|
|
10
|
-
import"./cli-
|
|
7
|
+
import"./cli-y6s2z0y2.js";
|
|
8
|
+
import"./cli-fw5r7pfj.js";
|
|
9
|
+
import"./cli-sk682e3p.js";
|
|
10
|
+
import"./cli-tyn3ph6h.js";
|
|
11
11
|
import"./cli-tp1tqn3k.js";
|
|
12
|
-
import"./cli-
|
|
12
|
+
import"./cli-yv9yjyjz.js";
|
|
13
13
|
import"./cli-3y0dgy56.js";
|
|
14
|
-
import"./cli-
|
|
15
|
-
import"./cli-03z6pswp.js";
|
|
14
|
+
import"./cli-j5p8t7t6.js";
|
|
16
15
|
import"./cli-0ghkg3w6.js";
|
|
17
|
-
import"./cli-
|
|
18
|
-
import"./cli-
|
|
19
|
-
import"./cli-am3dgbv8.js";
|
|
20
|
-
import"./cli-jh6h1myg.js";
|
|
16
|
+
import"./cli-f3hgmqfz.js";
|
|
17
|
+
import"./cli-rygppyh4.js";
|
|
21
18
|
import"./cli-gpnb45ck.js";
|
|
19
|
+
import"./cli-bxd4x3cx.js";
|
|
20
|
+
import"./cli-gj88wb62.js";
|
|
21
|
+
import"./cli-03z6pswp.js";
|
|
22
22
|
import"./cli-8rxa073f.js";
|
|
23
23
|
|
|
24
24
|
// src/core/api/blackboxPentest.ts
|
|
@@ -14,31 +14,31 @@ import {
|
|
|
14
14
|
updateManifestEntryStatus,
|
|
15
15
|
writeAgentManifest,
|
|
16
16
|
writeExecutionMetrics
|
|
17
|
-
} from "./cli-
|
|
17
|
+
} from "./cli-rem73eb1.js";
|
|
18
18
|
import {
|
|
19
19
|
TargetedPentestAgent,
|
|
20
20
|
buildPentestSystemPrompt
|
|
21
|
-
} from "./cli-
|
|
21
|
+
} from "./cli-y0v9ccnq.js";
|
|
22
|
+
import {
|
|
23
|
+
EndpointSchema
|
|
24
|
+
} from "./cli-0fy9j5dw.js";
|
|
22
25
|
import {
|
|
23
26
|
BlackboxAttackSurfaceAgent
|
|
24
|
-
} from "./cli-
|
|
27
|
+
} from "./cli-y6s2z0y2.js";
|
|
25
28
|
import {
|
|
26
29
|
createThreatModelPrompt
|
|
27
30
|
} from "./cli-fw5r7pfj.js";
|
|
28
31
|
import {
|
|
29
32
|
CodeAgent
|
|
30
|
-
} from "./cli-
|
|
31
|
-
import {
|
|
32
|
-
EndpointSchema
|
|
33
|
-
} from "./cli-0fy9j5dw.js";
|
|
33
|
+
} from "./cli-sk682e3p.js";
|
|
34
34
|
import {
|
|
35
35
|
FindingsRegistry,
|
|
36
36
|
OffensiveSecurityAgent,
|
|
37
37
|
PLAN_MODE_TOOL_NAMES
|
|
38
|
-
} from "./cli-
|
|
38
|
+
} from "./cli-tyn3ph6h.js";
|
|
39
39
|
import {
|
|
40
40
|
hasToolCall
|
|
41
|
-
} from "./cli-
|
|
41
|
+
} from "./cli-j5p8t7t6.js";
|
|
42
42
|
import {
|
|
43
43
|
exports_external1 as exports_external,
|
|
44
44
|
init_zod
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
getCurrentVersion
|
|
3
|
-
} from "./cli-
|
|
3
|
+
} from "./cli-gj88wb62.js";
|
|
4
4
|
|
|
5
5
|
// src/core/config/config.ts
|
|
6
6
|
import os from "os";
|
|
@@ -23,18 +23,11 @@ async function init() {
|
|
|
23
23
|
const version = getCurrentVersion();
|
|
24
24
|
return { ...DEFAULT_CONFIG, version };
|
|
25
25
|
}
|
|
26
|
-
|
|
27
|
-
const folder = path.join(os.homedir(), ".pensar");
|
|
28
|
-
const file = path.join(folder, "config.json");
|
|
29
|
-
const exists = await fs.access(file).then(() => true).catch(() => false);
|
|
30
|
-
if (!exists) {
|
|
31
|
-
return await init();
|
|
32
|
-
}
|
|
33
|
-
const config = await fs.readFile(file, "utf8");
|
|
34
|
-
const parsedConfig = JSON.parse(config);
|
|
26
|
+
function applyEnvFallbacks(parsedConfig) {
|
|
35
27
|
const version = getCurrentVersion();
|
|
36
28
|
return {
|
|
37
29
|
...parsedConfig,
|
|
30
|
+
responsibleUseAccepted: parsedConfig.responsibleUseAccepted ?? false,
|
|
38
31
|
version,
|
|
39
32
|
openAiAPIKey: parsedConfig.openAiAPIKey ?? process.env.OPENAI_API_KEY,
|
|
40
33
|
anthropicAPIKey: parsedConfig.anthropicAPIKey ?? process.env.ANTHROPIC_API_KEY,
|
|
@@ -48,6 +41,18 @@ async function get() {
|
|
|
48
41
|
runloopAPIKey: parsedConfig.runloopAPIKey ?? process.env.RUNLOOP_API_KEY
|
|
49
42
|
};
|
|
50
43
|
}
|
|
44
|
+
async function get() {
|
|
45
|
+
const folder = path.join(os.homedir(), ".pensar");
|
|
46
|
+
const file = path.join(folder, "config.json");
|
|
47
|
+
const exists = await fs.access(file).then(() => true).catch(() => false);
|
|
48
|
+
if (!exists) {
|
|
49
|
+
await init();
|
|
50
|
+
return applyEnvFallbacks(DEFAULT_CONFIG);
|
|
51
|
+
}
|
|
52
|
+
const config = await fs.readFile(file, "utf8");
|
|
53
|
+
const parsedConfig = JSON.parse(config);
|
|
54
|
+
return applyEnvFallbacks(parsedConfig);
|
|
55
|
+
}
|
|
51
56
|
async function update(config) {
|
|
52
57
|
const folder = path.join(os.homedir(), ".pensar");
|
|
53
58
|
const file = path.join(folder, "config.json");
|
|
@@ -3,7 +3,7 @@ import { spawnSync } from "child_process";
|
|
|
3
3
|
// package.json
|
|
4
4
|
var package_default = {
|
|
5
5
|
name: "@pensar/apex",
|
|
6
|
-
version: "1.
|
|
6
|
+
version: "1.5.0-canary.b0cda641",
|
|
7
7
|
description: "AI-powered penetration testing CLI tool with terminal UI",
|
|
8
8
|
module: "src/tui/index.tsx",
|
|
9
9
|
main: "build/cli.js",
|
|
@@ -1,7 +1,3 @@
|
|
|
1
|
-
import {
|
|
2
|
-
getModelInfo,
|
|
3
|
-
init_models
|
|
4
|
-
} from "./cli-03z6pswp.js";
|
|
5
1
|
import {
|
|
6
2
|
AISDKError,
|
|
7
3
|
APICallError,
|
|
@@ -75,12 +71,16 @@ import {
|
|
|
75
71
|
} from "./cli-0ghkg3w6.js";
|
|
76
72
|
import {
|
|
77
73
|
signGatewayRequest
|
|
78
|
-
} from "./cli-
|
|
74
|
+
} from "./cli-f3hgmqfz.js";
|
|
79
75
|
import {
|
|
80
76
|
config,
|
|
81
77
|
ensureValidToken,
|
|
82
78
|
getPensarGatewayUrl
|
|
83
|
-
} from "./cli-
|
|
79
|
+
} from "./cli-rygppyh4.js";
|
|
80
|
+
import {
|
|
81
|
+
getModelInfo,
|
|
82
|
+
init_models
|
|
83
|
+
} from "./cli-03z6pswp.js";
|
|
84
84
|
import {
|
|
85
85
|
__commonJS,
|
|
86
86
|
__esm,
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import {
|
|
2
2
|
OffensiveSecurityAgent
|
|
3
|
-
} from "./cli-
|
|
3
|
+
} from "./cli-tyn3ph6h.js";
|
|
4
4
|
import {
|
|
5
5
|
stepCountIs
|
|
6
|
-
} from "./cli-
|
|
6
|
+
} from "./cli-j5p8t7t6.js";
|
|
7
7
|
|
|
8
8
|
// src/core/agents/specialized/codeAgent/prompts.ts
|
|
9
9
|
var CODE_AGENT_SYSTEM_PROMPT = `You are an expert coding agent with direct filesystem access. You will be given a specific objective — focus exclusively on completing it.
|
|
@@ -16,7 +16,7 @@ import {
|
|
|
16
16
|
update,
|
|
17
17
|
write,
|
|
18
18
|
writeRaw
|
|
19
|
-
} from "./cli-
|
|
19
|
+
} from "./cli-yv9yjyjz.js";
|
|
20
20
|
import {
|
|
21
21
|
parseTargetUrl
|
|
22
22
|
} from "./cli-3y0dgy56.js";
|
|
@@ -29,7 +29,7 @@ import {
|
|
|
29
29
|
require_tslib,
|
|
30
30
|
streamResponse,
|
|
31
31
|
toggleTool
|
|
32
|
-
} from "./cli-
|
|
32
|
+
} from "./cli-j5p8t7t6.js";
|
|
33
33
|
import {
|
|
34
34
|
_enum,
|
|
35
35
|
_null,
|
|
@@ -57,15 +57,15 @@ import {
|
|
|
57
57
|
} from "./cli-0ghkg3w6.js";
|
|
58
58
|
import {
|
|
59
59
|
signGatewayRequest
|
|
60
|
-
} from "./cli-
|
|
60
|
+
} from "./cli-f3hgmqfz.js";
|
|
61
61
|
import {
|
|
62
62
|
config,
|
|
63
63
|
ensureValidToken,
|
|
64
64
|
getPensarApiUrl
|
|
65
|
-
} from "./cli-
|
|
65
|
+
} from "./cli-rygppyh4.js";
|
|
66
66
|
import {
|
|
67
67
|
getCurrentVersion
|
|
68
|
-
} from "./cli-
|
|
68
|
+
} from "./cli-gj88wb62.js";
|
|
69
69
|
import {
|
|
70
70
|
__commonJS,
|
|
71
71
|
__require,
|
|
@@ -109978,7 +109978,7 @@ async function generateThreatModelForEndpoint(ctx, input) {
|
|
|
109978
109978
|
return threatModelLimiter(async () => {
|
|
109979
109979
|
if (ctx.abortSignal?.aborted)
|
|
109980
109980
|
return null;
|
|
109981
|
-
const { CodeAgent } = await import("./agent-
|
|
109981
|
+
const { CodeAgent } = await import("./agent-8c232d61.js");
|
|
109982
109982
|
const subagentId = `threat-model-${sanitize(input.appName)}-${sanitize(input.routePath)}`;
|
|
109983
109983
|
ctx.eventBus?.emit("subagent-spawn", {
|
|
109984
109984
|
subagentId,
|
|
@@ -110667,7 +110667,7 @@ When to use delegate_to_auth_subagent vs authenticate_session:
|
|
|
110667
110667
|
if (credentials) {
|
|
110668
110668
|
ctx.session.credentialManager.addFromAuthCredentials(credentials);
|
|
110669
110669
|
}
|
|
110670
|
-
const { runAuthenticationAgent } = await import("./authentication-
|
|
110670
|
+
const { runAuthenticationAgent } = await import("./authentication-14dt3a8m.js");
|
|
110671
110671
|
const localBus = new AgentEventBus;
|
|
110672
110672
|
AgentEventBus.attachChild(localBus, ctx.eventBus, subagentId);
|
|
110673
110673
|
const result = await runAuthenticationAgent({
|
|
@@ -111580,7 +111580,7 @@ should be passed directly to spawn_pentest_swarm for deep testing.`,
|
|
|
111580
111580
|
});
|
|
111581
111581
|
if (cwd) {
|
|
111582
111582
|
try {
|
|
111583
|
-
const { WhiteboxAttackSurfaceAgent } = await import("./agent-
|
|
111583
|
+
const { WhiteboxAttackSurfaceAgent } = await import("./agent-dw522m63.js");
|
|
111584
111584
|
const localBus = new AgentEventBus;
|
|
111585
111585
|
AgentEventBus.attachChild(localBus, ctx.eventBus, subagentId);
|
|
111586
111586
|
const agent = new WhiteboxAttackSurfaceAgent({
|
|
@@ -111629,7 +111629,7 @@ should be passed directly to spawn_pentest_swarm for deep testing.`,
|
|
|
111629
111629
|
}
|
|
111630
111630
|
}
|
|
111631
111631
|
try {
|
|
111632
|
-
const { BlackboxAttackSurfaceAgent } = await import("./blackboxAgent-
|
|
111632
|
+
const { BlackboxAttackSurfaceAgent } = await import("./blackboxAgent-tt428da8.js");
|
|
111633
111633
|
const localBus = new AgentEventBus;
|
|
111634
111634
|
AgentEventBus.attachChild(localBus, ctx.eventBus, subagentId);
|
|
111635
111635
|
const agent = new BlackboxAttackSurfaceAgent({
|
|
@@ -111705,7 +111705,7 @@ Pass every target you want tested — the swarm handles concurrency automaticall
|
|
|
111705
111705
|
toolCallDescription: exports_external.string().describe("A concise, human-readable description of what this tool call is doing")
|
|
111706
111706
|
}),
|
|
111707
111707
|
execute: async ({ targets }) => {
|
|
111708
|
-
const { runPentestSwarm, DEFAULT_CONCURRENCY } = await import("./pentest-
|
|
111708
|
+
const { runPentestSwarm, DEFAULT_CONCURRENCY } = await import("./pentest-wbqe2vqn.js");
|
|
111709
111709
|
if (!ctx.model) {
|
|
111710
111710
|
return {
|
|
111711
111711
|
success: false,
|
|
@@ -111833,7 +111833,7 @@ Returns an array of results with the text output from each agent.`,
|
|
|
111833
111833
|
});
|
|
111834
111834
|
}
|
|
111835
111835
|
async function runSingleCodingAgent(ctx, codebasePath, objective, agentIndex, name) {
|
|
111836
|
-
const { CodeAgent } = await import("./agent-
|
|
111836
|
+
const { CodeAgent } = await import("./agent-8c232d61.js");
|
|
111837
111837
|
const subagentId = `coding-agent-${agentIndex}`;
|
|
111838
111838
|
ctx.eventBus?.emit("subagent-spawn", {
|
|
111839
111839
|
subagentId,
|
|
@@ -111894,7 +111894,7 @@ Omit \`cwd\` for blackbox mode (live target probing only).`,
|
|
|
111894
111894
|
toolCallDescription: exports_external.string().describe("A concise, human-readable description of what this tool call is doing")
|
|
111895
111895
|
}),
|
|
111896
111896
|
execute: async ({ target, cwd }) => {
|
|
111897
|
-
const { runPentestWorkflow: workflow } = await import("./pentest-
|
|
111897
|
+
const { runPentestWorkflow: workflow } = await import("./pentest-wbqe2vqn.js");
|
|
111898
111898
|
if (!ctx.model) {
|
|
111899
111899
|
return {
|
|
111900
111900
|
success: false,
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import {
|
|
2
2
|
OffensiveSecurityAgent
|
|
3
|
-
} from "./cli-
|
|
3
|
+
} from "./cli-tyn3ph6h.js";
|
|
4
4
|
import {
|
|
5
5
|
detectOSAndEnhancePrompt
|
|
6
6
|
} from "./cli-tp1tqn3k.js";
|
|
7
7
|
import {
|
|
8
8
|
hasToolCall,
|
|
9
9
|
stepCountIs
|
|
10
|
-
} from "./cli-
|
|
10
|
+
} from "./cli-j5p8t7t6.js";
|
|
11
11
|
|
|
12
12
|
// src/core/agents/specialized/attackSurface/blackboxAgent.ts
|
|
13
13
|
import { join } from "path";
|
package/build/cli.js
CHANGED
|
@@ -6,18 +6,18 @@ import {
|
|
|
6
6
|
import"./cli-3y0dgy56.js";
|
|
7
7
|
import {
|
|
8
8
|
init_toolset
|
|
9
|
-
} from "./cli-
|
|
10
|
-
import {
|
|
11
|
-
init_models
|
|
12
|
-
} from "./cli-03z6pswp.js";
|
|
9
|
+
} from "./cli-j5p8t7t6.js";
|
|
13
10
|
import"./cli-0ghkg3w6.js";
|
|
14
|
-
import"./cli-
|
|
15
|
-
import"./cli-
|
|
16
|
-
import"./cli-
|
|
11
|
+
import"./cli-f3hgmqfz.js";
|
|
12
|
+
import"./cli-rygppyh4.js";
|
|
13
|
+
import"./cli-gpnb45ck.js";
|
|
14
|
+
import"./cli-bxd4x3cx.js";
|
|
17
15
|
import {
|
|
18
16
|
package_default
|
|
19
|
-
} from "./cli-
|
|
20
|
-
import
|
|
17
|
+
} from "./cli-gj88wb62.js";
|
|
18
|
+
import {
|
|
19
|
+
init_models
|
|
20
|
+
} from "./cli-03z6pswp.js";
|
|
21
21
|
import {
|
|
22
22
|
__require,
|
|
23
23
|
__toESM
|
|
@@ -25,7 +25,7 @@ import {
|
|
|
25
25
|
// package.json
|
|
26
26
|
var package_default2 = {
|
|
27
27
|
name: "@pensar/apex",
|
|
28
|
-
version: "1.
|
|
28
|
+
version: "1.5.0-canary.b0cda641",
|
|
29
29
|
description: "AI-powered penetration testing CLI tool with terminal UI",
|
|
30
30
|
module: "src/tui/index.tsx",
|
|
31
31
|
main: "build/cli.js",
|
|
@@ -494,6 +494,26 @@ async function createInstrumentedBus(session) {
|
|
|
494
494
|
});
|
|
495
495
|
return { bus, cleanup: async () => wandbCleanup?.() };
|
|
496
496
|
}
|
|
497
|
+
async function resolveCliModel() {
|
|
498
|
+
const explicit = getArg("--model");
|
|
499
|
+
if (explicit)
|
|
500
|
+
return explicit;
|
|
501
|
+
const { config: appConfig } = await import("./index-zrvtgcc1.js");
|
|
502
|
+
const { getDefaultModelForConfig } = await import("./utils-jf52rmrb.js");
|
|
503
|
+
const pensarConfig = await appConfig.get();
|
|
504
|
+
const defaultModel = getDefaultModelForConfig(pensarConfig);
|
|
505
|
+
if (!defaultModel) {
|
|
506
|
+
console.error(`Error: No AI provider configured. Set one of:
|
|
507
|
+
` + ` PENSAR_API_KEY \u2014 Pensar Console (recommended)
|
|
508
|
+
` + ` ANTHROPIC_API_KEY \u2014 Anthropic direct
|
|
509
|
+
` + ` OPENAI_API_KEY \u2014 OpenAI
|
|
510
|
+
` + ` OPENROUTER_API_KEY \u2014 OpenRouter
|
|
511
|
+
` + `
|
|
512
|
+
Or run 'pensar login' to connect to Pensar Console.`);
|
|
513
|
+
process.exit(1);
|
|
514
|
+
}
|
|
515
|
+
return defaultModel.id;
|
|
516
|
+
}
|
|
497
517
|
function showHelp() {
|
|
498
518
|
console.log(`Pensar - AI-Powered Penetration Testing CLI
|
|
499
519
|
|
|
@@ -518,13 +538,13 @@ Usage:
|
|
|
518
538
|
operator options (-p):
|
|
519
539
|
-p, --prompt <text|@file> (required) Prompt for the operator agent
|
|
520
540
|
--target <url> Target URL / domain / IP
|
|
521
|
-
--model <model> AI model (default:
|
|
541
|
+
--model <model> AI model (default: auto-selected from configured provider)
|
|
522
542
|
|
|
523
543
|
pentest options:
|
|
524
544
|
--target <url> (required) Target URL / domain / IP
|
|
525
545
|
--cwd <path> Source code path \u2014 enables whitebox attack surface
|
|
526
546
|
--mode <mode> Pentest mode: exfil (pivoting & flag extraction)
|
|
527
|
-
--model <model> AI model (default:
|
|
547
|
+
--model <model> AI model (default: auto-selected from configured provider)
|
|
528
548
|
--extended-thinking Enable extended thinking for supported models
|
|
529
549
|
--task-driven Enable task-driven architecture (experimental)
|
|
530
550
|
--prompt <text|@file> Guidance for the pentest agent (inline text or @filepath)
|
|
@@ -533,11 +553,11 @@ pentest options:
|
|
|
533
553
|
targeted-pentest options:
|
|
534
554
|
--target <url> (required) Target URL / domain / IP
|
|
535
555
|
--objective <text> (required, repeatable) Testing objective
|
|
536
|
-
--model <model> AI model (default:
|
|
556
|
+
--model <model> AI model (default: auto-selected from configured provider)
|
|
537
557
|
|
|
538
558
|
threat-model options:
|
|
539
559
|
--output, -o <path> Output file path (default: ./threat-model.md)
|
|
540
|
-
--model <model> AI model (default:
|
|
560
|
+
--model <model> AI model (default: auto-selected from configured provider)
|
|
541
561
|
|
|
542
562
|
Global options:
|
|
543
563
|
-h, --help Show this help message
|
|
@@ -550,10 +570,9 @@ Global options:
|
|
|
550
570
|
async function runPentest() {
|
|
551
571
|
const { config: config2 } = await import("./main-3d7dfdvs.js").then((m)=>__toESM(m.default,1));
|
|
552
572
|
config2();
|
|
553
|
-
const { runPentestAgent } = await import("./blackboxPentest-
|
|
554
|
-
const { sessions } = await import("./index-
|
|
555
|
-
const { config: appConfig } = await import("./index-
|
|
556
|
-
const { getDefaultModelForConfig } = await import("./utils-8yqe12jr.js");
|
|
573
|
+
const { runPentestAgent } = await import("./blackboxPentest-hey4tzcg.js");
|
|
574
|
+
const { sessions } = await import("./index-ddwg070n.js");
|
|
575
|
+
const { config: appConfig } = await import("./index-zrvtgcc1.js");
|
|
557
576
|
const target = getArgRequired("--target");
|
|
558
577
|
const cwd = getArg("--cwd");
|
|
559
578
|
const mode = getArg("--mode");
|
|
@@ -565,8 +584,7 @@ async function runPentest() {
|
|
|
565
584
|
const resolvedPrompt = promptRaw ? resolveFlagValue(promptRaw) : undefined;
|
|
566
585
|
const prompt = combinePromptParts(resolvedTm, resolvedPrompt);
|
|
567
586
|
const pensarConfig = await appConfig.get();
|
|
568
|
-
const
|
|
569
|
-
const model = getArg("--model") ?? dynamicDefault;
|
|
587
|
+
const model = await resolveCliModel();
|
|
570
588
|
const { exfilMode, warning: modeWarning } = resolvePentestMode(mode);
|
|
571
589
|
if (modeWarning) {
|
|
572
590
|
console.warn(modeWarning);
|
|
@@ -618,15 +636,13 @@ Report: ${reportPath}` : ""}`);
|
|
|
618
636
|
async function runTargetedPentest() {
|
|
619
637
|
const { config: config2 } = await import("./main-3d7dfdvs.js").then((m)=>__toESM(m.default,1));
|
|
620
638
|
config2();
|
|
621
|
-
const { runTargetedPentestAgent } = await import("./targetedPentest-
|
|
622
|
-
const { sessions } = await import("./index-
|
|
623
|
-
const { config: appConfig } = await import("./index-
|
|
624
|
-
const { getDefaultModelForConfig } = await import("./utils-8yqe12jr.js");
|
|
639
|
+
const { runTargetedPentestAgent } = await import("./targetedPentest-k2xmt9by.js");
|
|
640
|
+
const { sessions } = await import("./index-ddwg070n.js");
|
|
641
|
+
const { config: appConfig } = await import("./index-zrvtgcc1.js");
|
|
625
642
|
const target = getArgRequired("--target");
|
|
626
643
|
const objectives = getAllArgs("--objective");
|
|
627
644
|
const pensarConfig = await appConfig.get();
|
|
628
|
-
const
|
|
629
|
-
const model = getArg("--model") ?? dynamicDefault;
|
|
645
|
+
const model = await resolveCliModel();
|
|
630
646
|
if (objectives.length === 0) {
|
|
631
647
|
console.error("Error: at least one --objective is required");
|
|
632
648
|
process.exit(1);
|
|
@@ -670,13 +686,11 @@ POCs: ${pocsPath}`);
|
|
|
670
686
|
async function runThreatModel() {
|
|
671
687
|
const { config: config2 } = await import("./main-3d7dfdvs.js").then((m)=>__toESM(m.default,1));
|
|
672
688
|
config2();
|
|
673
|
-
const { runThreatModelWorkflow } = await import("./threatModel-
|
|
674
|
-
const { config: appConfig } = await import("./index-
|
|
675
|
-
const { getDefaultModelForConfig } = await import("./utils-8yqe12jr.js");
|
|
689
|
+
const { runThreatModelWorkflow } = await import("./threatModel-hk4hp4my.js");
|
|
690
|
+
const { config: appConfig } = await import("./index-zrvtgcc1.js");
|
|
676
691
|
const path = await import("path");
|
|
677
692
|
const pensarConfig = await appConfig.get();
|
|
678
|
-
const
|
|
679
|
-
const model = getArg("--model") ?? dynamicDefault;
|
|
693
|
+
const model = await resolveCliModel();
|
|
680
694
|
const outputArg = getArg("--output") ?? getArg("-o") ?? "threat-model.md";
|
|
681
695
|
const resolvedPath = path.isAbsolute(outputArg) ? outputArg : path.resolve(process.cwd(), outputArg);
|
|
682
696
|
const sep = "=".repeat(60);
|
|
@@ -709,11 +723,10 @@ Threat model written to: ${resolvedPath}`);
|
|
|
709
723
|
async function runOperator() {
|
|
710
724
|
const { config: config2 } = await import("./main-3d7dfdvs.js").then((m)=>__toESM(m.default,1));
|
|
711
725
|
config2();
|
|
712
|
-
const { runOffensiveSecurityAgent } = await import("./offesecAgent-
|
|
713
|
-
const { sessions, normalizeMessages, getResumeMessages } = await import("./index-
|
|
714
|
-
const { ALL_TOOL_NAMES, SKILL_TOOL_NAMES } = await import("./index-
|
|
715
|
-
const { config: appConfig } = await import("./index-
|
|
716
|
-
const { getDefaultModelForConfig } = await import("./utils-8yqe12jr.js");
|
|
726
|
+
const { runOffensiveSecurityAgent } = await import("./offesecAgent-acnq8r8r.js");
|
|
727
|
+
const { sessions, normalizeMessages, getResumeMessages } = await import("./index-ddwg070n.js");
|
|
728
|
+
const { ALL_TOOL_NAMES, SKILL_TOOL_NAMES } = await import("./index-cnebc5ff.js");
|
|
729
|
+
const { config: appConfig } = await import("./index-zrvtgcc1.js");
|
|
717
730
|
const { createInterface } = await import("readline");
|
|
718
731
|
const { readFileSync: readFileSync2, existsSync } = await import("fs");
|
|
719
732
|
const path = await import("path");
|
|
@@ -726,8 +739,7 @@ async function runOperator() {
|
|
|
726
739
|
const prompt = resolveFlagValue(promptRaw);
|
|
727
740
|
const target = getArg("--target");
|
|
728
741
|
const pensarConfig = await appConfig.get();
|
|
729
|
-
const
|
|
730
|
-
const model = getArg("--model") ?? dynamicDefault;
|
|
742
|
+
const model = await resolveCliModel();
|
|
731
743
|
const sep = "\u2500".repeat(60);
|
|
732
744
|
console.log(`${sep}
|
|
733
745
|
OPERATOR SESSION
|
|
@@ -823,25 +835,25 @@ if (hasFlag("-p") || command === "--prompt") {
|
|
|
823
835
|
await runTargetedPentest();
|
|
824
836
|
} else if (command === "login" || command === "auth") {
|
|
825
837
|
process.argv = [process.argv[0], process.argv[1], ...args.slice(1)];
|
|
826
|
-
await import("./auth-
|
|
838
|
+
await import("./auth-8yzkdy95.js");
|
|
827
839
|
} else if (command === "uninstall") {
|
|
828
840
|
process.argv = [process.argv[0], process.argv[1], ...args.slice(1)];
|
|
829
|
-
await import("./uninstall-
|
|
841
|
+
await import("./uninstall-xf1y3h63.js");
|
|
830
842
|
} else if (command === "projects") {
|
|
831
843
|
process.argv = [process.argv[0], process.argv[1], ...args.slice(1)];
|
|
832
|
-
await import("./projects-
|
|
844
|
+
await import("./projects-ftzmxzp2.js");
|
|
833
845
|
} else if (command === "pentests") {
|
|
834
846
|
process.argv = [process.argv[0], process.argv[1], ...args.slice(1)];
|
|
835
|
-
await import("./pentests-
|
|
847
|
+
await import("./pentests-v0ye0d02.js");
|
|
836
848
|
} else if (command === "issues") {
|
|
837
849
|
process.argv = [process.argv[0], process.argv[1], ...args.slice(1)];
|
|
838
|
-
await import("./issues-
|
|
850
|
+
await import("./issues-0nmk2fqy.js");
|
|
839
851
|
} else if (command === "fixes") {
|
|
840
852
|
process.argv = [process.argv[0], process.argv[1], ...args.slice(1)];
|
|
841
|
-
await import("./fixes-
|
|
853
|
+
await import("./fixes-cmn3aej7.js");
|
|
842
854
|
} else if (command === "logs") {
|
|
843
855
|
process.argv = [process.argv[0], process.argv[1], ...args.slice(1)];
|
|
844
|
-
await import("./logs-
|
|
856
|
+
await import("./logs-rzz52khe.js");
|
|
845
857
|
} else if (command === "threat-model") {
|
|
846
858
|
await runThreatModel();
|
|
847
859
|
} else if (command === "doctor") {
|
|
@@ -853,7 +865,7 @@ if (hasFlag("-p") || command === "--prompt") {
|
|
|
853
865
|
console.error("All other commands work with Node \u2014 run 'pensar --help'.");
|
|
854
866
|
process.exit(1);
|
|
855
867
|
}
|
|
856
|
-
await import("./index-
|
|
868
|
+
await import("./index-1pmr71k7.js");
|
|
857
869
|
} else {
|
|
858
870
|
console.error(`Error: Unknown command '${command}'`);
|
|
859
871
|
console.error();
|
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
import {
|
|
3
3
|
getFix,
|
|
4
4
|
listFixes
|
|
5
|
-
} from "./cli-
|
|
6
|
-
import"./cli-
|
|
7
|
-
import"./cli-
|
|
8
|
-
import"./cli-
|
|
5
|
+
} from "./cli-ssekg228.js";
|
|
6
|
+
import"./cli-rygppyh4.js";
|
|
7
|
+
import"./cli-bxd4x3cx.js";
|
|
8
|
+
import"./cli-gj88wb62.js";
|
|
9
9
|
import"./cli-8rxa073f.js";
|
|
10
10
|
|
|
11
11
|
// src/cli/fixes.ts
|
|
@@ -1,20 +1,16 @@
|
|
|
1
|
-
import {
|
|
2
|
-
AVAILABLE_PROVIDERS,
|
|
3
|
-
init_types
|
|
4
|
-
} from "./cli-yz80qkzn.js";
|
|
5
1
|
import {
|
|
6
2
|
buildPentestPrompt,
|
|
7
3
|
buildThreatModelPrompt,
|
|
8
4
|
createSkillsRegistry,
|
|
9
5
|
runOffensiveSecurityAgent
|
|
10
|
-
} from "./cli-
|
|
6
|
+
} from "./cli-2rnp0zf0.js";
|
|
11
7
|
import {
|
|
12
8
|
REPORT_FILENAME_MD,
|
|
13
9
|
convertModelMessagesToUI,
|
|
14
10
|
loadSubagents,
|
|
15
11
|
readExecutionMetrics,
|
|
16
12
|
writeExecutionMetrics
|
|
17
|
-
} from "./cli-
|
|
13
|
+
} from "./cli-rem73eb1.js";
|
|
18
14
|
import {
|
|
19
15
|
createThreatModelPrompt
|
|
20
16
|
} from "./cli-fw5r7pfj.js";
|
|
@@ -22,6 +18,10 @@ import {
|
|
|
22
18
|
createWeaveTracer,
|
|
23
19
|
resolveConfig
|
|
24
20
|
} from "./cli-pkdjamer.js";
|
|
21
|
+
import {
|
|
22
|
+
AVAILABLE_PROVIDERS,
|
|
23
|
+
init_types
|
|
24
|
+
} from "./cli-yz80qkzn.js";
|
|
25
25
|
import {
|
|
26
26
|
ALL_TOOL_NAMES,
|
|
27
27
|
ASK_USER_QUESTIONS_TOOL_NAME,
|
|
@@ -38,14 +38,14 @@ import {
|
|
|
38
38
|
planFilePath,
|
|
39
39
|
readPlan,
|
|
40
40
|
sessions
|
|
41
|
-
} from "./cli-
|
|
41
|
+
} from "./cli-tyn3ph6h.js";
|
|
42
42
|
import {
|
|
43
43
|
detectOSAndEnhancePrompt
|
|
44
44
|
} from "./cli-tp1tqn3k.js";
|
|
45
45
|
import {
|
|
46
46
|
read,
|
|
47
47
|
write
|
|
48
|
-
} from "./cli-
|
|
48
|
+
} from "./cli-yv9yjyjz.js";
|
|
49
49
|
import {
|
|
50
50
|
getAutoPopulatedHosts,
|
|
51
51
|
getAutoPopulatedPorts,
|
|
@@ -57,11 +57,7 @@ import {
|
|
|
57
57
|
init_toolset,
|
|
58
58
|
modelSupportsThinking,
|
|
59
59
|
stepCountIs
|
|
60
|
-
} from "./cli-
|
|
61
|
-
import {
|
|
62
|
-
AVAILABLE_MODELS,
|
|
63
|
-
init_models
|
|
64
|
-
} from "./cli-03z6pswp.js";
|
|
60
|
+
} from "./cli-j5p8t7t6.js";
|
|
65
61
|
import"./cli-0ghkg3w6.js";
|
|
66
62
|
import {
|
|
67
63
|
disconnect,
|
|
@@ -73,19 +69,23 @@ import {
|
|
|
73
69
|
selectWorkspace,
|
|
74
70
|
startDeviceFlow,
|
|
75
71
|
validateGateway
|
|
76
|
-
} from "./cli-
|
|
72
|
+
} from "./cli-f3hgmqfz.js";
|
|
77
73
|
import {
|
|
78
74
|
config,
|
|
79
75
|
getPensarApiUrl,
|
|
80
76
|
getPensarConsoleUrl
|
|
81
|
-
} from "./cli-
|
|
77
|
+
} from "./cli-rygppyh4.js";
|
|
78
|
+
import"./cli-gpnb45ck.js";
|
|
82
79
|
import {
|
|
83
80
|
update
|
|
84
|
-
} from "./cli-
|
|
81
|
+
} from "./cli-bxd4x3cx.js";
|
|
85
82
|
import {
|
|
86
83
|
checkForUpdate
|
|
87
|
-
} from "./cli-
|
|
88
|
-
import
|
|
84
|
+
} from "./cli-gj88wb62.js";
|
|
85
|
+
import {
|
|
86
|
+
AVAILABLE_MODELS,
|
|
87
|
+
init_models
|
|
88
|
+
} from "./cli-03z6pswp.js";
|
|
89
89
|
import {
|
|
90
90
|
__commonJS,
|
|
91
91
|
__esm,
|
|
@@ -197,7 +197,8 @@ var init_utils = __esm(() => {
|
|
|
197
197
|
anthropic: "claude-opus-4-6",
|
|
198
198
|
openai: "gpt-5.2-pro",
|
|
199
199
|
google: "gemini-3.1-pro-preview",
|
|
200
|
-
openrouter: "anthropic/claude-opus-4.6"
|
|
200
|
+
openrouter: "anthropic/claude-opus-4.6",
|
|
201
|
+
bedrock: "anthropic.claude-opus-4-6-v1"
|
|
201
202
|
};
|
|
202
203
|
});
|
|
203
204
|
|
|
@@ -69359,7 +69360,7 @@ function AppContent({
|
|
|
69359
69360
|
toast(`Update available: v${currentVersion} → v${latestVersion}. Run: pensar upgrade`, "warn", 8000);
|
|
69360
69361
|
});
|
|
69361
69362
|
const checkAuthToken = async () => {
|
|
69362
|
-
const { isTokenExpired, isConnected: isConnected2 } = await import("./index-
|
|
69363
|
+
const { isTokenExpired, isConnected: isConnected2 } = await import("./index-dwk9e413.js");
|
|
69363
69364
|
if (isConnected2(config2.data) && config2.data.accessToken && isTokenExpired(config2.data.accessToken, 60) && !config2.data.refreshToken && !config2.data.pensarAPIKey) {
|
|
69364
69365
|
toast("Your Pensar Console session has expired. Run /login to refresh.", "warn", 8000);
|
|
69365
69366
|
}
|
|
@@ -7,18 +7,18 @@ import {
|
|
|
7
7
|
SKILL_TOOL_NAMES,
|
|
8
8
|
StepTraceWriter,
|
|
9
9
|
createAllTools
|
|
10
|
-
} from "./cli-
|
|
10
|
+
} from "./cli-tyn3ph6h.js";
|
|
11
11
|
import"./cli-tp1tqn3k.js";
|
|
12
|
-
import"./cli-
|
|
12
|
+
import"./cli-yv9yjyjz.js";
|
|
13
13
|
import"./cli-3y0dgy56.js";
|
|
14
|
-
import"./cli-
|
|
15
|
-
import"./cli-03z6pswp.js";
|
|
14
|
+
import"./cli-j5p8t7t6.js";
|
|
16
15
|
import"./cli-0ghkg3w6.js";
|
|
17
|
-
import"./cli-
|
|
18
|
-
import"./cli-
|
|
19
|
-
import"./cli-am3dgbv8.js";
|
|
20
|
-
import"./cli-jh6h1myg.js";
|
|
16
|
+
import"./cli-f3hgmqfz.js";
|
|
17
|
+
import"./cli-rygppyh4.js";
|
|
21
18
|
import"./cli-gpnb45ck.js";
|
|
19
|
+
import"./cli-bxd4x3cx.js";
|
|
20
|
+
import"./cli-gj88wb62.js";
|
|
21
|
+
import"./cli-03z6pswp.js";
|
|
22
22
|
import"./cli-8rxa073f.js";
|
|
23
23
|
export {
|
|
24
24
|
createAllTools,
|
|
@@ -13,25 +13,25 @@ import {
|
|
|
13
13
|
update,
|
|
14
14
|
write,
|
|
15
15
|
writeRaw
|
|
16
|
-
} from "./cli-
|
|
16
|
+
} from "./cli-yv9yjyjz.js";
|
|
17
17
|
import {
|
|
18
18
|
ToolsetStateSchema,
|
|
19
19
|
exports_toolset,
|
|
20
20
|
init_toolset,
|
|
21
21
|
toggleTool
|
|
22
|
-
} from "./cli-
|
|
23
|
-
import"./cli-03z6pswp.js";
|
|
22
|
+
} from "./cli-j5p8t7t6.js";
|
|
24
23
|
import {
|
|
25
24
|
init_zod,
|
|
26
25
|
zod_default
|
|
27
26
|
} from "./cli-0ghkg3w6.js";
|
|
28
|
-
import"./cli-
|
|
29
|
-
import"./cli-
|
|
30
|
-
import"./cli-
|
|
27
|
+
import"./cli-f3hgmqfz.js";
|
|
28
|
+
import"./cli-rygppyh4.js";
|
|
29
|
+
import"./cli-gpnb45ck.js";
|
|
30
|
+
import"./cli-bxd4x3cx.js";
|
|
31
31
|
import {
|
|
32
32
|
getCurrentVersion
|
|
33
|
-
} from "./cli-
|
|
34
|
-
import"./cli-
|
|
33
|
+
} from "./cli-gj88wb62.js";
|
|
34
|
+
import"./cli-03z6pswp.js";
|
|
35
35
|
import {
|
|
36
36
|
__require,
|
|
37
37
|
__toCommonJS
|
|
@@ -9,15 +9,15 @@ import {
|
|
|
9
9
|
signGatewayRequest,
|
|
10
10
|
startDeviceFlow,
|
|
11
11
|
validateGateway
|
|
12
|
-
} from "./cli-
|
|
12
|
+
} from "./cli-f3hgmqfz.js";
|
|
13
13
|
import {
|
|
14
14
|
ensureValidToken,
|
|
15
15
|
fetchWorkOSClientId,
|
|
16
16
|
isTokenExpired,
|
|
17
17
|
refreshAccessToken
|
|
18
|
-
} from "./cli-
|
|
19
|
-
import"./cli-
|
|
20
|
-
import"./cli-
|
|
18
|
+
} from "./cli-rygppyh4.js";
|
|
19
|
+
import"./cli-bxd4x3cx.js";
|
|
20
|
+
import"./cli-gj88wb62.js";
|
|
21
21
|
import"./cli-8rxa073f.js";
|
|
22
22
|
export {
|
|
23
23
|
validateGateway,
|
|
@@ -3,10 +3,10 @@ import {
|
|
|
3
3
|
getIssue,
|
|
4
4
|
listIssues,
|
|
5
5
|
updateIssue
|
|
6
|
-
} from "./cli-
|
|
7
|
-
import"./cli-
|
|
8
|
-
import"./cli-
|
|
9
|
-
import"./cli-
|
|
6
|
+
} from "./cli-ssekg228.js";
|
|
7
|
+
import"./cli-rygppyh4.js";
|
|
8
|
+
import"./cli-bxd4x3cx.js";
|
|
9
|
+
import"./cli-gj88wb62.js";
|
|
10
10
|
import"./cli-8rxa073f.js";
|
|
11
11
|
|
|
12
12
|
// src/cli/issues.ts
|
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
import {
|
|
3
3
|
listAgentLogs,
|
|
4
4
|
searchAgentLogs
|
|
5
|
-
} from "./cli-
|
|
6
|
-
import"./cli-
|
|
7
|
-
import"./cli-
|
|
8
|
-
import"./cli-
|
|
5
|
+
} from "./cli-ssekg228.js";
|
|
6
|
+
import"./cli-rygppyh4.js";
|
|
7
|
+
import"./cli-bxd4x3cx.js";
|
|
8
|
+
import"./cli-gj88wb62.js";
|
|
9
9
|
import"./cli-8rxa073f.js";
|
|
10
10
|
|
|
11
11
|
// src/cli/logs.ts
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
import {
|
|
2
2
|
OffensiveSecurityAgent
|
|
3
|
-
} from "./cli-
|
|
3
|
+
} from "./cli-tyn3ph6h.js";
|
|
4
4
|
import"./cli-tp1tqn3k.js";
|
|
5
|
-
import"./cli-
|
|
5
|
+
import"./cli-yv9yjyjz.js";
|
|
6
6
|
import"./cli-3y0dgy56.js";
|
|
7
|
-
import"./cli-
|
|
8
|
-
import"./cli-03z6pswp.js";
|
|
7
|
+
import"./cli-j5p8t7t6.js";
|
|
9
8
|
import"./cli-0ghkg3w6.js";
|
|
10
|
-
import"./cli-
|
|
11
|
-
import"./cli-
|
|
12
|
-
import"./cli-am3dgbv8.js";
|
|
13
|
-
import"./cli-jh6h1myg.js";
|
|
9
|
+
import"./cli-f3hgmqfz.js";
|
|
10
|
+
import"./cli-rygppyh4.js";
|
|
14
11
|
import"./cli-gpnb45ck.js";
|
|
12
|
+
import"./cli-bxd4x3cx.js";
|
|
13
|
+
import"./cli-gj88wb62.js";
|
|
14
|
+
import"./cli-03z6pswp.js";
|
|
15
15
|
import"./cli-8rxa073f.js";
|
|
16
16
|
|
|
17
17
|
// src/core/api/offesecAgent.ts
|
|
@@ -2,25 +2,25 @@ import {
|
|
|
2
2
|
DEFAULT_CONCURRENCY,
|
|
3
3
|
runPentestSwarm,
|
|
4
4
|
runPentestWorkflow
|
|
5
|
-
} from "./cli-
|
|
6
|
-
import"./cli-
|
|
7
|
-
import"./cli-
|
|
8
|
-
import"./cli-jp69ygke.js";
|
|
9
|
-
import"./cli-fw5r7pfj.js";
|
|
10
|
-
import"./cli-a9bs4kq9.js";
|
|
5
|
+
} from "./cli-4ssg1gxh.js";
|
|
6
|
+
import"./cli-rem73eb1.js";
|
|
7
|
+
import"./cli-y0v9ccnq.js";
|
|
11
8
|
import"./cli-0fy9j5dw.js";
|
|
12
|
-
import"./cli-
|
|
9
|
+
import"./cli-y6s2z0y2.js";
|
|
10
|
+
import"./cli-fw5r7pfj.js";
|
|
11
|
+
import"./cli-sk682e3p.js";
|
|
12
|
+
import"./cli-tyn3ph6h.js";
|
|
13
13
|
import"./cli-tp1tqn3k.js";
|
|
14
|
-
import"./cli-
|
|
14
|
+
import"./cli-yv9yjyjz.js";
|
|
15
15
|
import"./cli-3y0dgy56.js";
|
|
16
|
-
import"./cli-
|
|
17
|
-
import"./cli-03z6pswp.js";
|
|
16
|
+
import"./cli-j5p8t7t6.js";
|
|
18
17
|
import"./cli-0ghkg3w6.js";
|
|
19
|
-
import"./cli-
|
|
20
|
-
import"./cli-
|
|
21
|
-
import"./cli-am3dgbv8.js";
|
|
22
|
-
import"./cli-jh6h1myg.js";
|
|
18
|
+
import"./cli-f3hgmqfz.js";
|
|
19
|
+
import"./cli-rygppyh4.js";
|
|
23
20
|
import"./cli-gpnb45ck.js";
|
|
21
|
+
import"./cli-bxd4x3cx.js";
|
|
22
|
+
import"./cli-gj88wb62.js";
|
|
23
|
+
import"./cli-03z6pswp.js";
|
|
24
24
|
import"./cli-8rxa073f.js";
|
|
25
25
|
export {
|
|
26
26
|
runPentestWorkflow,
|
|
@@ -3,10 +3,10 @@ import {
|
|
|
3
3
|
dispatchPentest,
|
|
4
4
|
getScan,
|
|
5
5
|
listScans
|
|
6
|
-
} from "./cli-
|
|
7
|
-
import"./cli-
|
|
8
|
-
import"./cli-
|
|
9
|
-
import"./cli-
|
|
6
|
+
} from "./cli-ssekg228.js";
|
|
7
|
+
import"./cli-rygppyh4.js";
|
|
8
|
+
import"./cli-bxd4x3cx.js";
|
|
9
|
+
import"./cli-gj88wb62.js";
|
|
10
10
|
import"./cli-8rxa073f.js";
|
|
11
11
|
|
|
12
12
|
// src/cli/pentests.ts
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
#!/usr/bin/env bun
|
|
2
2
|
import {
|
|
3
3
|
listProjects
|
|
4
|
-
} from "./cli-
|
|
5
|
-
import"./cli-
|
|
6
|
-
import"./cli-
|
|
7
|
-
import"./cli-
|
|
4
|
+
} from "./cli-ssekg228.js";
|
|
5
|
+
import"./cli-rygppyh4.js";
|
|
6
|
+
import"./cli-bxd4x3cx.js";
|
|
7
|
+
import"./cli-gj88wb62.js";
|
|
8
8
|
import"./cli-8rxa073f.js";
|
|
9
9
|
|
|
10
10
|
// src/cli/projects.ts
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
import {
|
|
2
2
|
TargetedPentestAgent
|
|
3
|
-
} from "./cli-
|
|
4
|
-
import"./cli-
|
|
3
|
+
} from "./cli-y0v9ccnq.js";
|
|
4
|
+
import"./cli-tyn3ph6h.js";
|
|
5
5
|
import"./cli-tp1tqn3k.js";
|
|
6
|
-
import"./cli-
|
|
6
|
+
import"./cli-yv9yjyjz.js";
|
|
7
7
|
import"./cli-3y0dgy56.js";
|
|
8
|
-
import"./cli-
|
|
9
|
-
import"./cli-03z6pswp.js";
|
|
8
|
+
import"./cli-j5p8t7t6.js";
|
|
10
9
|
import"./cli-0ghkg3w6.js";
|
|
11
|
-
import"./cli-
|
|
12
|
-
import"./cli-
|
|
13
|
-
import"./cli-am3dgbv8.js";
|
|
14
|
-
import"./cli-jh6h1myg.js";
|
|
10
|
+
import"./cli-f3hgmqfz.js";
|
|
11
|
+
import"./cli-rygppyh4.js";
|
|
15
12
|
import"./cli-gpnb45ck.js";
|
|
13
|
+
import"./cli-bxd4x3cx.js";
|
|
14
|
+
import"./cli-gj88wb62.js";
|
|
15
|
+
import"./cli-03z6pswp.js";
|
|
16
16
|
import"./cli-8rxa073f.js";
|
|
17
17
|
|
|
18
18
|
// src/core/api/targetedPentest.ts
|
|
@@ -2,27 +2,27 @@ import {
|
|
|
2
2
|
buildThreatModelPrompt,
|
|
3
3
|
createSkillsRegistry,
|
|
4
4
|
runOffensiveSecurityAgent
|
|
5
|
-
} from "./cli-
|
|
5
|
+
} from "./cli-2rnp0zf0.js";
|
|
6
6
|
import {
|
|
7
7
|
ALL_TOOL_NAMES,
|
|
8
8
|
ASK_USER_QUESTIONS_TOOL_NAME,
|
|
9
9
|
SKILL_TOOL_NAMES,
|
|
10
10
|
buildBaseSystemPrompt,
|
|
11
11
|
sessions
|
|
12
|
-
} from "./cli-
|
|
12
|
+
} from "./cli-tyn3ph6h.js";
|
|
13
13
|
import"./cli-tp1tqn3k.js";
|
|
14
|
-
import"./cli-
|
|
14
|
+
import"./cli-yv9yjyjz.js";
|
|
15
15
|
import"./cli-3y0dgy56.js";
|
|
16
16
|
import {
|
|
17
17
|
stepCountIs
|
|
18
|
-
} from "./cli-
|
|
19
|
-
import"./cli-03z6pswp.js";
|
|
18
|
+
} from "./cli-j5p8t7t6.js";
|
|
20
19
|
import"./cli-0ghkg3w6.js";
|
|
21
|
-
import"./cli-
|
|
22
|
-
import"./cli-
|
|
23
|
-
import"./cli-am3dgbv8.js";
|
|
24
|
-
import"./cli-jh6h1myg.js";
|
|
20
|
+
import"./cli-f3hgmqfz.js";
|
|
21
|
+
import"./cli-rygppyh4.js";
|
|
25
22
|
import"./cli-gpnb45ck.js";
|
|
23
|
+
import"./cli-bxd4x3cx.js";
|
|
24
|
+
import"./cli-gj88wb62.js";
|
|
25
|
+
import"./cli-03z6pswp.js";
|
|
26
26
|
import"./cli-8rxa073f.js";
|
|
27
27
|
|
|
28
28
|
// src/core/workflows/threatModel.ts
|
|
@@ -24,7 +24,8 @@ var PREFERRED_MODEL_BY_PROVIDER = {
|
|
|
24
24
|
anthropic: "claude-opus-4-6",
|
|
25
25
|
openai: "gpt-5.2-pro",
|
|
26
26
|
google: "gemini-3.1-pro-preview",
|
|
27
|
-
openrouter: "anthropic/claude-opus-4.6"
|
|
27
|
+
openrouter: "anthropic/claude-opus-4.6",
|
|
28
|
+
bedrock: "anthropic.claude-opus-4-6-v1"
|
|
28
29
|
};
|
|
29
30
|
function getConfiguredProviders(config) {
|
|
30
31
|
return AVAILABLE_PROVIDERS.map((provider) => {
|
package/package.json
CHANGED
package/build/agent-xg2xarp3.js
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
CodeAgent
|
|
3
|
-
} from "./cli-a9bs4kq9.js";
|
|
4
|
-
import"./cli-rn3mezj8.js";
|
|
5
|
-
import"./cli-tp1tqn3k.js";
|
|
6
|
-
import"./cli-evenmfmt.js";
|
|
7
|
-
import"./cli-3y0dgy56.js";
|
|
8
|
-
import"./cli-ctb1vg2p.js";
|
|
9
|
-
import"./cli-03z6pswp.js";
|
|
10
|
-
import"./cli-0ghkg3w6.js";
|
|
11
|
-
import"./cli-39d581n4.js";
|
|
12
|
-
import"./cli-mxms90xg.js";
|
|
13
|
-
import"./cli-am3dgbv8.js";
|
|
14
|
-
import"./cli-jh6h1myg.js";
|
|
15
|
-
import"./cli-gpnb45ck.js";
|
|
16
|
-
import"./cli-8rxa073f.js";
|
|
17
|
-
export {
|
|
18
|
-
CodeAgent
|
|
19
|
-
};
|