Roo Code
Last updated
Roo Code (the VS Code extension descended from Cline) ships a built-in "OpenAI Compatible" provider for exactly this kind of custom gateway. Point it at Tempr and every model on your allowlist — Claude, GPT, Gemini, whatever you've configured — becomes available through one provider entry instead of one per vendor.
-
Create a virtual key
In the Portal, create a Gateway virtual key. Keys are prefixed
tvk_and shown once at creation. -
Add a provider key
Gateway is BYOK: add a key for at least one provider from the supported list.
-
Configure Roo Code
Open the Roo Code settings panel, set API Provider to OpenAI Compatible, Base URL to
https://api.temprhq.io/v1, and API Key to your virtual key. -
Choose a model
Enter a model id in the fully-qualified
provider/modelform, e.g.anthropic/claude-sonnet-4-5, whatever is on your virtual key's allowlist.
Codebase indexing
Roo Code's codebase indexing embeds your code so it can search it by meaning. It can embed through Tempr too, with the same virtual key, so it needs no separate embedding provider account. It also needs a Qdrant vector database, local or cloud, to store the vectors.
-
Open the indexing settings
Click the indexing status icon at the bottom right of Roo Code's chat input, and turn indexing on.
-
Point the embedder at Tempr
Set Embedder Provider to OpenAI Compatible, Base URL to
https://api.temprhq.io/v1, and API Key to your virtual key. -
Choose an embedding model
Set Model to an embedding model from a provider you have a key for, such as
openai/text-embedding-3-small,google/gemini-embedding-001ormistral/codestral-embed. If Roo asks for the model's dimension, use its default from the embeddings models table (1536 fortext-embedding-3-small). The model has to be on your virtual key's allowlist. -
Connect Qdrant and start
Enter your Qdrant URL (and Qdrant API Key if it needs one), then start indexing.
Each batch Roo sends is one Gateway request, billed at the model's input price with your own provider key, and appears in your request logs. Changing the embedding model or its dimension means re-indexing. See Embeddings for every provider and model.
What's next
- Authentication & virtual keys — scoping keys with model allowlists, budgets, and rate limits.
- Embeddings — the providers, models and dimensions codebase indexing can use.
- Models, limits & logs — request logs and analytics for everything you send through the gateway.