---language:- zh- enlicense: mittags:- tutorial- omniakey- ai-coding- claude-code- codex- cursor- cline- continue- aider- openai-compatible- anthropic- llm- vscode---# OmniaKey AI Coding Tools> 在 Claude Code、Codex、Cursor、Cline、Continue、Aider 等 AI 编程工具中使用 Claude、GPT、Gemini、Grok 等模型。[OmniaKey](https://omniakey.com/) 为 AI 编程工具提供一把统一 API Key,同时支持 Anthropic Messages、OpenAI Chat Completions 和 OpenAI Responses 等协议。按实际用量计费,无需为每个工具分别管理订阅。> This repository is a configuration guide, not a downloadable model checkpoint. English quick start is included below.## 快速入口- [创建 OmniaKey API Key](https://omniakey.com/dashboard/tokens)- [查看模型目录](https://omniakey.com/models)- [AI 编程工具完整指南](https://docs.omniakey.com/cn/coding)- OpenAI-compatible Base URL:`https://api.omniakey.com/v1`- Anthropic Base URL:`https://api.omniakey.com`请勿把真实 API Key 提交到 Git、截图、Issue 或日志中。示例统一使用 `sk-your-omniakey-key`。## 先检查当前可用模型模型和权限会持续更新。不要依赖旧教程中的静态价格表,先用自己的 Key 查询:```bashcurl https://api.omniakey.com/v1/models \ -H "Authorization: Bearer sk-your-omniakey-key"```从返回结果复制准确的 model ID,再填入对应工具。## Claude CodeClaude Code 使用 Anthropic Messages API,因此 Base URL **不要带 `/v1`**:```bashexport ANTHROPIC_BASE_URL="https://api.omniakey.com"export ANTHROPIC_AUTH_TOKEN="sk-your-omniakey-key"claude```Claude Code 会自行请求 `/v1/messages`。如果把 Base URL 写成 `https://api.omniakey.com/v1`,最终会变成错误的 `/v1/v1/messages`。进入会话后可以用 `/model` 显式选择当前可用的 Claude 模型。OmniaKey 不会静默把你指定的模型替换成其他模型。## OpenAI Codex CLICodex 自定义 provider 使用 Responses API。编辑 `~/.codex/config.toml`:```tomlmodel = "gpt-5.6-sol"model_provider = "omniakey"[model_providers.omniakey]name = "OmniaKey"base_url = "https://api.omniakey.com/v1"env_key = "OMNIAKEY_API_KEY"wire_api = "responses"```然后设置 Key 并启动:```bashexport OMNIAKEY_API_KEY="sk-your-omniakey-key"codex```示例 model ID 可能随目录更新;排障时先确认它出现在当前 Key 的 `/v1/models` 返回中。## Cursor在 Cursor 的模型或自定义 OpenAI 设置中填写:| 配置项 | 值 || --- | --- || OpenAI API Key | `sk-your-omniakey-key` || Override OpenAI Base URL | `https://api.omniakey.com/v1` || Model | 从 `/v1/models` 复制一个当前可用 ID |Cursor 不同版本对自定义模型、Agent 模式和 Tab Completion 的支持可能不同。若某功能仍走 Cursor 自有服务,这是客户端能力边界,并不代表 API Key 无效。## Cline在 Cline 设置中选择 **OpenAI Compatible**,然后填写:| 配置项 | 值 || --- | --- || Base URL | `https://api.omniakey.com/v1` || API Key | `sk-your-omniakey-key` || Model ID | 从 `/v1/models` 复制 |保存后建议先用一个小任务测试 streaming 和工具调用,再开始大型代码修改。## Continue在 Continue 中新增一个 OpenAI-compatible 模型:```yamlname: OmniaKeyversion: 1.0.0schema: v1models: - name: OmniaKey Coding provider: openai model: YOUR_MODEL_ID apiBase: https://api.omniakey.com/v1 apiKey: sk-your-omniakey-key```Continue 的配置格式会随版本变化;如果你的版本使用 UI 配置,填入相同的 Base URL、Key 和 Model ID 即可。## Aider先设置 OpenAI-compatible 凭证和端点:```bashexport OPENAI_API_KEY="sk-your-omniakey-key"export OPENAI_API_BASE="https://api.omniakey.com/v1"aider --model openai/YOUR_MODEL_ID```Aider 通过 LiteLLM 识别 provider 前缀。若模型需要不同前缀或参数,请以当前 Aider/LiteLLM 文档和 `/v1/models` 返回为准。## OpenAI SDK### Python```pythonfrom openai import OpenAIclient = OpenAI( base_url="https://api.omniakey.com/v1", api_key="sk-your-omniakey-key",)response = client.chat.completions.create( model="YOUR_MODEL_ID", messages=[ {"role": "user", "content": "Review this function for correctness."} ],)print(response.choices[0].message.content)```### Node.js```javascriptimport OpenAI from "openai";const client = new OpenAI({ baseURL: "https://api.omniakey.com/v1", apiKey: "sk-your-omniakey-key",});const response = await client.chat.completions.create({ model: "YOUR_MODEL_ID", messages: [ { role: "user", content: "Write tests for this TypeScript module." }, ],});console.log(response.choices[0].message.content);```## 常见问题| 现象 | 检查 || --- | --- || `401 Unauthorized` | Key 是否正确、是否带 `Bearer `、是否复制了多余空格 || `404 Not Found` | OpenAI-compatible 工具是否使用 `/v1`;Claude Code 是否错误地多加了 `/v1` || Model not found | 用当前 Key 请求 `/v1/models`,复制准确 ID || 工具调用失败 | 先确认客户端使用的协议和该模型的工具调用能力 || Streaming 中断 | 检查本地代理、企业网络和客户端超时设置;保留 request ID 便于排查 || `429` | 按响应中的 retry/reset 信息等待后重试,避免无上限自动循环 |## 为什么选择 OmniaKey- 一把 Key 连接 Claude、GPT、Gemini、Grok 等模型- 同时提供 Anthropic 原生协议与 OpenAI-compatible 接口- 支持 Chat Completions、Responses、streaming 和工具调用- 模型 ID 显式可见,不静默替换- 一个 Dashboard 管理 Key、余额和用量---## English quick startCreate a key at [OmniaKey Dashboard](https://omniakey.com/dashboard/tokens), then choose the protocol your coding tool actually uses.### Claude Code```bashexport ANTHROPIC_BASE_URL="https://api.omniakey.com"export ANTHROPIC_AUTH_TOKEN="sk-your-omniakey-key"claude```Do not append `/v1`; Claude Code appends `/v1/messages` itself.### OpenAI-compatible toolsUse these values in Cursor, Cline, Continue, Aider, SDKs, and other compatible clients:```textBase URL: https://api.omniakey.com/v1API Key: sk-your-omniakey-keyModel: choose an ID returned by GET /v1/models```### Codex```tomlmodel = "gpt-5.6-sol"model_provider = "omniakey"[model_providers.omniakey]name = "OmniaKey"base_url = "https://api.omniakey.com/v1"env_key = "OMNIAKEY_API_KEY"wire_api = "responses"```Always verify the current model catalog before relying on an example ID:```bashcurl https://api.omniakey.com/v1/models \ -H "Authorization: Bearer sk-your-omniakey-key"```## Links- [OmniaKey](https://omniakey.com/)- [Get an API Key](https://omniakey.com/dashboard/tokens)- [Model catalog](https://omniakey.com/models)- [Coding tools guide](https://docs.omniakey.com/en/coding)This repository contains documentation only and is not affiliated with Anthropic, OpenAI, Cursor, Cline, Continue, or Aider. Product names belong to their respective owners.
verified