diff --git a/README.md b/README.md
index 952637531e..ab17737df5 100644
--- a/README.md
+++ b/README.md
@@ -204,14 +204,14 @@
No combo to create. Set your model to `auto` (or a variant) and OmniRoute builds a virtual combo from your connected providers, scored live:
-| Model ID | What it optimizes for |
-| -------------- | -------------------------------------------------------------- |
-| `auto` | π― Balanced default (LKGP β sticks to your last good provider) |
-| `auto/coding` | π§βπ» Quality-first weights for code generation |
-| `auto/fast` | β‘ Lowest latency first |
-| `auto/cheap` | π° Cheapest per token first |
-| `auto/offline` | π Most quota / rate-limit headroom first |
-| `auto/smart` | π Quality-first + 10% exploration to discover better models |
+| Model ID | What it optimizes for
|
+| -------------- | ---------------------------------------------------------------------------------------------- |
+| `auto` | π― Balanced default (LKGP β sticks to your last good provider) |
+| `auto/coding` | π§βπ» Quality-first weights for code generation |
+| `auto/fast` | β‘ Lowest latency first |
+| `auto/cheap` | π° Cheapest per token first |
+| `auto/offline` | π Most quota / rate-limit headroom first |
+| `auto/smart` | π Quality-first + 10% exploration to discover better models |
##
@@ -219,26 +219,26 @@ No combo to create. Set your model to `auto` (or a variant) and OmniRoute builds
All **18** strategies β mix & match per combo step:
-| # | Strategy | What it does |
-| --- | ------------------- | ---------------------------------------------------------------- |
-| 1 | `priority` | First-target ordered list β drain each before the next π₯ |
-| 2 | `fill-first` | Fill each target's quota fully before moving on |
-| 3 | `weighted` | Weighted random by per-target weight |
-| 4 | `round-robin` | Cycle through targets in order |
-| 5 | `p2c` | Power-of-two-choices random load balancing |
-| 6 | `least-used` | Pick the target with the lowest current load |
-| 7 | `random` | Uniform random pick (deduplicated) |
-| 8 | `strict-random` | Random without de-duplicating repeats π² |
-| 9 | `cost-optimized` | Minimize $ per request from live catalog pricing πΈ |
-| 10 | `headroom` | Pick the target with the most remaining quota |
-| 11 | `reset-window` | Prefer the target whose quota window resets soonest |
-| 12 | `reset-aware` | Rank by quota reset time β short windows first π |
-| 13 | `context-relay` | Hand off context across targets for long conversations π§ |
-| 14 | `context-optimized` | Pick the best fit for the current context size |
-| 15 | `lkgp` | Last-Known-Good Path β sticky to the last successful target |
-| 16 | `auto` | 12-factor live scoring across every connection π€ |
-| 17 | `fusion` | Fan out to a panel of models + a judge synthesizes one answer 𧬠|
-| 18 | `pipeline` | Chain steps β each target's output feeds the next one π |
+| # | Strategy | What it does
|
+| --- | ------------------- | ------------------------------------------------------------------------------------- |
+| 1 | `priority` | First-target ordered list β drain each before the next π₯ |
+| 2 | `fill-first` | Fill each target's quota fully before moving on |
+| 3 | `weighted` | Weighted random by per-target weight |
+| 4 | `round-robin` | Cycle through targets in order |
+| 5 | `p2c` | Power-of-two-choices random load balancing |
+| 6 | `least-used` | Pick the target with the lowest current load |
+| 7 | `random` | Uniform random pick (deduplicated) |
+| 8 | `strict-random` | Random without de-duplicating repeats π² |
+| 9 | `cost-optimized` | Minimize $ per request from live catalog pricing πΈ |
+| 10 | `headroom` | Pick the target with the most remaining quota |
+| 11 | `reset-window` | Prefer the target whose quota window resets soonest |
+| 12 | `reset-aware` | Rank by quota reset time β short windows first π |
+| 13 | `context-relay` | Hand off context across targets for long conversations π§ |
+| 14 | `context-optimized` | Pick the best fit for the current context size |
+| 15 | `lkgp` | Last-Known-Good Path β sticky to the last successful target |
+| 16 | `auto` | 12-factor live scoring across every connection π€ |
+| 17 | `fusion` | Fan out to a panel of models + a judge synthesizes one answer 𧬠|
+| 18 | `pipeline` | Chain steps β each target's output feeds the next one π |
The Auto-Combo engine scores every candidate on **12 factors** (health, quota, cost, latency, success rate, freshnessβ¦) β see [`docs/routing/AUTO-COMBO.md`](docs/routing/AUTO-COMBO.md).
@@ -248,12 +248,12 @@ All **18** strategies β mix & match per combo step:
> Running several keys against the **same upstream account** (one Codex Pro plan, one Kimi key, one GLM Coding seat)? A burst on one key can burn the whole 5-hour / hourly quota and lock everyone else out. **Quota-Share** distributes a provider's time-based quota **fairly** across the keys in a pool β and it's _work-conserving_, so an idle member's slice is lent out instead of wasted.
-| Knob | What it controls |
-| ------------------------ | ------------------------------------------------------------------------------- |
-| βοΈ **Allocation weight** | each key's slice of the pool β e.g. `50 / 30 / 20` |
-| π **Dimensions** | track `%` Β· requests Β· tokens Β· `$`, per **5h / 7d / per-model** window |
-| π¦ **Policy** | `hard` (block over share) Β· `soft` (deprioritize) Β· `burst` (use idle headroom) |
-| π§± **Cap** | absolute ceiling per key, independent of mode |
+| Knob | What it controls
|
+| ------------------------ | ----------------------------------------------------------------------------------------- |
+| βοΈ **Allocation weight** | each key's slice of the pool β e.g. `50 / 30 / 20` |
+| π **Dimensions** | track `%` Β· requests Β· tokens Β· `$`, per **5h / 7d / per-model** window |
+| π¦ **Policy** | `hard` (block over share) Β· `soft` (deprioritize) Β· `burst` (use idle headroom) |
+| π§± **Cap** | absolute ceiling per key, independent of mode |
@@ -538,29 +538,29 @@ claude mcp add-server omniroute --type http --url http://localhost:20128/api/mcp
Engines run in pipeline order; each is independently toggleable and configurable per combo:
-| # | Engine | What it does |
-| --- | ----------------- | ------------------------------------------------------------------- |
-| 1 | **Session-Dedup** | Drops content repeated across turns (content-addressed, cross-turn) |
-| 2 | **CCR** | Archives large blocks behind retrieve markers, fetched on demand |
-| 3 | **RTK** | Smart tool-result filtering, dedup & truncation (command-aware) |
+| # | Engine | What it does |
+| --- | ----------------- | ----------------------------------------------------------------------------------------------------------------------- |
+| 1 | **Session-Dedup** | Drops content repeated across turns (content-addressed, cross-turn) |
+| 2 | **CCR** | Archives large blocks behind retrieve markers, fetched on demand |
+| 3 | **RTK** | Smart tool-result filtering, dedup & truncation (command-aware) |
| 4 | **Headroom** | Lossless tabular compaction of homogeneous JSON arrays, flat or nested (~30%), via a vendored **GCF** codec (spec v3.2) |
-| 5 | **Relevance** | Extractive sentence scoring against the last user query |
-| 6 | **Caveman** | Rule-based prose compression (~65β75% on output) |
-| 7 | **LLMLingua-2** | ML semantic pruning via MobileBERT ONNX β code-safe, async |
-| 8 | **Lite** | Whitespace + image-URL trimming (latency-light baseline) |
-| 9 | **Aggressive** | Summarization + progressive aging of old turns |
-| 10 | **Ultra** | Heuristic token pruning with an optional small-model (SLM) tier |
+| 5 | **Relevance** | Extractive sentence scoring against the last user query |
+| 6 | **Caveman** | Rule-based prose compression (~65β75% on output) |
+| 7 | **LLMLingua-2** | ML semantic pruning via MobileBERT ONNX β code-safe, async |
+| 8 | **Lite** | Whitespace + image-URL trimming (latency-light baseline) |
+| 9 | **Aggressive** | Summarization + progressive aging of old turns |
+| 10 | **Ultra** | Heuristic token pruning with an optional small-model (SLM) tier |
Code blocks, URLs and structured data are **always preserved** byte-perfect. **One-click presets** combine the engines:
-| Mode | Savings | Best for |
-| ------------------------------ | ---------- | --------------------------- |
-| πͺΆ **Lite** | ~15% | Always-on safe default |
-| πͺ¨ **Standard (Caveman)** | ~30% | Daily coding |
-| β‘ **Aggressive** | ~50% | Long tool-heavy sessions |
-| π₯ **Ultra** | ~75% | Maximum savings |
-| π§° **RTK** | 60β90% | Shell/test/build/git output |
-| π **Stacked (RTK β Caveman)** | **78β95%** | Mixed prompts + tool logs |
+| Mode | Savings | Best for
|
+| ------------------------------ | ---------- | --------------------------------------------------------------------------------- |
+| πͺΆ **Lite** | ~15% | Always-on safe default |
+| πͺ¨ **Standard (Caveman)** | ~30% | Daily coding |
+| β‘ **Aggressive** | ~50% | Long tool-heavy sessions |
+| π₯ **Ultra** | ~75% | Maximum savings |
+| π§° **RTK** | 60β90% | Shell/test/build/git output |
+| π **Stacked (RTK β Caveman)** | **78β95%** | Mixed prompts + tool logs |
**Real example β Standard mode:**
@@ -781,25 +781,25 @@ same process on one port, so there is no separate CLI-only package today.
-| Tier | Example | Cost |
-| --------------------------- | ---------------------------------------- | ---------- |
-| π³ **Subscription** | Claude Code Pro / Codex / Copilot | $10β200/mo |
-| π **API Key (free tiers)** | NVIDIA NIM, Cerebras, Groq | **FREE** |
-| π° **Cheap** | GLM-5 $0.5/1M Β· MiniMax M2.5 $0.3/1M | pennies |
-| π **Free Forever** | Kiro, Qoder, Qwen, Pollinations, LongCat | **$0** |
+| Tier | Example
| Cost |
+| --------------------------- | -------------------------------------------------------------------------------- | ---------- |
+| π³ **Subscription** | Claude Code Pro / Codex / Copilot | $10β200/mo |
+| π **API Key (free tiers)** | NVIDIA NIM, Cerebras, Groq | **FREE** |
+| π° **Cheap** | GLM-5 $0.5/1M Β· MiniMax M2.5 $0.3/1M | pennies |
+| π **Free Forever** | Kiro, Qoder, Qwen, Pollinations, LongCat | **$0** |
**The $0 Free Stack β combine into one unbreakable combo:**
-| Provider | Prefix | Free models | Quota |
-| ----------------- | ----------- | ----------------------------------------------- | ------------------ |
-| **Kiro** | `kr/` | Claude Sonnet 4.5, Haiku 4.5, Opus 4.6 | 50 credits/mo |
-| **Qoder** | `if/` | kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 | βΎοΈ Unlimited |
-| **Qwen** | `qw/` | qwen3-coder-plus/flash/next | βΎοΈ Unlimited |
-| **Pollinations** | `pol/` | GPT-5, Claude, Gemini, DeepSeek, Llama 4 | No key needed |
-| **LongCat** | `lc/` | LongCat-2.0 | 10M one-time (KYC) |
-| **Cloudflare AI** | `cf/` | 50+ models | 10K neurons/day |
-| **NVIDIA NIM** | `nvidia/` | 129 models | ~40 RPM |
-| **Cerebras** | `cerebras/` | Qwen3 235B, GPT-OSS 120B | 1M tok/day |
+| Provider | Prefix | Free models
| Quota |
+| ----------------- | ----------- | ------------------------------------------------------------------------------------ | ------------------ |
+| **Kiro** | `kr/` | Claude Sonnet 4.5, Haiku 4.5, Opus 4.6 | 50 credits/mo |
+| **Qoder** | `if/` | kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 | βΎοΈ Unlimited |
+| **Qwen** | `qw/` | qwen3-coder-plus/flash/next | βΎοΈ Unlimited |
+| **Pollinations** | `pol/` | GPT-5, Claude, Gemini, DeepSeek, Llama 4 | No key needed |
+| **LongCat** | `lc/` | LongCat-2.0 | 10M one-time (KYC) |
+| **Cloudflare AI** | `cf/` | 50+ models | 10K neurons/day |
+| **NVIDIA NIM** | `nvidia/` | 129 models | ~40 RPM |
+| **Cerebras** | `cerebras/` | Qwen3 235B, GPT-OSS 120B | 1M tok/day |
> π‘ The dashboard "cost" is a **savings tracker**, not a bill β OmniRoute never charges you. A "$290 total cost" using free models means **$290 saved**.
@@ -865,11 +865,11 @@ Compression: aggressive (~50%) β double your free quota Β· Cost: $0/mo
-| Env var | Default | Purpose |
-| ----------------- | -------------- | -------------------------------- |
-| `PORT` | `20128` | API + dashboard port |
-| `REQUIRE_API_KEY` | `false` | Require API key for all requests |
-| `DATA_DIR` | `~/.omniroute` | Database & config storage |
+| Env var | Default | Purpose
|
+| ----------------- | -------------- | -------------------------------------------------------------------------------- |
+| `PORT` | `20128` | API + dashboard port |
+| `REQUIRE_API_KEY` | `false` | Require API key for all requests |
+| `DATA_DIR` | `~/.omniroute` | Database & config storage |
**Will I be charged by OmniRoute?** No β it's free, open-source software on your machine. You only pay paid providers directly. OmniRoute has no billing system.
**Are FREE providers really unlimited?** Mostly β Qoder, Pollinations, LongCat, and Cloudflare are free with no per-account credit cap. Kiro is free too but capped at ~50 credits/month per account. Stack multiple free providers in a combo and auto-fallback keeps you serving for $0.
@@ -885,14 +885,14 @@ Compression: aggressive (~50%) β double your free quota Β· Cost: $0/mo
-| Problem | Quick fix |
-| ----------------------------------------- | ------------------------------------------------------------- |
-| "Language model did not provide messages" | Provider quota exhausted β use a combo fallback |
-| Rate limiting (429) | Add fallback: `cc/claude β glm/glm-4.7 β if/kimi-k2-thinking` |
-| OAuth token expired | Auto-refreshed; if stuck, delete + re-auth in Providers |
-| `unsupported_country_region_territory` | Configure proxy in Settings β Proxy |
-| Docker SQLite locks | Use `--stop-timeout 40` for clean WAL checkpoint |
-| Node runtime errors | Use Node `>=22.0.0 <23` or `>=24.0.0 <27` |
+| Problem | Quick fix
|
+| ----------------------------------------- | ---------------------------------------------------------------------------------- |
+| "Language model did not provide messages" | Provider quota exhausted β use a combo fallback |
+| Rate limiting (429) | Add fallback: `cc/claude β glm/glm-4.7 β if/kimi-k2-thinking` |
+| OAuth token expired | Auto-refreshed; if stuck, delete + re-auth in Providers |
+| `unsupported_country_region_territory` | Configure proxy in Settings β Proxy |
+| Docker SQLite locks | Use `--stop-timeout 40` for clean WAL checkpoint |
+| Node runtime errors | Use Node `>=22.0.0 <23` or `>=24.0.0 <27` |
π **Reporting a bug?** Run `npm run system-info` and attach `system-info.txt`. π [`docs/guides/TROUBLESHOOTING.md`](docs/guides/TROUBLESHOOTING.md)
@@ -962,66 +962,66 @@ Compression: aggressive (~50%) β double your free quota Β· Cost: $0/mo
### π Getting Started
-| Document | Description |
-| -------------------------------------------------------------- | -------------------------------------------------------------------------------- |
-| [User Guide](docs/guides/USER_GUIDE.md) | Providers, combos, CLI integration, deployment |
-| [Setup Guide](docs/guides/SETUP_GUIDE.md) | Full install methods, CLI tool configs, protocol setup, timeout tuning |
-| [CLI Tools Guide](docs/reference/CLI-TOOLS.md) | Per-tool setup for Claude Code, Codex, Cursor, Cline, OpenClaw, Kilo, Copilot |
-| [Remote Mode](docs/guides/REMOTE-MODE.md) | Drive a remote OmniRoute (VPS) from your laptop CLI via scoped access tokens |
-| [Claude Code Config](docs/guides/CLAUDE-CODE-CONFIGURATION.md) | Point Claude Code at OmniRoute (local/remote) with `launch` + per-model profiles |
-| [Quick Start](README.md#-quick-start) | 3-step install β connect β configure |
+| Document | Description
|
+| -------------------------------------------------------------- | ------------------------------------------------------------------------------------ |
+| [User Guide](docs/guides/USER_GUIDE.md) | Providers, combos, CLI integration, deployment |
+| [Setup Guide](docs/guides/SETUP_GUIDE.md) | Full install methods, CLI tool configs, protocol setup, timeout tuning |
+| [CLI Tools Guide](docs/reference/CLI-TOOLS.md) | Per-tool setup for Claude Code, Codex, Cursor, Cline, OpenClaw, Kilo, Copilot |
+| [Remote Mode](docs/guides/REMOTE-MODE.md) | Drive a remote OmniRoute (VPS) from your laptop CLI via scoped access tokens |
+| [Claude Code Config](docs/guides/CLAUDE-CODE-CONFIGURATION.md) | Point Claude Code at OmniRoute (local/remote) with `launch` + per-model profiles |
+| [Quick Start](README.md#-quick-start) | 3-step install β connect β configure |
### π§ Operations & Deployment
-| Document | Description |
-| -------------------------------------------------------- | -------------------------------------------------------------- |
-| [Docker Guide](docs/guides/DOCKER_GUIDE.md) | Docker run, Compose profiles, Caddy HTTPS, tunnels, image tags |
-| [Podman Guide](contrib/podman/README.md) | Quadlet systemd integration, podman-compose, SELinux |
-| [VM Deployment](docs/ops/VM_DEPLOYMENT_GUIDE.md) | Complete guide: VM + nginx + Cloudflare setup |
-| [Fly.io Deployment](docs/ops/FLY_IO_DEPLOYMENT_GUIDE.md) | Deploy to Fly.io with persistent storage |
-| [Termux Guide](docs/guides/TERMUX_GUIDE.md) | Run OmniRoute on Android via Termux |
-| [PWA Guide](docs/guides/PWA_GUIDE.md) | Progressive Web App install, caching, architecture |
-| [Uninstall Guide](docs/guides/UNINSTALL.md) | Clean removal for all install methods |
-| [Environment Config](docs/reference/ENVIRONMENT.md) | Complete `.env` variables and references |
+| Document | Description
|
+| -------------------------------------------------------- | ------------------------------------------------------------------------------------ |
+| [Docker Guide](docs/guides/DOCKER_GUIDE.md) | Docker run, Compose profiles, Caddy HTTPS, tunnels, image tags |
+| [Podman Guide](contrib/podman/README.md) | Quadlet systemd integration, podman-compose, SELinux |
+| [VM Deployment](docs/ops/VM_DEPLOYMENT_GUIDE.md) | Complete guide: VM + nginx + Cloudflare setup |
+| [Fly.io Deployment](docs/ops/FLY_IO_DEPLOYMENT_GUIDE.md) | Deploy to Fly.io with persistent storage |
+| [Termux Guide](docs/guides/TERMUX_GUIDE.md) | Run OmniRoute on Android via Termux |
+| [PWA Guide](docs/guides/PWA_GUIDE.md) | Progressive Web App install, caching, architecture |
+| [Uninstall Guide](docs/guides/UNINSTALL.md) | Clean removal for all install methods |
+| [Environment Config](docs/reference/ENVIRONMENT.md) | Complete `.env` variables and references |
### π§ Features & Architecture
-| Document | Description |
-| ---------------------------------------------------------------------------- | ----------------------------------------------------------------------------- |
-| [Architecture](docs/architecture/ARCHITECTURE.md) | System architecture, data flow, and internals |
-| [Compression Guide](docs/compression/COMPRESSION_GUIDE.md) | 7-option pipeline: off / lite / standard / aggressive / ultra / RTK / stacked |
-| [RTK Compression](docs/compression/RTK_COMPRESSION.md) | Command-output compression, filters, trust, verify, raw-output recovery |
-| [Compression Engines](docs/compression/COMPRESSION_ENGINES.md) | Caveman, RTK, stacked pipelines, dashboard/API/MCP surfaces |
-| [Compression Rules Format](docs/compression/COMPRESSION_RULES_FORMAT.md) | JSON rule-pack schemas for Caveman and RTK filters |
-| [Compression Language Packs](docs/compression/COMPRESSION_LANGUAGE_PACKS.md) | Language detection and Caveman rule-pack authoring |
-| [Resilience Guide](docs/architecture/RESILIENCE_GUIDE.md) | Circuit breakers, cooldowns, queue, anti-thundering herd, TLS spoofing |
-| [Auto-Combo Engine](docs/routing/AUTO-COMBO.md) | 12-factor scoring, mode packs, self-healing |
-| [Proxy Guide](docs/ops/PROXY_GUIDE.md) | 3-level proxy system, 1proxy marketplace, registry CRUD |
-| [Free Tiers](docs/reference/FREE_TIERS.md) | 25+ free API providers consolidated directory |
-| [Features Gallery](docs/guides/FEATURES.md) | Visual dashboard tour with screenshots |
-| [Codebase Documentation](docs/architecture/CODEBASE_DOCUMENTATION.md) | Beginner-friendly codebase walkthrough |
+| Document | Description
|
+| ---------------------------------------------------------------------------- | ------------------------------------------------------------------------------------ |
+| [Architecture](docs/architecture/ARCHITECTURE.md) | System architecture, data flow, and internals |
+| [Compression Guide](docs/compression/COMPRESSION_GUIDE.md) | 7-option pipeline: off / lite / standard / aggressive / ultra / RTK / stacked |
+| [RTK Compression](docs/compression/RTK_COMPRESSION.md) | Command-output compression, filters, trust, verify, raw-output recovery |
+| [Compression Engines](docs/compression/COMPRESSION_ENGINES.md) | Caveman, RTK, stacked pipelines, dashboard/API/MCP surfaces |
+| [Compression Rules Format](docs/compression/COMPRESSION_RULES_FORMAT.md) | JSON rule-pack schemas for Caveman and RTK filters |
+| [Compression Language Packs](docs/compression/COMPRESSION_LANGUAGE_PACKS.md) | Language detection and Caveman rule-pack authoring |
+| [Resilience Guide](docs/architecture/RESILIENCE_GUIDE.md) | Circuit breakers, cooldowns, queue, anti-thundering herd, TLS spoofing |
+| [Auto-Combo Engine](docs/routing/AUTO-COMBO.md) | 12-factor scoring, mode packs, self-healing |
+| [Proxy Guide](docs/ops/PROXY_GUIDE.md) | 3-level proxy system, 1proxy marketplace, registry CRUD |
+| [Free Tiers](docs/reference/FREE_TIERS.md) | 25+ free API providers consolidated directory |
+| [Features Gallery](docs/guides/FEATURES.md) | Visual dashboard tour with screenshots |
+| [Codebase Documentation](docs/architecture/CODEBASE_DOCUMENTATION.md) | Beginner-friendly codebase walkthrough |
### π€ Protocols & APIs
-| Document | Description |
-| ------------------------------------------------- | --------------------------------------------------- |
-| [API Reference](docs/reference/API_REFERENCE.md) | All endpoints with examples |
-| [OpenAPI Spec](docs/openapi.yaml) | OpenAPI 3.0 specification |
-| [MCP Server](open-sse/mcp-server/README.md) | 95 MCP tools, IDE configs, Python/TS/Go clients |
-| [MCP Server Guide](docs/frameworks/MCP-SERVER.md) | MCP installation, transports, and tool reference |
-| [A2A Server](src/lib/a2a/README.md) | JSON-RPC 2.0 protocol, skills, streaming, task mgmt |
-| [A2A Server Guide](docs/frameworks/A2A-SERVER.md) | A2A agent card, tasks, skills, and streaming |
+| Document | Description
|
+| ------------------------------------------------- | ------------------------------------------------------------------------------------ |
+| [API Reference](docs/reference/API_REFERENCE.md) | All endpoints with examples |
+| [OpenAPI Spec](docs/openapi.yaml) | OpenAPI 3.0 specification |
+| [MCP Server](open-sse/mcp-server/README.md) | 95 MCP tools, IDE configs, Python/TS/Go clients |
+| [MCP Server Guide](docs/frameworks/MCP-SERVER.md) | MCP installation, transports, and tool reference |
+| [A2A Server](src/lib/a2a/README.md) | JSON-RPC 2.0 protocol, skills, streaming, task mgmt |
+| [A2A Server Guide](docs/frameworks/A2A-SERVER.md) | A2A agent card, tasks, skills, and streaming |
### π Project & Quality
-| Document | Description |
-| -------------------------------------------------- | ----------------------------------------------- |
-| [Contributing](CONTRIBUTING.md) | Development setup and guidelines |
-| [Changelog](CHANGELOG.md) | Full per-version release history |
-| [Security Policy](SECURITY.md) | Vulnerability reporting and security practices |
-| [i18n Guide](docs/guides/I18N.md) | 40+ language support, translation workflow, RTL |
-| [Release Checklist](docs/ops/RELEASE_CHECKLIST.md) | Pre-release validation steps |
-| [Coverage Plan](docs/ops/COVERAGE_PLAN.md) | Test coverage strategy and 21,000+ test suite |
+| Document | Description
|
+| -------------------------------------------------- | ------------------------------------------------------------------------------------ |
+| [Contributing](CONTRIBUTING.md) | Development setup and guidelines |
+| [Changelog](CHANGELOG.md) | Full per-version release history |
+| [Security Policy](SECURITY.md) | Vulnerability reporting and security practices |
+| [i18n Guide](docs/guides/I18N.md) | 40+ language support, translation workflow, RTL |
+| [Release Checklist](docs/ops/RELEASE_CHECKLIST.md) | Pre-release validation steps |
+| [Coverage Plan](docs/ops/COVERAGE_PLAN.md) | Test coverage strategy and 21,000+ test suite |
@@ -1183,7 +1183,7 @@ OmniRoute stands on the shoulders of giants. It started as a fork of **[9router]
| Project | β | How it inspired OmniRoute |
| ---------------------------------------------------------------------------------------------- | ----: | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **[TOON](https://github.com/toon-format/toon)** Β· toon-format | 24.7k | Token-Oriented Object Notation β its columnar, header-plus-rows model shaped our tabular compaction stage. |
-| **[GCF β Graph Compact Format](https://github.com/blackwell-systems/gcf)** Β· Blackwell Systems | 14 | First inspired our tabular compaction stage; now its zero-dependency, lossless generic-profile encoder is **vendored directly** as the Headroom codec (MIT, SPDX-marked), current with GCF spec v3.2. |
+| **[GCF β Graph Compact Format](https://github.com/blackwell-systems/gcf)** Β· Blackwell Systems | 14 | First inspired our tabular compaction stage; now its zero-dependency, lossless generic-profile encoder is **vendored directly** as the Headroom codec (MIT, SPDX-marked), current with GCF spec v3.2. |
| **[token-optimizer-mcp](https://github.com/ooples/token-optimizer-mcp)** Β· ooples | 421 | Brotli/SQLite cache + per-session context-delta β inspired our `session-dedup` engine. |
| **[token-savior](https://github.com/Mibayy/token-savior)** Β· Mibayy | 1.0k | Bash-output compaction + MCP profiles β inspired our compression bail-out discipline and MCP tool-manifest reduction. |
| **[token-saver](https://github.com/ppgranger/token-saver)** Β· ppgranger | 110 | Content-aware, per-file-type output compression with failure-aware bail-out β validated our per-type dispatch and minimum-gain skip. |
diff --git a/changelog.d/maintenance/7666-readme-tables-full-width.md b/changelog.d/maintenance/7666-readme-tables-full-width.md
new file mode 100644
index 0000000000..bf790a5041
--- /dev/null
+++ b/changelog.d/maintenance/7666-readme-tables-full-width.md
@@ -0,0 +1 @@
+- README: standardized all 28 tables to the same full content width β 13 tables received a calibrated invisible header spacer (`docs/screenshots/spacer.svg`), 15 already rendered full-width naturally; zero data cells changed (#7666)
diff --git a/docs/screenshots/spacer.svg b/docs/screenshots/spacer.svg
new file mode 100644
index 0000000000..647bc16d42
--- /dev/null
+++ b/docs/screenshots/spacer.svg
@@ -0,0 +1 @@
+