@nookplot/runtime 0.5.100 → 0.5.106
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/dist/__tests__/autonomous.guardrails.test.d.ts +2 -0
- package/dist/__tests__/autonomous.guardrails.test.d.ts.map +1 -0
- package/dist/__tests__/autonomous.guardrails.test.js +215 -0
- package/dist/__tests__/autonomous.guardrails.test.js.map +1 -0
- package/dist/__tests__/autonomous.hooks.test.d.ts +2 -0
- package/dist/__tests__/autonomous.hooks.test.d.ts.map +1 -0
- package/dist/__tests__/autonomous.hooks.test.js +107 -0
- package/dist/__tests__/autonomous.hooks.test.js.map +1 -0
- package/dist/__tests__/chatEngine.episodicHook.test.d.ts +2 -0
- package/dist/__tests__/chatEngine.episodicHook.test.d.ts.map +1 -0
- package/dist/__tests__/chatEngine.episodicHook.test.js +160 -0
- package/dist/__tests__/chatEngine.episodicHook.test.js.map +1 -0
- package/dist/__tests__/chatEngine.test.d.ts +2 -0
- package/dist/__tests__/chatEngine.test.d.ts.map +1 -0
- package/dist/__tests__/chatEngine.test.js +482 -0
- package/dist/__tests__/chatEngine.test.js.map +1 -0
- package/dist/__tests__/conversation/compactionMemory.test.d.ts +2 -0
- package/dist/__tests__/conversation/compactionMemory.test.d.ts.map +1 -0
- package/dist/__tests__/conversation/compactionMemory.test.js +447 -0
- package/dist/__tests__/conversation/compactionMemory.test.js.map +1 -0
- package/dist/__tests__/conversation/modelThresholdsParity.test.d.ts +2 -0
- package/dist/__tests__/conversation/modelThresholdsParity.test.d.ts.map +1 -0
- package/dist/__tests__/conversation/modelThresholdsParity.test.js +79 -0
- package/dist/__tests__/conversation/modelThresholdsParity.test.js.map +1 -0
- package/dist/__tests__/guardrails.test.d.ts +2 -0
- package/dist/__tests__/guardrails.test.d.ts.map +1 -0
- package/dist/__tests__/guardrails.test.js +236 -0
- package/dist/__tests__/guardrails.test.js.map +1 -0
- package/dist/__tests__/hooks.test.d.ts +9 -0
- package/dist/__tests__/hooks.test.d.ts.map +1 -0
- package/dist/__tests__/hooks.test.js +188 -0
- package/dist/__tests__/hooks.test.js.map +1 -0
- package/dist/__tests__/querySegmentation.test.d.ts +2 -0
- package/dist/__tests__/querySegmentation.test.d.ts.map +1 -0
- package/dist/__tests__/querySegmentation.test.js +187 -0
- package/dist/__tests__/querySegmentation.test.js.map +1 -0
- package/dist/__tests__/sandbox.test.d.ts +13 -0
- package/dist/__tests__/sandbox.test.d.ts.map +1 -0
- package/dist/__tests__/sandbox.test.js +413 -0
- package/dist/__tests__/sandbox.test.js.map +1 -0
- package/dist/__tests__/wakeUpStack.test.d.ts +2 -0
- package/dist/__tests__/wakeUpStack.test.d.ts.map +1 -0
- package/dist/__tests__/wakeUpStack.test.js +239 -0
- package/dist/__tests__/wakeUpStack.test.js.map +1 -0
- package/dist/actionCatalog.generated.d.ts +1 -1
- package/dist/actionCatalog.generated.d.ts.map +1 -1
- package/dist/actionCatalog.generated.js +125 -21
- package/dist/actionCatalog.generated.js.map +1 -1
- package/dist/autonomous.d.ts +3 -0
- package/dist/autonomous.d.ts.map +1 -1
- package/dist/autonomous.js +108 -7
- package/dist/autonomous.js.map +1 -1
- package/dist/chat/chatEngine.d.ts +15 -0
- package/dist/chat/chatEngine.d.ts.map +1 -1
- package/dist/chat/chatEngine.js +59 -34
- package/dist/chat/chatEngine.js.map +1 -1
- package/dist/connection.d.ts.map +1 -1
- package/dist/connection.js +0 -1
- package/dist/connection.js.map +1 -1
- package/dist/conversation/compactionMemory.d.ts +124 -0
- package/dist/conversation/compactionMemory.d.ts.map +1 -0
- package/dist/conversation/compactionMemory.js +379 -0
- package/dist/conversation/compactionMemory.js.map +1 -0
- package/dist/conversation/conversationLogStore.d.ts +111 -0
- package/dist/conversation/conversationLogStore.d.ts.map +1 -0
- package/dist/conversation/conversationLogStore.js +248 -0
- package/dist/conversation/conversationLogStore.js.map +1 -0
- package/dist/conversation/conversationMemory.d.ts +59 -0
- package/dist/conversation/conversationMemory.d.ts.map +1 -0
- package/dist/conversation/conversationMemory.js +32 -0
- package/dist/conversation/conversationMemory.js.map +1 -0
- package/dist/conversation/index.d.ts +16 -0
- package/dist/conversation/index.d.ts.map +1 -0
- package/dist/conversation/index.js +5 -0
- package/dist/conversation/index.js.map +1 -0
- package/dist/conversation/modelLimits.d.ts +43 -0
- package/dist/conversation/modelLimits.d.ts.map +1 -0
- package/dist/conversation/modelLimits.js +67 -0
- package/dist/conversation/modelLimits.js.map +1 -0
- package/dist/defaultGuardrails.d.ts +21 -0
- package/dist/defaultGuardrails.d.ts.map +1 -0
- package/dist/defaultGuardrails.js +90 -0
- package/dist/defaultGuardrails.js.map +1 -0
- package/dist/episodicMemoryHook.d.ts +39 -0
- package/dist/episodicMemoryHook.d.ts.map +1 -0
- package/dist/episodicMemoryHook.js +58 -0
- package/dist/episodicMemoryHook.js.map +1 -0
- package/dist/guardrails.d.ts +182 -0
- package/dist/guardrails.d.ts.map +1 -0
- package/dist/guardrails.js +277 -0
- package/dist/guardrails.js.map +1 -0
- package/dist/hooks.d.ts +162 -0
- package/dist/hooks.d.ts.map +1 -0
- package/dist/hooks.js +91 -0
- package/dist/hooks.js.map +1 -0
- package/dist/index.d.ts +38 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +51 -3
- package/dist/index.js.map +1 -1
- package/dist/knowledgeContext.d.ts +15 -1
- package/dist/knowledgeContext.d.ts.map +1 -1
- package/dist/knowledgeContext.js +26 -3
- package/dist/knowledgeContext.js.map +1 -1
- package/dist/memory.d.ts +15 -0
- package/dist/memory.d.ts.map +1 -1
- package/dist/memory.js +14 -0
- package/dist/memory.js.map +1 -1
- package/dist/querySegmentation.d.ts +54 -0
- package/dist/querySegmentation.d.ts.map +1 -0
- package/dist/querySegmentation.js +80 -0
- package/dist/querySegmentation.js.map +1 -0
- package/dist/sandbox.d.ts +156 -0
- package/dist/sandbox.d.ts.map +1 -0
- package/dist/sandbox.js +425 -0
- package/dist/sandbox.js.map +1 -0
- package/dist/signalActionMap.d.ts +19 -0
- package/dist/signalActionMap.d.ts.map +1 -1
- package/dist/signalActionMap.js +33 -0
- package/dist/signalActionMap.js.map +1 -1
- package/dist/types.d.ts +23 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/wakeUpStack.d.ts +94 -0
- package/dist/wakeUpStack.d.ts.map +1 -0
- package/dist/wakeUpStack.js +215 -0
- package/dist/wakeUpStack.js.map +1 -0
- package/package.json +1 -1
package/dist/knowledgeContext.js
CHANGED
|
@@ -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
|
-
|
|
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
|
-
|
|
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":"AAAA;;;;;;;;;;;;;;GAcG;
|
|
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
|
package/dist/memory.d.ts.map
CHANGED
|
@@ -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
|
package/dist/memory.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memory.js","sourceRoot":"","sources":["../src/memory.ts"],"names":[],"mappings":"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"}
|
|
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":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AA6CH,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,qBAAqB,uBAAuB,CAAC;AAE1D,MAAM,WAAW,cAAc;IAC7B,yFAAyF;IACzF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,kDAAkD;IAClD,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC;IACtC,sDAAsD;IACtD,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,iFAAiF;IACjF,MAAM,CAAC,EAAE,YAAY,EAAE,CAAC;IACxB,sEAAsE;IACtE,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,iEAAiE;IACjE,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,iDAAiD;IACjD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,2EAA2E;IAC3E,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,sEAAsE;IACtE,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,WAAW;IAC1B,sCAAsC;IACtC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,4CAA4C;IAC5C,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,6DAA6D;IAC7D,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9B;AAED;;;;qEAIqE;AACrE,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,qCAAqC;IACrC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;CAC5D;AAID,8BAAsB,OAAO;IAC3B,0EAA0E;IAC1E,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,IAAI,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC;IAEjE,0CAA0C;IAC1C,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAEnE,+EAA+E;IAC/E,QAAQ,CAAC,GAAG,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAErE,gEAAgE;IAChE,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAEvC,mFAAmF;IACnF,QAAQ,CAAC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAE/B,qCAAqC;IAC/B,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAI7C,2BAA2B;IACrB,EAAE,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAI1C,wEAAwE;IACxE,OAAO,IAAI,qBAAqB,EAAE;CA4BnC;AAwBD,qBAAa,YAAa,SAAQ,OAAO;IACvC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAyB;IAC7C,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAC7B,OAAO,CAAC,MAAM,CAAS;IAEvB,OAAO;WAMM,MAAM,CAAC,IAAI,GAAE,cAAmB,GAAG,OAAO,CAAC,YAAY,CAAC;IAK/D,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,IAAI,GAAE,WAAgB,GAAG,OAAO,CAAC,MAAM,CAAC;IAW5D,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAM1D,GAAG,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAOlE,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAIzB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAG7B;AAWD,qBAAa,aAAc,SAAQ,OAAO;IACxC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAA+E;IACpG,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAiB;IAE1C,OAAO;IAWP,uEAAuE;WAC1D,MAAM,CAAC,IAAI,GAAE,cAAmB,GAAG,OAAO,CAAC,aAAa,CAAC;IAsCtE,+CAA+C;WAClC,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,GAAE,cAAmB,GAAG,OAAO,CAAC,aAAa,CAAC;IAmB5F,mDAAmD;IACnD,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE;QACxB,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC;QACtC,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC7B,MAAM,CAAC,EAAE,YAAY,EAAE,CAAC;QACxB,YAAY,EAAE,OAAO,CAAC;KACvB,GAAG,MAAM,EAAE;IAqCZ,OAAO,CAAC,MAAM,CAAC,cAAc;mBA6BR,aAAa;IAuB5B,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,IAAI,GAAE,WAAgB,GAAG,OAAO,CAAC,MAAM,CAAC;IAa5D,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAS1D,GAAG,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAWlE,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAQ9B,gEAAgE;IAC1D,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAa5B,yDAAyD;IACzD,IAAI,WAAW,IAAI,MAAM,CAExB;CACF;AA6CD;2DAC2D;AAC3D,wBAAgB,SAAS,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,OAAO,CAE1D;AAED;iEACiE;AACjE,wBAAsB,iBAAiB,CAAC,SAAS,SAAW,GAAG,OAAO,CAAC,OAAO,CAAC,CAO9E"}
|