v0.6.4
What's Changed
Admin Panel
- Tinyleaf-style settings popup — lightweight overlay with click-outside/Escape dismiss, dropdown selects for theme & language (instant apply), About section with GitHub/PyPI/Docker/Docs links
- Host IP auto-detection — new lightweight
GET /admin/api/diagnostics/host-ipendpoint; proxy URL placeholders show correct Docker host IP automatically - Login UX — persistent login via localStorage, 30-min inactivity auto-logout, logout button, password manager compatibility
- Inline delete confirmation — two-step confirm for models, API keys, and request logs (replaces native
confirm()) - Mobile responsiveness — responsive header, scrollable tabs, table horizontal scroll
- Reverse proxy compatibility — Cache-Control headers on all admin API responses, POST-based test polling
- Test modal improvements — Cancel button with elapsed timer, chart empty state, Clone button
- Security — login rate limiting (5 attempts / 5-min lockout), stored XSS fix
Converters
- Argo Anthropic shim — model-aware
_normalize_thinking(adaptive vs enabled split), OpenAI Chat response normalization for/v1/messages - Custom tool call — streaming support, cross-provider degradation handling
- Bug fixes —
OpenAIResponsesStreamContext.from_basecopy fix, ty type-check error resolution
Infrastructure
- Admin routes refactor — split monolithic
routes.pyintoroutes/subpackage - CI — switch to pre-commit for linting (ruff + ty)
- C901 complexity — extract
_format_connection_errorhelper
Full Changelog: v0.6.3...v0.6.4