mirror of
https://github.com/whit3rabbit/anyllm-proxy.git
synced 2026-09-22 08:00:51 +00:00
- Auth default is now loopback-open (not reject-all). With no PROXY_API_KEYS, no PROXY_OPEN_RELAY, no virtual keys and no OIDC, loopback TCP peers are accepted and LAN/remote peers get 401. The decision uses the real TCP peer (ConnectInfo via into_make_service_with_connect_info), not the spoofable X-Forwarded-For. effective_auth_mode() (keys/open_relay/loopback_only) + proxy_key_count are surfaced on GET /admin/api/status; the admin UI shows a warning banner when no key is set. - Add --port/-p CLI flag that sets LISTEN_PORT for the run. Stripped before any run/providers subcommand so flags meant for the launched tool survive; pure scan is unit-tested. - Startup port handling: the run subcommand pre-checks the listen port and fails fast with a hint when in use; wait_for_port readiness timeout 10s -> 30s; listener bind failures (proxy + admin) now print an actionable message and exit(1) instead of panicking. - POST /v1/chat/completions no longer 400s on a missing max_tokens for OpenAI-compatible backends. The internal placeholder is stripped via a new OMIT_MAX_TOKENS_MARKER so the backend applies its own default (e.g. LM Studio's 8192); the marker never leaks upstream. Explicit max_tokens is still forwarded verbatim. Anthropic backends unchanged. - Tier router logs the selected tier at info (tier/backend/model) instead of routing silently. - Admin UI modal no longer dismisses when a text-selection drag starts inside the card (dismiss only on a press that begins on the backdrop). Co-Authored-By: Claude <noreply@anthropic.com>