@kenkaiiii/ggcoder 5.49.0 → 5.49.1
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/core/process-manager-notifications.test.js +31 -13
- package/dist/core/process-manager-notifications.test.js.map +1 -1
- package/dist/core/process-manager.d.ts +11 -0
- package/dist/core/process-manager.d.ts.map +1 -1
- package/dist/core/process-manager.js +1 -1
- package/dist/core/process-manager.js.map +1 -1
- package/dist/core/sandbox.d.ts.map +1 -1
- package/dist/core/sandbox.js +66 -1
- package/dist/core/sandbox.js.map +1 -1
- package/dist/core/sandbox.test.js +64 -0
- package/dist/core/sandbox.test.js.map +1 -1
- package/dist/tools/path-utils.d.ts +28 -1
- package/dist/tools/path-utils.d.ts.map +1 -1
- package/dist/tools/path-utils.js +44 -2
- package/dist/tools/path-utils.js.map +1 -1
- package/dist/tools/path-utils.test.js +57 -1
- package/dist/tools/path-utils.test.js.map +1 -1
- package/dist/tools/web-fetch.d.ts +7 -0
- package/dist/tools/web-fetch.d.ts.map +1 -1
- package/dist/tools/web-fetch.js +284 -20
- package/dist/tools/web-fetch.js.map +1 -1
- package/dist/tools/web-fetch.test.js +137 -0
- package/dist/tools/web-fetch.test.js.map +1 -1
- package/package.json +4 -4
|
@@ -2,7 +2,7 @@ import { describe, it, expect, beforeEach, afterEach } from "vitest";
|
|
|
2
2
|
import fs from "node:fs/promises";
|
|
3
3
|
import path from "node:path";
|
|
4
4
|
import os from "node:os";
|
|
5
|
-
import { resolvePath, rejectSymlink } from "./path-utils.js";
|
|
5
|
+
import { resolvePath, rejectSymlink, msysToWindowsPath } from "./path-utils.js";
|
|
6
6
|
describe("resolvePath", () => {
|
|
7
7
|
it("resolves relative path from cwd", () => {
|
|
8
8
|
const result = resolvePath("/home/user/project", "src/index.ts");
|
|
@@ -26,6 +26,62 @@ describe("resolvePath", () => {
|
|
|
26
26
|
expect(result).toBe(path.join(os.homedir(), "documents/file.txt"));
|
|
27
27
|
});
|
|
28
28
|
});
|
|
29
|
+
describe("msysToWindowsPath", () => {
|
|
30
|
+
const win = { platform: "win32" };
|
|
31
|
+
it("translates /c/... to a native drive path", () => {
|
|
32
|
+
expect(msysToWindowsPath("/c/Users/ken/proj/src/a.ts", win)).toBe("C:\\Users\\ken\\proj\\src\\a.ts");
|
|
33
|
+
expect(msysToWindowsPath("/d/repo", win)).toBe("D:\\repo");
|
|
34
|
+
});
|
|
35
|
+
it("uppercases the drive letter regardless of input case", () => {
|
|
36
|
+
expect(msysToWindowsPath("/C/Users/ken", win)).toBe("C:\\Users\\ken");
|
|
37
|
+
});
|
|
38
|
+
it("translates the //c/ and /cygdrive/c/ spellings identically", () => {
|
|
39
|
+
expect(msysToWindowsPath("//c/Users/x", win)).toBe("C:\\Users\\x");
|
|
40
|
+
expect(msysToWindowsPath("/cygdrive/c/Users/x", win)).toBe("C:\\Users\\x");
|
|
41
|
+
});
|
|
42
|
+
it("maps a drive-only path to the drive ROOT, not the drive-relative cwd", () => {
|
|
43
|
+
expect(msysToWindowsPath("/c", win)).toBe("C:\\");
|
|
44
|
+
expect(msysToWindowsPath("/c/", win)).toBe("C:\\");
|
|
45
|
+
expect(msysToWindowsPath("/cygdrive/d", win)).toBe("D:\\");
|
|
46
|
+
});
|
|
47
|
+
it("leaves MSYS virtual mounts alone rather than guessing", () => {
|
|
48
|
+
expect(msysToWindowsPath("/tmp/x", win)).toBe("/tmp/x");
|
|
49
|
+
expect(msysToWindowsPath("/usr/bin/git", win)).toBe("/usr/bin/git");
|
|
50
|
+
expect(msysToWindowsPath("/home/ken", win)).toBe("/home/ken");
|
|
51
|
+
});
|
|
52
|
+
it("requires a single-letter segment terminated by / or end-of-string", () => {
|
|
53
|
+
expect(msysToWindowsPath("/config/app.json", win)).toBe("/config/app.json");
|
|
54
|
+
expect(msysToWindowsPath("/cygdrive", win)).toBe("/cygdrive");
|
|
55
|
+
});
|
|
56
|
+
it("leaves an already-native Windows path unchanged", () => {
|
|
57
|
+
expect(msysToWindowsPath("C:\\x", win)).toBe("C:\\x");
|
|
58
|
+
expect(msysToWindowsPath("C:/x", win)).toBe("C:/x");
|
|
59
|
+
});
|
|
60
|
+
it("leaves relative paths unchanged", () => {
|
|
61
|
+
expect(msysToWindowsPath("src/index.ts", win)).toBe("src/index.ts");
|
|
62
|
+
expect(msysToWindowsPath("./a.ts", win)).toBe("./a.ts");
|
|
63
|
+
expect(msysToWindowsPath("", win)).toBe("");
|
|
64
|
+
});
|
|
65
|
+
it("never translates on non-Windows platforms (/c/foo is a real POSIX path)", () => {
|
|
66
|
+
for (const platform of ["darwin", "linux"]) {
|
|
67
|
+
expect(msysToWindowsPath("/c/foo", { platform })).toBe("/c/foo");
|
|
68
|
+
expect(msysToWindowsPath("/cygdrive/c/foo", { platform })).toBe("/cygdrive/c/foo");
|
|
69
|
+
expect(msysToWindowsPath("//c/foo", { platform })).toBe("//c/foo");
|
|
70
|
+
}
|
|
71
|
+
});
|
|
72
|
+
});
|
|
73
|
+
describe("resolvePath with MSYS input", () => {
|
|
74
|
+
it("translates before resolving", () => {
|
|
75
|
+
// path.resolve is host-dependent, so compare against resolving the already
|
|
76
|
+
// translated form: without the MSYS step this would resolve `/c/Users/...`
|
|
77
|
+
// verbatim, which is a different string on every platform.
|
|
78
|
+
const result = resolvePath("D:\\proj", "/c/Users/ken/a.ts", { platform: "win32" });
|
|
79
|
+
expect(result).toBe(path.resolve("D:\\proj", "C:\\Users\\ken\\a.ts"));
|
|
80
|
+
});
|
|
81
|
+
it("leaves /c/foo as a POSIX path when not on Windows", () => {
|
|
82
|
+
expect(resolvePath("/home/user/project", "/c/foo", { platform: "linux" })).toBe(path.resolve("/c/foo"));
|
|
83
|
+
});
|
|
84
|
+
});
|
|
29
85
|
describe("rejectSymlink", () => {
|
|
30
86
|
let tmpDir;
|
|
31
87
|
beforeEach(async () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"path-utils.test.js","sourceRoot":"","sources":["../../src/tools/path-utils.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACrE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"path-utils.test.js","sourceRoot":"","sources":["../../src/tools/path-utils.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,6 +7,11 @@ import { type GetNetworkPolicy } from "../core/network-guard.js";
|
|
|
7
7
|
*/
|
|
8
8
|
export declare function isBlockedUrl(urlString: string): boolean;
|
|
9
9
|
export declare function htmlToCleanText(html: string): string;
|
|
10
|
+
/** A hyperlink shown in an outline render as `anchor text [number]`. */
|
|
11
|
+
export interface OutlineLink {
|
|
12
|
+
number: number;
|
|
13
|
+
url: string;
|
|
14
|
+
}
|
|
10
15
|
type LlmsCandidateKind = "llms" | "llms-full" | "llms-ctx" | "page-md";
|
|
11
16
|
interface LlmsCandidate {
|
|
12
17
|
url: string;
|
|
@@ -20,11 +25,13 @@ export declare function createWebFetchTool(getNetworkPolicy?: GetNetworkPolicy):
|
|
|
20
25
|
declare const parameters: z.ZodObject<{
|
|
21
26
|
url: z.ZodOptional<z.ZodString>;
|
|
22
27
|
urls: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
28
|
+
follow: z.ZodOptional<z.ZodNumber>;
|
|
23
29
|
max_length: z.ZodOptional<z.ZodNumber>;
|
|
24
30
|
format: z.ZodOptional<z.ZodEnum<{
|
|
25
31
|
text: "text";
|
|
26
32
|
html: "html";
|
|
27
33
|
markdown: "markdown";
|
|
34
|
+
outline: "outline";
|
|
28
35
|
}>>;
|
|
29
36
|
prefer_llms_txt: z.ZodOptional<z.ZodBoolean>;
|
|
30
37
|
}, z.core.$strip>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web-fetch.d.ts","sourceRoot":"","sources":["../../src/tools/web-fetch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,SAAS,EAAe,MAAM,qBAAqB,CAAC;AAIlE,OAAO,EAAkB,KAAK,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAEjF;;;GAGG;AACH,wBAAgB,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CA0CvD;AAmGD,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAYpD;
|
|
1
|
+
{"version":3,"file":"web-fetch.d.ts","sourceRoot":"","sources":["../../src/tools/web-fetch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,SAAS,EAAe,MAAM,qBAAqB,CAAC;AAIlE,OAAO,EAAkB,KAAK,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAEjF;;;GAGG;AACH,wBAAgB,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CA0CvD;AAmGD,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAYpD;AAcD,wEAAwE;AACxE,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;CACb;AA6MD,KAAK,iBAAiB,GAAG,MAAM,GAAG,WAAW,GAAG,UAAU,GAAG,SAAS,CAAC;AAEvE,UAAU,aAAa;IACrB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,iBAAiB,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAkID,wBAAsB,eAAe,CACnC,QAAQ,EAAE,QAAQ,EAClB,QAAQ,SAAqB,GAC5B,OAAO,CAAC,UAAU,CAAC,CA2BrB;AAwLD,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,aAAa,EAAE,CAuCnF;AA2HD,wBAAgB,kBAAkB,CAChC,gBAAgB,CAAC,EAAE,gBAAgB,GAClC,SAAS,CAAC,OAAO,UAAU,CAAC,CA8E9B;AA0BD,QAAA,MAAM,UAAU;;;;;;;;;;;;iBAyCb,CAAC"}
|
package/dist/tools/web-fetch.js
CHANGED
|
@@ -142,6 +142,184 @@ export function htmlToCleanText(html) {
|
|
|
142
142
|
.replace(/\n{3,}/g, "\n\n")
|
|
143
143
|
.trim();
|
|
144
144
|
}
|
|
145
|
+
// ── Outline rendering (compact numbered view) ────────────────
|
|
146
|
+
/** Hard cap on how many links one tool call will number. */
|
|
147
|
+
const MAX_OUTLINE_LINKS = 100;
|
|
148
|
+
/** ~500 tokens of body: the whole point of the outline format. */
|
|
149
|
+
const OUTLINE_DEFAULT_MAX_LENGTH = 2000;
|
|
150
|
+
/** Per-session render cache size (pages, not bytes). */
|
|
151
|
+
const MAX_CACHED_PAGES = 32;
|
|
152
|
+
const OUTLINE_INDEX_HEADER = "Links (fetch one with `follow`):";
|
|
153
|
+
const BLOCKED_URL_MESSAGE = "Error: URL blocked — requests to private/internal network addresses are not allowed.";
|
|
154
|
+
/**
|
|
155
|
+
* Allocates the small stable numbers that replace hyperlinks in an outline
|
|
156
|
+
* render. Scoped to a single tool call, deduped by absolute URL, and capped at
|
|
157
|
+
* {@link MAX_OUTLINE_LINKS} so a link-farm page cannot grow the index (or the
|
|
158
|
+
* session's follow map) without bound.
|
|
159
|
+
*/
|
|
160
|
+
class LinkNumbers {
|
|
161
|
+
byUrl = new Map();
|
|
162
|
+
used = new Set();
|
|
163
|
+
ordered = [];
|
|
164
|
+
next = 1;
|
|
165
|
+
get size() {
|
|
166
|
+
return this.byUrl.size;
|
|
167
|
+
}
|
|
168
|
+
/** Adopt the numbers baked into a cached render so they stay resolvable. */
|
|
169
|
+
reserve(links) {
|
|
170
|
+
for (const link of links) {
|
|
171
|
+
if (this.used.has(link.number))
|
|
172
|
+
continue;
|
|
173
|
+
this.used.add(link.number);
|
|
174
|
+
this.byUrl.set(link.url, link.number);
|
|
175
|
+
this.ordered.push(link);
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
/** Number for `url`, or null once the per-call cap is reached. */
|
|
179
|
+
numberFor(url) {
|
|
180
|
+
const existing = this.byUrl.get(url);
|
|
181
|
+
if (existing !== undefined)
|
|
182
|
+
return existing;
|
|
183
|
+
if (this.byUrl.size >= MAX_OUTLINE_LINKS)
|
|
184
|
+
return null;
|
|
185
|
+
while (this.used.has(this.next))
|
|
186
|
+
this.next++;
|
|
187
|
+
const number = this.next++;
|
|
188
|
+
this.used.add(number);
|
|
189
|
+
this.byUrl.set(url, number);
|
|
190
|
+
this.ordered.push({ number, url });
|
|
191
|
+
return number;
|
|
192
|
+
}
|
|
193
|
+
all() {
|
|
194
|
+
return this.ordered;
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
/** Absolute http(s) form of `href` relative to `base`, or null if unusable. */
|
|
198
|
+
function absoluteHttpUrl(href, base) {
|
|
199
|
+
const trimmed = href.trim();
|
|
200
|
+
if (!trimmed || trimmed.startsWith("#"))
|
|
201
|
+
return null;
|
|
202
|
+
let resolved;
|
|
203
|
+
try {
|
|
204
|
+
resolved = new URL(trimmed, base);
|
|
205
|
+
}
|
|
206
|
+
catch {
|
|
207
|
+
return null;
|
|
208
|
+
}
|
|
209
|
+
if (resolved.protocol !== "http:" && resolved.protocol !== "https:")
|
|
210
|
+
return null;
|
|
211
|
+
// Fragments only move within a page we already have: drop them so anchors
|
|
212
|
+
// into the same document collapse onto one number, and spend no number at
|
|
213
|
+
// all on links back into the page being rendered.
|
|
214
|
+
resolved.hash = "";
|
|
215
|
+
let self;
|
|
216
|
+
try {
|
|
217
|
+
self = new URL(base);
|
|
218
|
+
}
|
|
219
|
+
catch {
|
|
220
|
+
return resolved.toString();
|
|
221
|
+
}
|
|
222
|
+
self.hash = "";
|
|
223
|
+
if (resolved.href === self.href)
|
|
224
|
+
return null;
|
|
225
|
+
return resolved.href;
|
|
226
|
+
}
|
|
227
|
+
const MARKDOWN_LINK = /(!?)\[([^\]]*)\]\(\s*<?([^)<>\s]*)>?(?:\s+"[^"]*")?\s*\)/g;
|
|
228
|
+
const HTML_ANCHOR = /<a\b[^>]*\bhref\s*=\s*["']([^"']*)["'][^>]*>([\s\S]*?)<\/a>/gi;
|
|
229
|
+
/** Rewrite markdown links to `text [n]`; drop images, which carry no text. */
|
|
230
|
+
function numberMarkdownLinks(markdown, base, numbers) {
|
|
231
|
+
return markdown.replace(MARKDOWN_LINK, (_match, image, text, href) => {
|
|
232
|
+
if (image)
|
|
233
|
+
return "";
|
|
234
|
+
const url = absoluteHttpUrl(href, base);
|
|
235
|
+
if (!url)
|
|
236
|
+
return text;
|
|
237
|
+
const number = numbers.numberFor(url);
|
|
238
|
+
return number === null ? text : `${text} [${number}]`;
|
|
239
|
+
});
|
|
240
|
+
}
|
|
241
|
+
/** Same rewrite for raw HTML, used when the markdown extractor is unavailable. */
|
|
242
|
+
function numberHtmlAnchors(html, base, numbers) {
|
|
243
|
+
return html.replace(HTML_ANCHOR, (_match, href, inner) => {
|
|
244
|
+
const url = absoluteHttpUrl(decodeHTMLEntities(href), base);
|
|
245
|
+
if (!url)
|
|
246
|
+
return inner;
|
|
247
|
+
const number = numbers.numberFor(url);
|
|
248
|
+
return number === null ? inner : `${inner} [${number}]`;
|
|
249
|
+
});
|
|
250
|
+
}
|
|
251
|
+
function compactBlankLines(text) {
|
|
252
|
+
return text
|
|
253
|
+
.split("\n")
|
|
254
|
+
.map((line) => line.replace(/[ \t]+$/, ""))
|
|
255
|
+
.join("\n")
|
|
256
|
+
.replace(/\n{3,}/g, "\n\n")
|
|
257
|
+
.trim();
|
|
258
|
+
}
|
|
259
|
+
/**
|
|
260
|
+
* Render a fetched document as main content with every hyperlink replaced by a
|
|
261
|
+
* number, followed by a compact number → absolute URL index. The body reuses
|
|
262
|
+
* the existing `max_length` budget; only links still visible in the (possibly
|
|
263
|
+
* truncated) body are indexed.
|
|
264
|
+
*/
|
|
265
|
+
async function renderOutline(text, isHtml, finalUrl, opts) {
|
|
266
|
+
const numbers = opts.numbers ?? new LinkNumbers();
|
|
267
|
+
let heading = "";
|
|
268
|
+
let body;
|
|
269
|
+
if (!isHtml) {
|
|
270
|
+
body = numberMarkdownLinks(text, finalUrl, numbers);
|
|
271
|
+
}
|
|
272
|
+
else {
|
|
273
|
+
let extracted;
|
|
274
|
+
try {
|
|
275
|
+
extracted = await extractToMarkdown(text, finalUrl);
|
|
276
|
+
}
|
|
277
|
+
catch {
|
|
278
|
+
extracted = null;
|
|
279
|
+
}
|
|
280
|
+
if (extracted) {
|
|
281
|
+
heading = extracted.title ? `# ${extracted.title}\n\n` : "";
|
|
282
|
+
body = numberMarkdownLinks(extracted.markdown, finalUrl, numbers);
|
|
283
|
+
}
|
|
284
|
+
else {
|
|
285
|
+
body = htmlToCleanText(numberHtmlAnchors(removeBoilerplateElements(text), finalUrl, numbers));
|
|
286
|
+
}
|
|
287
|
+
}
|
|
288
|
+
const rendered = truncate(compactBlankLines(heading + body), opts.maxLength);
|
|
289
|
+
const shown = numbers.all().filter((link) => rendered.includes(`[${link.number}]`));
|
|
290
|
+
let output = rendered;
|
|
291
|
+
if (shown.length > 0) {
|
|
292
|
+
const index = shown.map((link) => `[${link.number}] ${link.url}`).join("\n");
|
|
293
|
+
output += `\n\n${OUTLINE_INDEX_HEADER}\n${index}`;
|
|
294
|
+
if (numbers.size >= MAX_OUTLINE_LINKS) {
|
|
295
|
+
output += `\n[link index truncated at ${MAX_OUTLINE_LINKS}; further links left as plain text]`;
|
|
296
|
+
}
|
|
297
|
+
}
|
|
298
|
+
opts.onRender?.(finalUrl, output, [...shown]);
|
|
299
|
+
return output;
|
|
300
|
+
}
|
|
301
|
+
function cacheKey(url, maxLength) {
|
|
302
|
+
return `${maxLength}\u0000${url}`;
|
|
303
|
+
}
|
|
304
|
+
function cacheGet(cache, key) {
|
|
305
|
+
const hit = cache.get(key);
|
|
306
|
+
if (!hit)
|
|
307
|
+
return undefined;
|
|
308
|
+
// Re-insert so Map iteration order stays least-recently-used first.
|
|
309
|
+
cache.delete(key);
|
|
310
|
+
cache.set(key, hit);
|
|
311
|
+
return hit;
|
|
312
|
+
}
|
|
313
|
+
function cacheSet(cache, key, entry) {
|
|
314
|
+
cache.delete(key);
|
|
315
|
+
cache.set(key, entry);
|
|
316
|
+
while (cache.size > MAX_CACHED_PAGES) {
|
|
317
|
+
const oldest = cache.keys().next();
|
|
318
|
+
if (oldest.done)
|
|
319
|
+
break;
|
|
320
|
+
cache.delete(oldest.value);
|
|
321
|
+
}
|
|
322
|
+
}
|
|
145
323
|
// ── Fetch configuration ──────────────────────────────────────
|
|
146
324
|
const MAX_REDIRECTS = 5;
|
|
147
325
|
const MAX_RESPONSE_BYTES = 5 * 1024 * 1024;
|
|
@@ -165,7 +343,7 @@ const DEFAULT_LLMS_CANDIDATE_LIMIT = 6;
|
|
|
165
343
|
* error string describing why the fetch could not complete.
|
|
166
344
|
*/
|
|
167
345
|
function headersForFormat(format, honestUserAgent = false) {
|
|
168
|
-
const accept = format === "html"
|
|
346
|
+
const accept = format === "html" || format === "outline"
|
|
169
347
|
? "text/html,application/xhtml+xml;q=0.9,*/*;q=0.5"
|
|
170
348
|
: format === "markdown"
|
|
171
349
|
? "text/markdown,text/plain;q=0.9,text/html;q=0.8,*/*;q=0.5"
|
|
@@ -324,6 +502,9 @@ async function processHtmlOrText(response, text, opts) {
|
|
|
324
502
|
/application\/octet-stream|binary\/octet-stream|text\/plain/i.test(response.contentType);
|
|
325
503
|
const isHtml = response.contentType.includes("html") ||
|
|
326
504
|
(genericContentType && /^(?:<!doctype\s+html|<html\b|<head\b|<body\b)/i.test(prefix));
|
|
505
|
+
if (opts.format === "outline") {
|
|
506
|
+
return await renderOutline(text, isHtml, response.finalUrl, opts);
|
|
507
|
+
}
|
|
327
508
|
if (opts.format === "html") {
|
|
328
509
|
return truncate(text, opts.maxLength);
|
|
329
510
|
}
|
|
@@ -352,7 +533,7 @@ async function processHtmlOrText(response, text, opts) {
|
|
|
352
533
|
*/
|
|
353
534
|
async function fetchAndProcess(url, opts, signal) {
|
|
354
535
|
if (isBlockedUrl(url)) {
|
|
355
|
-
return
|
|
536
|
+
return BLOCKED_URL_MESSAGE;
|
|
356
537
|
}
|
|
357
538
|
try {
|
|
358
539
|
const result = await fetchOne(url, signal, opts.format, opts.getNetworkPolicy);
|
|
@@ -519,27 +700,98 @@ async function tryLlmsResource(url, opts, signal) {
|
|
|
519
700
|
return probes.find((probe) => probe !== null) ?? null;
|
|
520
701
|
}
|
|
521
702
|
async function fetchWithPreferredDocs(url, opts, signal) {
|
|
522
|
-
if (opts.format !== "html" &&
|
|
703
|
+
if (opts.format !== "html" &&
|
|
704
|
+
opts.format !== "outline" &&
|
|
705
|
+
opts.preferLlmsTxt &&
|
|
706
|
+
!isBlockedUrl(url) &&
|
|
707
|
+
isDocish(url)) {
|
|
523
708
|
const llms = await tryLlmsResource(url, opts, signal);
|
|
524
709
|
if (llms)
|
|
525
710
|
return llms;
|
|
526
711
|
}
|
|
527
712
|
return await fetchAndProcess(url, opts, signal);
|
|
528
713
|
}
|
|
714
|
+
/**
|
|
715
|
+
* Outline-mode wrapper around {@link fetchWithPreferredDocs} that serves
|
|
716
|
+
* repeat views of a page from the per-session cache. The URL is re-validated
|
|
717
|
+
* *before* the cache is consulted, so a cached render can never resurrect a
|
|
718
|
+
* host the current SSRF/allowlist policy forbids.
|
|
719
|
+
*/
|
|
720
|
+
async function fetchPage(url, opts, signal, cache) {
|
|
721
|
+
if (opts.format !== "outline")
|
|
722
|
+
return await fetchWithPreferredDocs(url, opts, signal);
|
|
723
|
+
if (isBlockedUrl(url))
|
|
724
|
+
return BLOCKED_URL_MESSAGE;
|
|
725
|
+
const policyError = checkUrlPolicy(url, opts.getNetworkPolicy);
|
|
726
|
+
if (policyError)
|
|
727
|
+
return `Error: ${policyError}`;
|
|
728
|
+
const requestKey = cacheKey(url, opts.maxLength);
|
|
729
|
+
const hit = cacheGet(cache, requestKey);
|
|
730
|
+
if (hit) {
|
|
731
|
+
opts.numbers?.reserve(hit.links);
|
|
732
|
+
return hit.text;
|
|
733
|
+
}
|
|
734
|
+
let rendered;
|
|
735
|
+
const result = await fetchWithPreferredDocs(url, {
|
|
736
|
+
...opts,
|
|
737
|
+
onRender: (finalUrl, text, links) => {
|
|
738
|
+
rendered = { text, links };
|
|
739
|
+
// Keyed by the post-redirect URL, plus the requested URL below.
|
|
740
|
+
cacheSet(cache, cacheKey(finalUrl, opts.maxLength), rendered);
|
|
741
|
+
},
|
|
742
|
+
}, signal);
|
|
743
|
+
if (rendered)
|
|
744
|
+
cacheSet(cache, requestKey, rendered);
|
|
745
|
+
return result;
|
|
746
|
+
}
|
|
529
747
|
export function createWebFetchTool(getNetworkPolicy) {
|
|
748
|
+
// Per-session state, both bounded: the render cache evicts least-recently
|
|
749
|
+
// used pages past MAX_CACHED_PAGES, and the follow map is replaced (not
|
|
750
|
+
// grown) by each outline call, itself capped at MAX_OUTLINE_LINKS entries.
|
|
751
|
+
const pageCache = new Map();
|
|
752
|
+
let followTargets = new Map();
|
|
530
753
|
return {
|
|
531
754
|
name: "web_fetch",
|
|
532
755
|
description: "Fetch and read web page content. Accepts a single `url` or a `urls` array (up to 10, " +
|
|
533
|
-
"fetched concurrently). Returns clean Markdown by default (`format`: markdown|text|html)
|
|
534
|
-
"main-content extraction. Extracts text from PDFs, follows safe redirects automatically, and " +
|
|
535
|
-
"prefers a site's curated /llms.txt for docs pages when available
|
|
756
|
+
"fetched concurrently). Returns clean Markdown by default (`format`: markdown|text|html|outline) " +
|
|
757
|
+
"via main-content extraction. Extracts text from PDFs, follows safe redirects automatically, and " +
|
|
758
|
+
"prefers a site's curated /llms.txt for docs pages when available.\n" +
|
|
759
|
+
'`format: "outline"` is the cheap mode: main content only, every hyperlink replaced by a ' +
|
|
760
|
+
"number (`anchor text [12]`) with a numbered URL index at the end, and a small default " +
|
|
761
|
+
"`max_length`. Use it when hunting for the right page; then pass `follow: 12` " +
|
|
762
|
+
"(instead of `url`) to fetch link 12 from the last outline. Repeat views of a page in the " +
|
|
763
|
+
"same session are served from cache. Outline mode skips the /llms.txt probe.",
|
|
536
764
|
parameters,
|
|
537
765
|
async execute(args, context) {
|
|
538
|
-
const maxLength = args.max_length ?? 10000;
|
|
539
766
|
const format = args.format ?? "markdown";
|
|
767
|
+
const maxLength = args.max_length ?? (format === "outline" ? OUTLINE_DEFAULT_MAX_LENGTH : 10000);
|
|
540
768
|
const preferLlmsTxt = args.prefer_llms_txt !== false;
|
|
769
|
+
const numbers = format === "outline" ? new LinkNumbers() : undefined;
|
|
770
|
+
// A followed link is attacker-controlled page content: it resolves to a
|
|
771
|
+
// plain URL here and then travels the exact same validation path as a
|
|
772
|
+
// user-supplied one (isBlockedUrl + allowlist + per-redirect-hop checks).
|
|
773
|
+
let followUrl;
|
|
774
|
+
if (args.follow !== undefined) {
|
|
775
|
+
followUrl = followTargets.get(args.follow);
|
|
776
|
+
if (!followUrl) {
|
|
777
|
+
return followTargets.size === 0
|
|
778
|
+
? 'Error: no numbered links available — fetch a page with format: "outline" first.'
|
|
779
|
+
: `Error: link [${args.follow}] is not in the last outline (known: ${[...followTargets.keys()].join(", ")}).`;
|
|
780
|
+
}
|
|
781
|
+
}
|
|
782
|
+
// Every outline render replaces the follow map, even when the page had no
|
|
783
|
+
// links: keeping the previous page's numbers would make `follow: 3` fetch
|
|
784
|
+
// from a page the user already moved past, while the error text and the
|
|
785
|
+
// tool description both promise "the last outline". Non-outline fetches
|
|
786
|
+
// leave the map alone, so a markdown read does not discard usable numbers.
|
|
787
|
+
const remember = (output) => {
|
|
788
|
+
if (numbers) {
|
|
789
|
+
followTargets = new Map(numbers.all().map((link) => [link.number, link.url]));
|
|
790
|
+
}
|
|
791
|
+
return output;
|
|
792
|
+
};
|
|
541
793
|
// Multi-URL path: bounded-concurrency pool, per-URL budget, ordered output.
|
|
542
|
-
if (args.urls && args.urls.length > 0) {
|
|
794
|
+
if (!followUrl && args.urls && args.urls.length > 0) {
|
|
543
795
|
const urls = args.urls;
|
|
544
796
|
const perUrlBudget = Math.max(PER_URL_MIN_BUDGET, Math.floor(maxLength / urls.length));
|
|
545
797
|
const opts = {
|
|
@@ -547,16 +799,17 @@ export function createWebFetchTool(getNetworkPolicy) {
|
|
|
547
799
|
format,
|
|
548
800
|
preferLlmsTxt,
|
|
549
801
|
getNetworkPolicy,
|
|
802
|
+
numbers,
|
|
550
803
|
};
|
|
551
|
-
const sections = await runPool(urls, MAX_CONCURRENCY, (u) =>
|
|
552
|
-
return urls.map((u, i) => `## ${u}\n${sections[i]}`).join("\n\n");
|
|
804
|
+
const sections = await runPool(urls, MAX_CONCURRENCY, (u) => fetchPage(u, opts, context.signal, pageCache));
|
|
805
|
+
return remember(urls.map((u, i) => `## ${u}\n${sections[i]}`).join("\n\n"));
|
|
553
806
|
}
|
|
554
|
-
const url = args.url;
|
|
807
|
+
const url = followUrl ?? args.url;
|
|
555
808
|
if (!url) {
|
|
556
|
-
return "Error: provide either `url` or `
|
|
809
|
+
return "Error: provide either `url`, `urls`, or `follow`.";
|
|
557
810
|
}
|
|
558
|
-
const opts = { maxLength, format, preferLlmsTxt, getNetworkPolicy };
|
|
559
|
-
return await
|
|
811
|
+
const opts = { maxLength, format, preferLlmsTxt, getNetworkPolicy, numbers };
|
|
812
|
+
return remember(await fetchPage(url, opts, context.signal, pageCache));
|
|
560
813
|
},
|
|
561
814
|
};
|
|
562
815
|
}
|
|
@@ -585,17 +838,28 @@ const parameters = z
|
|
|
585
838
|
.max(MAX_URLS)
|
|
586
839
|
.optional()
|
|
587
840
|
.describe(`Fetch multiple URLs concurrently (up to ${MAX_URLS}); returns a sectioned digest`),
|
|
588
|
-
|
|
841
|
+
follow: z
|
|
842
|
+
.number()
|
|
843
|
+
.int()
|
|
844
|
+
.positive()
|
|
845
|
+
.optional()
|
|
846
|
+
.describe("Fetch link N from the most recent outline render, instead of `url`. " +
|
|
847
|
+
"Followed links are SSRF/allowlist-checked exactly like a supplied URL."),
|
|
848
|
+
max_length: z
|
|
849
|
+
.number()
|
|
850
|
+
.optional()
|
|
851
|
+
.describe(`Maximum characters to return (default: 10000; ${OUTLINE_DEFAULT_MAX_LENGTH} for outline)`),
|
|
589
852
|
format: z
|
|
590
|
-
.enum(["markdown", "text", "html"])
|
|
853
|
+
.enum(["markdown", "text", "html", "outline"])
|
|
591
854
|
.optional()
|
|
592
|
-
.describe("Output format: markdown (default, main-content extraction), text, or
|
|
855
|
+
.describe("Output format: markdown (default, main-content extraction), text, html, or outline " +
|
|
856
|
+
`(compact main content with each link replaced by a number plus a numbered URL index, ` +
|
|
857
|
+
`capped at ${MAX_OUTLINE_LINKS} links — cheapest; follow links with \`follow\`)`),
|
|
593
858
|
prefer_llms_txt: z
|
|
594
859
|
.boolean()
|
|
595
860
|
.optional()
|
|
596
861
|
.describe("Prefer a site's curated /llms.txt for documentation pages (default: true)"),
|
|
597
862
|
})
|
|
598
|
-
.refine((v) => Boolean(v.url)
|
|
599
|
-
message: "Provide exactly one of `url` or `
|
|
600
|
-
});
|
|
863
|
+
.refine((v) => [Boolean(v.url), Boolean(v.urls && v.urls.length > 0), v.follow !== undefined].filter(Boolean)
|
|
864
|
+
.length === 1, { message: "Provide exactly one of `url`, `urls`, or `follow`." });
|
|
601
865
|
//# sourceMappingURL=web-fetch.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web-fetch.js","sourceRoot":"","sources":["../../src/tools/web-fetch.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"web-fetch.js","sourceRoot":"","sources":["../../src/tools/web-fetch.ts"],"names":[],"mappings":"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"}
|