@pensar/apex 2.6.1 → 2.7.0-canary.6d9d1e0d

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (144) hide show
  1. package/build/agent-davhjnxc.js +13 -0
  2. package/build/{agent-yby11zaq.js → agent-gk4vmr2h.js} +6 -6
  3. package/build/agent-mqqd38dq.js +13 -0
  4. package/build/{agent-runs-g37vkrjr.js → agent-runs-12pmj6vc.js} +16 -16
  5. package/build/{agent-ayreaj6z.js → agent-xtn1masf.js} +5 -5
  6. package/build/{apps-xn6km9yn.js → apps-yjyvn8vk.js} +13 -13
  7. package/build/{auth-d105wc64.js → auth-xzp4f1bh.js} +13 -13
  8. package/build/{blackboxAgent-s56sgx9b.js → blackboxAgent-ettjqj45.js} +6 -6
  9. package/build/{blackboxPentest-ps78v3w7.js → blackboxPentest-kf0pbhp5.js} +11 -11
  10. package/build/{cli-c05y640n.js → cli-0cwdrrq7.js} +1 -1
  11. package/build/{cli-fy6vh2a7.js → cli-0ry9v2cb.js} +1 -1
  12. package/build/{cli-7eea4e2y.js → cli-4mar7kvr.js} +6 -6
  13. package/build/{cli-k2nwxta0.js → cli-5gaxk6hd.js} +2 -2
  14. package/build/{cli-d37a42dc.js → cli-8hxrn15h.js} +8 -8
  15. package/build/{cli-az3xq70v.js → cli-arxx5hbs.js} +1 -1
  16. package/build/{cli-n2en7j5b.js → cli-ge8q6nxr.js} +1 -1
  17. package/build/{cli-1ve18npr.js → cli-gr4az5sf.js} +1 -1
  18. package/build/{cli-709rvekb.js → cli-h5wkaqwe.js} +1 -1
  19. package/build/{cli-65g6rcat.js → cli-hprqe9j2.js} +1 -1
  20. package/build/{cli-kb21qhvm.js → cli-m5ryqeav.js} +2 -2
  21. package/build/{cli-xtc2t6me.js → cli-metec8r8.js} +3 -3
  22. package/build/{cli-dpsw2fe6.js → cli-nj73990n.js} +353 -185
  23. package/build/{cli-ae8jqxqr.js → cli-pchzt5f7.js} +2 -2
  24. package/build/{cli-3sp6nd8d.js → cli-t3m0e9t2.js} +2 -2
  25. package/build/{cli-qgz1q9g5.js → cli-tfaqp0ty.js} +105 -36
  26. package/build/{cli-gx71jcke.js → cli-xpspbhqs.js} +1 -1
  27. package/build/{cli-ngq9dr8n.js → cli-zmeb85er.js} +3 -3
  28. package/build/cli.js +37 -37
  29. package/build/{config-zpqkd5cz.js → config-n03g5jad.js} +1 -1
  30. package/build/{fastStrike-mcjdvwez.js → fastStrike-9mys4r1b.js} +5 -5
  31. package/build/{fixes-kytx5dmj.js → fixes-tcd29w2t.js} +13 -13
  32. package/build/{index-je6hcsqr.js → index-3n19dh6s.js} +1 -1
  33. package/build/{index-wqetp6gq.js → index-42dnvkns.js} +5 -5
  34. package/build/{index-fv64eb32.js → index-6ptkm3fe.js} +2 -2
  35. package/build/{index-qv4cc65p.js → index-93br69mn.js} +13 -13
  36. package/build/{index-4vqdgb42.js → index-hh9bqe4y.js} +1236 -1195
  37. package/build/{index-dr3tg1w3.js → index-k1pvqjaq.js} +1 -1
  38. package/build/{index-r9yjkfrv.js → index-mmmx59w3.js} +4 -4
  39. package/build/{index-n65z6v7b.js → index-msb8ht2s.js} +6 -6
  40. package/build/{index-ns4m4s01.js → index-qtpprc5a.js} +4 -4
  41. package/build/{issues-eb3q9d3a.js → issues-d0e1tzda.js} +13 -13
  42. package/build/{knowledge-fqsvtx0f.js → knowledge-vgvrzey3.js} +13 -13
  43. package/build/lib/{chunk-1azdancq.js → chunk-0ec46jyd.js} +1 -1
  44. package/build/lib/{chunk-9yksqgzr.js → chunk-29bvrw6m.js} +11 -11
  45. package/build/lib/{chunk-z137x08b.js → chunk-3ac8kcj9.js} +5 -5
  46. package/build/lib/{chunk-bb0ekhkw.js → chunk-3g3ksmsv.js} +8 -8
  47. package/build/lib/{chunk-9tt2021m.js → chunk-45nvxhrc.js} +9 -9
  48. package/build/lib/{chunk-w66ce82a.js → chunk-66t5k77r.js} +1 -1
  49. package/build/lib/{chunk-r4j8ybn9.js → chunk-74ddy2e7.js} +37 -20
  50. package/build/lib/{chunk-4hwzqthr.js → chunk-851r7zp8.js} +1 -1
  51. package/build/lib/{chunk-1fy8azee.js → chunk-8m15nv6s.js} +1 -1
  52. package/build/lib/{chunk-7pwa92rn.js → chunk-9etzp9n2.js} +1 -1
  53. package/build/lib/{chunk-xhdpgpkm.js → chunk-acfewabw.js} +2 -2
  54. package/build/lib/{chunk-ba41jh41.js → chunk-bdbd8d8q.js} +297 -127
  55. package/build/lib/{chunk-z96pbjhd.js → chunk-c6gj39ew.js} +1 -1
  56. package/build/lib/{chunk-yrnrbjes.js → chunk-fytt5jz7.js} +1 -1
  57. package/build/lib/{chunk-3c00n0cy.js → chunk-gv1p302b.js} +3 -3
  58. package/build/lib/{chunk-1yct6cra.js → chunk-j1ftnbgr.js} +1 -1
  59. package/build/lib/{chunk-nhfax4gb.js → chunk-mepzy07f.js} +1 -1
  60. package/build/lib/{chunk-e8yy2k73.js → chunk-mqcwxrnh.js} +1 -1
  61. package/build/lib/{chunk-v3dk9j7k.js → chunk-n3kr09mb.js} +11 -11
  62. package/build/lib/{chunk-acgbyf5h.js → chunk-pd487tpr.js} +1 -1
  63. package/build/lib/{chunk-1jvwqnem.js → chunk-rchnq1ez.js} +3 -3
  64. package/build/lib/{chunk-2qsq76xq.js → chunk-wa0q3smh.js} +62 -10
  65. package/build/lib/{chunk-mg03jdmt.js → chunk-xw8d7pv7.js} +1 -1
  66. package/build/lib/{chunk-r2dkp4tb.js → chunk-y9m8yw7k.js} +1 -1
  67. package/build/lib/core/agents/offSecAgent/index.js +7 -7
  68. package/build/lib/core/agents/offSecAgent/subagentSpawner.js +5 -5
  69. package/build/lib/core/agents/offSecAgent/tools/index.js +4 -4
  70. package/build/lib/core/agents/offSecAgent/tools/listMemories.d.ts +11 -1
  71. package/build/lib/core/agents/specialized/attackSurface/blackboxAgent.js +9 -9
  72. package/build/lib/core/agents/specialized/attackSurface/schemas.js +9 -9
  73. package/build/lib/core/agents/specialized/authenticationAgent/index.js +10 -10
  74. package/build/lib/core/agents/specialized/codeAgent/agent.js +9 -9
  75. package/build/lib/core/agents/specialized/findingJudge/agent.js +8 -8
  76. package/build/lib/core/agents/specialized/findingJudge/index.js +3 -3
  77. package/build/lib/core/agents/specialized/patching/index.js +10 -10
  78. package/build/lib/core/agents/specialized/pentest/agent.js +9 -9
  79. package/build/lib/core/agents/specialized/whiteboxAttackSurface/index.js +9 -9
  80. package/build/lib/core/ai/ai.d.ts +23 -6
  81. package/build/lib/core/ai/ai.js +2 -2
  82. package/build/lib/core/ai/index.js +2 -2
  83. package/build/lib/core/ai/models/claude-capabilities.d.ts +3 -2
  84. package/build/lib/core/ai/models/index.d.ts +1 -1
  85. package/build/lib/core/ai/utils.d.ts +2 -0
  86. package/build/lib/core/ai/utils.js +4 -2
  87. package/build/lib/core/api/index.js +19 -19
  88. package/build/lib/core/api/targetedPentest.js +10 -10
  89. package/build/lib/core/config/index.js +1 -1
  90. package/build/lib/core/findings/registry.js +3 -3
  91. package/build/lib/core/session/index.js +2 -2
  92. package/build/lib/core/session/persistence.js +3 -3
  93. package/build/lib/core/workflows/pentest.js +15 -15
  94. package/build/lib/core/workflows/seams.js +4 -4
  95. package/build/lib/core/workflows/whiteboxAttackSurface.js +11 -11
  96. package/build/lib/index.js +22 -22
  97. package/build/{logs-x62b7hk1.js → logs-mvrvrkfa.js} +13 -13
  98. package/build/{native-rollout-evidence-c9yhfqcs.js → native-rollout-evidence-h2za8fyf.js} +3 -3
  99. package/build/{offesecAgent-5whnpeta.js → offesecAgent-r4hz607z.js} +4 -4
  100. package/build/pentest-52s2dn28.js +22 -0
  101. package/build/{pentests-e0f32aqx.js → pentests-yvt9wvxd.js} +13 -13
  102. package/build/recordedRunClient-6z78az3b.js +11 -0
  103. package/build/{targetedPentest-rcbs4nvp.js → targetedPentest-6aeg3nxd.js} +6 -6
  104. package/build/{targets-xj9g3q0z.js → targets-a38xnsgm.js} +13 -13
  105. package/build/threatModel-1gsb7ytk.js +21 -0
  106. package/build/{uninstall-7s784q4a.js → uninstall-kt485ay4.js} +1 -1
  107. package/build/{upload-4gvhwmvr.js → upload-ahw3are7.js} +4 -4
  108. package/build/{utils-cjrz64pc.js → utils-yqdepzr3.js} +3 -3
  109. package/package.json +1 -1
  110. package/src/core/agents/offSecAgent/offensiveSecurityAgent.test.ts +92 -5
  111. package/src/core/agents/offSecAgent/offensiveSecurityAgent.ts +49 -28
  112. package/src/core/agents/offSecAgent/tools/listMemories.test.ts +230 -0
  113. package/src/core/agents/offSecAgent/tools/listMemories.ts +73 -6
  114. package/src/core/ai/ai.operator-context.bench.test.ts +1408 -0
  115. package/src/core/ai/ai.recorded-context.test.ts +74 -0
  116. package/src/core/ai/ai.test.ts +54 -0
  117. package/src/core/ai/ai.ts +299 -80
  118. package/src/core/ai/compactionTelemetry.test.ts +2 -2
  119. package/src/core/ai/models/anthropic.ts +6 -0
  120. package/src/core/ai/models/bedrock.ts +18 -0
  121. package/src/core/ai/models/claude-capabilities.ts +29 -8
  122. package/src/core/ai/models/index.ts +4 -1
  123. package/src/core/ai/models/models.test.ts +23 -0
  124. package/src/core/ai/models/openrouter.ts +6 -0
  125. package/src/core/ai/providers/anthropic-models.test.ts +60 -1
  126. package/src/core/ai/providers/bedrock-models.test.ts +81 -0
  127. package/src/core/ai/providers/gateway-models.test.ts +16 -6
  128. package/src/core/ai/utils.native-rollout-evidence.test.ts +1 -0
  129. package/src/core/ai/utils.ts +189 -143
  130. package/src/core/observability/telemetry.test.ts +2 -3
  131. package/src/tui/components/chat/loading-indicator.tsx +20 -4
  132. package/src/tui/components/chat/message-list.tsx +1 -0
  133. package/src/tui/components/operator-dashboard/run-events.test.ts +3 -1
  134. package/src/tui/components/shared/__tests__/tool-renderer-lifecycle.tsx +18 -0
  135. package/src/tui/components/shared/action-label.test.ts +9 -0
  136. package/src/tui/components/shared/compacting-icon.tsx +18 -0
  137. package/src/tui/components/shared/index.ts +1 -0
  138. package/src/tui/components/shared/tool-registry.ts +1 -0
  139. package/src/tui/components/shared/tool-renderer.tsx +21 -7
  140. package/build/agent-6w7egcf1.js +0 -13
  141. package/build/agent-9zx75feh.js +0 -13
  142. package/build/pentest-e61hc38s.js +0 -22
  143. package/build/recordedRunClient-dp032c32.js +0 -11
  144. package/build/threatModel-jkxfa40s.js +0 -21
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  TargetedPentestAgent2
3
- } from "./chunk-1jvwqnem.js";
3
+ } from "./chunk-rchnq1ez.js";
4
4
 
5
5
  // src/core/runtime/agentExecution.ts
6
6
  function startAgentExecution(agent) {
@@ -6,7 +6,7 @@ import {
6
6
  } from "./chunk-jdjagvgr.js";
7
7
  import {
8
8
  FindingsRegistry2
9
- } from "./chunk-1azdancq.js";
9
+ } from "./chunk-0ec46jyd.js";
10
10
 
11
11
  // src/core/utils/concurrency.ts
12
12
  import { context } from "@opentelemetry/api";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  runWithNativeRolloutSession2
3
- } from "./chunk-ba41jh41.js";
3
+ } from "./chunk-bdbd8d8q.js";
4
4
  import {
5
5
  AgentEventBus2
6
6
  } from "./chunk-7gjdygcx.js";
@@ -9,7 +9,7 @@ import {
9
9
  randomSessionIdFactory2,
10
10
  inProcessSeams2,
11
11
  resolveItemHooks2
12
- } from "./chunk-yrnrbjes.js";
12
+ } from "./chunk-fytt5jz7.js";
13
13
  import {
14
14
  __export
15
15
  } from "./chunk-n0ba7khr.js";
@@ -170,7 +170,7 @@ var runBlackboxChild = async (spec, ctx) => {
170
170
  return { run: () => agent.consume(), drained: () => agent.drained };
171
171
  };
172
172
  var runAuthChild = async (spec, ctx) => {
173
- const { runAuthenticationAgent } = await import("./chunk-9tt2021m.js");
173
+ const { runAuthenticationAgent } = await import("./chunk-45nvxhrc.js");
174
174
  return {
175
175
  run: () => runAuthenticationAgent({
176
176
  target: spec.target,
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  AgentRuntime,
3
3
  defineAgent
4
- } from "./chunk-acgbyf5h.js";
4
+ } from "./chunk-pd487tpr.js";
5
5
 
6
6
  // src/core/agents/specialized/patching/agent.ts
7
7
  import { readFileSync } from "node:fs";
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  createLogger,
3
3
  scopedLogger
4
- } from "./chunk-ba41jh41.js";
4
+ } from "./chunk-bdbd8d8q.js";
5
5
  import {
6
6
  __export
7
7
  } from "./chunk-n0ba7khr.js";
@@ -6,7 +6,7 @@ import {
6
6
  normalizeMessages2,
7
7
  createLogger,
8
8
  scopedLogger
9
- } from "./chunk-ba41jh41.js";
9
+ } from "./chunk-bdbd8d8q.js";
10
10
  import {
11
11
  __export
12
12
  } from "./chunk-n0ba7khr.js";
@@ -1,26 +1,26 @@
1
1
  import {
2
2
  createLogger,
3
3
  scopedLogger
4
- } from "./chunk-ba41jh41.js";
4
+ } from "./chunk-bdbd8d8q.js";
5
5
  import {
6
6
  OffensiveSecurityAgent2
7
- } from "./chunk-r4j8ybn9.js";
7
+ } from "./chunk-74ddy2e7.js";
8
8
  import {
9
9
  inMemoryRegistryProvider2,
10
10
  withFindingPersistedHook2,
11
11
  assertDepth2,
12
12
  inProcessSeams2,
13
13
  resolveItemHooks2
14
- } from "./chunk-yrnrbjes.js";
14
+ } from "./chunk-fytt5jz7.js";
15
15
  import {
16
16
  FindingsRegistry2
17
- } from "./chunk-1azdancq.js";
17
+ } from "./chunk-0ec46jyd.js";
18
18
  import {
19
19
  inProcessSubagentSpawner2
20
- } from "./chunk-3c00n0cy.js";
20
+ } from "./chunk-gv1p302b.js";
21
21
  import {
22
22
  PLAN_MODE_TOOL_NAMES2
23
- } from "./chunk-2qsq76xq.js";
23
+ } from "./chunk-wa0q3smh.js";
24
24
  import {
25
25
  toGrpcPentestContext,
26
26
  grpcAuthorityTarget
@@ -36,11 +36,11 @@ import {
36
36
  } from "./chunk-q5e23acz.js";
37
37
  import {
38
38
  BlackboxAttackSurfaceAgent2
39
- } from "./chunk-1fy8azee.js";
39
+ } from "./chunk-8m15nv6s.js";
40
40
  import {
41
41
  TargetedPentestAgent2,
42
42
  buildPentestSystemPrompt2
43
- } from "./chunk-1jvwqnem.js";
43
+ } from "./chunk-rchnq1ez.js";
44
44
  import {
45
45
  loadSubagentMessages2,
46
46
  saveSubagentData2,
@@ -51,10 +51,10 @@ import {
51
51
  finalizeManifest2,
52
52
  updateManifestEntryStatus2,
53
53
  getCompletedAgentIds2
54
- } from "./chunk-e8yy2k73.js";
54
+ } from "./chunk-mqcwxrnh.js";
55
55
  import {
56
56
  runWhiteboxAttackSurfaceWorkflow2
57
- } from "./chunk-z137x08b.js";
57
+ } from "./chunk-3ac8kcj9.js";
58
58
 
59
59
  // src/core/session/execution-metrics.ts
60
60
  import { existsSync, readFileSync, writeFileSync } from "node:fs";
@@ -672,7 +672,7 @@ async function runPentestSwarm2(input) {
672
672
  }
673
673
  async function runPentestWorkflow2(input) {
674
674
  if (input.fastStrike) {
675
- const { runFastStrike } = await import("./chunk-bb0ekhkw.js");
675
+ const { runFastStrike } = await import("./chunk-3g3ksmsv.js");
676
676
  return runFastStrike(input);
677
677
  }
678
678
  const {
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  OffensiveSecurityAgent2
3
- } from "./chunk-r4j8ybn9.js";
3
+ } from "./chunk-74ddy2e7.js";
4
4
 
5
5
  // src/core/agents/agentRuntime.ts
6
6
  function assembleAgentHooks(opts) {
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  createLogger,
3
3
  scopedLogger
4
- } from "./chunk-ba41jh41.js";
4
+ } from "./chunk-bdbd8d8q.js";
5
5
  import {
6
6
  isMemoryEnabled2
7
7
  } from "./chunk-t5bt5vn1.js";
@@ -15,7 +15,7 @@ import {
15
15
  REPORT_ERROR_TOOL_NAME2,
16
16
  createReportErrorTool2,
17
17
  PentestReportedError2
18
- } from "./chunk-2qsq76xq.js";
18
+ } from "./chunk-wa0q3smh.js";
19
19
  import {
20
20
  GOOGLE_SIGNIN_PROMPT_GUIDANCE,
21
21
  browserEngineForGoogleSignIn
@@ -26,7 +26,7 @@ import {
26
26
  import {
27
27
  AgentRuntime,
28
28
  defineAgent
29
- } from "./chunk-acgbyf5h.js";
29
+ } from "./chunk-pd487tpr.js";
30
30
 
31
31
  // src/core/agents/specialized/pentest/agent.ts
32
32
  import { existsSync, readdirSync, readFileSync } from "node:fs";
@@ -44,7 +44,7 @@ import {
44
44
  import {
45
45
  getCurrentVersion,
46
46
  config2
47
- } from "./chunk-w66ce82a.js";
47
+ } from "./chunk-66t5k77r.js";
48
48
  import {
49
49
  CredentialManager,
50
50
  createLogger,
@@ -53,7 +53,7 @@ import {
53
53
  ensureValidToken,
54
54
  signGatewayRequest,
55
55
  generateObjectResponse2
56
- } from "./chunk-ba41jh41.js";
56
+ } from "./chunk-bdbd8d8q.js";
57
57
  import {
58
58
  EndpointTransportEnum2,
59
59
  GrpcEndpointMetadataSchema2,
@@ -74,7 +74,7 @@ import {
74
74
  } from "./chunk-zrbqn62x.js";
75
75
  import {
76
76
  FindingsRegistry2
77
- } from "./chunk-1azdancq.js";
77
+ } from "./chunk-0ec46jyd.js";
78
78
 
79
79
  // src/core/agents/offSecAgent/tools/addMemory.ts
80
80
  import { tool } from "ai";
@@ -7710,34 +7710,86 @@ Each directory entry is suffixed with "/" for easy identification.`,
7710
7710
  // src/core/agents/offSecAgent/tools/listMemories.ts
7711
7711
  import { tool as tool35 } from "ai";
7712
7712
  import { z as z37 } from "zod";
7713
+ var PAGE_SIZE = 20;
7714
+ var PAGE_CHAR_BUDGET = 12000;
7713
7715
  var listMemoriesInputSchema = z37.object({
7714
7716
  category: z37.enum(MEMORY_CATEGORIES2).optional().describe('Filter by category: "app", "framework", or "general". ' + "Omit to list memories across all categories."),
7715
7717
  tag: z37.string().optional().describe("Optional tag to filter memories by (exact match)"),
7718
+ cursor: z37.object({
7719
+ createdAt: z37.string(),
7720
+ category: z37.enum(MEMORY_CATEGORIES2),
7721
+ id: z37.string()
7722
+ }).optional().describe("Pass the previous nextCursor to continue a listing"),
7716
7723
  toolCallDescription: z37.string().describe("A concise, human-readable description of what this tool call is doing (e.g., 'Listing stored recon notes')")
7717
7724
  });
7725
+ function compareMemories(a, b) {
7726
+ const byCreatedAt = Date.parse(b.createdAt) - Date.parse(a.createdAt);
7727
+ if (byCreatedAt > 0 || byCreatedAt < 0)
7728
+ return byCreatedAt;
7729
+ return a.category.localeCompare(b.category) || a.id.localeCompare(b.id);
7730
+ }
7731
+ function previewSummary(memory) {
7732
+ const title = memory.title.slice(0, 160);
7733
+ const tags = memory.tags.slice(0, 8).map((tag) => tag.slice(0, 48));
7734
+ const truncated = title.length < memory.title.length || tags.length < memory.tags.length || tags.some((tag, index) => tag.length < (memory.tags[index]?.length ?? tag.length));
7735
+ return {
7736
+ id: memory.id,
7737
+ category: memory.category,
7738
+ title,
7739
+ tags,
7740
+ createdAt: memory.createdAt,
7741
+ ...truncated ? { truncated: true } : {}
7742
+ };
7743
+ }
7718
7744
  function listMemories2(ctx) {
7719
7745
  return tool35({
7720
7746
  description: `List saved memories, optionally filtered by category and/or tag.
7721
7747
 
7722
- Returns lightweight summaries (id, category, title, tags, createdAt) sorted by
7723
- most recent first. Use the returned category + id with get_memory to retrieve
7724
- full content.`,
7748
+ Returns up to 20 lightweight summaries (id, category, title, tags, createdAt)
7749
+ sorted by most recent first. Use nextCursor to continue until it is null;
7750
+ count is the current total matching memories. A fresh listing includes newer
7751
+ memories added ahead of a cursor. Titles and tags may be abbreviated in the
7752
+ listing. Use category + id with get_memory to retrieve full content.`,
7725
7753
  inputSchema: listMemoriesInputSchema,
7726
- execute: async ({ category, tag }, { toolCallId }) => {
7754
+ execute: async ({ category, tag, cursor }, { toolCallId }) => {
7727
7755
  try {
7728
7756
  const memories = await listMemories3({ category, tag }, { sessionId: ctx.session.id, toolCallId });
7757
+ const ordered = [...memories].sort(compareMemories);
7758
+ let start = 0;
7759
+ if (cursor) {
7760
+ start = ordered.findIndex((memory) => compareMemories(memory, cursor) > 0);
7761
+ if (start < 0)
7762
+ start = ordered.length;
7763
+ }
7764
+ const page = [];
7765
+ let pageChars = 0;
7766
+ for (const memory of ordered.slice(start, start + PAGE_SIZE)) {
7767
+ const summary = previewSummary(memory);
7768
+ const chars = JSON.stringify(summary).length + 1;
7769
+ if (page.length > 0 && pageChars + chars > PAGE_CHAR_BUDGET)
7770
+ break;
7771
+ page.push(summary);
7772
+ pageChars += chars;
7773
+ }
7774
+ const last = page.at(-1);
7729
7775
  return {
7730
7776
  success: true,
7731
7777
  error: "",
7732
- memories,
7733
- count: memories.length
7778
+ memories: page,
7779
+ count: memories.length,
7780
+ nextCursor: start + page.length < ordered.length && last ? {
7781
+ createdAt: last.createdAt,
7782
+ category: last.category,
7783
+ id: last.id
7784
+ } : null
7734
7785
  };
7735
7786
  } catch (err) {
7736
7787
  return {
7737
7788
  success: false,
7738
7789
  error: err instanceof Error ? err.message : String(err),
7739
7790
  memories: [],
7740
- count: 0
7791
+ count: 0,
7792
+ nextCursor: null
7741
7793
  };
7742
7794
  }
7743
7795
  }
@@ -7,7 +7,7 @@ import {
7
7
  PATCHING_ACTIVE_TOOLS2,
8
8
  readAgentsMd2,
9
9
  PatchingAgent2
10
- } from "./chunk-1yct6cra.js";
10
+ } from "./chunk-j1ftnbgr.js";
11
11
  import {
12
12
  __export
13
13
  } from "./chunk-n0ba7khr.js";
@@ -10,7 +10,7 @@ import {
10
10
  import {
11
11
  AgentRuntime,
12
12
  defineAgent
13
- } from "./chunk-acgbyf5h.js";
13
+ } from "./chunk-pd487tpr.js";
14
14
  import {
15
15
  __export
16
16
  } from "./chunk-n0ba7khr.js";
@@ -5,9 +5,9 @@ import {
5
5
  BASE_SYSTEM_PROMPT2,
6
6
  StepTraceWriter2,
7
7
  OffensiveSecurityAgent2
8
- } from "../../../chunk-r4j8ybn9.js";
9
- import"../../../chunk-3c00n0cy.js";
10
- import"../../../chunk-yrnrbjes.js";
8
+ } from "../../../chunk-74ddy2e7.js";
9
+ import"../../../chunk-gv1p302b.js";
10
+ import"../../../chunk-fytt5jz7.js";
11
11
  import {
12
12
  AgentEventBus2
13
13
  } from "../../../chunk-7gjdygcx.js";
@@ -81,7 +81,7 @@ import {
81
81
  FAST_STRIKE_EXCLUDED_TOOL_NAMES2,
82
82
  PLAN_MODE_TOOL_NAMES2,
83
83
  SKILL_TOOL_NAMES2
84
- } from "../../../chunk-2qsq76xq.js";
84
+ } from "../../../chunk-wa0q3smh.js";
85
85
  import"../../../chunk-ja7j565c.js";
86
86
  import"../../../chunk-3q89v4xv.js";
87
87
  import {
@@ -107,15 +107,15 @@ import {
107
107
  SandboxBrowserBackend2,
108
108
  createSandboxBrowserTools2
109
109
  } from "../../../chunk-fy3bbbqy.js";
110
- import"../../../chunk-1azdancq.js";
110
+ import"../../../chunk-0ec46jyd.js";
111
111
  import"../../../chunk-t5bt5vn1.js";
112
112
  import"../../../chunk-eb4h4k1f.js";
113
113
  import"../../../chunk-vx228eeq.js";
114
- import"../../../chunk-ba41jh41.js";
114
+ import"../../../chunk-bdbd8d8q.js";
115
115
  import"../../../chunk-8vhr65w3.js";
116
116
  import"../../../chunk-2njv7wz3.js";
117
117
  import"../../../chunk-jdjagvgr.js";
118
- import"../../../chunk-w66ce82a.js";
118
+ import"../../../chunk-66t5k77r.js";
119
119
  import"../../../chunk-zrbqn62x.js";
120
120
  import"../../../chunk-mv74mq5n.js";
121
121
  import {
@@ -2,16 +2,16 @@ import {
2
2
  runSpawnedPentestWorker2,
3
3
  inProcessSubagentSpawner2,
4
4
  createInProcessSubagentSpawner2
5
- } from "../../../chunk-3c00n0cy.js";
6
- import"../../../chunk-yrnrbjes.js";
5
+ } from "../../../chunk-gv1p302b.js";
6
+ import"../../../chunk-fytt5jz7.js";
7
7
  import"../../../chunk-7gjdygcx.js";
8
8
  import"../../../chunk-b8eq85d2.js";
9
- import"../../../chunk-1azdancq.js";
10
- import"../../../chunk-ba41jh41.js";
9
+ import"../../../chunk-0ec46jyd.js";
10
+ import"../../../chunk-bdbd8d8q.js";
11
11
  import"../../../chunk-8vhr65w3.js";
12
12
  import"../../../chunk-2njv7wz3.js";
13
13
  import"../../../chunk-jdjagvgr.js";
14
- import"../../../chunk-w66ce82a.js";
14
+ import"../../../chunk-66t5k77r.js";
15
15
  export {
16
16
  createInProcessSubagentSpawner2 as createInProcessSubagentSpawner,
17
17
  inProcessSubagentSpawner2 as inProcessSubagentSpawner,
@@ -92,7 +92,7 @@ import {
92
92
  FAST_STRIKE_EXCLUDED_TOOL_NAMES2,
93
93
  PLAN_MODE_TOOL_NAMES2,
94
94
  SKILL_TOOL_NAMES2
95
- } from "../../../../chunk-2qsq76xq.js";
95
+ } from "../../../../chunk-wa0q3smh.js";
96
96
  import"../../../../chunk-ja7j565c.js";
97
97
  import"../../../../chunk-3q89v4xv.js";
98
98
  import {
@@ -124,15 +124,15 @@ import {
124
124
  SandboxBrowserBackend2,
125
125
  createSandboxBrowserTools2
126
126
  } from "../../../../chunk-fy3bbbqy.js";
127
- import"../../../../chunk-1azdancq.js";
127
+ import"../../../../chunk-0ec46jyd.js";
128
128
  import"../../../../chunk-t5bt5vn1.js";
129
129
  import"../../../../chunk-eb4h4k1f.js";
130
130
  import"../../../../chunk-vx228eeq.js";
131
- import"../../../../chunk-ba41jh41.js";
131
+ import"../../../../chunk-bdbd8d8q.js";
132
132
  import"../../../../chunk-8vhr65w3.js";
133
133
  import"../../../../chunk-2njv7wz3.js";
134
134
  import"../../../../chunk-jdjagvgr.js";
135
- import"../../../../chunk-w66ce82a.js";
135
+ import"../../../../chunk-66t5k77r.js";
136
136
  import"../../../../chunk-zrbqn62x.js";
137
137
  import"../../../../chunk-mv74mq5n.js";
138
138
  import"../../../../chunk-bx94rwt5.js";
@@ -1,13 +1,23 @@
1
1
  import { type MemorySummary } from "../../../memory";
2
2
  import type { ToolContext } from "./types";
3
+ type MemoryCursor = Pick<MemorySummary, "createdAt" | "category" | "id">;
3
4
  export type ListMemoriesResult = {
4
5
  success: boolean;
5
6
  error: string;
6
- memories: MemorySummary[];
7
+ memories: Array<MemorySummary & {
8
+ truncated?: true;
9
+ }>;
7
10
  count: number;
11
+ nextCursor: MemoryCursor | null;
8
12
  };
9
13
  export declare function listMemories(ctx: ToolContext): import("ai").Tool<{
10
14
  toolCallDescription: string;
11
15
  category?: "framework" | "app" | "general" | undefined;
12
16
  tag?: string | undefined;
17
+ cursor?: {
18
+ createdAt: string;
19
+ category: "framework" | "app" | "general";
20
+ id: string;
21
+ } | undefined;
13
22
  }, ListMemoriesResult>;
23
+ export {};
@@ -2,26 +2,26 @@ import {
2
2
  blackboxAttackSurfaceDefinition2,
3
3
  BlackboxAttackSurfaceAgent2,
4
4
  buildBlackboxPrompt2
5
- } from "../../../../chunk-1fy8azee.js";
6
- import"../../../../chunk-acgbyf5h.js";
7
- import"../../../../chunk-r4j8ybn9.js";
8
- import"../../../../chunk-3c00n0cy.js";
9
- import"../../../../chunk-yrnrbjes.js";
5
+ } from "../../../../chunk-8m15nv6s.js";
6
+ import"../../../../chunk-pd487tpr.js";
7
+ import"../../../../chunk-74ddy2e7.js";
8
+ import"../../../../chunk-gv1p302b.js";
9
+ import"../../../../chunk-fytt5jz7.js";
10
10
  import"../../../../chunk-7gjdygcx.js";
11
11
  import"../../../../chunk-b8eq85d2.js";
12
- import"../../../../chunk-2qsq76xq.js";
12
+ import"../../../../chunk-wa0q3smh.js";
13
13
  import"../../../../chunk-ja7j565c.js";
14
14
  import"../../../../chunk-3q89v4xv.js";
15
15
  import"../../../../chunk-fy3bbbqy.js";
16
- import"../../../../chunk-1azdancq.js";
16
+ import"../../../../chunk-0ec46jyd.js";
17
17
  import"../../../../chunk-t5bt5vn1.js";
18
18
  import"../../../../chunk-eb4h4k1f.js";
19
19
  import"../../../../chunk-vx228eeq.js";
20
- import"../../../../chunk-ba41jh41.js";
20
+ import"../../../../chunk-bdbd8d8q.js";
21
21
  import"../../../../chunk-8vhr65w3.js";
22
22
  import"../../../../chunk-2njv7wz3.js";
23
23
  import"../../../../chunk-jdjagvgr.js";
24
- import"../../../../chunk-w66ce82a.js";
24
+ import"../../../../chunk-66t5k77r.js";
25
25
  import"../../../../chunk-zrbqn62x.js";
26
26
  import"../../../../chunk-mv74mq5n.js";
27
27
  import"../../../../chunk-q5e23acz.js";
@@ -1,18 +1,18 @@
1
1
  import"../../../../chunk-7gjdygcx.js";
2
- import"../../../../chunk-w66ce82a.js";
2
+ import"../../../../chunk-66t5k77r.js";
3
3
  import"../../../../chunk-jdjagvgr.js";
4
4
  import"../../../../chunk-2njv7wz3.js";
5
- import"../../../../chunk-ba41jh41.js";
5
+ import"../../../../chunk-bdbd8d8q.js";
6
6
  import"../../../../chunk-8vhr65w3.js";
7
- import"../../../../chunk-r4j8ybn9.js";
7
+ import"../../../../chunk-74ddy2e7.js";
8
8
  import"../../../../chunk-fy3bbbqy.js";
9
9
  import"../../../../chunk-mv74mq5n.js";
10
- import"../../../../chunk-yrnrbjes.js";
10
+ import"../../../../chunk-fytt5jz7.js";
11
11
  import"../../../../chunk-b8eq85d2.js";
12
- import"../../../../chunk-1azdancq.js";
13
- import"../../../../chunk-3c00n0cy.js";
12
+ import"../../../../chunk-0ec46jyd.js";
13
+ import"../../../../chunk-gv1p302b.js";
14
14
  import"../../../../chunk-t5bt5vn1.js";
15
- import"../../../../chunk-2qsq76xq.js";
15
+ import"../../../../chunk-wa0q3smh.js";
16
16
  import"../../../../chunk-eb4h4k1f.js";
17
17
  import {
18
18
  EndpointTransportEnum2,
@@ -24,12 +24,12 @@ import"../../../../chunk-ja7j565c.js";
24
24
  import"../../../../chunk-3q89v4xv.js";
25
25
  import"../../../../chunk-zrbqn62x.js";
26
26
  import"../../../../chunk-q5e23acz.js";
27
- import"../../../../chunk-r2dkp4tb.js";
27
+ import"../../../../chunk-y9m8yw7k.js";
28
28
  import {
29
29
  RiskScoreBreakdownSchema2,
30
30
  RiskScoreSchema2
31
31
  } from "../../../../chunk-xpfg2fbk.js";
32
- import"../../../../chunk-acgbyf5h.js";
32
+ import"../../../../chunk-pd487tpr.js";
33
33
 
34
34
  // src/core/agents/specialized/attackSurface/schemas.ts
35
35
  import { z } from "zod";
@@ -18,30 +18,30 @@ import {
18
18
  ProbeAuthEndpointsInputSchema2,
19
19
  ProbeRegistrationInputSchema2,
20
20
  AttemptRegistrationInputSchema2
21
- } from "../../../../chunk-7pwa92rn.js";
21
+ } from "../../../../chunk-9etzp9n2.js";
22
22
  import {
23
23
  AuthenticationAgent2,
24
24
  runAuthenticationAgent3
25
- } from "../../../../chunk-xhdpgpkm.js";
26
- import"../../../../chunk-acgbyf5h.js";
27
- import"../../../../chunk-r4j8ybn9.js";
28
- import"../../../../chunk-3c00n0cy.js";
29
- import"../../../../chunk-yrnrbjes.js";
25
+ } from "../../../../chunk-acfewabw.js";
26
+ import"../../../../chunk-pd487tpr.js";
27
+ import"../../../../chunk-74ddy2e7.js";
28
+ import"../../../../chunk-gv1p302b.js";
29
+ import"../../../../chunk-fytt5jz7.js";
30
30
  import"../../../../chunk-7gjdygcx.js";
31
31
  import"../../../../chunk-b8eq85d2.js";
32
- import"../../../../chunk-2qsq76xq.js";
32
+ import"../../../../chunk-wa0q3smh.js";
33
33
  import"../../../../chunk-ja7j565c.js";
34
34
  import"../../../../chunk-3q89v4xv.js";
35
35
  import"../../../../chunk-fy3bbbqy.js";
36
- import"../../../../chunk-1azdancq.js";
36
+ import"../../../../chunk-0ec46jyd.js";
37
37
  import"../../../../chunk-t5bt5vn1.js";
38
38
  import"../../../../chunk-eb4h4k1f.js";
39
39
  import"../../../../chunk-vx228eeq.js";
40
- import"../../../../chunk-ba41jh41.js";
40
+ import"../../../../chunk-bdbd8d8q.js";
41
41
  import"../../../../chunk-8vhr65w3.js";
42
42
  import"../../../../chunk-2njv7wz3.js";
43
43
  import"../../../../chunk-jdjagvgr.js";
44
- import"../../../../chunk-w66ce82a.js";
44
+ import"../../../../chunk-66t5k77r.js";
45
45
  import"../../../../chunk-zrbqn62x.js";
46
46
  import"../../../../chunk-mv74mq5n.js";
47
47
  import"../../../../chunk-q5e23acz.js";
@@ -1,26 +1,26 @@
1
1
  import {
2
2
  codeAgentDefinition2,
3
3
  CodeAgent2
4
- } from "../../../../chunk-4hwzqthr.js";
5
- import"../../../../chunk-acgbyf5h.js";
6
- import"../../../../chunk-r4j8ybn9.js";
7
- import"../../../../chunk-3c00n0cy.js";
8
- import"../../../../chunk-yrnrbjes.js";
4
+ } from "../../../../chunk-851r7zp8.js";
5
+ import"../../../../chunk-pd487tpr.js";
6
+ import"../../../../chunk-74ddy2e7.js";
7
+ import"../../../../chunk-gv1p302b.js";
8
+ import"../../../../chunk-fytt5jz7.js";
9
9
  import"../../../../chunk-7gjdygcx.js";
10
10
  import"../../../../chunk-b8eq85d2.js";
11
- import"../../../../chunk-2qsq76xq.js";
11
+ import"../../../../chunk-wa0q3smh.js";
12
12
  import"../../../../chunk-ja7j565c.js";
13
13
  import"../../../../chunk-3q89v4xv.js";
14
14
  import"../../../../chunk-fy3bbbqy.js";
15
- import"../../../../chunk-1azdancq.js";
15
+ import"../../../../chunk-0ec46jyd.js";
16
16
  import"../../../../chunk-t5bt5vn1.js";
17
17
  import"../../../../chunk-eb4h4k1f.js";
18
18
  import"../../../../chunk-vx228eeq.js";
19
- import"../../../../chunk-ba41jh41.js";
19
+ import"../../../../chunk-bdbd8d8q.js";
20
20
  import"../../../../chunk-8vhr65w3.js";
21
21
  import"../../../../chunk-2njv7wz3.js";
22
22
  import"../../../../chunk-jdjagvgr.js";
23
- import"../../../../chunk-w66ce82a.js";
23
+ import"../../../../chunk-66t5k77r.js";
24
24
  import"../../../../chunk-zrbqn62x.js";
25
25
  import"../../../../chunk-mv74mq5n.js";
26
26
  import"../../../../chunk-q5e23acz.js";
@@ -1,18 +1,18 @@
1
1
  import"../../../../chunk-7gjdygcx.js";
2
- import"../../../../chunk-w66ce82a.js";
2
+ import"../../../../chunk-66t5k77r.js";
3
3
  import"../../../../chunk-jdjagvgr.js";
4
4
  import"../../../../chunk-2njv7wz3.js";
5
- import"../../../../chunk-ba41jh41.js";
5
+ import"../../../../chunk-bdbd8d8q.js";
6
6
  import"../../../../chunk-8vhr65w3.js";
7
- import"../../../../chunk-r4j8ybn9.js";
7
+ import"../../../../chunk-74ddy2e7.js";
8
8
  import"../../../../chunk-fy3bbbqy.js";
9
9
  import"../../../../chunk-mv74mq5n.js";
10
- import"../../../../chunk-yrnrbjes.js";
10
+ import"../../../../chunk-fytt5jz7.js";
11
11
  import"../../../../chunk-b8eq85d2.js";
12
- import"../../../../chunk-1azdancq.js";
13
- import"../../../../chunk-3c00n0cy.js";
12
+ import"../../../../chunk-0ec46jyd.js";
13
+ import"../../../../chunk-gv1p302b.js";
14
14
  import"../../../../chunk-t5bt5vn1.js";
15
- import"../../../../chunk-2qsq76xq.js";
15
+ import"../../../../chunk-wa0q3smh.js";
16
16
  import"../../../../chunk-eb4h4k1f.js";
17
17
  import"../../../../chunk-vx228eeq.js";
18
18
  import"../../../../chunk-bx94rwt5.js";
@@ -23,7 +23,7 @@ import"../../../../chunk-q5e23acz.js";
23
23
  import {
24
24
  AgentRuntime,
25
25
  defineAgent
26
- } from "../../../../chunk-acgbyf5h.js";
26
+ } from "../../../../chunk-pd487tpr.js";
27
27
 
28
28
  // src/core/agents/specialized/findingJudge/agent.ts
29
29
  import { stepCountIs } from "ai";
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  judgeFinding2,
3
3
  createJudgeFailureResult2
4
- } from "../../../../chunk-nhfax4gb.js";
5
- import"../../../../chunk-ba41jh41.js";
4
+ } from "../../../../chunk-mepzy07f.js";
5
+ import"../../../../chunk-bdbd8d8q.js";
6
6
  import"../../../../chunk-8vhr65w3.js";
7
7
  import"../../../../chunk-2njv7wz3.js";
8
8
  import"../../../../chunk-jdjagvgr.js";
9
- import"../../../../chunk-w66ce82a.js";
9
+ import"../../../../chunk-66t5k77r.js";
10
10
  export {
11
11
  createJudgeFailureResult2 as createJudgeFailureResult,
12
12
  judgeFinding2 as judgeFinding