Spaces:
Configuration error
Configuration error
| import { createWebFetchTool } from "../src/agents/tools/web-tools.js"; | |
| const DEFAULT_URLS = [ | |
| "https://example.com/", | |
| "https://news.ycombinator.com/", | |
| "https://www.reddit.com/r/javascript/", | |
| "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/User-Agent", | |
| "https://httpbin.org/html", | |
| ]; | |
| const urls = process.argv.slice(2); | |
| const targets = urls.length > 0 ? urls : DEFAULT_URLS; | |
| async function runFetch(url: string, readability: boolean) { | |
| if (!readability) { | |
| throw new Error("Basic extraction removed. Set readability=true or enable Firecrawl."); | |
| } | |
| const tool = createWebFetchTool({ | |
| config: { | |
| tools: { | |
| web: { fetch: { readability, cacheTtlMinutes: 0, firecrawl: { enabled: false } } }, | |
| }, | |
| }, | |
| sandboxed: false, | |
| }); | |
| if (!tool) throw new Error("web_fetch tool is disabled"); | |
| const result = await tool.execute("test", { url, extractMode: "markdown" }); | |
| return result.details as { | |
| text?: string; | |
| title?: string; | |
| extractor?: string; | |
| length?: number; | |
| truncated?: boolean; | |
| }; | |
| } | |
| function truncate(value: string, max = 160): string { | |
| if (!value) return ""; | |
| return value.length > max ? `${value.slice(0, max)}…` : value; | |
| } | |
| async function run() { | |
| for (const url of targets) { | |
| console.log(`\n=== ${url}`); | |
| const readable = await runFetch(url, true); | |
| console.log( | |
| `readability: ${readable.extractor ?? "unknown"} len=${readable.length ?? 0} title=${truncate( | |
| readable.title ?? "", | |
| 80, | |
| )}`, | |
| ); | |
| if (readable.text) console.log(`readability sample: ${truncate(readable.text)}`); | |
| } | |
| } | |
| run().catch((error) => { | |
| console.error(error); | |
| process.exit(1); | |
| }); | |