What's New
π Features & Improvements
- Smart request routing β classify message content by complexity and route to the appropriate model tier automatically (#97)
- Single-provider hedge skip β hedging disabled for single-provider chains, prevents rate-limit amplification (#231)
- 408/504 retry with fresh pool β request timeout and server-unavailable now retry with a new connection pool (#231)
- Transient error detection β detect and retry on transient errors in 400/413 response bodies (#230)
- GET /v1/models endpoint β list available models from configured providers (#229)
- Retry-After header support β respect provider rate-limit backoff for 429/503 responses (#228)
- Streaming-only token speed β TTFB excluded from token-per-second calculations for accurate metrics (#227)
- Per-model connection pools β each model gets its own HTTP/2 connection for TCP isolation (#186)
- GOAWAY-aware retry β graceful HTTP/2 drain no longer marks pool as "failed" (#188)
π Bug Fixes
- Fix: correctly extract project names containing hyphens (#222)
- Fix: include provider name in request logs and response headers (#221)
- Fix: prevent launchd crash loop when dist/index.js is missing (#220)
- Fix: suppress stdout log spam when daemon is already running (#219)
π§ Dependency Updates
- Bump undici from 8.0.0 to 8.0.2 (#226)
- Bump hono from 4.12.10 to 4.12.12 (#212)
- Bump @hono/node-server from 1.19.12 to 1.19.13 (#213)
- Bump dotenv from 17.3.1 to 17.4.1 (#223)
- Bump vitest from 4.1.2 to 4.1.4 (#225)
- Bump @types/node from 25.5.0 to 25.5.2 (#224)
Full Changelog: v0.3.70...v0.3.73