{"slug": "vibepod-cli-0-24-bring-your-own-model-provider", "title": "VibePod CLI 0.24: bring your own model provider", "summary": "VibePod released CLI version 0.24, adding a global provider registry so users can point seven supported agents — claude, pi, codex, qwen, tau, jcode and opencode — at custom model endpoints via the new `vp provider add` command. The release also introduces `--provider` routing for single launches, credential-free provider export/import, a VibePod/vibepod-providers template repository covering hosted APIs such as OpenRouter, DeepSeek, Groq and Mistral plus local servers Ollama, LM Studio, llama.cpp, vLLM and Lemonade, and configurable volume mounts through `agents.<agent>.volumes` and `vp run -v/--volume`.", "body_md": "## One registry for every endpoint\n\nEvery agent has its own way of configuring a custom endpoint, and switching\n      an agent to OpenRouter or a local Ollama used to mean editing that agent's config\n      by hand. `vp provider add` asks for the protocol (OpenAI Chat\n      Completions, OpenAI Responses, or Anthropic Messages), the base URL, the\n      authentication and the models, and discovers the model list from the endpoint\n      when it offers one:\n\n```\nvp provider add\nvp provider list\nvp provider models my-provider\nvp provider refresh my-provider\n```\n\nDefinitions are global across credential profiles and live under\n      `~/.vibepod/providers/`. A key can be referenced from an environment\n      variable, or stored with owner-only permissions after you confirm it. Local servers\n      can use no authentication at all. Discovery shows where it sends requests, verifies\n      TLS, refuses redirects, and asks before sending a key over plain HTTP.\n\n## Routing an agent for one launch\n\n`--provider` routes a single launch through the provider. VibePod\n      writes a private, temporary configuration for the agent and never touches the\n      agent's own saved provider settings:\n\n```\nvp run pi --provider openrouter\nvp run pi --profile work --provider local --provider hosted\nvp run codex --provider responses-endpoint\nvp run claude --provider anthropic-endpoint\nvp task create qwen \"fix the failing test\" --provider local\n```\n\nSeven agents are supported: `claude`, `pi`,\n      `codex`, `qwen`, `tau`, `jcode` and\n      `opencode`. Pi, Tau, Jcode and OpenCode accept several providers at\n      once and list their models in the agent's own model picker. Claude, Codex and Qwen\n      use one provider and its saved default model. An explicit `--model`\n      passed to the agent wins over that default. Each agent speaks only some of the\n      protocols. Codex, for example, needs the Responses API. The\n      [routing table](../../docs/providers/#temporary-launch-routing) lists the\n      details.\n\n## Share a provider, or start from a template\n\n`vp provider export` writes a definition without any credential:\n      protocol, URL, authentication mode, models and model settings (context window,\n      output limit, reasoning levels). `vp provider import` reads one back\n      from a local path or an `https://` URL. A team can commit its internal\n      gateway once, and a vendor can publish one file per endpoint.\n\nTo skip the wizard entirely, the new\n      [VibePod/vibepod-providers](https://github.com/VibePod/vibepod-providers)\n      repository collects credential-free templates for hosted APIs such as OpenRouter,\n      DeepSeek, Groq and Mistral. Their model lists and settings are synced from\n      [models.dev](https://models.dev). It\n      also has templates for local servers: Ollama, LM Studio, llama.cpp, vLLM and\n      Lemonade. Import one by its raw URL:\n\n``` python\nvp provider import https://raw.githubusercontent.com/VibePod/vibepod-providers/main/providers/cloud/openrouter.toml\nvp provider import https://raw.githubusercontent.com/VibePod/vibepod-providers/main/providers/local/ollama.toml\n```\n\nHosted templates reference the vendor's usual API key variable, such as\n      `OPENROUTER_API_KEY`, so export it before launching. Local templates\n      ship without models; run `vp provider refresh NAME` once the server is\n      up. Missing templates and fixes are welcome as pull requests.\n\n## Mount what the agent needs\n\nOnly the workspace and the agent's config directory were mounted before. Now\n      `agents.<agent>.volumes` adds host paths or Docker named volumes\n      with the familiar `docker run -v` syntax, for both `vp run`\n      and `vp task`:\n\n```\nagents:\n  claude:\n    volumes:\n      - \"~/datasets:/datasets:ro\"\n      - \"pip-cache:/root/.cache/pip\"\n```\n\n`vp run -v/--volume` adds mounts for a single session. Missing host\n      paths are rejected instead of being created as root-owned directories, and\n      VibePod's own mount points are protected. A committed project config can mount any\n      path your user can read, so review the `volumes` of a project you did\n      not write before you run an agent in it.\n\n## Upgrading\n\nNothing to migrate by hand. Agents without `--provider` behave\n      exactly as before.\n\n```\npython -m pip install --upgrade vibepod\n```\n\n## Release details\n\n- New `vp provider` command group:`add` ,`list` ,`edit` ,`models` ,`refresh` ,`export` ,`import` ,`remove` . It covers OpenAI Chat Completions, OpenAI Responses and Anthropic Messages, with model discovery and per-model settings.\n- `vp run --provider` for`claude` ,`pi` ,`codex` ,`qwen` ,`tau` ,`jcode` and`opencode` , with a temporary per-launch configuration.`vp task create --provider` works for all of them except Pi and OpenCode, which have no headless mode in VibePod.\n- `vp list` shows the providers injected into running agents.\n- Provider templates in [VibePod/vibepod-providers](https://github.com/VibePod/vibepod-providers) , importable by URL.\n- Model discovery and provider file fetches send a VibePod User-Agent, so endpoints behind Cloudflare, such as Groq, no longer answer with 403.\n- Custom mounts through `agents.<agent>.volumes` and`vp run -v/--volume` .\n- New `vp skills cache clear` removes cached git clones and npm packages. Installed skills keep working.\n- A \"Built with VibePod\" [shields.io badge](../../docs/badge/) for your README.", "url": "https://wpnews.pro/news/vibepod-cli-0-24-bring-your-own-model-provider", "canonical_source": "https://vibepod.dev/news/vibepod-cli-0-24/", "published_at": "2026-09-25 22:50:26+00:00", "updated_at": "2026-09-25 23:31:27.721335+00:00", "lang": "en", "topics": ["ai-agents", "ai-tools", "developer-tools", "large-language-models", "ai-infrastructure"], "entities": ["VibePod", "VibePod CLI 0.24", "OpenRouter", "Ollama", "DeepSeek", "Groq", "Mistral", "models.dev"], "also_reported_by": [], "alternates": {"html": "https://wpnews.pro/news/vibepod-cli-0-24-bring-your-own-model-provider", "markdown": "https://wpnews.pro/news/vibepod-cli-0-24-bring-your-own-model-provider.md", "text": "https://wpnews.pro/news/vibepod-cli-0-24-bring-your-own-model-provider.txt", "jsonld": "https://wpnews.pro/news/vibepod-cli-0-24-bring-your-own-model-provider.jsonld"}}