- New litellm service (pinned v1.98.0 — litellm 1.82.7/1.82.8 on PyPI were compromised with credential-stealing malware in March 2026; internal-only, no Traefik route, no reason to expose an LLM gateway with a master key publicly). - Replaces !claude/!ai command prefixes with automatic routing: every plain message in the control room goes through a classifier (router.js) that decides chat vs code_task. Chat replies use OpenRouter's own auto-router (openrouter/auto) via LiteLLM; code_task requests go through the existing runChatTask() flow (Claude Code CLI, unchanged, still using the subscription token directly). - Investigated routing Claude itself through LiteLLM via OAuth token forwarding (general_settings.forward_client_headers_to_llm_api) so the Pro/Max subscription could be one of the auto-routable options. Confirmed non-functional: Anthropic returns a generic rate_limit_error for any direct API call using this token type outside the real Claude Code CLI, reproduced with plain curl straight to api.anthropic.com. Not included. - MATRIX_BOT_USER_ID now required and set explicitly (self-message filtering can no longer rely on a command-prefix mismatch once there isn't one).
24 lines
1.1 KiB
YAML
24 lines
1.1 KiB
YAML
model_list:
|
|
# General chat — OpenRouter's own auto-router picks the best underlying model per prompt.
|
|
- model_name: auto
|
|
litellm_params:
|
|
model: openrouter/openrouter/auto
|
|
api_key: os.environ/OPENROUTER_API_KEY
|
|
|
|
# Cheap/fast model used by the agent's own chat-vs-code-task classifier, not by users directly.
|
|
- model_name: router-classifier
|
|
litellm_params:
|
|
model: openrouter/openai/gpt-4o-mini
|
|
api_key: os.environ/OPENROUTER_API_KEY
|
|
|
|
# NOT included: a "claude-subscription" route forwarding the Claude Pro/Max OAuth token
|
|
# (from `claude setup-token`) through to Anthropic's raw API. Tested and confirmed
|
|
# non-functional — Anthropic returns a generic rate_limit_error for ANY direct API call
|
|
# using this token type outside the real Claude Code CLI client (reproduced with plain
|
|
# curl straight to api.anthropic.com, bypassing LiteLLM entirely, same result). The
|
|
# subscription token only works through the actual Claude Code CLI, which is what
|
|
# claude-agent already uses directly for code tasks — it was never routed through here.
|
|
|
|
general_settings:
|
|
master_key: os.environ/LITELLM_MASTER_KEY
|