@nookplot/runtime 0.5.100 → 0.5.105

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 (125) hide show
  1. package/dist/__tests__/autonomous.guardrails.test.d.ts +2 -0
  2. package/dist/__tests__/autonomous.guardrails.test.d.ts.map +1 -0
  3. package/dist/__tests__/autonomous.guardrails.test.js +215 -0
  4. package/dist/__tests__/autonomous.guardrails.test.js.map +1 -0
  5. package/dist/__tests__/autonomous.hooks.test.d.ts +2 -0
  6. package/dist/__tests__/autonomous.hooks.test.d.ts.map +1 -0
  7. package/dist/__tests__/autonomous.hooks.test.js +107 -0
  8. package/dist/__tests__/autonomous.hooks.test.js.map +1 -0
  9. package/dist/__tests__/chatEngine.episodicHook.test.d.ts +2 -0
  10. package/dist/__tests__/chatEngine.episodicHook.test.d.ts.map +1 -0
  11. package/dist/__tests__/chatEngine.episodicHook.test.js +160 -0
  12. package/dist/__tests__/chatEngine.episodicHook.test.js.map +1 -0
  13. package/dist/__tests__/chatEngine.test.d.ts +2 -0
  14. package/dist/__tests__/chatEngine.test.d.ts.map +1 -0
  15. package/dist/__tests__/chatEngine.test.js +482 -0
  16. package/dist/__tests__/chatEngine.test.js.map +1 -0
  17. package/dist/__tests__/conversation/compactionMemory.test.d.ts +2 -0
  18. package/dist/__tests__/conversation/compactionMemory.test.d.ts.map +1 -0
  19. package/dist/__tests__/conversation/compactionMemory.test.js +447 -0
  20. package/dist/__tests__/conversation/compactionMemory.test.js.map +1 -0
  21. package/dist/__tests__/conversation/modelThresholdsParity.test.d.ts +2 -0
  22. package/dist/__tests__/conversation/modelThresholdsParity.test.d.ts.map +1 -0
  23. package/dist/__tests__/conversation/modelThresholdsParity.test.js +79 -0
  24. package/dist/__tests__/conversation/modelThresholdsParity.test.js.map +1 -0
  25. package/dist/__tests__/guardrails.test.d.ts +2 -0
  26. package/dist/__tests__/guardrails.test.d.ts.map +1 -0
  27. package/dist/__tests__/guardrails.test.js +236 -0
  28. package/dist/__tests__/guardrails.test.js.map +1 -0
  29. package/dist/__tests__/hooks.test.d.ts +9 -0
  30. package/dist/__tests__/hooks.test.d.ts.map +1 -0
  31. package/dist/__tests__/hooks.test.js +188 -0
  32. package/dist/__tests__/hooks.test.js.map +1 -0
  33. package/dist/__tests__/querySegmentation.test.d.ts +2 -0
  34. package/dist/__tests__/querySegmentation.test.d.ts.map +1 -0
  35. package/dist/__tests__/querySegmentation.test.js +187 -0
  36. package/dist/__tests__/querySegmentation.test.js.map +1 -0
  37. package/dist/__tests__/sandbox.test.d.ts +13 -0
  38. package/dist/__tests__/sandbox.test.d.ts.map +1 -0
  39. package/dist/__tests__/sandbox.test.js +413 -0
  40. package/dist/__tests__/sandbox.test.js.map +1 -0
  41. package/dist/__tests__/wakeUpStack.test.d.ts +2 -0
  42. package/dist/__tests__/wakeUpStack.test.d.ts.map +1 -0
  43. package/dist/__tests__/wakeUpStack.test.js +239 -0
  44. package/dist/__tests__/wakeUpStack.test.js.map +1 -0
  45. package/dist/actionCatalog.generated.d.ts.map +1 -1
  46. package/dist/actionCatalog.generated.js +0 -5
  47. package/dist/actionCatalog.generated.js.map +1 -1
  48. package/dist/autonomous.d.ts +3 -0
  49. package/dist/autonomous.d.ts.map +1 -1
  50. package/dist/autonomous.js +108 -7
  51. package/dist/autonomous.js.map +1 -1
  52. package/dist/chat/chatEngine.d.ts +15 -0
  53. package/dist/chat/chatEngine.d.ts.map +1 -1
  54. package/dist/chat/chatEngine.js +59 -34
  55. package/dist/chat/chatEngine.js.map +1 -1
  56. package/dist/connection.d.ts.map +1 -1
  57. package/dist/connection.js +0 -1
  58. package/dist/connection.js.map +1 -1
  59. package/dist/conversation/compactionMemory.d.ts +124 -0
  60. package/dist/conversation/compactionMemory.d.ts.map +1 -0
  61. package/dist/conversation/compactionMemory.js +379 -0
  62. package/dist/conversation/compactionMemory.js.map +1 -0
  63. package/dist/conversation/conversationLogStore.d.ts +111 -0
  64. package/dist/conversation/conversationLogStore.d.ts.map +1 -0
  65. package/dist/conversation/conversationLogStore.js +248 -0
  66. package/dist/conversation/conversationLogStore.js.map +1 -0
  67. package/dist/conversation/conversationMemory.d.ts +59 -0
  68. package/dist/conversation/conversationMemory.d.ts.map +1 -0
  69. package/dist/conversation/conversationMemory.js +32 -0
  70. package/dist/conversation/conversationMemory.js.map +1 -0
  71. package/dist/conversation/index.d.ts +16 -0
  72. package/dist/conversation/index.d.ts.map +1 -0
  73. package/dist/conversation/index.js +5 -0
  74. package/dist/conversation/index.js.map +1 -0
  75. package/dist/conversation/modelLimits.d.ts +43 -0
  76. package/dist/conversation/modelLimits.d.ts.map +1 -0
  77. package/dist/conversation/modelLimits.js +67 -0
  78. package/dist/conversation/modelLimits.js.map +1 -0
  79. package/dist/defaultGuardrails.d.ts +21 -0
  80. package/dist/defaultGuardrails.d.ts.map +1 -0
  81. package/dist/defaultGuardrails.js +90 -0
  82. package/dist/defaultGuardrails.js.map +1 -0
  83. package/dist/episodicMemoryHook.d.ts +39 -0
  84. package/dist/episodicMemoryHook.d.ts.map +1 -0
  85. package/dist/episodicMemoryHook.js +58 -0
  86. package/dist/episodicMemoryHook.js.map +1 -0
  87. package/dist/guardrails.d.ts +182 -0
  88. package/dist/guardrails.d.ts.map +1 -0
  89. package/dist/guardrails.js +277 -0
  90. package/dist/guardrails.js.map +1 -0
  91. package/dist/hooks.d.ts +162 -0
  92. package/dist/hooks.d.ts.map +1 -0
  93. package/dist/hooks.js +91 -0
  94. package/dist/hooks.js.map +1 -0
  95. package/dist/index.d.ts +38 -3
  96. package/dist/index.d.ts.map +1 -1
  97. package/dist/index.js +51 -3
  98. package/dist/index.js.map +1 -1
  99. package/dist/knowledgeContext.d.ts +15 -1
  100. package/dist/knowledgeContext.d.ts.map +1 -1
  101. package/dist/knowledgeContext.js +26 -3
  102. package/dist/knowledgeContext.js.map +1 -1
  103. package/dist/memory.d.ts +15 -0
  104. package/dist/memory.d.ts.map +1 -1
  105. package/dist/memory.js +14 -0
  106. package/dist/memory.js.map +1 -1
  107. package/dist/querySegmentation.d.ts +54 -0
  108. package/dist/querySegmentation.d.ts.map +1 -0
  109. package/dist/querySegmentation.js +80 -0
  110. package/dist/querySegmentation.js.map +1 -0
  111. package/dist/sandbox.d.ts +156 -0
  112. package/dist/sandbox.d.ts.map +1 -0
  113. package/dist/sandbox.js +425 -0
  114. package/dist/sandbox.js.map +1 -0
  115. package/dist/signalActionMap.d.ts +19 -0
  116. package/dist/signalActionMap.d.ts.map +1 -1
  117. package/dist/signalActionMap.js +33 -0
  118. package/dist/signalActionMap.js.map +1 -1
  119. package/dist/types.d.ts +23 -1
  120. package/dist/types.d.ts.map +1 -1
  121. package/dist/wakeUpStack.d.ts +94 -0
  122. package/dist/wakeUpStack.d.ts.map +1 -0
  123. package/dist/wakeUpStack.js +215 -0
  124. package/dist/wakeUpStack.js.map +1 -0
  125. package/package.json +1 -1
@@ -31,20 +31,43 @@ const MAX_SNIPPET = 120;
31
31
  * Retrieve relevant compiled knowledge for a task description.
32
32
  * Returns a compact markdown context + item IDs for tracking.
33
33
  *
34
+ * @deprecated Use {@link WakeUpStack} from `./wakeUpStack.ts` instead.
35
+ * WakeUpStack provides tiered retrieval (L0 identity, L1 essentials cached
36
+ * per-session, L2 on-demand) which reduces token cost for in-domain signals
37
+ * from ~4000 to ~1950 tokens over a 10-signal session.
38
+ *
39
+ * This function is preserved for backward compatibility and is used internally
40
+ * by WakeUpStack as the L2 on-demand search layer.
41
+ *
34
42
  * @param runtime - Active NookplotRuntime instance
35
43
  * @param taskDescription - What the agent is about to do (used as search query)
36
44
  * @param opts - Optional overrides for max items, min score, etc.
37
45
  */
38
46
  export async function getKnowledgeContext(runtime, taskDescription, opts) {
39
47
  const empty = { markdown: "", itemIds: [], count: 0, available: false };
40
- if (!taskDescription || taskDescription.trim().length < 3)
48
+ // Normalize to array form (Change 2: multi-query support). When passed a
49
+ // single string this collapses to `[taskDescription]` and the URL is built
50
+ // with a single `q=` param — identical to the legacy single-query path.
51
+ const rawQueries = Array.isArray(taskDescription) ? taskDescription : [taskDescription];
52
+ // Validate + trim: each query ≥ 3 chars (matches the legacy single-query
53
+ // check). Cap at 4 query vectors (spec hard cap; gateway enforces the same).
54
+ const queries = rawQueries
55
+ .filter((q) => q && q.trim().length >= 3)
56
+ .slice(0, 4);
57
+ if (queries.length === 0)
41
58
  return empty;
42
59
  const maxItems = opts?.maxItems ?? MAX_ITEMS;
43
60
  const minScore = opts?.minScore ?? MIN_SCORE;
44
61
  const minQuality = opts?.minQuality ?? MIN_QUALITY;
62
+ const selectionMode = opts?.selectionMode;
45
63
  try {
46
- // Search the agent's compiled KG (free, no credits)
47
- const response = await runtime.connection.request("GET", `/v1/agents/me/knowledge?q=${encodeURIComponent(taskDescription.slice(0, 200))}&limit=${maxItems * 2}&include_public=false`);
64
+ // Search the agent's compiled KG (free, no credits). Multi-query callers
65
+ // emit repeated `&q=` params Express parses repeated keys as string[].
66
+ const selectionParam = selectionMode ? `&selection_mode=${selectionMode}` : "";
67
+ const qParams = queries
68
+ .map((q) => `q=${encodeURIComponent(q.slice(0, 200))}`)
69
+ .join("&");
70
+ const response = await runtime.connection.request("GET", `/v1/agents/me/knowledge?${qParams}&limit=${maxItems * 2}&include_public=false${selectionParam}`);
48
71
  const results = response?.results;
49
72
  if (!results || results.length === 0)
50
73
  return empty;
@@ -1 +1 @@
1
- {"version":3,"file":"knowledgeContext.js","sourceRoot":"","sources":["../src/knowledgeContext.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"knowledgeContext.js","sourceRoot":"","sources":["../src/knowledgeContext.ts"],"names":[],"mappings":"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"}
package/dist/memory.d.ts CHANGED
@@ -268,5 +268,20 @@ export declare class MemoryBridge {
268
268
  queryCount: number;
269
269
  }>;
270
270
  }>;
271
+ /**
272
+ * Retrieve the full raw reasoning trace for a specific mining trace embedding.
273
+ * Use this after finding a relevant summary via search to access the complete
274
+ * uncompressed trace.
275
+ *
276
+ * @param sourceId - The UUID of the mining trace embedding
277
+ * @returns Raw trace data including IPFS CID, or null if not found
278
+ */
279
+ getRawTrace(sourceId: string): Promise<{
280
+ sourceId: string;
281
+ traceCid: string | null;
282
+ rawContent: string | null;
283
+ contentText: string;
284
+ domainTags: string[];
285
+ } | null>;
271
286
  }
272
287
  //# sourceMappingURL=memory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"memory.d.ts","sourceRoot":"","sources":["../src/memory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"memory.d.ts","sourceRoot":"","sources":["../src/memory.ts"],"names":[],"mappings":"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"}
package/dist/memory.js CHANGED
@@ -360,6 +360,20 @@ export class MemoryBridge {
360
360
  async getQueryEarnings(days = 30) {
361
361
  return this.connection.request("GET", `/v1/knowledge/earnings?days=${days}`);
362
362
  }
363
+ // ────────────────────────────────────────────────────────
364
+ // Raw Trace Drill-Down
365
+ // ────────────────────────────────────────────────────────
366
+ /**
367
+ * Retrieve the full raw reasoning trace for a specific mining trace embedding.
368
+ * Use this after finding a relevant summary via search to access the complete
369
+ * uncompressed trace.
370
+ *
371
+ * @param sourceId - The UUID of the mining trace embedding
372
+ * @returns Raw trace data including IPFS CID, or null if not found
373
+ */
374
+ async getRawTrace(sourceId) {
375
+ return this.connection.request("GET", `/v1/knowledge/trace/${encodeURIComponent(sourceId)}/raw`);
376
+ }
363
377
  }
364
378
  // signForwardRequest is now imported from "./signing.js"
365
379
  //# sourceMappingURL=memory.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"memory.js","sourceRoot":"","sources":["../src/memory.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAiBH,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAclD,MAAM,OAAO,YAAY;IACN,UAAU,CAAoB;IAE/C,YAAY,UAA6B;QACvC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,KAAK,CAAC,gBAAgB,CAAC,KAA4B;QACjD,uDAAuD;QACvD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAC5C,MAAM,EAAE,oBAAoB,EAAE,KAAK,CACpC,CAAC;QAEF,0EAA0E;QAC1E,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC;QAC9C,IAAI,UAAU,IAAI,QAAQ,CAAC,cAAc,IAAI,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;YAC/E,IAAI,CAAC;gBACH,yDAAyD;gBACzD,mEAAmE;gBACnE,sCAAsC;gBACtC,MAAM,SAAS,GAAG,MAAM,kBAAkB,CACxC,UAAU,EAAE,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,cAAc,CACrE,CAAC;gBAEF,uEAAuE;gBACvE,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAC/C,MAAM,EAAE,WAAW,EACnB,EAAE,GAAG,QAAQ,CAAC,cAAc,EAAE,SAAS,EAAE,CAC1C,CAAC;gBAEF,OAAO,EAAE,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC;YAC3D,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,oEAAoE;gBACpE,8DAA8D;gBAC9D,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBAC7D,OAAO,CAAC,IAAI,CAAC,iEAAiE,GAAG,EAAE,CAAC,CAAC;YACvF,CAAC;QACH,CAAC;QAED,6DAA6D;QAC7D,OAAO,EAAE,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,CAAC;IAC/B,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,cAAc,CAAC,OAA+B;QAClD,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,EAAE,kBAAkB,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC;IAC5E,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,eAAe,CACnB,KAAc,EACd,OAAgD;QAEhD,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;QACrC,IAAI,KAAK;YAAE,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QACtC,IAAI,OAAO,EAAE,SAAS;YAAE,MAAM,CAAC,GAAG,CAAC,WAAW,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;QACnE,IAAI,OAAO,EAAE,KAAK;YAAE,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;QAE/D,MAAM,EAAE,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;QAC7B,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAC5B,KAAK,EACL,kBAAkB,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CACvC,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,YAAY,CAChB,KAAa,EACb,KAAc;QAEd,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,UAAU,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1C,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,EAAE,wBAAwB,kBAAkB,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IAClG,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,aAAa,CAAC,OAAgB;QAClC,MAAM,IAAI,GAAG,OAAO;YAClB,CAAC,CAAC,yBAAyB,kBAAkB,CAAC,OAAO,CAAC,EAAE;YACxD,CAAC,CAAC,uBAAuB,CAAC;QAC5B,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAmB,KAAK,EAAE,IAAI,CAAC,CAAC;IAChE,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,eAAe,CAAC,KAAc;QAalC,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,UAAU,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1C,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,EAAE,yBAAyB,EAAE,EAAE,CAAC,CAAC;IACvE,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,KAAK,CAAC,eAAe,CAAC,KAA2B;QAC/C,8CAA8C;QAC9C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAC5C,MAAM,EAAE,uBAAuB,EAAE,KAAK,CACvC,CAAC;QAEF,0EAA0E;QAC1E,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC;QAC9C,IAAI,UAAU,IAAI,QAAQ,CAAC,cAAc,IAAI,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;YAC/E,IAAI,CAAC;gBACH,MAAM,SAAS,GAAG,MAAM,kBAAkB,CACxC,UAAU,EAAE,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,cAAc,CACrE,CAAC;gBAEF,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAC/C,MAAM,EAAE,WAAW,EACnB,EAAE,GAAG,QAAQ,CAAC,cAAc,EAAE,SAAS,EAAE,CAC1C,CAAC;gBAEF,OAAO;oBACL,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,WAAW,EAAE,QAAQ,CAAC,WAAW;oBACjC,MAAM,EAAE,WAAW,CAAC,MAAM;iBAC3B,CAAC;YACJ,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBAC7D,OAAO,CAAC,IAAI,CAAC,uDAAuD,GAAG,EAAE,CAAC,CAAC;YAC7E,CAAC;QACH,CAAC;QAED,gEAAgE;QAChE,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,WAAW,EAAE,QAAQ,CAAC,WAAW,EAAE,CAAC;IACjE,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,IAAI,CAAC,KAAgB;QACzB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAC5C,MAAM,EAAE,kBAAkB,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CACjE,CAAC;QAEF,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC;QAC9C,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,EAAE,KAAK,EAAE,uDAAuD,EAAE,CAAC;QAC5E,CAAC;QACD,IAAI,CAAC,QAAQ,CAAC,cAAc,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;YACpE,OAAO,EAAE,KAAK,EAAE,uDAAuD,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;QAC9G,CAAC;QAED,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,MAAM,kBAAkB,CACxC,UAAU,EAAE,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,cAAc,CACrE,CAAC;YAEF,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAC/C,MAAM,EAAE,WAAW,EACnB,EAAE,GAAG,QAAQ,CAAC,cAAc,EAAE,SAAS,EAAE,CAC1C,CAAC;YAEF,OAAO,EAAE,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC;QACxC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAC7D,OAAO,CAAC,IAAI,CAAC,yCAAyC,GAAG,EAAE,CAAC,CAAC;YAC7D,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;QACxB,CAAC;IACH,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,UAAU,CAAC,GAAW;QAC1B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAC5C,MAAM,EAAE,yBAAyB,EAAE,EAAE,GAAG,EAAE,CAC3C,CAAC;QAEF,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC;QAC9C,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,EAAE,KAAK,EAAE,+DAA+D,EAAE,CAAC;QACpF,CAAC;QACD,IAAI,CAAC,QAAQ,CAAC,cAAc,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;YACpE,OAAO,EAAE,KAAK,EAAE,uDAAuD,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;QAC9G,CAAC;QAED,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,MAAM,kBAAkB,CACxC,UAAU,EAAE,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,cAAc,CACrE,CAAC;YAEF,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAC/C,MAAM,EAAE,WAAW,EACnB,EAAE,GAAG,QAAQ,CAAC,cAAc,EAAE,SAAS,EAAE,CAC1C,CAAC;YAEF,OAAO,EAAE,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC;QACxC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAC7D,OAAO,CAAC,IAAI,CAAC,gDAAgD,GAAG,EAAE,CAAC,CAAC;YACpE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;QACxB,CAAC;IACH,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,cAAc,CAAC,KAA0B;QAC7C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAC5C,MAAM,EAAE,qBAAqB,EAAE;YAC7B,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,EAAE;YACxB,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,EAAE;SACvB,CACF,CAAC;QAEF,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC;QAC9C,IAAI,UAAU,IAAI,QAAQ,CAAC,cAAc,IAAI,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;YAC/E,IAAI,CAAC;gBACH,MAAM,SAAS,GAAG,MAAM,kBAAkB,CACxC,UAAU,EAAE,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,cAAc,CACrE,CAAC;gBAEF,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAC/C,MAAM,EAAE,WAAW,EACnB,EAAE,GAAG,QAAQ,CAAC,cAAc,EAAE,SAAS,EAAE,CAC1C,CAAC;gBAEF,OAAO,EAAE,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC;YAC3D,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBAC7D,OAAO,CAAC,IAAI,CAAC,4CAA4C,GAAG,EAAE,CAAC,CAAC;YAClE,CAAC;QACH,CAAC;QAED,OAAO,EAAE,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,CAAC;IAC/B,CAAC;IAED,+DAA+D;IAC/D,4BAA4B;IAC5B,+DAA+D;IAE/D,+DAA+D;IAC/D,oEAAoE;IACpE,+DAA+D;IAE/D;;;;;;;;;;OAUG;IACH,KAAK,CAAC,WAAW,CACf,IAAY,EACZ,OAAe,EACf,IAOC;QAED,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,EAAE,wBAAwB,EAAE;YAC/D,IAAI;YACJ,OAAO;YACP,GAAG,IAAI;SACR,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,MAAM,CACV,KAAa,EACb,IAIC;QAED,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,EAAE,yBAAyB,EAAE;YAChE,KAAK;YACL,GAAG,IAAI;SACR,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,YAAY,CAChB,IAAa,EACb,KAAc,EACd,MAAe;QAEf,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;QACrC,IAAI,IAAI;YAAE,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACnC,IAAI,KAAK,IAAI,IAAI;YAAE,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QACtD,IAAI,MAAM,IAAI,IAAI;YAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;QACzD,MAAM,EAAE,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;QAC7B,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,EAAE,wBAAwB,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACtF,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,cAAc;QAClB,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,EAAE,wBAAwB,CAAC,CAAC;IAClE,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,cAAc;QAClB,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,EAAE,yBAAyB,CAAC,CAAC;IACpE,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,cAAc,CAAC,IAA6B;QAChD,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,EAAE,yBAAyB,EAAE,IAAI,CAAC,CAAC;IAC1E,CAAC;IAED,+DAA+D;IAC/D,4BAA4B;IAC5B,+DAA+D;IAE/D;;;;;;;;OAQG;IACH,KAAK,CAAC,aAAa,CAAC,KAKnB;QAmBC,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,EAAE,qBAAqB,EAAE,KAAK,CAAC,CAAC;IACvE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,eAAe,CAAC,KAAK,GAAG,EAAE,EAAE,MAAM,GAAG,CAAC;QAW1C,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAC5B,KAAK,EACL,+BAA+B,KAAK,WAAW,MAAM,EAAE,CACxD,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,gBAAgB,CAAC,IAAI,GAAG,EAAE;QAU9B,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,EAAE,+BAA+B,IAAI,EAAE,CAAC,CAAC;IAC/E,CAAC;CACF;AAED,yDAAyD"}
1
+ {"version":3,"file":"memory.js","sourceRoot":"","sources":["../src/memory.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,54 @@
1
+ /**
2
+ * Query Segmentation — multi-granularity query expansion for WakeUpStack L2.
3
+ *
4
+ * Latent Briefing's core observation is that on hard, multi-hypothesis queries,
5
+ * a single pooled query embedding (the standard RAG pattern) produces a
6
+ * "center of mass" vector that doesn't match any single relevant item well —
7
+ * individual concepts inside the task get averaged away.
8
+ *
9
+ * This module approximates Latent Briefing's per-position attention query
10
+ * approach using portable, cross-model content-layer primitives: split the
11
+ * task into multiple sub-queries (full, sliding-window segments, named
12
+ * entities, question-anchored spans) and let the gateway take `MAX` similarity
13
+ * across all of them. See SPEC_latent-briefing-inspired-upgrades.md Change 2.
14
+ *
15
+ * Pure string manipulation — no NLP dependency. A proper entity extractor
16
+ * would improve recall marginally but isn't worth the dependency for v1.
17
+ *
18
+ * @module querySegmentation
19
+ */
20
+ export interface SegmentedQuery {
21
+ /** Complete task string, kept as the primary query (preserves baseline). */
22
+ full: string;
23
+ /** Sliding-window substrings of the task (only emitted for long tasks). */
24
+ segments: string[];
25
+ /** Extracted entities — #hashtags, @mentions, capitalized multi-word phrases. */
26
+ entities: string[];
27
+ /** Noun phrases extracted from question-word anchors ("what is X" → "X"). */
28
+ questions: string[];
29
+ }
30
+ /**
31
+ * Decompose a task description into multiple query granularities.
32
+ *
33
+ * @param task - The task/query text to segment.
34
+ * @param maxSegments - Cap on sliding-window segments (default 3). Kept low
35
+ * because the gateway only embeds up to 4 query vectors total per call.
36
+ */
37
+ export declare function segmentQuery(task: string, maxSegments?: number): SegmentedQuery;
38
+ /**
39
+ * Flatten a `SegmentedQuery` into a deduplicated, length-capped list of
40
+ * query strings suitable for passing to the gateway's multi-query
41
+ * `searchKnowledge` endpoint. The full-string query is always first so
42
+ * the single-query/backward-compat path keeps its exact behavior when
43
+ * segments/entities/questions are empty.
44
+ *
45
+ * @param max - Hard cap on the number of query strings returned (default 4).
46
+ * The gateway enforces the same cap server-side.
47
+ */
48
+ export declare function queriesFromSegmented(s: SegmentedQuery, max?: number): string[];
49
+ /**
50
+ * Convenience wrapper: segment a task and return the flattened query list in
51
+ * one call. Shorthand for `queriesFromSegmented(segmentQuery(task), max)`.
52
+ */
53
+ export declare function segmentTaskForQuery(task: string, max?: number): string[];
54
+ //# sourceMappingURL=querySegmentation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"querySegmentation.d.ts","sourceRoot":"","sources":["../src/querySegmentation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,MAAM,WAAW,cAAc;IAC7B,4EAA4E;IAC5E,IAAI,EAAE,MAAM,CAAC;IACb,2EAA2E;IAC3E,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,iFAAiF;IACjF,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,6EAA6E;IAC7E,SAAS,EAAE,MAAM,EAAE,CAAC;CACrB;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,SAAI,GAAG,cAAc,CA0C1E;AAED;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,cAAc,EAAE,GAAG,SAAI,GAAG,MAAM,EAAE,CAKzE;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,SAAI,GAAG,MAAM,EAAE,CAEnE"}
@@ -0,0 +1,80 @@
1
+ /**
2
+ * Query Segmentation — multi-granularity query expansion for WakeUpStack L2.
3
+ *
4
+ * Latent Briefing's core observation is that on hard, multi-hypothesis queries,
5
+ * a single pooled query embedding (the standard RAG pattern) produces a
6
+ * "center of mass" vector that doesn't match any single relevant item well —
7
+ * individual concepts inside the task get averaged away.
8
+ *
9
+ * This module approximates Latent Briefing's per-position attention query
10
+ * approach using portable, cross-model content-layer primitives: split the
11
+ * task into multiple sub-queries (full, sliding-window segments, named
12
+ * entities, question-anchored spans) and let the gateway take `MAX` similarity
13
+ * across all of them. See SPEC_latent-briefing-inspired-upgrades.md Change 2.
14
+ *
15
+ * Pure string manipulation — no NLP dependency. A proper entity extractor
16
+ * would improve recall marginally but isn't worth the dependency for v1.
17
+ *
18
+ * @module querySegmentation
19
+ */
20
+ /**
21
+ * Decompose a task description into multiple query granularities.
22
+ *
23
+ * @param task - The task/query text to segment.
24
+ * @param maxSegments - Cap on sliding-window segments (default 3). Kept low
25
+ * because the gateway only embeds up to 4 query vectors total per call.
26
+ */
27
+ export function segmentQuery(task, maxSegments = 3) {
28
+ const trimmed = task.trim();
29
+ const words = trimmed.split(/\s+/).filter((w) => w.length > 0);
30
+ // ── Sliding-window segments ──
31
+ // Only emit segments for tasks long enough to benefit — short queries go
32
+ // through as a single full-string embedding and don't need segmentation.
33
+ const segments = [];
34
+ if (words.length >= 10) {
35
+ const windowSize = 15;
36
+ const stride = 8;
37
+ for (let i = 0; i + windowSize <= words.length && segments.length < maxSegments; i += stride) {
38
+ segments.push(words.slice(i, i + windowSize).join(" "));
39
+ }
40
+ }
41
+ // ── Entity extraction ──
42
+ // Three cheap signals:
43
+ // 1. #hashtags / @mentions (explicit tagging)
44
+ // 2. Capitalized multi-word phrases ("Latent Briefing", "Bounty Escrow")
45
+ const hashtagMatches = Array.from(trimmed.matchAll(/[#@]\w+/g)).map((m) => m[0]);
46
+ const capMatches = Array.from(trimmed.matchAll(/\b[A-Z][a-z]+(?:\s+[A-Z][a-z]+)+/g)).map((m) => m[0]);
47
+ const entities = Array.from(new Set([...hashtagMatches, ...capMatches])).slice(0, 2);
48
+ // ── Question spans ──
49
+ // "what is X", "how do I Y", etc. — extract the target noun phrase.
50
+ const questions = [];
51
+ const qMatch = trimmed.match(/(?:what is|how do i|how to|why does|when should)\s+([a-z\s]{3,40})/i);
52
+ if (qMatch?.[1]) {
53
+ const phrase = qMatch[1].trim();
54
+ if (phrase.length >= 3)
55
+ questions.push(phrase);
56
+ }
57
+ return { full: trimmed, segments, entities, questions };
58
+ }
59
+ /**
60
+ * Flatten a `SegmentedQuery` into a deduplicated, length-capped list of
61
+ * query strings suitable for passing to the gateway's multi-query
62
+ * `searchKnowledge` endpoint. The full-string query is always first so
63
+ * the single-query/backward-compat path keeps its exact behavior when
64
+ * segments/entities/questions are empty.
65
+ *
66
+ * @param max - Hard cap on the number of query strings returned (default 4).
67
+ * The gateway enforces the same cap server-side.
68
+ */
69
+ export function queriesFromSegmented(s, max = 4) {
70
+ const all = [s.full, ...s.segments, ...s.entities, ...s.questions].filter((q) => q && q.length >= 2);
71
+ return Array.from(new Set(all)).slice(0, max);
72
+ }
73
+ /**
74
+ * Convenience wrapper: segment a task and return the flattened query list in
75
+ * one call. Shorthand for `queriesFromSegmented(segmentQuery(task), max)`.
76
+ */
77
+ export function segmentTaskForQuery(task, max = 4) {
78
+ return queriesFromSegmented(segmentQuery(task), max);
79
+ }
80
+ //# sourceMappingURL=querySegmentation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"querySegmentation.js","sourceRoot":"","sources":["../src/querySegmentation.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,156 @@
1
+ /**
2
+ * Sandbox — abstract base for agent-local code execution.
3
+ *
4
+ * `LocalSandbox` runs commands directly on the host (no isolation, dev only).
5
+ * `DockerSandbox` spawns a long-lived container and shells out to `docker exec`
6
+ * for each call. Both share the same surface so callers can swap them via:
7
+ *
8
+ * const sandbox = process.env.NODE_ENV === "production"
9
+ * ? await DockerSandbox.create({ image: "python:3.12.7-slim" })
10
+ * : await LocalSandbox.create();
11
+ *
12
+ * Sandboxes are AGENT-LOCAL — they are never registered in `ACTION_CATALOG`
13
+ * and never reachable over the network. `asTools()` returns local tool specs
14
+ * an agent can hand to its LLM, but the dispatch happens entirely in-process.
15
+ *
16
+ * Adversarial defaults (DockerSandbox):
17
+ * - `--network none` unless `allowNetwork: true`.
18
+ * - `--cpus 1 --memory 512m` unless overridden.
19
+ * - Mounts only under the caller's cwd unless `allowAnyMount: true`.
20
+ * - Mounts are read-only unless `readonly: false` is set per-mount.
21
+ * - Default image is `python:3.12.7-slim` — pinned minor to resist tag
22
+ * re-publish; callers running untrusted code at scale should override to
23
+ * a digest (`python@sha256:…`) for true immutability.
24
+ * - `close()` is idempotent and actually removes the container.
25
+ *
26
+ * @module sandbox
27
+ */
28
+ export interface SandboxMount {
29
+ host: string;
30
+ container: string;
31
+ /**
32
+ * Default: read-only. Pass `readonly: false` to enable writes. Read-only is
33
+ * the safer default because untrusted code inside the sandbox cannot use a
34
+ * writable mount to persist changes back to the host filesystem.
35
+ */
36
+ readonly?: boolean;
37
+ }
38
+ /**
39
+ * Default Docker image. Pinned to a specific patch version + `slim` variant:
40
+ * - `slim` reduces attack surface (no build toolchain, no compilers).
41
+ * - Pinning to `3.12.7` resists the "tag re-publish" supply-chain vector
42
+ * where a fresh push to `python:3.12` replaces the content behind the tag.
43
+ *
44
+ * Callers running untrusted code at scale SHOULD override with a digest pin:
45
+ * new DockerSandbox({ image: "python@sha256:<digest>" })
46
+ *
47
+ * Bump this default when Python ships a meaningful security release; the
48
+ * argv-injection regex for `image` still requires leading alphanumeric.
49
+ */
50
+ export declare const DEFAULT_SANDBOX_IMAGE = "python:3.12.7-slim";
51
+ export interface SandboxOptions {
52
+ /** Container image. Default {@link DEFAULT_SANDBOX_IMAGE}. Ignored by `LocalSandbox`. */
53
+ image?: string;
54
+ /** Container port → host port (null = random). */
55
+ ports?: Record<number, number | null>;
56
+ /** Env vars passed into the container / child env. */
57
+ env?: Record<string, string>;
58
+ /** Bind mounts. By default rejected if outside cwd; `allowAnyMount` opts out. */
59
+ mounts?: SandboxMount[];
60
+ /** Allow mount paths outside the caller's cwd. Audit your callers. */
61
+ allowAnyMount?: boolean;
62
+ /** Allow container network access. Off by default for Docker. */
63
+ allowNetwork?: boolean;
64
+ /** CPU limit (cores). Default 1. Docker only. */
65
+ cpus?: number;
66
+ /** Memory limit (e.g. `"512m"`, `"2g"`). Default `"512m"`. Docker only. */
67
+ memory?: string;
68
+ /** Override `docker` binary path. Default `"docker"`. Docker only. */
69
+ dockerBin?: string;
70
+ }
71
+ export interface ExecOptions {
72
+ /** Stdin to pipe into the process. */
73
+ input?: string;
74
+ /** Working directory inside the sandbox. */
75
+ cwd?: string;
76
+ /** Per-call env additions (merged on top of sandbox env). */
77
+ env?: Record<string, string>;
78
+ }
79
+ /** Local tool definition the sandbox exposes via `asTools()`.
80
+ *
81
+ * Distinct from `ToolDefinition` in `tools.ts` (which mirrors the gateway
82
+ * action registry). This shape is for in-process LLM tool-calling — the
83
+ * invoke fn dispatches inside this runtime, never over the wire. */
84
+ export interface SandboxToolDefinition {
85
+ name: string;
86
+ description: string;
87
+ /** JSON Schema of the tool input. */
88
+ parameters: Record<string, unknown>;
89
+ invoke: (args: Record<string, unknown>) => Promise<string>;
90
+ }
91
+ export declare abstract class Sandbox {
92
+ /** Run a command. Returns stdout. Throws with stderr on non-zero exit. */
93
+ abstract exec(cmd: string[], opts?: ExecOptions): Promise<string>;
94
+ /** Copy a local file into the sandbox. */
95
+ abstract put(localPath: string, sandboxPath: string): Promise<void>;
96
+ /** Copy a sandbox file out to a local path. Returns the local path written. */
97
+ abstract get(sandboxPath: string, localPath: string): Promise<string>;
98
+ /** Map a container port to a reachable host endpoint string. */
99
+ abstract endpoint(port: number): string;
100
+ /** Idempotent. Safe to call multiple times. Tests verify the resource is freed. */
101
+ abstract close(): Promise<void>;
102
+ /** Run a Python script via stdin. */
103
+ python(script: string): Promise<string>;
104
+ /** Run a shell command. */
105
+ sh(command: string): Promise<string>;
106
+ /** Returns local tool specs callers can pass to their LLM tool list. */
107
+ asTools(): SandboxToolDefinition[];
108
+ }
109
+ export declare class LocalSandbox extends Sandbox {
110
+ private readonly env;
111
+ private readonly cwd;
112
+ private closed;
113
+ private constructor();
114
+ static create(opts?: SandboxOptions): Promise<LocalSandbox>;
115
+ exec(cmd: string[], opts?: ExecOptions): Promise<string>;
116
+ put(localPath: string, sandboxPath: string): Promise<void>;
117
+ get(sandboxPath: string, localPath: string): Promise<string>;
118
+ endpoint(_port: number): string;
119
+ close(): Promise<void>;
120
+ }
121
+ export declare class DockerSandbox extends Sandbox {
122
+ private readonly opts;
123
+ private readonly internal;
124
+ private constructor();
125
+ /** Spin up a long-lived container. Throws if Docker is unreachable. */
126
+ static create(opts?: SandboxOptions): Promise<DockerSandbox>;
127
+ /** Reattach to an existing container by id. */
128
+ static connect(containerId: string, opts?: SandboxOptions): Promise<DockerSandbox>;
129
+ /** Visible for tests — does NOT execute docker. */
130
+ static buildRunArgs(opts: {
131
+ image: string;
132
+ cpus: number;
133
+ memory: string;
134
+ ports?: Record<number, number | null>;
135
+ env?: Record<string, string>;
136
+ mounts?: SandboxMount[];
137
+ allowNetwork: boolean;
138
+ }): string[];
139
+ private static validateMounts;
140
+ private static discoverPorts;
141
+ exec(cmd: string[], opts?: ExecOptions): Promise<string>;
142
+ put(localPath: string, sandboxPath: string): Promise<void>;
143
+ get(sandboxPath: string, localPath: string): Promise<string>;
144
+ endpoint(port: number): string;
145
+ /** Idempotent. Force-removes the container and marks closed. */
146
+ close(): Promise<void>;
147
+ /** Test inspection — container id assigned at create. */
148
+ get containerId(): string;
149
+ }
150
+ /** Sentinel for downstream code that wants to detect a sandbox at the type
151
+ * level without importing the abstract class directly. */
152
+ export declare function isSandbox(value: unknown): value is Sandbox;
153
+ /** Returns true if `docker version` succeeds. Useful for callers that want
154
+ * to fall back to `LocalSandbox` when Docker is unavailable. */
155
+ export declare function isDockerAvailable(dockerBin?: string): Promise<boolean>;
156
+ //# sourceMappingURL=sandbox.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sandbox.d.ts","sourceRoot":"","sources":["../src/sandbox.ts"],"names":[],"mappings":"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"}