From a1b253513a969314c82ac2931a530a951b02e34c Mon Sep 17 00:00:00 2001 From: Andres Gonzalez Date: Sun, 22 Feb 2026 17:22:52 -0500 Subject: [PATCH 1/8] refactor: reorganize .agents/context/ into project/ and research/ Move domain docs (architecture, api, conventions, glossary, etc.) to .agents/project/ and research files to .agents/research/. Remove stale chatgpt-logged-out.png screenshot. Co-authored-by: Cursor --- .agents/{context => project}/ai-sdk-v6.md | 0 .agents/{context => project}/api.md | 0 .agents/{context => project}/architecture.md | 0 .agents/{context => project}/conventions.md | 0 .agents/{context => project}/database.md | 0 .agents/{context => project}/deployment.md | 0 .agents/{context => project}/glossary.md | 0 .agents/{context => project}/testing.md | 0 .../ai-context-engineering-guide.md | 0 .../component-state-extraction-research.md | 0 .../css-animation-extraction-research.md | 0 .agents/research/chatgpt-logged-out.png | Bin 220733 -> 0 bytes .agents/research/url-content-fetching.md | 663 ++++++++++++++++++ 13 files changed, 663 insertions(+) rename .agents/{context => project}/ai-sdk-v6.md (100%) rename .agents/{context => project}/api.md (100%) rename .agents/{context => project}/architecture.md (100%) rename .agents/{context => project}/conventions.md (100%) rename .agents/{context => project}/database.md (100%) rename .agents/{context => project}/deployment.md (100%) rename .agents/{context => project}/glossary.md (100%) rename .agents/{context => project}/testing.md (100%) rename .agents/{context => research}/ai-context-engineering-guide.md (100%) rename .agents/{context => }/research/browser-extraction/component-state-extraction-research.md (100%) rename .agents/{context => }/research/browser-extraction/css-animation-extraction-research.md (100%) delete mode 100644 .agents/research/chatgpt-logged-out.png create mode 100644 .agents/research/url-content-fetching.md diff --git a/.agents/context/ai-sdk-v6.md b/.agents/project/ai-sdk-v6.md similarity index 100% rename from .agents/context/ai-sdk-v6.md rename to .agents/project/ai-sdk-v6.md diff --git a/.agents/context/api.md b/.agents/project/api.md similarity index 100% rename from .agents/context/api.md rename to .agents/project/api.md diff --git a/.agents/context/architecture.md b/.agents/project/architecture.md similarity index 100% rename from .agents/context/architecture.md rename to .agents/project/architecture.md diff --git a/.agents/context/conventions.md b/.agents/project/conventions.md similarity index 100% rename from .agents/context/conventions.md rename to .agents/project/conventions.md diff --git a/.agents/context/database.md b/.agents/project/database.md similarity index 100% rename from .agents/context/database.md rename to .agents/project/database.md diff --git a/.agents/context/deployment.md b/.agents/project/deployment.md similarity index 100% rename from .agents/context/deployment.md rename to .agents/project/deployment.md diff --git a/.agents/context/glossary.md b/.agents/project/glossary.md similarity index 100% rename from .agents/context/glossary.md rename to .agents/project/glossary.md diff --git a/.agents/context/testing.md b/.agents/project/testing.md similarity index 100% rename from .agents/context/testing.md rename to .agents/project/testing.md diff --git a/.agents/context/ai-context-engineering-guide.md b/.agents/research/ai-context-engineering-guide.md similarity index 100% rename from .agents/context/ai-context-engineering-guide.md rename to .agents/research/ai-context-engineering-guide.md diff --git a/.agents/context/research/browser-extraction/component-state-extraction-research.md b/.agents/research/browser-extraction/component-state-extraction-research.md similarity index 100% rename from .agents/context/research/browser-extraction/component-state-extraction-research.md rename to .agents/research/browser-extraction/component-state-extraction-research.md diff --git a/.agents/context/research/browser-extraction/css-animation-extraction-research.md b/.agents/research/browser-extraction/css-animation-extraction-research.md similarity index 100% rename from .agents/context/research/browser-extraction/css-animation-extraction-research.md rename to .agents/research/browser-extraction/css-animation-extraction-research.md diff --git a/.agents/research/chatgpt-logged-out.png b/.agents/research/chatgpt-logged-out.png deleted file mode 100644 index 427a92c6228eeb45a6a7980e2c429e8b9d349202..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 220733 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

r@*BD|2#-rWY`TKMx_r01c_=4Zgl2q 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 DT6Wl) diff --git a/.agents/research/url-content-fetching.md b/.agents/research/url-content-fetching.md new file mode 100644 index 00000000..353917c9 --- /dev/null +++ b/.agents/research/url-content-fetching.md @@ -0,0 +1,663 @@ +# URL Content Fetching Capability for AI Chat + +> **Status**: Research Complete +> **Date**: 2026-02-22 +> **Scope**: Architecture, libraries, security, context budgets, specialized extractors, caching +> **Related**: `.agents/plans/phase-7-future-tool-integrations.md` (Sub-Phase 7.7) + +--- + +## Table of Contents + +1. [Production Landscape Survey](#1-production-landscape-survey) +2. [HTML-to-Text Conversion](#2-html-to-text-conversion) +3. [Security Considerations](#3-security-considerations) +4. [Context Budget Management](#4-context-budget-management) +5. [Architecture Placement](#5-architecture-placement) +6. [Specialized Content Types](#6-specialized-content-types) +7. [Hosted Services and APIs](#7-hosted-services-and-apis) +8. [Caching Strategy](#8-caching-strategy) +9. [Recommendations](#9-recommendations) + +--- + +## 1. Production Landscape Survey + +### How Major Platforms Implement URL Fetching + +| Platform | Architecture | JS Rendering | Content Budget | URL Source Restriction | +|----------|-------------|-------------|----------------|----------------------| +| ChatGPT | Server-side, proprietary | Yes (Atlas/Chromium) | Auto-summarization | Model constructs queries | +| Perplexity | Server-side, hybrid RAG | Unknown | `max_tokens_per_page` | Model-driven | +| Claude | Server-side, API tool | No (HTML only) | `max_content_tokens` + dynamic filtering | User-provided URLs only | +| Open WebUI | Server-side, dual-mode | No | 50K char hard cap | Model-driven | +| LibreChat | Server-side, Firecrawl | Yes (via Firecrawl) | Reranker truncation | Search-driven | +| LobeChat | Serverless plugin | No | Plugin-level | Explicit URL input | + +### ChatGPT / OpenAI + +Server-side with proprietary infrastructure. Reasoning models (o3, GPT-5) get two page-level actions beyond search: `open_page` (accesses a webpage) and `find_in_page` (searches within an opened page). The model doesn't read entire pages — it fans out short sub-queries, skims titles and introductions (~500–1,000 chars), and extracts answer blocks under headings. The Atlas browser (Oct 2025) runs a full Chromium-based browser via the OWL architecture. + +### Claude / Anthropic + +Two versions of the `web_fetch` tool: + +| Version | Features | +|---------|----------| +| `web_fetch_20250910` | Basic fetch + PDF extraction | +| `web_fetch_20260209` | Adds dynamic filtering (Opus 4.6, Sonnet 4.6) | + +Dynamic filtering enables Claude to write and execute code that filters fetched content *before* it enters the context window — achieving ~24% input token reduction and ~11% quality improvement. Anti-exfiltration measure: Claude cannot dynamically construct URLs; it can only fetch URLs explicitly provided by the user or from previous search/fetch results. + +Configuration surface: +- `max_content_tokens` — hard cap on content length +- `max_uses` — limits fetches per request +- `allowed_domains` / `blocked_domains` — domain restrictions + +### Perplexity + +Three-stage RAG pipeline: hybrid retrieval → content fetching → grounded generation. Agent API exposes `web_search` (with `max_tokens_per_page`) and `fetch_url` (full page content). Content is fetched on-demand per query and not stored. + +### Open WebUI (Open Source) + +Agentic mode exposes `search_web` and `fetch_url` tools. `fetch_url` retrieves full page text, hard-capped at 50,000 characters, injected directly into context (no Vector DB, no chunking). Requires frontier models (GPT-5, Claude 4.5+) for effective multi-step tool use. No JS rendering. + +### LibreChat (Open Source) + +Three-component pipeline: **Search** (Serper/SearXNG) → **Scrape** (Firecrawl) → **Rerank** (Jina/Cohere). Firecrawl handles JS rendering and markdown conversion. Scraper timeout defaults to 7,500ms. Open enhancement request for direct URL fetching beyond search results. + +### Common Patterns + +1. Content extraction is always **server-side** (never client-side) +2. Trend toward **direct context injection** of filtered content over RAG chunking +3. Token/character limits enforced to prevent context overflow +4. Modern approaches (Claude's dynamic filtering, OpenAI's `find_in_page`) extract **relevant portions** rather than full pages +5. **Markdown** is the preferred output format (token-efficient, preserves structure) + +### Vercel AI SDK + +No built-in URL fetch tool — composable approach. Ready-made third-party integrations: + +| Package | Tool | +|---------|------| +| `@tavily/ai-sdk` (v0.4.1) | `tavilyExtract()` — URL content extraction + search | +| `@exalabs/ai-sdk` | `webSearch()` — search + content extraction | +| `@parallel-web/ai-sdk-tools` | `searchTool` + `extractTool` | + +The `@tavily/ai-sdk` `tavilyExtract()` tool is particularly relevant — it extracts clean, structured content from URLs with configurable `format` (markdown/text) and `extractDepth` (basic/advanced). ~4.6K weekly downloads. + +--- + +## 2. HTML-to-Text Conversion + +### The Standard Pipeline + +The dominant pattern for HTML → LLM-ready text: + +``` +Raw HTML → [DOM Parser] → [Content Extraction] → [Markdown Conversion] → Clean Markdown + jsdom Readability.js Turndown +``` + +Achieves **~70–80% token reduction** vs raw HTML. + +### Article Extraction Libraries + +| Library | Version | Weekly Downloads | Bundle (min+gz) | Dependencies | Quality | +|---------|---------|-----------------|-----------------|-------------|---------| +| `@mozilla/readability` | 0.6.0 | ~500K | ~15 KB | 0 | Excellent (articles) | +| `@extractus/article-extractor` | 8.0.20 | ~11.5K | Larger | Multiple | Good (rich metadata) | +| `cheerio` | 1.0.0 | ~8M | ~50 KB | 5+ (parse5) | Flexible (manual selectors) | + +**`@mozilla/readability`** is the clear winner for general-purpose extraction: +- Battle-tested (powers Firefox Reader View on billions of page loads) +- Zero dependencies, small footprint +- Returns `{ title, content (HTML), textContent, excerpt, byline }` +- Used by Jina Reader internally +- Requires a DOM environment (`jsdom` on server side) +- Modifies DOM in-place (clone the document first) +- Optimized for articles; weaker on forums, product pages, search results + +### Markdown Conversion + +| Library | Version | Weekly Downloads | Bundle (min+gz) | Speed | +|---------|---------|-----------------|-----------------|-------| +| `turndown` | 7.2.0 | ~2.37M | 3.96 KB | Baseline | +| `node-html-markdown` | 1.3.0 | ~328K | ~8 KB | **1.57x faster** | + +Performance benchmarks (reused instance): + +| Input Size | `node-html-markdown` | `turndown` | +|------------|---------------------|-----------| +| 100 KB | 17 ms | 27 ms | +| 1 MB | 176 ms | 280 ms | + +**`turndown`** has 7x larger ecosystem, plugin system (GFM tables/strikethrough), and is used by Jina Reader in production. **`node-html-markdown`** is consistently faster but has fewer community integrations. + +Recommendation: **`turndown`** for ecosystem maturity. The 1.57x speed difference is negligible for single-page fetches (27ms vs 17ms at 100KB). + +### DOM Parsing (Server-Side) + +| Library | Import Time | HTML Parse | Dependencies | +|---------|------------|------------|-------------| +| `jsdom` | 333 ms | 256 ms | 20+ | +| `happy-dom` | 45 ms | 26 ms | Few | +| `linkedom` | Fast | Fast | Few | + +**`jsdom`** is required by `@mozilla/readability` and has the most complete browser emulation (~14M weekly downloads). `happy-dom` is 7.4x faster but less comprehensive. For this use case, `jsdom` is the correct choice because Readability depends on its DOM fidelity. + +### JavaScript-Rendered Content + +| Content Type | Approach | Cost | +|-------------|----------|------| +| Static HTML (articles, blogs, docs) | `fetch` + `jsdom` + Readability | Minimal | +| SPA / JS-rendered | Playwright/Puppeteer or hosted service (Jina/Firecrawl) | High | +| Known site structures | `fetch` + `cheerio` + custom selectors | Minimal | + +Static HTML covers the vast majority of URLs users share in chat (articles, documentation, blog posts). JS-rendered SPAs are an edge case that can be handled by falling back to Jina Reader or Firecrawl. + +### Token Reduction Benchmarks + +| Content Type | Raw HTML Tokens | After Readability+Turndown | Reduction | +|-------------|----------------|---------------------------|-----------| +| Blog post | ~16,000 | ~3,150 | **80%** | +| E-commerce page | ~40,000 | ~2,000 | **95%** | +| News article | 15–25K | 2–5K | **75–80%** | +| Documentation | 10–30K | 3–8K | **70–75%** | +| Wikipedia | 20–80K | 5–20K | **60–75%** | + +Markdown-formatted content shows **35% better RAG accuracy** vs raw HTML. + +### Emerging Alternatives + +**ReaderLM-v2** (Jina AI, Jan 2025): 1.5B parameter model trained specifically for HTML → Markdown. Handles complex elements (code fences, nested lists, tables, LaTeX) with 512K token context. 15–20% better than GPT-4o on extraction benchmarks. Available via Jina API. Trade-off: requires model inference vs zero-cost heuristic conversion. + +**MinerU-HTML / Dripper** (ICLR 2026): 0.6B parameter model for semantic block classification. Reduces HTML to 22% of original tokens while preserving structure. 81.58% ROUGE-N F1 vs Readability's 64.91%. Requires running a small model — heavier infrastructure. + +Neither is practical for the MVP, but both indicate the direction the field is heading. + +--- + +## 3. Security Considerations + +### SSRF (Server-Side Request Forgery) + +The primary risk of server-side URL fetching. Must block: + +- **Private IPs**: `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16` +- **Loopback**: `127.0.0.0/8`, `::1` +- **Link-local**: `169.254.0.0/16`, `fe80::/10` +- **Cloud metadata endpoints**: AWS `169.254.169.254`, GCP `metadata.google.internal`, Azure `169.254.169.254` +- **Alternative IP representations**: Octal (`0177.0.0.1`), hex (`0x7f000001`), IPv6-mapped IPv4 (`::ffff:127.0.0.1`), decimal integer (`2130706433`) +- **URL schemes**: Only `http:` and `https:`. Block `file:`, `ftp:`, `data:`, `javascript:`, etc. + +### DNS Rebinding Prevention + +Attacker's DNS initially resolves to a public IP (passes validation), then TTL expires and resolves to `127.0.0.1` (actual request hits internal network). Mitigation requires resolving DNS *and pinning the resolved IP* for the actual request — no gap between validation and connection (TOCTOU). + +### Node.js SSRF Protection Libraries + +| Library | Weekly Downloads | DNS Rebinding | Cloud Metadata | TypeScript | +|---------|-----------------|---------------|----------------|-----------| +| `ssrf-agent-guard` (v1.1, Jan 2026) | New | Yes | AWS/GCP/Azure/Oracle/DO/K8s | Yes | +| `request-filtering-agent` | ~101K | No | Partial | No | +| `ssrf-req-filter` | ~45K | Open issue | No | No | + +**`ssrf-agent-guard`** is the most feature-complete pure-TypeScript option (MIT, Jan 2026): +- Blocks private/reserved IPs + cloud metadata endpoints +- DNS rebinding detection +- Policy-based domain filtering (allowlists, denylists, TLD blocking) +- Multiple modes (block/report/allow) +- Works with axios, node-fetch, native fetch via http.Agent wrapping +- Only 6 releases, 2 contributors — newer library, less battle-tested + +**`request-filtering-agent`** has the widest adoption (~101K weekly downloads) but lacks DNS rebinding protection and cloud metadata blocking. + +For defense-in-depth, layer: URL normalization (WHATWG URL API) + protocol restriction + DNS resolution with IP classification + redirect validation at each hop. + +### Response Handling + +| Control | Recommended Value | Rationale | +|---------|-------------------|-----------| +| Content-type allowlist | `text/html`, `text/plain`, `application/json`, `application/xml`, `application/pdf` | Reject binary, media, executables | +| Response size limit | 5 MB raw | Generous for HTML; content will be compressed to markdown | +| Redirect hops | 3–5 maximum | Validate each destination against SSRF rules | +| Connection timeout | 5–10 seconds | Prevent hanging connections | +| Total timeout | 15 seconds | Match existing `TOOL_EXECUTION_TIMEOUT_MS` | +| Streaming cutoff | AbortController at size limit | Don't buffer the entire response before checking | + +### Rate Limiting + +| Dimension | Recommended Limit | Rationale | +|-----------|-------------------|-----------| +| Per-user per hour | 30 fetches | Prevents sustained abuse | +| Per-conversation turn | 5 fetches | Matches existing step limits | +| Per-domain per minute | 3 requests | Prevents hammering a single site | +| Anonymous users | 10 fetches per day | Daily message limit is the primary control | + +### Legal/Ethical + +- **User-initiated fetches** (user shares a URL) are analogous to a browser acting on behalf of the user — distinct from autonomous crawling. ChatGPT, Perplexity, and Claude all fetch user-provided URLs without robots.txt checks. +- **Robots.txt**: Voluntary protocol (RFC 9309). For user-initiated fetches, treat like a user agent. Not legally binding. +- **Mitigation**: Rate limit aggressively, don't cache/redistribute content long-term, attribute sources in responses. +- Set a descriptive `User-Agent` header (e.g., `NotAWrapper/1.0 (User-initiated content fetch)`). + +--- + +## 4. Context Budget Management + +### Token Reduction from Extraction + +The extraction pipeline (Readability + Turndown) provides massive token savings: + +| Page Type | Raw HTML Tokens | After Extraction | Reduction | +|-----------|----------------|-----------------|-----------| +| Blog post | ~16,000 | ~3,150 | 80% | +| E-commerce | ~40,000 | ~2,000 | 95% | +| News article | 15–25K | 2–5K | 75–80% | + +### Token Counting + +| Approach | Speed | Accuracy | Portability | +|----------|-------|----------|-------------| +| `characters / 4` heuristic | Instant | ±15% | All models | +| `js-tiktoken` (exact BPE) | 1,494–31,334 ops/sec | Exact for OpenAI | OpenAI only | +| `@dqbd/tiktoken` (WASM) | 1,992 ops/sec | Exact for OpenAI | OpenAI only | + +**Recommendation**: Use `content.length / 4` heuristic for budget gating at fetch time. Different providers tokenize differently — the heuristic is more portable than exact counting with one tokenizer. Reserve exact counting for when approaching hard limits. + +English prose ratios: ~176 tokens per 1,000 characters (GPT-4o), ~185 tokens per 1,000 characters (GPT-4/cl100k). + +### Budget Framework + +For a 128K context window model: + +``` +┌──────────────────────────────────────────────────┐ +│ USABLE CONTEXT: ~100K tokens │ +│ (128K window - 28K safety margin) │ +├──────────────────────────────────────────────────┤ +│ │ +│ Fixed Costs: 7–15K │ +│ ├── System prompt 2–5K │ +│ ├── Tool definitions 2–5K │ +│ └── Static instructions 3–5K │ +│ │ +│ Variable Costs: 50–70K │ +│ ├── Conversation history 10–30K │ +│ ├── Fetched web content 20–40K │ +│ └── Tool results (non-web) 5–10K │ +│ │ +│ Reserved: 8–15K │ +│ ├── Response generation 4–8K │ +│ └── Reasoning overhead 4–8K │ +│ │ +└──────────────────────────────────────────────────┘ +``` + +**Allocation rule**: Fetched content budget = `min(user_limit, model_context_window * 0.25)`. + +20–25% of the model's practical context limit is the sweet spot — enough to be useful, conservative enough to leave room for conversation history and response generation. + +### Model-Aware Defaults + +| Model Family | Context Window | Practical Limit (~65%) | Content Budget (25%) | +|-------------|---------------|----------------------|---------------------| +| GPT-4o / GPT-5 | 128K | ~83K | 20K | +| Claude Sonnet/Opus | 200K | ~130K | 30K | +| Gemini 1.5 Pro | 1M | ~650K | 100K | +| Small models (32K) | 32K | ~21K | 5K | + +Models claiming large context windows become unreliable well before the advertised limit. Performance degrades at ~65% of advertised capacity with "sudden performance drops rather than gradual degradation." + +### Smart Truncation + +Truncation priority order: +1. Section/heading boundaries (best) +2. Paragraph boundaries (good) +3. Sentence boundaries (acceptable) +4. Word boundaries (minimum viable) + +Never truncate at arbitrary character offsets — boundary-aware truncation preserves significantly more useful information at the same token count. + +### Monitoring Thresholds + +| Context Occupancy | Action | +|-------------------|--------| +| < 70% | Normal operation | +| 70% | Soft cap — trigger history summarization | +| 85–90% | Hard cap — refuse new tool calls or drop low-value chunks | +| 95%+ | Emergency compression | + +--- + +## 5. Architecture Placement + +### Options Analysis + +| Approach | Description | Pros | Cons | +|----------|-------------|------|------| +| **A. Layer 2 standalone tool** | Add `content_extract` alongside `web_search` in `lib/tools/third-party.ts` | Minimal change, follows existing patterns, model decides when to use it | New tool name in all providers | +| **B. Search enhancement** | Automatically fetch full content for top search results | Better UX for "search and read" | Wastes tokens/money on results the model doesn't need | +| **C. Provider-native** | Use each provider's own fetch tool where available | Highest quality (Claude's dynamic filtering) | Only Anthropic has this; inconsistent across providers | +| **D. MCP server** | Optional MCP server users install | Zero default footprint | Requires opt-in configuration, not discoverable | +| **E. Separate "browsing" mode** | Toggle between search and browse modes | Clear UX intent | Complicates the interface, ChatGPT-style complexity | + +### Recommendation: A (Layer 2 Standalone) with Exa as MVP Backend + +**Rationale**: The existing Phase 7.7 plan in `.agents/plans/phase-7-future-tool-integrations.md` already describes this approach with Exa's `getContents()`. It requires: +- Zero new dependencies (Exa SDK already installed) +- Minimal code change (~30 lines in `lib/tools/third-party.ts`) +- Same API key as search (unified BYOK billing) +- $1/1K pages (cheaper than search at $5/1K) + +**Enhancement path** (post-MVP): +1. **MVP**: Exa `getContents()` — zero new deps, immediate value +2. **V2**: Self-hosted pipeline (`fetch` + `@mozilla/readability` + `turndown`) — zero per-request cost, better for high-volume +3. **V3**: Specialized extractors (YouTube transcripts, GitHub, PDFs) — highest quality per content type +4. **V4**: Jina Reader fallback for JS-rendered pages — covers the SPA edge case + +### Access Control + +| User Type | Recommendation | Rationale | +|-----------|----------------|-----------| +| Authenticated | Full access, 30 fetches/hour | Primary user base | +| Anonymous | Allowed, 10 fetches/day | At $1/1K pages, worst case ~$0.01/day per anonymous user. Daily message limit is the real control. | +| BYOK | Full access, their own API costs | Same Exa key handles search and extraction | + +### Tool Decision: Model-Driven (`toolChoice: "auto"`) + +The model should decide when to use `content_extract` based on user intent. No proactive URL extraction — URLs appear in code snippets, reference links, and other contexts where fetching would be wrong. Claude, GPT-5, and Gemini all demonstrate good judgment about when URL content is needed vs. when the URL is just a reference. + +--- + +## 6. Specialized Content Types + +### Value vs Complexity Assessment + +| Extractor | Value | Complexity | Verdict | Priority | +|-----------|-------|------------|---------|----------| +| YouTube transcripts | Very High — unique content AI can't get otherwise | Low (one npm package) | **Must have** | V3 | +| PDF | High — common link type, needs specialized parsing | Low (`unpdf`, one function) | **Must have** | V3 | +| GitHub | High — structured data (issues, code, README) | Low-Medium (Octokit, REST API) | **Must have** | V3 | +| Wikipedia | Medium — cleaner than generic scraping | Very Low (REST API, no auth) | **Worth it** | V3 | +| Twitter/X | Medium — tweets are short | Low (oEmbed, free) but unreliable for threads | **Worth it** | V4 | + +### YouTube + +Neither ChatGPT nor Claude can reliably extract YouTube transcripts today. This is a real differentiation opportunity. + +| Library | Version | Weekly Downloads | Notes | +|---------|---------|-----------------|-------| +| `youtube-transcript` | 1.2.1 | 135.6K | Most popular, zero deps, MIT | +| `youtube-transcript-plus` | 1.2.0 | Growing | Fork with proxy/custom-fetch support (Feb 2026) | + +```typescript +import { YoutubeTranscript } from 'youtube-transcript'; +const transcript = await YoutubeTranscript.fetchTranscript('dQw4w9WgXcQ'); +// Returns: [{ text: string, duration: number, offset: number, lang?: string }] +``` + +Uses unofficial YouTube endpoints (timedtext API). Technically violates YouTube ToS. Widely tolerated at low volume with rate limiting and caching. The official YouTube Data API v3 cannot download transcript text. + +### PDF + +| Library | Weekly Downloads | Serverless | Notes | +|---------|-----------------|------------|-------| +| `unpdf` | 266.8K | Yes | Modern, zero deps, recommended | +| `pdf-parse` | ~2.2M | No | Most downloaded but unmaintained | +| `pdfjs-dist` | High | No | Low-level, maximum control | + +**`unpdf`** is the clear winner — zero dependencies, works in Node.js/Bun/Deno/Cloudflare Workers, bundles PDF.js v5.4: + +```typescript +import { extractText, getDocumentProxy } from 'unpdf'; +const buffer = await fetch(pdfUrl).then(r => r.arrayBuffer()); +const pdf = await getDocumentProxy(new Uint8Array(buffer)); +const { totalPages, text } = await extractText(pdf, { mergePages: true }); +``` + +Quality: excellent for text, poor for tables (loses structure), no OCR for scanned PDFs. A 100-page PDF ≈ 30–50K tokens. + +### GitHub + +GitHub REST API with `@octokit/rest` (~3.5M weekly downloads). Rate limits: 60 req/hour unauthenticated, 5,000 req/hour authenticated. Standard pattern for "summarize this repo": fetch README + repo metadata + directory tree + package.json. + +URL detection covers: +- `github.com/{owner}/{repo}` → README + metadata +- `github.com/{owner}/{repo}/issues/{number}` → issue body + comments +- `github.com/{owner}/{repo}/pull/{number}` → PR description + diff stats +- `github.com/{owner}/{repo}/blob/{branch}/{path}` → file content + +### Wikipedia + +REST API at `en.wikipedia.org/api/rest_v1/` provides clean endpoints. No auth required. `wikipedia` npm package (v2.1.2) provides `page.summary()` and `page.content()`. `wtf_wikipedia` (v10.4.1, 6.7K weekly downloads) parses wikitext into structured sections. + +### Architecture: URL Router Pattern + +``` +User shares URL → URL Detector (regex) → Specialized Extractor or Generic Fallback + ↓ + Normalized Output: { type, title, content (markdown), metadata, sourceUrl, tokenEstimate } +``` + +All extractors return the same `ExtractedContent` shape, keeping downstream LLM prompt logic consistent regardless of source type. The generic fallback (Exa `getContents` for MVP, Readability+Turndown for V2) handles the long tail. + +--- + +## 7. Hosted Services and APIs + +### Comparison Matrix + +| Service | Best For | JS Render | Pricing | Self-Host | Latency | +|---------|----------|-----------|---------|-----------|---------| +| **Exa `getContents`** | Search + extraction pipeline | Yes (internal) | $1/1K pages | No | Fast (cached) | +| **Jina Reader** (`r.jina.ai`) | Simple URL → Markdown | Yes (headless Chrome) | Free 1M tokens, then token-based | Yes (Apache 2.0) | Fast | +| **Tavily Extract** (`@tavily/ai-sdk`) | AI SDK integration | Unknown | Credit-based | No | Medium | +| **Firecrawl** | Structured extraction + crawling | Yes (Chromium) | Free 500 credits, $16–$599/mo | Yes (AGPL, Docker) | Medium | +| **Browserless** | Full browser automation | Yes | Free 1K units, $200–$500/mo | Yes | Variable | + +### Exa `getContents()` — MVP Backend + +Already integrated via `exa-js`. `getContents()` fetches and extracts content from specific URLs: + +```typescript +const results = await exa.getContents(urls, { + text: { maxCharacters: 10000 }, +}); +``` + +- **$1/1K pages** (vs $5/1K search requests) +- Returns from Exa's cache (instant), falls back to live crawl +- Content extraction options: text (markdown), highlights (AI excerpts), summary (LLM-generated) +- Same API key as search — unified BYOK +- No new dependency + +### Jina Reader — JS-Rendered Fallback + +Prefix any URL with `https://r.jina.ai/` → returns clean Markdown. Uses Readability + Turndown internally, with Puppeteer for JS rendering. Processes 100 billion tokens daily. Open source (Apache 2.0). + +- Free tier: ~1M tokens (IP-based rate limits) +- Supports CSS selectors, image captions, PDF reading +- ReaderLM-v2 option for higher quality (3x token cost) +- No npm package needed — simple HTTP API + +### Tavily Extract — AI SDK Native + +The `@tavily/ai-sdk` (v0.4.1) provides a `tavilyExtract()` tool that plugs directly into Vercel AI SDK's `tools` parameter: + +```typescript +import { tavilyExtract } from "@tavily/ai-sdk"; +tools: { extract: tavilyExtract({ format: "markdown" }) } +``` + +Cleanest integration for AI SDK, but adds a new dependency and API key. ~4.6K weekly downloads. + +### Self-Hosted Pipeline — Long-Term + +For zero per-request cost: + +```typescript +import { JSDOM } from 'jsdom'; +import { Readability } from '@mozilla/readability'; +import TurndownService from 'turndown'; + +async function fetchAndExtract(url: string): Promise { + const response = await fetch(url, { signal: AbortSignal.timeout(15000) }); + const html = await response.text(); + const dom = new JSDOM(html, { url }); + const article = new Readability(dom.window.document).parse(); + if (!article) return ''; + return new TurndownService({ headingStyle: 'atx', codeBlockStyle: 'fenced' }) + .turndown(article.content); +} +``` + +Dependencies: `jsdom` (~14M/wk), `@mozilla/readability` (~500K/wk), `turndown` (~2.37M/wk). Total: ~3 new dependencies. Full pipeline: ~300–500ms per page. + +--- + +## 8. Caching Strategy + +### Should Fetched Content Be Cached? + +**Yes, with short TTL and per-user isolation.** + +Web page content changes. Caching too aggressively returns stale data; not caching at all wastes API credits and increases latency for repeated URLs (common in multi-turn conversations about the same page). + +### Recommended Approach + +| Dimension | Recommendation | Rationale | +|-----------|----------------|-----------| +| **TTL** | 15–30 minutes | Long enough for multi-turn conversations about the same URL; short enough that content stays fresh | +| **Scope** | Shared cache (same URL = same content) | No privacy concern — content is publicly accessible by URL. Shared cache maximizes hit rate. | +| **Storage** | In-memory (Map or LRU cache) for MVP | No infrastructure dependency. Process-level cache is fine for single-server deployments. | +| **Key** | Normalized URL (strip tracking params, normalize case) | Prevent duplicate fetches for equivalent URLs | +| **Eviction** | LRU with 500-entry cap | Prevents unbounded memory growth | +| **Privacy** | Don't log URLs fetched | URLs can reveal user interests and browsing patterns | + +### Implementation Sketch + +```typescript +const cache = new Map(); +const CACHE_TTL_MS = 15 * 60 * 1000; // 15 minutes +const MAX_ENTRIES = 500; + +function getCached(url: string): string | null { + const entry = cache.get(normalizeUrl(url)); + if (!entry) return null; + if (Date.now() - entry.fetchedAt > CACHE_TTL_MS) { + cache.delete(normalizeUrl(url)); + return null; + } + return entry.content; +} +``` + +### What Not To Cache + +- URLs with authentication tokens or session-specific content +- Content fetched via POST or non-idempotent requests +- Error responses (cache misses, not failures) + +### Scaling Beyond In-Memory + +If the application scales to multiple server instances, migrate to Redis or Convex-backed cache. Redis LangCache provides semantic caching (matches semantically similar queries to cached results) — relevant for search results but overkill for URL content caching where the key is the exact URL. + +--- + +## 9. Recommendations + +### Progressive Enhancement Path + +| Phase | What | Dependencies | Per-Request Cost | Coverage | +|-------|------|-------------|-----------------|---------| +| **MVP** | Exa `getContents()` tool in Layer 2 | None (Exa already installed) | $1/1K pages | Static HTML, cached pages | +| **V2** | Self-hosted Readability + Turndown pipeline | `jsdom`, `@mozilla/readability`, `turndown` | $0 | Static HTML (no JS rendering) | +| **V3** | Specialized extractors (YouTube, PDF, GitHub, Wikipedia) | `youtube-transcript`, `unpdf`, `@octokit/rest`, `wikipedia` | $0 (mostly) | Structured content from known platforms | +| **V4** | Jina Reader fallback for JS-rendered pages | None (HTTP API) | Token-based | SPAs, JS-rendered content | +| **V5** | SSRF hardening + production rate limiting | `ssrf-agent-guard` or `request-filtering-agent` | $0 | Security | + +### MVP Specification (Phase 7.7 Alignment) + +The MVP aligns with the existing plan in `.agents/plans/phase-7-future-tool-integrations.md` Sub-Phase 7.7: + +**Tool name**: `content_extract` +**Location**: `lib/tools/third-party.ts` (alongside `web_search`) +**Backend**: Exa `getContents()` +**Input**: `{ urls: z.array(z.string().url()).min(1).max(5) }` +**Output**: `{ ok, data: [{ url, title, content }], error, meta }` +**Content limit**: 10,000 characters per URL (≈2,500 tokens) +**Cost**: $1/1K pages (`estimatedCostPer1k: 1`) +**Timeout**: 15s (existing `TOOL_EXECUTION_TIMEOUT_MS`) +**Access**: All users (authenticated and anonymous) +**Tool metadata**: `{ displayName: "Read Page", source: "third-party", serviceName: "Exa", readOnly: true }` + +### Key Design Decisions + +| Decision | Choice | Rationale | +|----------|--------|-----------| +| Model triggers fetch | `toolChoice: "auto"` | Model judges intent better than URL regex | +| Content format | Markdown | Token-efficient, preserves structure, industry standard | +| Content budget default | 10K chars (MVP), model-aware in V2 | Conservative start; can increase based on usage data | +| Caching | In-memory LRU, 15-min TTL | Simple, effective for multi-turn conversations | +| SSRF protection | `ssrf-agent-guard` (V5) | Most complete TypeScript library; not needed for MVP since Exa handles fetching | +| Specialized extractors | V3 (after generic works) | YouTube transcripts are the highest-value differentiator | + +### Risks and Mitigations + +| Risk | Impact | Mitigation | +|------|--------|------------| +| Exa extraction quality varies by page | Medium — some pages return poor content | V2 self-hosted pipeline as fallback; Jina Reader for JS-rendered pages | +| Exa service outage | High — tool becomes unavailable | Timeout + graceful error messaging; V2 self-hosted pipeline as backup | +| SSRF vulnerability (V2 self-hosted) | Critical — server-side URL fetching | Defer self-hosted fetching to V5 with proper SSRF protection | +| Context budget overflow | Medium — degraded model performance | `chars / 4` budget gating; smart truncation at paragraph boundaries | +| YouTube scraping breaks | Medium — unofficial API can change | Cache transcripts; degrade gracefully to generic page scraping | +| Cost at scale | Low — $1/1K pages is cheap | BYOK passes cost to user; platform key has existing billing controls | + +### Dependencies Summary + +| Phase | New Dependencies | Bundle Impact | +|-------|-----------------|---------------| +| MVP | None | None | +| V2 | `jsdom`, `@mozilla/readability`, `turndown` | ~2 MB (server-only, no client bundle impact) | +| V3 | `youtube-transcript`, `unpdf`, `wikipedia` | ~200 KB (server-only) | +| V4 | None (HTTP API to Jina) | None | +| V5 | `ssrf-agent-guard` | ~50 KB (server-only) | + +--- + +## Appendix A: Tavily as Alternative to Exa + +The `@tavily/ai-sdk` (v0.4.1) provides `tavilyExtract()` that plugs directly into AI SDK's tool system. It handles URL extraction with configurable format (markdown/text) and depth (basic/advanced). Extract API supports up to 20 URLs simultaneously. + +**Comparison with Exa `getContents()`**: + +| Dimension | Exa | Tavily | +|-----------|-----|--------| +| Already integrated | Yes (`exa-js`) | No (new dependency) | +| AI SDK plugin | Via `@exalabs/ai-sdk` (not used due to BYOK) | Via `@tavily/ai-sdk` | +| Pricing | $1/1K pages | Credit-based (varies) | +| BYOK support | Yes (explicit key constructor) | Yes (API key param) | +| Batch size | Unlimited | 20 URLs | +| Output format | Text, highlights, summary | Markdown, text | + +**Verdict**: Exa is the correct MVP choice — already integrated, zero new dependencies, cheaper, proven in the codebase. + +## Appendix B: Full Library Reference + +| Library | npm Package | Version | Weekly Downloads | License | +|---------|-------------|---------|-----------------|---------| +| Readability | `@mozilla/readability` | 0.6.0 | ~500K | Apache 2.0 | +| Turndown | `turndown` | 7.2.0 | ~2.37M | MIT | +| jsdom | `jsdom` | latest | ~14M | MIT | +| node-html-markdown | `node-html-markdown` | 1.3.0 | ~328K | MIT | +| unpdf | `unpdf` | latest | 266.8K | MIT | +| youtube-transcript | `youtube-transcript` | 1.2.1 | 135.6K | MIT | +| youtube-transcript-plus | `youtube-transcript-plus` | 1.2.0 | Growing | MIT | +| wikipedia | `wikipedia` | 2.1.2 | Moderate | MIT | +| wtf_wikipedia | `wtf_wikipedia` | 10.4.1 | 6.7K | MIT | +| ssrf-agent-guard | `ssrf-agent-guard` | 1.1 | New | MIT | +| request-filtering-agent | `request-filtering-agent` | latest | ~101K | MIT | +| Tavily AI SDK | `@tavily/ai-sdk` | 0.4.1 | ~4.6K | MIT | +| Exa SDK | `exa-js` | latest | Moderate | MIT | From 08456945d058f52b3f411d4b517d414a8411c3d9 Mon Sep 17 00:00:00 2001 From: Andres Gonzalez Date: Sun, 22 Feb 2026 17:22:57 -0500 Subject: [PATCH 2/8] style: refine thinking states UI, animations, and reasoning labels - Add keyframe animations (spinner-fade, pulse-dot, bounce-dots, typing, wave, blink, text-shimmer) to globals.css - Update thinking states test page with ArticleWrapper, semantic HTML, mask-based action reveal, and improved composer layout - Change reasoning label from "Reasoned" to "Thoughts" - Bump thinking bar text from text-sm to text-base Co-authored-by: Cursor --- app/globals.css | 94 +++++++++++++++++ app/test/thinking-states/page.tsx | 168 +++++++++++++++++++++--------- components/ui/reasoning.tsx | 2 +- components/ui/thinking-bar.tsx | 2 +- 4 files changed, 215 insertions(+), 51 deletions(-) diff --git a/app/globals.css b/app/globals.css index 17d258a4..ead80a14 100644 --- a/app/globals.css +++ b/app/globals.css @@ -157,6 +157,100 @@ box-shadow: 0 0 8px 1px color-mix(in oklab, var(--foreground) 45%, transparent); } } + + @keyframes spinner-fade { + 0% { + opacity: 1; + } + 100% { + opacity: 0; + } + } + + @keyframes thin-pulse { + 0%, + 100% { + transform: scale(0.8); + opacity: 0.5; + } + 50% { + transform: scale(1); + opacity: 1; + } + } + + @keyframes pulse-dot { + 0%, + 100% { + transform: scale(0.8); + opacity: 0.5; + } + 50% { + transform: scale(1.3); + opacity: 1; + } + } + + @keyframes bounce-dots { + 0%, + 80%, + 100% { + transform: scale(0); + } + 40% { + transform: scale(1); + } + } + + @keyframes typing { + 0%, + 100% { + opacity: 0.2; + } + 50% { + opacity: 1; + } + } + + @keyframes wave { + 0%, + 100% { + transform: scaleY(0.5); + } + 50% { + transform: scaleY(1.2); + } + } + + @keyframes wave-bars { + 0%, + 100% { + transform: scaleY(0.4); + } + 50% { + transform: scaleY(1); + } + } + + @keyframes blink { + 0%, + 100% { + opacity: 1; + } + 50% { + opacity: 0; + } + } + + @keyframes text-blink { + 0%, + 100% { + opacity: 1; + } + 50% { + opacity: 0.3; + } + } } @theme inline { diff --git a/app/test/thinking-states/page.tsx b/app/test/thinking-states/page.tsx index 5701a0cc..a9baa64e 100644 --- a/app/test/thinking-states/page.tsx +++ b/app/test/thinking-states/page.tsx @@ -32,7 +32,7 @@ import { Copy01Icon, } from "@hugeicons-pro/core-stroke-rounded" import type { SourceUrlUIPart, ToolUIPart } from "ai" -import { useCallback, useState, useEffect } from "react" +import { useCallback, useState, useEffect, useId } from "react" // ─── Constants ─────────────────────────────────────────────────────────────── @@ -286,20 +286,51 @@ function StateAnnotation({ ) } +function ArticleWrapper({ + children, + role, +}: { + children: React.ReactNode + role: "user" | "assistant" +}) { + return ( +

+ ) +} + function UserBubble({ children }: { children: string }) { const isMultiline = children.includes("\n") return ( - - + - {children} - - +
You said:
+ + {children} + + + ) } @@ -310,26 +341,54 @@ function AssistantShell({ children: React.ReactNode isLast?: boolean }) { + const msgId = useId() return ( - -
+ - {children} -
-
+
Assistant said:
+
+ {children} +
+ + ) } function CopyRegenActions() { return ( - +