Capture anything.
Inject context. write better.
Contexto captures web pages, YouTube transcripts, AI chat responses, and your own notes — compresses them with a real NLP pipeline — and injects structured context into ChatGPT, Claude, Gemini, or Perplexity with one click. Local-first. Zero cloud. Zero re-typing.
Scroll
Injects into the AIs you already use
One extension. Four frontier models. Each platform gets its own adapter — optimised selector, correct event dispatch, model-aware format.
ChatGPT
OpenAIInjects structured XML context directly into the active chat. Falls back to clipboard on adapter drift.
Claude
AnthropicAuto-selects Markdown format for Claude — the output style frontier models parse best. One-click inject.
Gemini
Google DeepMindNative Quill editor injection with full event dispatch — Gemini's autocomplete state stays intact.
Perplexity
Perplexity AIInjects context before your query so Perplexity searches with full background in a single shot.
Four steps. write better.
From any webpage, video, or AI chat to a structured prompt — in under two seconds. Fully local, fully private.
Capture
Highlight text for the floating Save button, right-click any selection, grab a full webpage, save an AI chat response, or pull a YouTube transcript — all with one click.
Text · Web · AI Chat · YouTube · Right-click menu
Organize
Drop items into named workspaces. SHA-256 deduplication prevents duplicates. Drag to reorder. Live token counter updates as you toggle items on or off.
Workspaces · Deduplication · Drag-and-drop · Token budget
Compress
Choose None, Balanced (50%), or Aggressive (25%) compression. The NLP pipeline — TF-IDF → TextRank → MMR — keeps the highest-signal sentences within your token budget.
TF-IDF · TextRank · MMR · 3 compression levels
Inject
One click pushes formatted context into ChatGPT, Claude, Gemini, or Perplexity. Every injection is logged. Clipboard fallback if the adapter drifts.
4 AI platforms · Audit log · Clipboard fallback
Everything you need to write better
From capture to compression to injection — every layer of the pipeline is built to give your AI the context it needs to produce its best work.
NLP Compression Engine
Full academic pipeline: TF-IDF vectorization → TextRank scoring → MMR selection. Three levels — None, Balanced (50%), Aggressive (25%) — to fit any token budget.
YouTube Transcripts
Extract full timestamped transcripts ([HH:MM:SS] format) from any YouTube video. Channel name and title captured automatically.
AI Chat Capture
Save any ChatGPT, Claude, Gemini, or Perplexity response inline — a Save button appears on every message bubble. Captures prompts and replies separately.
Right-Click Menu
Highlight text anywhere, right-click, and save to Contexto — no floating button required. Fully keyboard-free capture workflow.
SHA-256 Deduplication
Every item is fingerprinted on save. If you capture the same content twice, Contexto tells you instead of creating a duplicate.
Three Output Formats
XML (default, best for GPT), Markdown (auto-suggested for Claude), or Numbered list. Model-aware format recommendation built in.
Injection Audit Log
Every injection is logged: timestamp, platform, token count, item count, success/failure, and error reason. Fully queryable by workspace and date.
Local-First Storage
All data lives in IndexedDB on your device via Dexie.js — zero cloud required. Fully offline. Soft-delete with recovery.
Multi-Workspace
Named workspaces per project or client — each with its own system prompt prefix, compression settings, and token budget. Drag-and-drop reordering persisted across sessions.
Live Token Meter
GPT tokenizer counts every item at save time. Live estimate updates as you select items before injection. Visual warning as you approach model limits.
Smart Web Extraction
Mozilla Readability.js strips nav, ads, and boilerplate — extracts favicon, title, meta description, and canonical URL. Handles Cloudflare and bot challenges automatically.
Pluggable Adapters
Each AI platform is an independent adapter. Adding a new platform requires one file and one registry entry. Chrome, Edge, and Firefox from a single codebase.
Prompt Injection Guard
All captured content is HTML-escaped before formatting. DOMPurify sanitization on every captured HTML block. No raw HTML is ever stored or injected.
Instant Side Panel
Native Chrome/Edge sidePanel API + Firefox sidebarAction — never a popup tab. Opens in under 80ms, persists across tab switches.
Multi-Browser
Single codebase ships to Chrome, Edge, and Firefox via WXT framework + webextension-polyfill. Manifest V3 throughout.
Your context never leaves the device.
Built the way we'd want our own data handled — on the metal you paid for, behind the password you set, sanitized before it touches any AI.
Local-First by Design
IndexedDB only via Dexie.js. Your notes, captures, and workspaces never traverse a network we control.
No Cloud, No Sync
Phase 1 ships with zero backend. Optional bidirectional sync arrives in Phase 2 — last-write-wins, E2E — and stays optional forever.
Zero Telemetry
No analytics, no fingerprinting, no third-party scripts. Only opt-in Sentry crash traces. Nothing else leaves the browser.
Minimal Permissions
We request activeTab, not tabs. You see "Read active tab" — never "Read all tabs". The narrowest Chrome/Firefox permission set possible.
Prompt Injection Guard
All captured content is HTML-escaped before formatting (, <, > → entities). System prompt field is also escaped. DOMPurify whitelist on every HTML capture.
XSS-Safe Pipeline
Mozilla Readability.js + DOMPurify sanitizer on all webpage captures. No raw HTML is ever stored or injected — plain text only, end to end.
Stop repeating yourself. write better.
Install Contexto. Capture a webpage, a YouTube transcript, or an AI response. Compress it. Inject it into ChatGPT, Claude, Gemini, or Perplexity. Every chat starts informed.
