omniglyph weekly downloads statistics
By diegosouzapw · npm · Claude Code
Context-as-image compression proxy for LLMs: renders bulky context (system prompt, tool docs, history) as dense PNG pages with exact per-provider billing math (Anthropic/OpenAI/Gemini). Node and Cloudflare Workers. Part of the OmniRoute family.
omniglyph has 33,711 recorded weekly downloads on npm, a decrease of 53.8% over the past 30 days.
It ranks #640 of 2,251 tracked npm listings by weekly downloads.
Over 90 days, weekly downloads changed by -8.8%.
PluginStats has 543 daily observations since Apr 23, 2025; the latest is from Oct 17, 2026.
About omniglyph
🖼️ OmniGlyph — Context as Image
Cut your Claude bill by 59–70% by rendering bulky context as dense PNG pages — the same content, in a fraction of the tokens.
Models bill text per token, but bill an image by its dimensions — not by how much text is inside it.
Part of the OmniRoute family · 🌐 All languages
🇺🇸 🇸🇦 🇦🇿 🇧🇬 🇧🇩 🇨🇿 🇩🇰 🇩🇪 🇪🇸 🇮🇷 🇫🇮 🇫🇷 🇮🇳 🇮🇱
🇮🇳 🇭🇺 🇮🇩 🇮🇹 🇯🇵 🇰🇷 🇮🇳 🇲🇾 🇳🇱 🇳🇴 🇵🇭 🇵🇱 🇵🇹 🇧🇷
🇷🇴 🇷🇺 🇸🇰 🇸🇪 🇰🇪 🇮🇳 🇮🇳 🇹🇭 🇹🇷 🇺🇦 🇵🇰 🇻🇳 🇨🇳 🇹🇼
*Eight years of context growth, in characters. Every text line tops out near ~4M chars (a 1M-token window at ~4 chars/token); the orange point is the same Fable 5 1M window read through OmniGlyph images — ~18M chars at the measured 18.16 chars/vision-token, 4.54× the text ceiling. The density and multiplier are measured from a live render at generation time, not hand-typed: regenerate with npx tsx scripts/gen-context-chart.ts (source).*
📊 The numbers — measured, not estimated
| metric | result | receipt |
| End-to-end bill reduction | 59–70% | production trace, 13,709 requests | | Tokens per converted block | 10× fewer (28,080 chars: 14,040 → 1,460 tokens) | billing sweep | | Billing-formula accuracy | residual zero across 22 count_tokens probes, 2 models × 2 tiers | benchmarks/billing-sweep/results/ | | Exact-read accuracy, production config | 30/30 (100%) on Claude Fable 5 | density frontier | | Silent confabulations in ~300 read probes | 0 — every miss abstains as ILEGIVEL | benchmarks/density-frontier/results/ |
Model scorecard (can it read dense renders? n=30 per arm, deterministic scoring):
| model | reading | verdict |
| Claude Fable 5 | 100% exact | ✅ production target | | Claude Opus 4.8 | 77–87% at 4× glyph size | ⚠️ opt-in safe mode (savings drop to ~2×) | | GPT-5.5 | 0/60 — and inflates its answers ~40× trying | ❌ blocked by the gate, with proof | | Gemini 2.5-flash | 0/26 — and confabulates instead of abstaining | ❌ blocked (partial test, quota-limited) |
The advantage is Fable-specific today — other vision encoders don't resolve dense glyphs yet. The benchmark harness re-tests any new model in one command.
🤔 Why OmniGlyph?
Every long-running agent session drags the same dead weight on every request: the system prompt, tool docs, and old history — re-billed per token, every turn. OmniGlyph is a local proxy that rewrites those bulky parts into dense PNG pages *before they leave your machine*:
• Exact billing math, not heuristics — it computes the provider's real image-token formula (measured to residual zero) and converts only when the math wins. • Fail-closed by design — models that can't read dense renders are blocked by a gate, with benchmark receipts. No silent quality loss. • Private & local-first — the rewrite happens on 127.0.0.1; nothing extra is sent anywhere. • Reproducible — every number above has a receipt in benchmarks/*/results/, re-runnable in one command.
⚡ Quick Start
Works both ways: • API key (pay per token): your bill drops 59–70% end-to-end. • Subscription session: you don't pay less, but usage limits are counted in tokens — so your limits stretch ~2–3×.
Dashboard at : tokens saved, every text→image conversion side by side, kill switch, live model chips. Responses stream normally — only the *request* is compressed, never the model's output.
🔌 Use with Claude clients
Start the proxy in one terminal, then point the client at it.
Claude Code CLI (macOS/Linux):
Claude Code CLI (Windows PowerShell):
Claude Desktop uses the same ANTHROPIC_BASE_URL environment variable for its bundled Claude Code runtime — start omniglyph first, then launch Claude Desktop from an environment where ANTHROPIC_BASE_URL is set to http://127.0.0.1:47821.
🖥️ The dashboard
A full local dashboard ships inside the package — offline, single-file, zero external requests. Six pages, updated live over SSE as requests flow:
• Overview — mission control: savings %, $ saved, latency p95, cache hits, errors, live feed. • Live Flow — the pipeline as a node graph: client → gate → renderer / passthrough → API, with a particle per real request. • Telemetry — a token/$ odometer and a live request timeline; click any request to see exactly which parts became images and read the source text behind every page. • Benchmarks — the harness receipts rendered from benchmarks/*/results/, one row per model·config experiment, and run the benchmarks from the UI: $0 dry-runs stream their output live; live runs stay gated behind your API key plus an explicit cost confirmation. • Sessions / History — top sessions by tokens saved and every event on disk.
| Live Flow | Benchmarks |
| | |
⚙️ How it works
• Billing is computed exactly, before converting: Anthropic bills ⌈w/28⌉ × ⌈h/28⌉ + 4 tokens per image (28 px patches — measured to residual zero). A full page carries 28,080 chars for 1,460 tokens ≈ 19 chars/token, vs ~2 chars/token for dense text. The gate converts only when the math wins. • What converts: the static system prompt + tool docs, old collapsed history, large tool outputs. • What never converts: your messages, recent turns, the model's output, sparse prose, byte-exact values (hashes/IDs ride alongside as text), and any model that failed the reading benchmark.
Opt-in flags
All off by default — the compression path above is unchanged unless you set them. omniglyph --help lists every flag.…
Description from the npm listing.
- omniglyph
- omniroute
- claude
- claude-code
- anthropic
- openai
- gemini
- proxy
- token-optimization
- prompt-cache
- vision-tokens
- optical-context-compression
Where omniglyph sits in the listing
Each band is one page of 20. Weekly downloads on a log scale. Placement is projected from weekly downloads, so it can differ from the marketplace's own sort order. Hover a dot to see the listing.
Charts
Images: 30d · 1y · all time · 1600×900 dark
Adoption over time
7/30/90-day growth
Filled points are observed values; hollow points come from Internet Archive snapshots of the listing page. Dashed segments span periods with no observations — values between points are not interpolated.
Recent observations
Full history (543)Similar npm Claude Code plugins
Data source
Weekly downloads (trailing 7 complete days) come from the official npm downloads API. Downloads include CI and mirrors and are not equivalent to installs or users. npm publishes no ratings.
Listing: https://www.npmjs.com/package/omniglyph. First seen Oct 16, 2026; last successful collection Oct 18, 2026. See the methodology.