SRouter v0.1.4
SRouter v0.1.4
Release date: 2026-09-01
Summary
v0.1.4 is a feature-heavy release focused on provider flexibility, security hardening, dashboard polish, and a complete settings redesign. Includes bulk account onboarding, B.AI provider support, per-key model restrictions, and a security audit pass.
🚀 New Features
- Bulk add accounts for Qoder PAT and Codex tokens — one-shot onboarding of multiple credentials (#66, #65)
- B.AI provider support with default free models (#67)
allowed_modelsrestriction for virtual API keys — limit which models a key can route (#66)srouter initCLI command for Docker and Source Code execution (#65)- Custom provider dialog in the providers catalog (#76)
- Mesh routing topology redesign — hub-and-spoke radial orbit with live request glow (#63)
- Analytics page design spec — RPS, top models, traffic health (spec-only, implementation follows in a separate PR) (#79)
🎨 UI/UX
- Minimal single-scroll settings page — complete redesign: no tabs, no card boxes, hairline-separated sections, 34 kB settings chunk (down from 67 kB) (#81)
- API keys management polish — better UX + key editing support (#70)
- Custom provider category removed from creation sheet, leaner catalog cards (#61)
- Connect OAuth modal polish (#76)
🛡️ Security Hardening
- Tunnel auth, CORS/CSRF, rate limiting, request limits, SSRF, esbuild — full security audit pass (#75)
developerrole normalization — acceptdeveloperrole from OpenAI SDK v5+, normalize tosystem
⚡ Performance
- SQLite pragmas and indexes optimization (#69)
🧰 Refactors & Infrastructure
- Standardized schemas to snake_case across types/api/web + provider verification fix (#73)
- Pricing catalog synced with models.dev dataset + update script (#74)
- Docker data persisted to host
~/.sroutervia bind mount - Docker publish workflow re-enabled (manual dispatch only)
🐛 Fixes
- Restore custom models feature (#60)
- Fix fallback registry category to
api_key(#62) - Fix CLI bin entrypoint and isolate CLI_VERSION (#67)
- Fix 9router JSON backup migration (#65)
- Update provider categories to
free_tier(GoRouter, TabiToken, BluesMinds, SeekAI) - Adaptive currentColor SVG for OpenCode Zen logo
📋 PR & Issue References
| PR | Description |
|---|---|
| #81 | Minimal single-scroll settings page |
| #79 | Analytics page design spec |
| #76 | Custom provider dialog |
| #75 | Security hardening (tunnel/CORS/CSRF/rate-limit/SSRF) |
| #74 | Pricing sync + update script |
| #73 | snake_case schema standardization |
| #70 | API keys UX + editing |
| #69 | SQLite perf |
| #67 | B.AI provider |
| #66 | allowed_models + bulk accounts |
| #65 | srouter init + 9router migration |
| #63 | Mesh topology redesign |
| #62 | Fallback registry fix |
| #61 | Remove custom provider category |
| #60 | Restore custom models |
🔄 Upgrade Notes
- Docker: data now persists to
~/.sroutervia bind mount — pullghcr.io/seaavey/srouter:latest - CLI:
srouter initscaffolds Docker/source execution;srouter migratesupports 9router JSON backups
Full changelog: compare v0.1.3...v0.1.4