Surprise Launch Week - Day 2 - OpenRouter Support is Live in Skyvern

Surprise Launch Week - Day 2 - OpenRouter Support is Live in Skyvern

TL;DR

Plug any OpenRouter-hosted model into your automations with one env toggle. No code changes, no redeploys.

# docker-compose.env
ENABLE_OPENROUTER=true
LLM_KEY=OPENROUTER
OPENROUTER_API_KEY=sk-…
OPENROUTER_MODEL=qwen/qwen2.5-vl-32b-instruct

Why you might care

  • BYOM (Bring your own model) – swap models in minutes.
  • Full Skyvern feature set – async tasks, vision support, streaming, same API.

Under the hood

LLMConfigRegistry.register_config(
    "OPENROUTER",
    LLMConfig(
        "openrouter/{model_name}",
        ["OPENROUTER_API_KEY", "OPENROUTER_MODEL"],
        supports_vision=settings.LLM_CONFIG_SUPPORT_VISION,
        max_completion_tokens=settings.LLM_CONFIG_MAX_TOKENS,
        litellm_params=LiteLLMParams(
            api_key=settings.OPENROUTER_API_KEY,
            api_base=settings.OPENROUTER_API_BASE,
            model_info={"model_name": f"openrouter/{model_name}"},
        ),
    ),
)

Try it

pip install skyvern
skyvern quickstart

# Make sure these are set in your .env
ENABLE_OPENROUTER=true
LLM_KEY=OPENROUTER
OPENROUTER_API_KEY=sk-…
OPENROUTER_MODEL=qwen/qwen2.5-vl-32b-instruct

# Go into Python and you're good to go!
from skyvern import Skyvern

skyvern = Skyvern()
task = await skyvern.run_task(prompt="Find the top post on hackernews today")
print(task)

That’s it—new model, same workflow. Questions or feedback?