v0.13.9
tashfeenahmed/freellmapiv0.13.9Oct 11, 2026by tashfeenahmed
Upgrading?
AI Summary
FreeLLMAPI v0.13.9 introduces persistent model retirement, improves idempotent retry validation, fixes the CLI default port, and enhances CSV key imports with support for line breaks.
Key Highlights
- Retired models remain retired after restarts and fall through to the next model instead of failing.
- Idempotent retries now validate generation options and return a conflict error if they differ.
- The CLI now defaults to port 3001 when no URL is specified.
- CSV key imports correctly handle line breaks inside quoted fields.
- The project now includes a Russian README translation.
Breaking Changes
- Retrying with the same Idempotency-Key but different generation options now returns a 409 conflict instead of replaying the previous response.
New Features
- Persistent model retirement logic
- Graceful fallback for retired model requests
- Strict idempotency key validation
- CSV import with quoted field support
- Russian README documentation
Full Release Notes
FreeLLMAPI v0.13.9 keeps retired models out of routing, tightens idempotent retries, fixes the CLI's default port and adds a Russian README. ## Routing - **Retired models stay retired after a restart.** When a provider answers a model with 410 (end of life), FreeLLMAPI retires it. A restart used to undo that, so the dead model went back into rotation and failed again. Retirements now survive restarts and are only lifted by a newer catalog. Thanks @suantea, and @AlexQiu-coder for the report. (#1394, #1421) - **Asking for a retired model by name no longer fails every time.** A request that names a model the provider has retired now falls through to the next model in your chain. The `X-Routed-Via` header shows which model answered. (#1394, #1423) ## API - **Idempotent retries check every generation option.** Retrying with the same `Idempotency-Key` but a different `response_format`, `seed`, `stop` or `parallel_tool_calls` now returns `409 idempotency_key_conflict` instead of replaying the earlier answer. Keys stored before this update return a conflict once, then work as before. Thanks @ac1982. (#1440) ## CLI - **`npx freellmapi` defaults to port 3001**, the gateway's port, when no `--url` or `FREELLMAPI_URL` is set. Published as `freellmapi@0.8.1` on npm. Thanks @agammann. (#1437) - The CLI test suite now passes on Windows. Thanks @suantea. (#1424) ## Keys - **CSV key import handles line breaks inside quoted fields**, so a label containing a line break no longer splits the row. Thanks @Claven07. (#1384) ## Docs - **Russian README.** Thanks @The88788. (#1463) ## Updating Desktop users on v0.13.5 or later can update from inside the app: ⋯ → **Check for updates**. Docker: `ghcr.io/tashfeenahmed/freellmapi:v0.13.9`. The `latest` tag also points to this release. Existing keys and profiles are retained. This release has no database migrations. [Full changelog](https://github.com/tashfeenahmed/freellmapi/compare/v0.13.8...v0.13.9) --- ⭐ Like the free router? [Go Premium](https://freellmapi.co/?utm_source=github&utm_medium=release&utm_campaign=premium&utm_content=v0.13.9#pricing), the live signed catalog, $19/yr, cancel anytime.
Related Repositories
openclaw/openclaw★ 392,714
The AI that really does things. Any OS. Any Platform. The lobster way. 🦞
nilbuild/developer-roadmap★ 370,095
Interactive roadmaps, guides and other educational content to help developers grow in their careers.
morluto/rea★ 360,153
Reverse engineer anything with agents, from app behavior down to native binaries.
anomalyco/opencode★ 219,855
The open source coding agent.
n8n-io/n8n★ 208,278
Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.