Commit graph

61 commits

Author SHA1 Message Date
hex2077
cec97ff3ae refactor(provider-pool): 将日期对象统一转换为ISO字符串格式
修改ProviderPoolManager中日期处理逻辑,将所有Date对象统一转换为ISO字符串格式存储,确保数据一致性并简化序列化过程。
2025-09-08 00:59:09 +08:00
hex2077
7b0aee7959 feat: 添加账号池管理功能并更新文档
- 在convert.js中为工具调用添加index字段支持
- 在common.js中添加fullOldResponseJson变量用于调试
- 更新README文档,添加账号池管理功能说明和快速导航
- 同步更新英文版README文档
2025-09-07 22:16:14 +08:00
hex2077
71fc06ad91 docs: 更新Gemini提供商参数名称从gemini-cli到gemini-cli-oauth
更新中英文README文档中Gemini提供商的参数名称,以更准确地反映其OAuth认证方式
2025-09-06 13:52:09 +08:00
hex2077
d8e42ed1db docs: 更新README中Claude协议支持的provider列表
修正Claude协议支持的provider列表,添加openai-custom以保持与OpenAI协议的一致性
2025-09-06 13:48:35 +08:00
hex2077
8033c16533 feat(qwen): 更新Qwen模型支持及文档
- 调整Qwen模型列表顺序并更新默认API地址
- 在SharedTokenManager中添加凭证设置
- 更新README文档,添加Qwen支持说明及启动参数
2025-09-06 13:29:41 +08:00
何夕2077
85021b3e61 Update README-EN.md 2025-09-06 01:23:00 +08:00
何夕2077
5729cd1f24 Update README.md 2025-09-06 01:22:30 +08:00
hex2077
1fa595c5e0 docs: 更新README文档添加Claude供应商路由和环境变量说明
添加关于通过不同路径路由和环境变量配置Claude API供应商的详细说明,包括各系统的环境变量设置方法
2025-09-06 01:16:22 +08:00
hex2077
66f758d741 feat(convert): 增强协议转换功能,支持更多模型和工具调用
- 新增OpenAI到Claude的协议转换支持
- 添加工具调用状态管理器和JSON Schema清理功能
- 实现智能的reasoning_effort等级判断
- 优化错误处理和日志记录
- 重构代码结构,增加注释和辅助函数
2025-09-05 18:03:34 +08:00
hex2077
1b7c143971 docs: 更新README以突出开发者特性和免费额度
更新了中英文README文件,强调项目为开发者打造的特性以及提供大量免费API请求额度的优势。同时修改了Qwen API服务中的工具合并逻辑,使其能够正确处理请求中已定义的工具。
2025-09-02 16:07:04 +08:00
hex2077
a23a3af4c6 feat: 添加openai-qwen-oauth到provider_pools.json 2025-09-02 01:13:12 +08:00
hex2077
bc6e317638 fix(provider-pool): 将默认错误阈值从1调整为3
docs: 更新Qwen Code授权方式和README-EN协议图
feat(qwen-core): 添加工具支持并优化请求头
2025-09-02 01:10:20 +08:00
hex2077
55801682da docs: 添加各服务授权文件的默认路径说明
在README中补充Gemini、Kiro和Qwen授权文件的默认存储路径信息,方便用户查找和使用
2025-09-01 19:14:17 +08:00
hex2077
c1f203c40e feat(qwen): 新增Qwen Code支持及相关功能实现
1. 在common.js中添加QWEN_API常量
2. 实现QwenApiService核心服务类
3. 添加QwenOAuth2Client认证客户端
4. 实现SharedTokenManager共享令牌管理
5. 更新适配器、API服务端和README文档
6. 添加相关依赖包
2025-09-01 17:28:37 +08:00
hex2077
372e5a7e59 feat: 添加 gemini-2.5-flash-lite 到 GEMINI_MODELS 列表 2025-08-30 23:33:14 +08:00
hex2077
bd30a5f8d3 fix(provider): 修复健康检查逻辑并添加checkModelName字段
实现实际的健康检查逻辑,通过临时服务适配器进行API调用验证
为所有provider配置添加checkModelName字段用于健康检查
修正初始化日志中的服务名称错误
2025-08-30 17:29:55 +08:00
hex2077
7ca3763d33 Merge branch 'main' of https://github.com/justlovemaki/GeminiCli2API 2025-08-30 14:02:44 +08:00
hex2077
b60593085e feat(provider): 添加健康状态跟踪并持久化到JSON文件
添加provider健康状态跟踪功能,包括使用次数、错误计数和最后使用时间
将provider状态持久化到JSON文件,确保重启后状态不丢失
重构provider选择逻辑,将状态管理移至config对象
2025-08-30 14:02:13 +08:00
何夕2077
35b1e9793e Update README.md 2025-08-30 11:09:01 +08:00
hex2077
3109eb21c5 docs: 更新README文件中的日期信息
在README.md和README-EN.md中添加了账号池模式更新的具体日期8.29
2025-08-29 17:06:12 +08:00
hex2077
bdcb4320f4 feat: 新增提供商账号池模式支持
实现账号池功能,支持为所有提供商配置多个账号,提供轮询、故障转移和配置降级能力
修改适配器和服务处理逻辑以支持账号池管理
添加 ProviderPoolManager 类管理账号池健康状态和选择策略
更新文档说明账号池配置和使用方法
2025-08-29 17:00:18 +08:00
何夕2077
1223c1318e Update README.md 2025-08-27 17:01:43 +08:00
何夕2077
9e2ece57fa Update README.md 2025-08-27 17:01:06 +08:00
hex2077
6fe527f436 build: 更新依赖项并修改模型提供商名称
- 添加 deepmerge 依赖项用于深度合并对象
- 更新 package-lock.json 中的项目名称和依赖项配置
2025-08-15 23:12:44 +08:00
何夕2077
09acef8824 Merge pull request #28 from LaelLuo/fix/kiro-oauth-creds-file-path
🐛 fix(kiro): 优化KIRO_OAUTH_CREDS_FILE_PATH配置的凭据加载逻辑
2025-08-12 15:02:31 +08:00
LaelLuo
76411cad0d 🐛 fix(kiro): 优化KIRO_OAUTH_CREDS_FILE_PATH配置的凭据加载逻辑
- 当配置KIRO_OAUTH_CREDS_FILE_PATH时跳过~/.aws/sso/cache/目录扫描
- 修复token刷新时保存路径问题,使用用户指定路径而不是默认路径
- 改进错误处理和调试日志
2025-08-12 14:33:43 +08:00
hex2077
faf215dae1 refactor(docker): 修改容器配置以使用root用户并更新运行参数
- 移除非root用户相关配置,改为直接使用root用户
- 添加容器运行时的用户ID、重启策略和特权模式参数
- 更新容器名称和挂载路径以匹配root用户
- 同步更新Windows和Linux的启动脚本
2025-08-12 12:40:30 +08:00
hex2077
2c9dd481ff docs: 移除README.md中的多余分隔线
移除文件末尾的多余分隔线,保持文档简洁
2025-08-10 23:52:50 +08:00
hex2077
49aad4009f docs: 移除独立的Docker文档并整合到主README
删除README.Docker.md文件并将Docker相关内容整合到主README中
更新README.md和README-EN.md,添加文档链接和免责声明
简化项目架构说明,突出核心功能和使用指南
2025-08-10 23:48:43 +08:00
hex2077
a68ff027b9 feat(oauth): 添加OAuth令牌自动刷新功能
为Gemini和Kiro服务添加令牌过期检测和自动刷新功能
在API服务器中添加定时任务检查并刷新临近过期的令牌
更新README文档说明新增的CRON配置参数
2025-08-07 20:24:40 +08:00
hex2077
d4b4b91b45 docs: 更新README中的协议关系图
将英文标签改为中文,简化内部转换逻辑部分的展示,使图表更清晰易读
2025-08-06 23:04:31 +08:00
hex2077
0d7a4649bc Merge branch 'main' of https://github.com/justlovemaki/GeminiCli2API 2025-08-06 23:02:46 +08:00
hex2077
f33cf38b42 fix(api-server): 修复OPTIONS请求的CORS头部设置
feat(convert): 添加OpenAI流式响应停止块生成函数
refactor(common): 优化流式请求处理逻辑,支持更多协议转换
2025-08-06 23:01:49 +08:00
何夕2077
fc32bd95ac Update README-EN.md 2025-08-06 22:59:58 +08:00
何夕2077
464c759267 Update README-EN.md 2025-08-06 22:59:25 +08:00
hex2077
015a17a3a9 feat: 更新项目名称为AIClient2API并添加logo
添加项目logo图片文件
将所有文档中的GeminiCli2API更名为AIClient2API
更新Dockerfile和README中的项目描述
在README中添加DeepWiki徽章和代理设置说明
2025-08-04 13:19:21 +08:00
hex2077
7157be4a2d refactor(convert): 优化默认参数处理逻辑并更新测试路径
- 添加辅助函数 checkAndAssignOrDefault 统一处理默认值逻辑
- 更新 DEFAULT_MAX_TOKENS 和 DEFAULT_TEMPERATURE 默认值
- 为 Gemini 添加单独的 DEFAULT_GEMINI_MAX_TOKENS 常量
- 修正测试文件中的路径引用格式
- 更新 OpenAI 测试模型为 deepseek-ai/DeepSeek-V3
2025-08-04 12:51:46 +08:00
hex2077
e7f61e1009 chore: 更新项目名称为AIClient-2-API 2025-08-02 20:10:27 +08:00
hex2077
328530138f feat(convert): 添加默认参数常量并统一处理缺失值
为转换函数添加默认参数常量,包括最大token数、温度和top_p值
在多个转换函数中统一处理缺失参数的情况,使用默认值替代
2025-08-02 19:59:59 +08:00
hex2077
17cfce1f03 fix(claude): 修复模块区域初始化并标准化内容处理
当凭据中未找到区域时,将 Claude 模块的区域明确设置为 'us-east-1',并移除 URL 构建中的冗余区域回退。
将工具结果内容提取标准化为使用 'getContentText' 方法。
更新 .gitignore 文件以忽略 Claude 和 Serena 相关的临时目录及文件。
2025-08-02 18:28:25 +08:00
hex2077
b031ca4286 feat(protocol): 支持 Claude 与 Gemini 协议间的双向转换
实现了 Claude API 请求到 Gemini API 请求的转换,以及 Gemini API 响应到 Claude API 响应的转换。
同时支持了两种协议间流式响应的转换,增强了项目的兼容性和灵活性。

更新了 README 文件,新增模型协议关系图和 Star History。
优化了 Gemini 核心服务中的模型选择逻辑,当请求的模型不存在时,会使用默认模型。
2025-07-31 22:54:21 +08:00
hex2077
4dbba6a5ab docs: 更新项目名称从Gemini-CLI-2-API改为AIClient-2-API
统一修改中英文README文件中的项目名称,以反映项目功能范围的扩展
2025-07-30 20:34:14 +08:00
hex2077
5f0cd6ad83 feat(docker): 添加Docker支持和部署指南
新增Dockerfile、.dockerignore和健康检查脚本,支持通过Docker部署服务。添加了详细的部署文档和自动化脚本,便于在不同环境下快速启动和配置服务。同时优化了系统提示词应用逻辑,移除了调试日志输出。
2025-07-30 19:46:12 +08:00
hex2077
fcf6389856 feat(api): 支持通过路径段指定MODEL_PROVIDER并优化系统提示词提取逻辑
本次提交主要包含以下变更:
1. 在API服务器中新增通过URL路径段自动识别和切换MODEL_PROVIDER的功能,提升接口灵活性
2. 重构各提供商策略中的系统提示词提取逻辑,统一使用common.js中新增的extractSystemPromptFromRequestBody工具函数,提高代码复用性和维护性
3. 更新README文档,完善架构设计模式说明、数据流处理流程以及多模态内容和不同提供商的使用示例
2025-07-30 16:37:07 +08:00
hex2077
30cf7784f1 docs: 更新README中MODEL_PROVIDER的可选值
将`openai-kiro-oauth`修改为`claude-kiro-oauth`以反映最新的模型服务商选项
2025-07-29 22:06:40 +08:00
hex2077
35ced87e99 feat: 添加lodash依赖并优化Claude策略处理逻辑
重构Kiro服务从openai迁移至claude模块,更新相关文档和测试
修复Claude策略中内容提取逻辑,支持input_json_delta类型
优化系统提示词处理,当无系统消息时使用首个用户消息
更新README文档,添加健康检查端点和最新模型支持说明
2025-07-29 22:01:09 +08:00
hex2077
31d8dcf23d refactor(openai-kiro): 移除未使用的配置项并优化凭证加载逻辑
移除已注释掉的未使用配置项,简化代码结构
优化凭证加载逻辑,跳过特定token文件并添加注释说明
2025-07-27 23:47:53 +08:00
hex2077
e24e077b24 refactor(系统提示): 重构系统提示获取逻辑,直接从配置读取内容
feat(Kiro): 添加Kiro API支持及相关配置
docs: 更新README文档,添加Kiro API说明和测试覆盖信息
refactor(Gemini): 优化Gemini服务初始化日志信息
2025-07-27 23:10:45 +08:00
何夕2077
037d028a84 Delete .vercel/project.json 2025-07-25 18:46:18 +08:00
hex2077
903b6bbcaf feat: 实现多模型API代理核心功能与策略模式架构
新增完整的API代理服务架构,支持Gemini、OpenAI和Claude等多种大模型API的统一接入。主要变更包括:

1. 实现策略模式架构,新增provider-strategies.js处理不同API协议
2. 添加适配器层(adapter.js)统一服务接口
3. 实现三种核心模型(Gemini/OpenAI/Claude)的完整支持
4. 添加测试配置和依赖
5. 更新README文档说明新架构和使用方式
6. 新增.gitignore配置和项目元文件
2025-07-25 18:14:16 +08:00