diff --git a/hub/.env.example b/hub/.env.example index 73d9d30..32ed939 100644 --- a/hub/.env.example +++ b/hub/.env.example @@ -3,16 +3,11 @@ # PostgreSQL connection string. DATABASE_URL="postgresql://paradigm:paradigm@127.0.0.1:5432/paradigm" -# OpenRouter API key — used as ANTHROPIC_AUTH_TOKEN for Claude Code SDK. -# OpenRouter's "Anthropic Skin" (https://openrouter.ai/api) is Anthropic-API -# compatible, so Claude Code SDK speaks its native protocol directly. -# Get one at https://openrouter.ai/keys -OPENROUTER_API_KEY="" - -# Claude Code SDK auth — derived from OpenRouter. Do NOT set ANTHROPIC_API_KEY -# to a real value; it must be explicitly empty to avoid auth conflicts. +# Claude Code SDK auth via OpenRouter's Anthropic Skin. +# ANTHROPIC_AUTH_TOKEN = your OpenRouter API key (https://openrouter.ai/keys) +# ANTHROPIC_API_KEY must be explicitly empty to avoid auth conflicts. ANTHROPIC_BASE_URL="https://openrouter.ai/api" -ANTHROPIC_AUTH_TOKEN="" # Set to same value as OPENROUTER_API_KEY +ANTHROPIC_AUTH_TOKEN="" ANTHROPIC_API_KEY="" # Model override (optional). Defaults to Claude Sonnet. To use GLM: diff --git a/hub/src/server.ts b/hub/src/server.ts index 56b183a..798f675 100644 --- a/hub/src/server.ts +++ b/hub/src/server.ts @@ -30,12 +30,10 @@ async function main(): Promise { const databaseUrl = requireEnv("DATABASE_URL"); void databaseUrl; - // Claude Code SDK auth via OpenRouter's Anthropic Skin. The SDK reads - // ANTHROPIC_BASE_URL + ANTHROPIC_AUTH_TOKEN from env. ANTHROPIC_API_KEY - // must be explicitly empty to avoid auth conflicts. - const openrouterKey = requireEnv("OPENROUTER_API_KEY"); + // Claude Code SDK auth via OpenRouter's Anthropic Skin. + // ANTHROPIC_AUTH_TOKEN = OpenRouter API key; ANTHROPIC_API_KEY must be empty. + requireEnv("ANTHROPIC_AUTH_TOKEN"); process.env["ANTHROPIC_BASE_URL"] ??= "https://openrouter.ai/api"; - process.env["ANTHROPIC_AUTH_TOKEN"] ??= openrouterKey; process.env["ANTHROPIC_API_KEY"] ??= ""; const feishuAppId = requireEnv("FEISHU_APP_ID"); const feishuAppSecret = requireEnv("FEISHU_APP_SECRET");