Skip to content

ypollak2/llm-router

v11.0.0 Feature

This release adds 5 notable features for engineering teams evaluating rollout.

Published 17d LLM Frameworks
✓ No known CVEs patched
Read the diff → Tool health → What is this tool? →

✓ No known CVEs patched in this version

Topics

ai-routing anthropic claude claude-code cost-optimization gemini
+7 more
litellm llm llm-router mcp-server model-router ollama openai

ReleasePort's take

Light signal
editorial:auto 11d

ReleasePort Layer 1 v11.0.0 adds several new observability and routing features (e.g., surface_status, summary metrics, classification module) plus bug‑fixes for profile handling; it also introduces optional environment variables for configuration.

Why it matters: New off‑by‑default observability endpoints enable health monitoring and performance reporting; the added signal handling routes PII prompts locally. Bug fixes resolve empty base‑chain and ambiguous reorder tier issues, improving reliability of subscription‑based routing profiles.

Summary

AI summary

New additive observability and routing features are introduced, all off‑by‑default.

Changes in this release

Feature Low

Adds `llm_router.observability.surface_status` for router health indication.

Adds `llm_router.observability.surface_status` for router health indication.

Source: llm_adapter@2026-07-16

Confidence: high

Feature Low

Adds `llm_router.observability.summary` providing session-end usage and performance metrics.

Adds `llm_router.observability.summary` providing session-end usage and performance metrics.

Source: llm_adapter@2026-07-16

Confidence: high

Feature Low

Adds `llm_router.classify` module exposing deterministic signal scorer.

Adds `llm_router.classify` module exposing deterministic signal scorer.

Source: llm_adapter@2026-07-16

Confidence: high

Feature Low

Adds `RoutingProfile.SUBSCRIPTION_LOCAL` for cost‑inverted routing based on subscription status.

Adds `RoutingProfile.SUBSCRIPTION_LOCAL` for cost‑inverted routing based on subscription status.

Source: llm_adapter@2026-07-16

Confidence: high

Feature Low

Adds `llm_router.signals` with `PiiSignal` and `force_local_for_pii` to route PII prompts locally only.

Adds `llm_router.signals` with `PiiSignal` and `force_local_for_pii` to route PII prompts locally only.

Source: llm_adapter@2026-07-16

Confidence: high

Dependency Low

Introduces optional env vars: `LLM_ROUTER_SUBSCRIPTION_PROVIDER`, `LLM_ROUTER_INTERNAL_PROVIDERS`, `LLM_ROUTER_SUBSCRIPTION_PRESSURE_THRESHOLD`, `LLM_ROUTER_SUBSCRIPTION_REORDER_ALL_PROFILES`, `LLM_ROUTER_STATE_DIR`, `LLM_ROUTER_INDICATOR`.

Introduces optional env vars: `LLM_ROUTER_SUBSCRIPTION_PROVIDER`, `LLM_ROUTER_INTERNAL_PROVIDERS`, `LLM_ROUTER_SUBSCRIPTION_PRESSURE_THRESHOLD`, `LLM_ROUTER_SUBSCRIPTION_REORDER_ALL_PROFILES`, `LLM_ROUTER_STATE_DIR`, `LLM_ROUTER_INDICATOR`.

Source: llm_adapter@2026-07-16

Confidence: high

Bugfix Medium

Fixes empty base chain bug in `SUBSCRIPTION_LOCAL`/`QUOTA_BALANCED` profile.

Fixes empty base chain bug in `SUBSCRIPTION_LOCAL`/`QUOTA_BALANCED` profile.

Source: llm_adapter@2026-07-16

Confidence: high

Bugfix Medium

Fixes ambiguous reorder tier when seat provider is also in free bucket.

Fixes ambiguous reorder tier when seat provider is also in free bucket.

Source: llm_adapter@2026-07-16

Confidence: high

Full changelog

Ports a wave of routing + observability capabilities into llm-router. Everything new is additive and off-by-default where it touches routing, so existing setups behave identically until opted in.

Added

  • llm_router.observability.surface_status — cross-surface "router is working" status line / terminal title / OS notification (stdlib-only, fail-soft) for hosts without a native statusline.
  • llm_router.observability.summary — session-end summary over usage.db: savings vs baseline, tier mix, per-provider cost, latency p50/p95/p99, top routes. render_markdown() + optional rich render().
  • llm_router.classify — the deterministic signal scorer extracted into an importable module (classify_signals), so the router/gateway/tools can classify at 0 cost/latency. Byte-identical to the hook, drift-guarded.
  • RoutingProfile.SUBSCRIPTION_LOCAL — cost-inverted routing for "one paid seat + free local bucket": free-first for simple/moderate, seat-first for complex, seat demoted when its quota is strained. No-op unless LLM_ROUTER_SUBSCRIPTION_PROVIDER is set.
  • llm_router.signalsPiiSignal + force_local_for_pii: a prompt containing a secret routes to local models only, fail-closed so it never reaches an external API.

Changed

  • Docs restructure. docs/ is now gitignored (local notes) except the CI-generated docs/BENCHMARKS.md. README media → assets/readme/, public pages → guide/. External links to docs/*.md should move to guide/*.md.

Config

New optional env vars: LLM_ROUTER_SUBSCRIPTION_PROVIDER, LLM_ROUTER_INTERNAL_PROVIDERS, LLM_ROUTER_SUBSCRIPTION_PRESSURE_THRESHOLD, LLM_ROUTER_SUBSCRIPTION_REORDER_ALL_PROFILES, LLM_ROUTER_STATE_DIR, LLM_ROUTER_INDICATOR.

Tests & audit

97 new tests; full suite green (0 failures/errors). A pre-release audit caught and fixed two real bugs: an empty base chain for the explicit SUBSCRIPTION_LOCAL/QUOTA_BALANCED profile, and an ambiguous reorder tier when the seat provider was also in the free bucket.

Full details: CHANGELOG.md · pip install -U llm-routing

Weekly OSS security release digest.

The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.

No spam, unsubscribe anytime.

Share this release

Track ypollak2/llm-router

Get notified when new releases ship.

Sign up free

About ypollak2/llm-router

Subscription-aware LLM router for Claude Code. Routes tasks to 20+ providers (OpenAI, Gemini, Groq, Ollama, Codex) based on complexity classification, Claude subscription pressure, and cost. Free tasks stay on Claude subscription; expensive tasks fall back to the cheapest capable model. Includes 30 MCP tools, 6 auto-routing hooks, semantic dedup cache, prompt caching, daily spend cap, and a live web dashboard.

All releases →

Related context

Earlier breaking changes

  • v9.2.0 Changes auto‑route directive from advisory "DO NOT SKIP" to hard constraint with explicit blocked tools list.
  • v9.2.0 Breaks permanent downgrade of enforcement after first Edit/Write; v13 now requires per‑turn routing.

Beta — feedback welcome: [email protected]