Skip to content

Less webpage. More usable context.

Live URL → compact Markdown for AI agents — or a typed ok:false. Strips chrome, fits a token budget, keeps the source. Does not invent page text from model memory.

Webpage noise

navigationsearchscripts cookie noticenewsletter formconsent UI footeradsrelated links social widgetslayout CSSanalytics
<header>…</header>
<nav class="site-nav">…</nav>
<script src="bundle.js"></script>
<aside class="sidebar">…</aside>
<footer>…</footer>

Source-linked Markdown

1  # Web context without the chrome
2
3  Agent infrastructure · 8 minute read
4
5  AI agents rarely need the whole
6  interface of a webpage. They need
7  the useful text, its structure, and
8  enough source information to explain
9  where the material came from.
10
11 ## The hidden cost of a page read

source: representative-input.html

This demo · HTML
5,297 B
This demo · Markdown
1,736 B

One inspectable demo page — not an average, not a promise. Real sites vary (sometimes much more chrome, sometimes almost none). Bytes, not tokens.

One command · host + PATH + connect
curl -fsSL https://raw.githubusercontent.com/ContextForgeAI/occam/main/scripts/get-ff-occam.sh | bash
Windows, Linux, and macOS — see Install. Experimental MCP-only (no occam connect): npx ff-occam@1.1.1.

Get your first result Why Occam Inspect demo

  1. 01InstallOne command. No accounts.
  2. 02ConnectAdd to any MCP client.
  3. 03ReadGet compact context or an explicit failure.

Local-first · MCP · explicit failures · 1.0.0

What you get (30 seconds)

Capability
Honest read Live extract → Markdown, or typed refusal. ok:false = content unknown.
Token contract occam_client_capabilities, max_tokens, fit_markdown + focus_query — not an LLM summarizer.
Acquisition ladder HTTP → browser when needed → typed refusal.
One page / many occam_transcode · occam_digest · occam_map / occam_search.
Structure / diffs Opt-in blocks/tables/feeds · if_none_match / diff_against.
Integrity Optional Receipt v1 → occam_verify (integrity vs a key — not truth).
Playbooks Per-site recipes when you author them.
Local-first Runs with you; private URL / SSRF blocks by default.

Full knobs and tool map: Why Occam. Agents: start at llms.txt.

Inspect one demo (not a benchmark)

The product claim is usable context or an honest unknown — not a fixed “% smaller” rate. Chromed marketing pages often shrink a lot; a clean docs page may barely shrink. We publish one stable fixture so you can open the input, run the same call, and check the method.

Demo input
Article plus webpage chrome

Open the controlled input

<header>…search…</header>
<nav>…repeated links…</nav>
<main>
  <article>Web context without the chrome…</article>
  <aside>…newsletter…related reading…</aside>
</main>
<section>…cookie notice…</section>
<footer>…company links…</footer>

5,297 UTF-8 HTML bytes · this page only

Demo output
Compact Markdown
# Web context without the chrome

AI agents rarely need the whole interface of a webpage.
They need the useful text, its structure, and enough
source information to explain where the material came from.
  • State ok: true
  • Preserved headings, paragraphs, list, code
  • Source attached in the result

1,736 UTF-8 Markdown bytes · this page only

For this demo page the Markdown body is shorter than the HTML body (5,297 → 1,736 UTF-8 bytes). That ratio is a property of the fixture, not a product KPI — do not cite it as “Occam saves 67%.” No tokenizer was used; not a token or quality claim.

Method and source revision Runtime source revision `b3c212c6d9e193619b6e8663148bd53932a0acc0`. Full method, complete input/output, the minimal live smoke proof, controlled failure, and reproduction scripts: [current proof bundle](examples/current-proof/README.md) and three recorded jobs in [golden workflows](examples/golden-workflows/) [context packs](examples/context-packs/), and [site research](examples/site-research/).

The cost grows with every source

An ordinary page can contain navigation, scripts, repeated interface text, cookie controls, footers, and large amounts of raw markup around the part an agent actually needs.

Passing all of that through wastes a local model's limited context and makes larger models work around irrelevant text. A search result can help find the source; Occam focuses on reading the chosen source and preparing usable page content for the agent.

The measured fixture above makes that transformation inspectable. The proof bundle also retains example.com as the minimal live smoke case so the richer marketing example does not replace the smallest deterministic contract check.

A useful result — or an explicit unknown

Successful read
ok: true

Readable content with the source URL and result metadata.

# Example Domain

This domain is for use in documentation examples…

Source: https://example.com/

Explicit unknown
ok: false

Page content is unknown — do not invent it from memory.

{
  "ok": false,
  "failure": {
    "code": "private_url_blocked",
    "message": "Private or local URLs are blocked."
  }
}

Typed reason · no invented page text

This predictable failure is a trust feature, not the main reason to try Occam: start with the successful read. The proof fixture includes the controlled private-destination case above.

Choose your workflow

Three routes. Pick one, then open the matching Quick Start path for the exact prompt.

Choose a detailed path and get the exact first prompt · Host onboarding · Workflow gallery · See host validation tiers

How Occam works

Occam starts with a lightweight local read and can use a local browser when the page requires it. It then returns the useful content and metadata through one agent-facing contract. Focus, budgets, structured extraction, sessions, and verification are available when the task needs more control.

How Occam works · Read one page · Choose a tool

Why Occam

Not “another web fetch.” Occam is the honesty + token-budget layer between your agent and the public web.

Generic fetch / memory Occam
Empty HTML or invented text Live Markdown or typed ok:false
Burns the context window Budget + focus prune (deterministic)
No proof of what was returned Optional Receipt v1 → verify
One opaque “read” Ladder, probe, map, search, digest

Why Occam — full flashcard · Choose a tool · Ask AI / agent prompt

Trust and local control

Local-first defaults Normal page reading runs on your machine by default.
Source traceability Source URLs remain attached to results.
Explicit unknown Unsuccessful reads return a typed result — not invented page text.
Private destinations blocked Unsafe private/local destinations are denied unless explicitly allowed.
Consent before config Connection changes require an explicit install/connect action.
Local Ollama path No Ollama login required · Occam does not use Ollama Web Search.

Local-first is not an absolute “never cloud” claim. The origin website is a network source, and explicitly configured search, proxy, or remote transport providers can change the boundary.

Optional Receipt v1 artifacts can check returned-byte integrity against a supplied key. They do not prove truth, identity, or authentic origin.

Trust and security · Capabilities · Reference overview · Installation safety · Receipts

Get your first Occam result

Install Occam, choose the path for your AI application or local runtime, and finish with a real page read.

Get your first result Inspect the proof

Version: 1.0.0 (published install channel) · Status: GA · License: AGPL-3.0-or-later

Explore deeper

Why Occam · Task router · Workflow gallery · Examples · Recipes · Tools · Tools reference · MCP API · Handbook · Experimental · Operators · Troubleshooting · FAQ · Reference overview · Ask AI · llms.txt