BYOAIK — Bring Your Own AI Key: a directory of AI tools that run on your own API key.
Forge
Open-source terminal AI pair programmer with BYOK access to 300+ models
- Category:
- Developer Infrastructure
- Pricing:
- Open Source
- Open source:
- Yes (Apache-2.0)
- Self-hostable:
- Yes
- Local-first:
- No
- Platforms:
- CLI, Self-hosted, Docker
- AI providers (bring your own key):
- OpenAI, Anthropic, Google Gemini, OpenRouter, Groq, DeepSeek, xAI Grok, Custom / OpenAI-compatible
- API key storage:
- Configured by environment variable
- Key risk level:
- LOW
- Trust score:
- 86/100
Forge (forgecode) is an open-source, Apache-2.0 licensed AI pair programmer that runs entirely in the terminal/shell (written in Rust). It connects directly to your AI provider of choice using your own API keys — set up via the interactive `forge provider login` / `:login` flow, or via environment variables (OPENAI_API_KEY, ANTHROPIC_API_KEY, OPENROUTER_API_KEY, now deprecated but auto-migrated to file-based storage on first run). It supports 300+ models across OpenAI, Anthropic, Google Vertex/Gemini, xAI Grok, DeepSeek, Groq, Amazon Bedrock, OpenRouter, Cerebras, and any OpenAI-compatible custom endpoint, with the ability to mix and match models mid-session. Users can also leverage existing ChatGPT Plus / Claude subscriptions instead of separate keys. An optional, supplementary 'ForgeCode Services' layer (enhanced codebase understanding, tool-call guardrails, semantic search) exists and requires no key, but model access itself is fully bring-your-own-key. The canonical repo is github.com/tailcallhq/forgecode (the antinomyhq/forgecode URL 301-redirects there; npm package @antinomyhq/forge), with 7421 stars, 1453 forks, actively maintained (pushed 2026-06-19).
How your API key is handled
Your API key is supplied via an environment variable or local config file. Requests are sent directly to the AI provider. Because it can be self-hosted, your key never has to touch a third-party backend.
Setup
Install the tool, set your provider API key as an environment variable (or in its config file), and pick a model.