@sifxprime/krouter

中文文档
0.5.168发布于 2026/11/02MIT构建来源已验证

本地AI网关Claude Code, Cursor, Codex, Copilot, Cline和任何openai兼容的客户端。路由40多个LLM提供商和100多个模型通过一个端点,具有自动回退,OAuth密钥管理和20-40%的令牌节省。

中文使用文档
文档目录34 节
  1. 快速入门
  2. CLI选项
  3. 来源(贡献者)
  4. 码头工人
  5. 为什么kRouter ?
  6. 它是如何工作的
  7. PII修订与Presidio
  8. 功能
  9. 支持的CLI工具
  10. 支持供应商
  11. OAuth(自带订阅)
  12. 免费套餐(带API密钥)
  13. 免费(账号登录或无授权)
  14. API密钥提供者(65岁以上)
  15. 浏览器会话
  16. 安装指南
  17. 1 .安装
  18. ·在后台启动
  19. 步骤3·添加提供商
  20. ·将你的AI工具指向kRouter
  21. 环境变量
  22. 部署
  23. VPS
  24. 码头工人
  25. PM2
  26. API
  27. 完成聊天
  28. 列表模式
  29. 卸载
  30. 故障排除
  31. 技术堆栈
  32. 链接
  33. 学分
  34. 许可证
kRouter — Kodelyth AI Infrastructure

kRouter - Kodelyth AI基础设施

通用AI路由器,可节省20-40%的输入令牌,并在提供商出现故障时退回。

连接Claude Code, Cursor, Antigravity, Kiro, Copilot, Codex, OpenCode, Cline, OpenClaw和任何openai兼容的客户端到 95+人工智能提供商,100+模型 通过一个自托管端点。明智的路线。立刻后退。自动保存令牌。

npm GitHub Website License

网站和完整文档- krouter.kodelyth.com

快速入门 • 功能 • 设置 • 支持供应商

你正在npm上观看这个视频。 完整的文档、截图和更新日志: github.com/sifxprime/krouter.


快速入门

需要 Node.js 20.9或更新版本.

# Install globally from npm
npm install -g @sifxprime/krouter

# Run in background (tray mode)
krouter -t

仪表盘在 http://localhost:20128/dashboard -在浏览器中打开它,或从托盘图标。

第一次登录: dashboard默认密码为 123456. 在下面更改 设置→安全 一旦你进去了。 为了安全起见,默认设置只适用于运行kRouter的机器——从其他设备登录 在你设置自己的网络之前,你的网络将被拒绝。在Docker下包含你自己的浏览器,所以 集 INITIAL_PASSWORD 如下所示。

喜欢前景?运行 krouter 无旗,加 -l 查看服务器日志。

CLI选项

krouter --help

Options:
  -p, --port <port>   Port to run the server (default: 20128)
  -H, --host <host>   Host to bind (default: 0.0.0.0)
  -l, --log           Show server logs (default: hidden)
  -t, --tray          Run in system tray mode (background)
  --skip-update       Skip auto-update check
  -h, --help          Show this help message
  -v, --version       Show version

默认主机 0.0.0.0 使kRouter可从您的网络访问;远程调用者仍然需要API密钥 用于 /v1/* 以及仪表盘的登录信息。使用 --host 127.0.0.1 让它只适用于本地。这个 krouter 命令忽略 PORT 和 HOSTNAME 环境变量,因此用这些标志设置端口和主机。

来源(贡献者)

git clone https://github.com/sifxprime/krouter.git
cd krouter
npm install
npm run dev

码头工人

KROUTER_PASSWORD="$(openssl rand -base64 18)" && echo "Dashboard password: $KROUTER_PASSWORD"
docker run -d \
  -p 20128:20128 \
  -e INITIAL_PASSWORD="${KROUTER_PASSWORD:?run the line above first}" \
  -v "$HOME/.krouter:/app/data" \
  --name krouter \
  sifxprime/krouter:latest

第一行生成一个随机密码并打印出来。用它登录,然后在下面设置你自己的 设置→安全;在你知道之前,密码是什么都行 INITIAL_PASSWORD 容器从。 在Docker中是默认的 123456 被拒绝,因为浏览器的请求到达了容器 从外面。如果 ~/.krouter 已经持有来自NPM安装的密码,使用该密码。 忘记了吗?图像为0.5.162或更新版本: docker exec krouter node scripts/reset-password.js (见 DOCKER.md)。

附有PII修订(Presidio)

在向AI提供商发送请求之前启用自动PII编辑。Compose构建kRouter sidecar来自源代码,所以它是从克隆运行的。 KROUTER_INITIAL_PASSWORD 没有默认值 没有它,Compose拒绝启动。第二行保存一个随机的 .env,其中撰写 每次启动时读取它,并打印出来:这就是你的仪表盘密码。

git clone https://github.com/sifxprime/krouter.git && cd krouter
echo "KROUTER_INITIAL_PASSWORD='$(openssl rand -base64 18)'" > .env && cat .env
docker compose up -d

不使用Docker?kRouter没有Python依赖——单独运行sidecar。kRouter会查找它 在 http://127.0.0.1:5001/redact;集 SIDECAR_URL 如果它在其他地方运行。请参阅下面的安装指南。

修订是 默认关闭;从 要塞 页中的仪表板侧栏。

看到 文档/ REDACTION_SETUP.md 获取完整的配置和自定义选项。

然后打开 http://localhost:20128/dashboard.


为什么kRouter ?

停止浪费金钱、代币和达到极限:

  • 订阅配额每月到期未使用
  • 速率限制阻止你中途编码
  • 工具输出(git diff, grep, ls…)快速刻录令牌
  • 分别为每个提供商的API付费会累积起来
  • 手动切换提供商

kRouter解决了这个问题:

  • RTK令牌保护程序 -默认为开启;压缩工具输出以节省每个请求20-40%的输入令牌
  • 天顶路由 —根据成功率、延迟时间和剩余配额对每个帐户进行评分,并跳过正在冷却的帐户
  • Multi-account旋转 -跨帐户循环,并为报告它的提供商提供配额跟踪
  • 自动令牌刷新 - OAuth令牌刷新透明
  • 通用客户端支持 -与OpenAI, Anthropic, Responses, Gemini和olama格式客户端一起工作
  • MITM拦截 -通过kRouter路由Antigravity, GitHub Copilot, Kiro IDE和Claude Desktop(不在Docker内)

它是如何工作的

┌─────────────┐
│  Your CLI   │  (Claude Code, Codex, OpenClaw, OpenCode, Cline…)
│   Tool      │
└──────┬──────┘
       │ http://localhost:20128/v1
       ↓
┌─────────────────────────────────────────────┐
│           kRouter (Smart Router)            │
│  • RTK Token Saver (cut tool_result tokens) │
│  • Zenith account scoring                   │
│  • Format translation (OpenAI ↔ Claude)     │
│  • Live quota tracking                      │
│  • Auto token refresh                       │
└──────┬──────────────────────────────────────┘
       │
       ├─→ [SUBSCRIPTION] Claude Code · Codex · Copilot · Cursor
       │
       ├─→ [FREE TIER] Cloudflare · Vertex · Gemini · Ollama Cloud · OpenRouter
       │
       └─→ [FREE] Kiro · Gemini CLI · Qoder · OpenCode Free · MiMo Code Free

如果一个帐户失败或达到速率限制,kRouter就会转移到该提供商的下一个帐户。将来自多个提供商的模型组合在一起,然后依次返回到它们之间——无需人工干预。


PII修订与Presidio

可选的, 默认关闭。启用后,kRouter会删除个人数据——姓名、电子邮件、电话 数字,API密钥-来自提示 之前 他们离开你的机器,使用Microsoft Presidio作为本地 sidecar(需要Docker或Python)。它 未封闭的:如果侧车宕机、超时或出错, 请求被拒绝(503 / 502),而不是未经编辑的发送。它包括聊天,消息, 响应、Ollama和双子座格式路由;嵌入,音频,图像,搜索和获取不编辑。

设置、配置、自定义模式、测试和故障排除: 文档/ REDACTION_SETUP.md.

功能

特征它的作用为什么重要?
RTK令牌保护程序压缩请求中的工具输出(git diff, grep, ls, tree…)。默认开启保存 20-40%输入令牌 在携带工具输出的请求上
天顶路由根据成功率、延迟、剩余配额和优先级进行评分选择最健康的客户;利率受限的账户会冷却,而不是重试
聪明的回退你所创造的组合,例如订阅→免费层→免费永远不要停止编码
实时的配额剩余%、重置倒计时、报告配额的提供程序的耗尽标记最大化每个订阅
格式转换open↔Claude↔Gemini↔Cursor↔Kiro↔Vertex可与任何CLI工具一起使用
Multi-Account每个提供者有多个帐户,并使用轮换策略负载均衡+冗余
自动令牌刷新OAuth令牌自动刷新无需手动重新登录
自定义组合带有回退、循环或融合策略的命名模型组合根据您的工作流程定制回退
系统托盘静静地运行在后台与托盘图标设置并遗忘部署
部署在任何地方Localhost·VPS·Docker·PM2,通过Cloudflare Tunnel或Tailscale远程访问你需要的任何地方
PII修订可选,默认关闭:使用Microsoft Presidio编辑姓名,电子邮件,电话和API密钥在发送给人工智能提供商之前保护隐私

完整功能指南→ krouter.kodelyth.com


支持的CLI工具

Claude Code
克劳德代码
OpenClaw
OpenClaw
Codex
食典委
OpenCode
OpenCode
Cursor
光标
Antigravity
反重力
Cline
克莱因
Continue
继续
Droid
机器人
Roo
Roo
Copilot
副驾驶员
Kilo Code
公斤的代码

支持供应商

五组95+提供商,加上您自己添加的任何OpenAI或anthropic兼容端点。

OAuth(自带订阅)

Claude Code·反重力·Codex·GitHub Copilot·Cursor·xAI·Kilo Code·Cline·ClinePass·Grok CLI·Kimchi

免费套餐(带API密钥)

Cloudflare Workers AI·Vertex AI·Gemini·Ollama Cloud·OpenRouter·BytePlus ModelArk·Atomesus·NVIDIA NIM·Poolside

免费(账号登录或无授权)

Kiro AI·Gemini CLI·CodeBuddy CN·Qoder·OpenCode Free·MiMo Code Free

Kiro、Gemini CLI、Qoder、Claude Code、Antigravity、Codex和GitHub Copilot使用未获得代理使用许可的订阅会话。在您连接它们之前,仪表板会警告:该帐户可能被限制或禁止。

API密钥提供者(65岁以上)

OpenAI·Anthropic·GLM·Kimi·MiniMax·DeepSeek·Groq·xAI·Mistral·Perplexity·Together AI·Fireworks·Cerebras·Cohere·SiliconFlow·Hyperbolic·Nebius·Chutes·以及其他45多个

浏览器会话

Grok Web·Perplexity Web (Pro/Max)

完整的提供商设置指南→ krouter.kodelyth.com


安装指南

1 .安装

npm install -g @sifxprime/krouter

·在后台启动

krouter -t

您将在菜单栏中看到一个托盘图标。右击, 打开仪表板 或者 辞职.

步骤3·添加提供商

  1. 开放 http://localhost:20128/dashboard
  2. 去 供应商,选择一个(Cloudflare Workers AI是一个很好的免费开始),然后点击 添加
  3. 粘贴您的API密钥或完成OAuth登录
  4. 点击 测试 在一个模型上检查它的答案

·将你的AI工具指向kRouter

Endpoint:  http://localhost:20128/v1
API Key:   a key from Dashboard → Endpoint → API Keys   (local callers can skip it)
Model:     kr/claude-sonnet-4.5   (or any provider/model)

适用于任何openai兼容的客户端。一个 默认的关键 在您第一次打开 端点页面。本地请求不需要密钥,除非 REQUIRE_API_KEY=true;来自其他机器的请求 总是这样。的例外 localhost:它通过自己的服务器发送请求,所以turn 在 隧道 并使用带密钥的URL。

详细的集成指南(Claude Code, Cursor, Cline等)→ krouter.kodelyth.com


环境变量

变量默认的描述
PORT20128Docker镜像的服务器端口 node custom-server.js。这个 krouter 命令忽略它-使用 --port
HOSTNAME0.0.0.0为Docker镜像绑定host node custom-server.js。这个 krouter 命令忽略它-使用 --host 127.0.0.1 为只
DATA_DIR~/.krouter数据目录(SQLite,证书,缓存)。 %APPDATA%\krouter 在Windows上
INITIAL_PASSWORD- - - - - -首次登录仪表板的密码。它是不固定的 123456,只能从同一台机器接收
NODE_ENVproduction运行时模式
REQUIRE_API_KEYfalse需要一个不记名密钥 /v1/* 从 每一个 调用者。远程调用者总是需要一个;这还删除了共享或多用户机器的环回豁免
KROUTER_SKIP_RUNTIME_HEALfalse跳过启动npm自修复SQLite/tray运行时(气隙机或CI机)
AUTH_COOKIE_SECUREfalse力 Secure cookie(设置在HTTPS反向代理之后)
HTTP_PROXY / HTTPS_PROXY / ALL_PROXY / NO_PROXY- - - - - -出站代理配置

完整的环境参考→ krouter.kodelyth.com


部署

VPS

npm install -g @sifxprime/krouter
krouter --skip-update --host 127.0.0.1 --port 20128

把Nginx或Caddy放在HTTPS的前面; --host 127.0.0.1 保持港口关闭,除了 代理。或者跳过代理,从Endpoint页面使用内置的Cloudflare Tunnel或Tailscale。

码头工人

KROUTER_PASSWORD="$(openssl rand -base64 18)" && echo "Dashboard password: $KROUTER_PASSWORD"
docker run -d -p 20128:20128 -e INITIAL_PASSWORD="${KROUTER_PASSWORD:?run the line above first}" -v "$HOME/.krouter:/app/data" --name krouter sifxprime/krouter:latest

PM2

npm install -g @sifxprime/krouter pm2
pm2 start krouter --name krouter -- --skip-update
pm2 save
pm2 startup

API

完成聊天

POST http://localhost:20128/v1/chat/completions
Authorization: Bearer <your-api-key>
Content-Type: application/json

{
  "model": "kr/claude-sonnet-4.5",
  "messages": [{"role": "user", "content": "Hello"}],
  "stream": true
}

列表模式

GET http://localhost:20128/v1/models
Authorization: Bearer <your-api-key>

以OpenAI格式返回每个配置的提供商+自定义组合。


卸载

# Stop kRouter (right-click tray → Quit, or pkill -f krouter)
npm uninstall -g @sifxprime/krouter
rm -rf ~/.krouter   # optional: wipe database + certs

故障排除

“提供者没有活动凭据” -在仪表板→提供商中添加或重新连接提供商。

速度有限 - kRouter冷却帐户并移动到下一个帐户。为了加快速度,可以添加更多的帐户或配置一个组合。

MITM证书错误 —安装或重新安装根CA MITM 页在仪表板侧栏(安装证书 / 重新安装证书)。

仪表盘端口错误 - - - krouter 命令忽略了 PORT;将端口作为标志传递: krouter -t --port 20128。如果另一个程序占用端口,kRouter不会停止它并建议另一个。

完整的故障排除指南→ krouter.kodelyth.com


技术堆栈

  • 运行时: node . js 20.9 +
  • 框架: Next.js 16
  • 界面: React 19 +顺风CSS
  • 数据库: SQLite(更好的sqlite3 / node: SQLite / sql.js)
  • 流媒体: 服务器发送事件(SSE)
  • 身份验证: OAuth 2.0 (PKCE) + JWT + API密钥


学分

kRouter是upstream的一个硬分叉 decolua / 9路由器。非常感谢 @decolua 以及最初项目的9router贡献者。把它们放在GitHub上。


许可证

MIT许可证-参见 许可证 获取详细信息。


版本与发布记录

@sifxprime/krouter 共发布 137 个版本,首次发布于 2026/06/17;过去 12 个月发布了 137 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
0.5.168latest2026/11/021 天前
0.5.1672026/11/021 天前
0.5.1662026/10/1915 天前
0.5.1652026/10/1915 天前
0.5.1642026/10/0826 天前
0.5.1632026/10/0528 天前

关于 @sifxprime/krouter 的常见问题

@sifxprime/krouter 是什么?

本地AI网关Claude Code, Cursor, Codex, Copilot, Cline和任何openai兼容的客户端。路由40多个LLM提供商和100多个模型通过一个端点,具有自动回退,OAuth密钥管理和20-40%的令牌节省。

如何安装 @sifxprime/krouter?

在项目目录运行 npm install @sifxprime/krouter,或使用 pnpm add / yarn add / bun add。它还提供命令行工具 krouter,可以用 npx krouter 直接运行。

@sifxprime/krouter 支持 TypeScript 吗?

该包的 package.json 没有声明类型入口。需要类型提示时,可以在 npm 上查找社区维护的 @types/sifxprime__krouter 是否存在。

@sifxprime/krouter 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=20.9.0。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@sifxprime/krouter 可以商用吗?

@sifxprime/krouter 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@sifxprime/krouter 还在维护吗?

最新版本 0.5.168 发布于 2026/11/02(1 天前);至今共发布 137 个版本,其中过去 12 个月发布了 137 个;首次发布于 2026/06/17。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。