mirror of
https://github.com/BenedictKing/kiro.rs.git
synced 2026-04-25 06:55:50 +03:00
-
v1.0.4 Stable
released this
2026-02-09 03:46:09 +03:00 | 182 commits to master since this release📅 Originally published on GitHub: Mon, 09 Feb 2026 01:23:51 GMT
🏷️ Git tag created: Mon, 09 Feb 2026 00:46:09 GMTkiro.rs v1.0.4 — 首次正式发布 🎉
kiro-rs 是一个用 Rust 编写的 Anthropic Claude API 兼容代理服务,将 Anthropic API 请求转换为 Kiro API 请求。支持多凭据管理、自动故障转移、流式响应和 Web 管理界面。
✨ 核心功能
- 完整的 Anthropic Messages API 兼容层(
/v1/messages、/v1/messages/count_tokens、/v1/models) - Anthropic ↔ Kiro 双向协议转换,支持流式 SSE 响应
- AWS Event Stream 二进制协议解析器
- 兼容 new-api 的 Claude 请求格式
- Claude Code 专用缓冲流端点(
/cc/v1) - SSE 流 ping 保活机制
🔑 多凭据管理
- 多凭据格式支持(单凭据向后兼容 + 数组格式)
- 凭据优先级排序与负载均衡模式切换(priority / balanced)
- 后台 Token 自动刷新(支持 IdC Token)
- 多维度设备指纹系统,每个凭据生成独立的确定性指纹
- 凭据级 region 和 machineId 配置
- 自动认证方式检测(IDC / Builder ID)
- 凭据统计与持久化(成功次数、最后使用时间)
- 批量导入 token.json 功能
🔄 故障转移与调度
- 用户亲和性绑定,连续对话优先使用同一凭据
- 余额感知故障转移,自动切换到余额最高的可用凭据
- 精细化速率限制系统(每日请求限制、请求间隔控制、指数退避)
- 独立冷却管理模块(7 种冷却原因、差异化冷却时长、递增冷却机制)
- 单凭据最多重试 2 次,单请求最多重试 5 次
- 402 配额耗尽自动禁用并故障转移
- MODEL_TEMPORARILY_UNAVAILABLE 全局禁用与自动恢复
- 429 限流不禁用凭据,502 高负载继续重试
- 启动时自动禁用余额不足的凭据
🧠 Thinking 支持
- 完整的 Thinking 内容回传
- 支持 adaptive 模式与 budget_tokens 限制
- 模型 "-thinking" 后缀自动覆写 thinking 配置
<thinking>标签解析与过滤(跳过引用字符包裹的标签)
📦 输入压缩管道
- 多层输入压缩管道,规避上游请求体大小限制
- 5 层策略:空白压缩、thinking 块处理、tool_result 截断、工具描述截断、历史截断
- 10 个可配置参数
🔍 WebSearch 支持
- 自动检测纯搜索请求并路由到专用处理器
- 自动过滤不支持的 web_search / websearch 工具类型
🖥️ Web 管理界面
- React 18 + TypeScript + Tailwind CSS 前端
- 凭据 CRUD、批量操作、批量导入(支持拖放上传、预览、自动去重)
- 余额查询(缓存 + 手动刷新)、动态余额缓存 TTL 策略
- Bonus 用量包支持
- Kiro Web Portal API 集成(套餐/用量/邮箱等账号信息聚合)
- 凭据统计展示、验活功能、分页
- 负载均衡模式切换
- Admin API 密钥认证(常量时间比较防时序攻击)
🔒 安全
sensitive-logsfeature flag,默认关闭敏感日志输出- 日志中 user_id 自动掩码处理
- API Key 日志泄露防护
- 请求体 debug 日志截断(头尾各 1200 字符)
subtle库常量时间比较防止时序攻击- admin_api_key 空值检查防止认证绕过
🐛 关键修复
- 修复上下文超限时返回 502 而非 400 的问题
- 修复 Opus 4.6 模型 ID 包含日期导致不匹配的问题
- 修复 IDC 凭据返回 403 的问题(Token 和 profile_arn 不匹配)
- 修复凭据文件写入非原子操作可能导致损坏的问题
- 修复 assistant prefill 消息导致 400 错误的问题
- 修复孤立 tool_use(无对应 tool_result)导致 400 的问题
- 修复 assistant 消息仅含 tool_use 时 content 为空导致报错的问题
- 修复 UTF-8 字符串截断在多字节字符中间切割导致 panic 的问题
- 修复 thinking 后紧跟工具调用时
</thinking>未被过滤的问题 - 修复 tool_use 导致的吞字问题
- 修复所有凭据均已禁用后的死锁问题
- 修复 NaN 余额导致凭据选择异常的问题
🏗️ 构建与部署
- Dockerfile 支持容器化部署
- GitHub Actions 多平台构建(macOS / Linux amd64 & arm64 / Windows)
- GitHub Actions Docker 双架构构建工作流
- Docker 构建引入 cargo-chef 依赖层缓存
- TLS 库从 native-tls 切换至 rustls,避免交叉编译依赖 OpenSSL
- docker-compose 配置文件
- rust-embed 静态文件嵌入(前端打包进二进制)
- Cargo.toml 优化:thin LTO、tokio features 精简
Full Changelog: https://github.com/BenedictKing/kiro.rs/commits/v1.0.4
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
kiro-rs-darwin-amd64
0 downloads ·
2026-02-28 14:43:18 +03:00 · 7.5 MiB -
kiro-rs-darwin-arm64
0 downloads ·
2026-02-28 14:43:19 +03:00 · 7.1 MiB -
kiro-rs-linux-amd64
0 downloads ·
2026-02-28 14:43:20 +03:00 · 8.1 MiB -
kiro-rs-linux-arm64
0 downloads ·
2026-02-28 14:43:22 +03:00 · 7.4 MiB -
kiro-rs-windows-amd64.exe
0 downloads ·
2026-02-28 14:43:23 +03:00 · 8.4 MiB -
kiro-rs-windows-arm64.exe
0 downloads ·
2026-02-28 14:43:24 +03:00 · 7.4 MiB
- 完整的 Anthropic Messages API 兼容层(