OpenRouter
For OpenRouter, discovery uses its public catalog without an API key. Select a concrete model ID and save a key through login:
set -lx POPPET_PROVIDER openrouter
bun run start provider models
set -lx POPPET_MODEL anthropic/claude-sonnet-4.5
bun run start auth login openrouter
bun run start provider verifyCredentials#
See API keys for protected storage, environment
overrides, stdin input, and logout. OpenRouter uses POPPET_OPENROUTER_API_KEY
and <POPPET_DATA_DIR>/auth/openrouter.json.
Models and requests#
Verification requires a catalog model with tool support and makes two requests
that consume OpenRouter credits. The key is redacted and omitted from config.
The adapter accepts both assistant and coding workloads through Chat Completions.
It derives tools, temperature, output limits, and context size from catalog
metadata. Models that generate images or audio and dynamic model routers such as
openrouter/auto and openrouter/free are excluded.
Requests require support for every requested parameter and disable provider
fallbacks. A stable session_id groups the exchange. Plain reasoning and the
complete structured reasoning sequence are kept through tool calls. Credit exhaustion,
rate limits, upstream failures, and interrupted streams produce typed errors;
requests are not automatically retried.
OpenRouter routing,
reasoning continuation,
and stream errors.
See provider selection for verification with a chosen provider.