Skip to main content
Every Pullfrog run spends model tokens. Run on a free model, fund Pullfrog Router, bring your own API key, or use a subscription you already pay for. The Providers section of the console’s Billing card switches the account between BYOK (your own keys and subscriptions) and Pullfrog Router. A provider key stored with Pullfrog is used for the models it covers even on Router, and free models work under either. Model access is separate from your plan. No plan includes model tokens, and paying for tokens does not require a plan.

Free models

These models cost nothing per token. Pick one in the model selector. All three are served by OpenCode Zen, which still authenticates each request. Store an OPENCODE_API_KEY the same way as any other provider key; a run without one stops at session start with No provider available.

Pullfrog Router

Pullfrog Router reaches every major provider through one billing account, at provider cost with no markup. Pullfrog mints a short-lived key for each run, so there are no provider keys to manage. Router runs draw on a prepaid balance and stop when it reaches zero. Add a card in the Billing card and turn on auto-reload to keep the balance funded. See Pullfrog Router for balance, auto-reload and spend limits.
The Providers section of the Billing card on the Pullfrog Router tab

Your own API key

Bring a provider API key and the provider bills you directly, at its own prices. The key must match the repository’s model: an OpenAI key cannot run an Anthropic model. Store the key with Pullfrog, at the account or repository level, or keep it in GitHub Actions secrets. See API keys for both, plus Amazon Bedrock, Google Vertex AI, Azure OpenAI and OpenAI-compatible endpoints.

Your existing subscription

Pullfrog can run on a plan you already pay for instead of API tokens. Claude, ChatGPT and Grok plans connect with one command, run from inside the repository; Kimi and OpenCode Go issue an ordinary key.
The Subscriptions row of the Providers section: Claude Pro/Max, ChatGPT (Codex) and Grok
Do not put a Claude, Codex or Grok credential into GitHub Actions secrets. The Codex and Grok credentials rotate as they refresh, and a GitHub secret cannot be written at runtime, so a credential stored there stops working when its access token expires: within hours for Grok, days for Codex. The commands above store it with Pullfrog instead.
A subscription has usage limits, and runs on it fail until the limit resets. Connect a second account or add an API key for the same provider, and Pullfrog falls back to it. See multiple subscriptions and fallback.

Troubleshooting a failing run

  1. Does the repository’s model match a credential you hold? A repository set to an OpenAI model needs an OpenAI credential, whichever route you use. Check the model in the repository’s console.
  2. On Router, is there a balance or a card on file? An empty balance with no card stops every Router run.
  3. On BYOK, does the key exist? It can live at the account, at the repository, or in GitHub Actions secrets. A secret the workflow references but nobody created resolves to an empty value, not an error.
  4. On a subscription, has it hit its usage limit? Runs resume when the limit resets.
  5. Did GitHub refuse to start the job? A run with no steps at all points to your GitHub Actions billing, not to Pullfrog. Check your GitHub account’s billing settings.