@compresr/sdk 1.5.2 → 1.5.3
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/cjs/agents/tools/web-search.d.ts.map +1 -1
- package/dist/cjs/agents/tools/web-search.js +44 -3
- package/dist/cjs/agents/tools/web-search.js.map +1 -1
- package/dist/esm/agents/tools/web-search.d.ts.map +1 -1
- package/dist/esm/agents/tools/web-search.js +44 -3
- package/dist/esm/agents/tools/web-search.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web-search.d.ts","sourceRoot":"","sources":["../../../../src/agents/tools/web-search.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAIrE;;;kCAGkC;AAClC,MAAM,MAAM,qBAAqB,GAAG,uBAAuB,CAAC;AAE5D,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACvC,cAAc,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACvC,oEAAoE;IACpE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oEAAoE;IACpE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC;
|
|
1
|
+
{"version":3,"file":"web-search.d.ts","sourceRoot":"","sources":["../../../../src/agents/tools/web-search.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAIrE;;;kCAGkC;AAClC,MAAM,MAAM,qBAAqB,GAAG,uBAAuB,CAAC;AAE5D,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACvC,cAAc,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACvC,oEAAoE;IACpE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oEAAoE;IACpE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC;AA4ID;;;;;;;;;GASG;AACH,eAAO,MAAM,aAAa;gCACR,aAAa,KAAQ,OAAO,CAAC,qBAAqB,CAAC;+BAGpD,YAAY,KAAQ,OAAO,CAAC,qBAAqB,CAAC;CAGzD,CAAC;AAEX,MAAM,MAAM,aAAa,GAAG,OAAO,aAAa,CAAC;AAEjD;+EAC+E;AAC/E,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,QAAQ,EAClB,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC,qBAAqB,CAAC,CAAC;AAClC,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,OAAO,EACjB,OAAO,CAAC,EAAE,YAAY,GACrB,OAAO,CAAC,qBAAqB,CAAC,CAAC"}
|
|
@@ -36,6 +36,37 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
36
36
|
exports.WebSearchTool = void 0;
|
|
37
37
|
exports.createWebSearchTool = createWebSearchTool;
|
|
38
38
|
const index_js_1 = require("../../errors/index.js");
|
|
39
|
+
/** Flatten ``{results: [{title, url, content}, ...]}`` into blank-line
|
|
40
|
+
* -separated plain-text blocks. ``latte_v1`` no-ops on JSON-shaped input,
|
|
41
|
+
* so this reshape is what makes Tavily output compressible by the middleware. */
|
|
42
|
+
function flattenSearchResults(out) {
|
|
43
|
+
if (typeof out === 'string')
|
|
44
|
+
return out;
|
|
45
|
+
if (out && typeof out === 'object' && 'results' in out) {
|
|
46
|
+
const results = out.results;
|
|
47
|
+
if (Array.isArray(results)) {
|
|
48
|
+
const parts = [];
|
|
49
|
+
for (const r of results) {
|
|
50
|
+
if (!r || typeof r !== 'object')
|
|
51
|
+
continue;
|
|
52
|
+
const rr = r;
|
|
53
|
+
const title = typeof rr['title'] === 'string' ? rr['title'].trim() : '';
|
|
54
|
+
const url = typeof rr['url'] === 'string' ? rr['url'].trim() : '';
|
|
55
|
+
const content = typeof rr['content'] === 'string'
|
|
56
|
+
? rr['content'].trim()
|
|
57
|
+
: typeof rr['snippet'] === 'string'
|
|
58
|
+
? rr['snippet'].trim()
|
|
59
|
+
: '';
|
|
60
|
+
const block = [title, url, content].filter(Boolean).join('\n');
|
|
61
|
+
if (block)
|
|
62
|
+
parts.push(block);
|
|
63
|
+
}
|
|
64
|
+
if (parts.length > 0)
|
|
65
|
+
return parts.join('\n\n');
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
return JSON.stringify(out);
|
|
69
|
+
}
|
|
39
70
|
async function buildTavily(options) {
|
|
40
71
|
let mod;
|
|
41
72
|
try {
|
|
@@ -55,8 +86,6 @@ async function buildTavily(options) {
|
|
|
55
86
|
maxResults: options.maxResults ?? 5,
|
|
56
87
|
};
|
|
57
88
|
if (options.apiKey) {
|
|
58
|
-
// TavilySearch accepts the key as a constructor option (``tavilyApiKey``).
|
|
59
|
-
// Passing it here avoids mutating ``process.env`` — see audit TS-CRITICAL.
|
|
60
89
|
init['tavilyApiKey'] = options.apiKey;
|
|
61
90
|
}
|
|
62
91
|
if (options.allowedDomains !== undefined) {
|
|
@@ -68,7 +97,19 @@ async function buildTavily(options) {
|
|
|
68
97
|
// Merge ``extra`` first so trusted fields (apiKey, includeDomains, etc.)
|
|
69
98
|
// win on collision — see audit TS-M3.
|
|
70
99
|
const merged = { ...options.extra, ...init };
|
|
71
|
-
|
|
100
|
+
const base = new TavilySearch(merged);
|
|
101
|
+
// Wrap with a tool() so the returned ToolMessage content is plain text
|
|
102
|
+
// (latte_v1 no-ops on JSON), and so an explicit ``query`` schema reaches
|
|
103
|
+
// the LLM (parity with brave).
|
|
104
|
+
const { tool } = (await Promise.resolve().then(() => __importStar(require('@langchain/core/tools'))));
|
|
105
|
+
const { z } = (await Promise.resolve().then(() => __importStar(require('zod'))));
|
|
106
|
+
return tool(async ({ query }) => flattenSearchResults(await base.invoke({ query })), {
|
|
107
|
+
name: 'tavily_search',
|
|
108
|
+
description: 'Tavily web search. Use to answer questions about current events.',
|
|
109
|
+
schema: z.object({
|
|
110
|
+
query: z.string().describe('The search query string.'),
|
|
111
|
+
}),
|
|
112
|
+
});
|
|
72
113
|
}
|
|
73
114
|
async function buildBrave(options) {
|
|
74
115
|
let mod;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web-search.js","sourceRoot":"","sources":["../../../../src/agents/tools/web-search.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"web-search.js","sourceRoot":"","sources":["../../../../src/agents/tools/web-search.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web-search.d.ts","sourceRoot":"","sources":["../../../../src/agents/tools/web-search.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAIrE;;;kCAGkC;AAClC,MAAM,MAAM,qBAAqB,GAAG,uBAAuB,CAAC;AAE5D,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACvC,cAAc,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACvC,oEAAoE;IACpE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oEAAoE;IACpE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC;
|
|
1
|
+
{"version":3,"file":"web-search.d.ts","sourceRoot":"","sources":["../../../../src/agents/tools/web-search.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAIrE;;;kCAGkC;AAClC,MAAM,MAAM,qBAAqB,GAAG,uBAAuB,CAAC;AAE5D,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACvC,cAAc,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACvC,oEAAoE;IACpE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oEAAoE;IACpE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC;AA4ID;;;;;;;;;GASG;AACH,eAAO,MAAM,aAAa;gCACR,aAAa,KAAQ,OAAO,CAAC,qBAAqB,CAAC;+BAGpD,YAAY,KAAQ,OAAO,CAAC,qBAAqB,CAAC;CAGzD,CAAC;AAEX,MAAM,MAAM,aAAa,GAAG,OAAO,aAAa,CAAC;AAEjD;+EAC+E;AAC/E,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,QAAQ,EAClB,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC,qBAAqB,CAAC,CAAC;AAClC,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,OAAO,EACjB,OAAO,CAAC,EAAE,YAAY,GACrB,OAAO,CAAC,qBAAqB,CAAC,CAAC"}
|
|
@@ -1,4 +1,35 @@
|
|
|
1
1
|
import { CompresrError } from '../../errors/index.js';
|
|
2
|
+
/** Flatten ``{results: [{title, url, content}, ...]}`` into blank-line
|
|
3
|
+
* -separated plain-text blocks. ``latte_v1`` no-ops on JSON-shaped input,
|
|
4
|
+
* so this reshape is what makes Tavily output compressible by the middleware. */
|
|
5
|
+
function flattenSearchResults(out) {
|
|
6
|
+
if (typeof out === 'string')
|
|
7
|
+
return out;
|
|
8
|
+
if (out && typeof out === 'object' && 'results' in out) {
|
|
9
|
+
const results = out.results;
|
|
10
|
+
if (Array.isArray(results)) {
|
|
11
|
+
const parts = [];
|
|
12
|
+
for (const r of results) {
|
|
13
|
+
if (!r || typeof r !== 'object')
|
|
14
|
+
continue;
|
|
15
|
+
const rr = r;
|
|
16
|
+
const title = typeof rr['title'] === 'string' ? rr['title'].trim() : '';
|
|
17
|
+
const url = typeof rr['url'] === 'string' ? rr['url'].trim() : '';
|
|
18
|
+
const content = typeof rr['content'] === 'string'
|
|
19
|
+
? rr['content'].trim()
|
|
20
|
+
: typeof rr['snippet'] === 'string'
|
|
21
|
+
? rr['snippet'].trim()
|
|
22
|
+
: '';
|
|
23
|
+
const block = [title, url, content].filter(Boolean).join('\n');
|
|
24
|
+
if (block)
|
|
25
|
+
parts.push(block);
|
|
26
|
+
}
|
|
27
|
+
if (parts.length > 0)
|
|
28
|
+
return parts.join('\n\n');
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
return JSON.stringify(out);
|
|
32
|
+
}
|
|
2
33
|
async function buildTavily(options) {
|
|
3
34
|
let mod;
|
|
4
35
|
try {
|
|
@@ -18,8 +49,6 @@ async function buildTavily(options) {
|
|
|
18
49
|
maxResults: options.maxResults ?? 5,
|
|
19
50
|
};
|
|
20
51
|
if (options.apiKey) {
|
|
21
|
-
// TavilySearch accepts the key as a constructor option (``tavilyApiKey``).
|
|
22
|
-
// Passing it here avoids mutating ``process.env`` — see audit TS-CRITICAL.
|
|
23
52
|
init['tavilyApiKey'] = options.apiKey;
|
|
24
53
|
}
|
|
25
54
|
if (options.allowedDomains !== undefined) {
|
|
@@ -31,7 +60,19 @@ async function buildTavily(options) {
|
|
|
31
60
|
// Merge ``extra`` first so trusted fields (apiKey, includeDomains, etc.)
|
|
32
61
|
// win on collision — see audit TS-M3.
|
|
33
62
|
const merged = { ...options.extra, ...init };
|
|
34
|
-
|
|
63
|
+
const base = new TavilySearch(merged);
|
|
64
|
+
// Wrap with a tool() so the returned ToolMessage content is plain text
|
|
65
|
+
// (latte_v1 no-ops on JSON), and so an explicit ``query`` schema reaches
|
|
66
|
+
// the LLM (parity with brave).
|
|
67
|
+
const { tool } = (await import('@langchain/core/tools'));
|
|
68
|
+
const { z } = (await import('zod'));
|
|
69
|
+
return tool(async ({ query }) => flattenSearchResults(await base.invoke({ query })), {
|
|
70
|
+
name: 'tavily_search',
|
|
71
|
+
description: 'Tavily web search. Use to answer questions about current events.',
|
|
72
|
+
schema: z.object({
|
|
73
|
+
query: z.string().describe('The search query string.'),
|
|
74
|
+
}),
|
|
75
|
+
});
|
|
35
76
|
}
|
|
36
77
|
async function buildBrave(options) {
|
|
37
78
|
let mod;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web-search.js","sourceRoot":"","sources":["../../../../src/agents/tools/web-search.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAwBtD,KAAK,UAAU,WAAW,CAAC,OAAsB;IAC/C,IAAI,GAA4B,CAAC;IACjC,IAAI,CAAC;QACH,GAAG,GAAG,CAAC,MAAM,MAAM;QACjB,yEAAyE;QACzE,mBAAmB,CACpB,CAA4B,CAAC;IAChC,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,aAAa,CACrB,qDAAqD;YACnD,6CAA6C,EAC/C,yBAAyB,CAC1B,CAAC;IACJ,CAAC;IACD,MAAM,YAAY,GAAG,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,GAAG,CAAC,SAAS,CAAC,CAE9C,CAAC;IACd,IAAI,OAAO,YAAY,KAAK,UAAU,EAAE,CAAC;QACvC,MAAM,IAAI,aAAa,CACrB,oEAAoE,EACpE,yBAAyB,CAC1B,CAAC;IACJ,CAAC;IACD,MAAM,IAAI,GAA4B;QACpC,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,CAAC;KACpC,CAAC;IACF,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnB,
|
|
1
|
+
{"version":3,"file":"web-search.js","sourceRoot":"","sources":["../../../../src/agents/tools/web-search.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED