一个基于 Bun 构建的本地代理服务器,用于将 OpenAI 兼容的 API 请求转发到 DeepSeek API,特别为 Xcode Intelligence 设计。
proxy-deepseek 是一个本地代理服务器,它:
- 提供 OpenAI 兼容的 API 接口
- 将请求转发到 DeepSeek API
- 默认运行在端口 30011
- 支持 Xcode Intelligence 等需要 OpenAI 兼容接口的工具
- ✅ OpenAI 兼容的 API 接口
- ✅ 支持流式和非流式响应
- ✅ 智能消息截断策略(支持 recent/last_only/all 三种模式)
- ✅ 自动配置文件生成
- ✅ 跨平台编译支持(Windows、macOS Intel、macOS ARM)
- ✅ 健康检查端点
- ✅ CORS 支持
- Bun 运行时环境
bun install-
首次运行程序:
bun run index.ts
-
配置 DeepSeek API Key: 程序首次运行后会自动创建
proxy-deepseek-config.yaml配置文件,请编辑该文件:# 编辑配置文件,填入你的 DeepSeek API Key vim proxy-deepseek-config.yaml将
deepseek.apiKey的值改为你的实际 API Key:deepseek: apiKey: "your-actual-deepseek-api-key-here"
-
重新启动服务:
bun run index.ts
bun run devproxy-deepseek-config.yaml- 主配置文件
server:
port: 30011 # 服务端口
deepseek:
apiKey: "your-deepseek-api-key" # DeepSeek API Key
baseURL: "https://api.deepseek.com/v1" # DeepSeek API 地址
defaultModel: "deepseek-chat" # 默认模型
messageStrategy:
strategy: "recent" # 消息策略:recent | last_only | all
maxMessages: 10 # 最大消息数量(recent 策略时)
alwaysKeepSystem: true # 是否始终保留系统消息
completion:
defaultTemperature: 0.7 # 默认温度参数
defaultMaxTokens: 1000 # 默认最大 token 数- recent: 保留最近的对话(推荐用于 Xcode Intelligence)
- last_only: 只保留最后一条用户消息
- all: 保留所有消息
GET /v1/models
POST /v1/chat/completions
GET /health
在 Xcode 中配置本地代理:
- 打开 Xcode → Settings → Intelligence
- 点击 "Add a Model Provider"
- 选择 "Locally Hosted"
- 在端口字段中输入:
30011
bun run build:all# Windows
bun run build:win
# macOS ARM (M1/M2)
bun run build:mac-m1
# macOS Intel
bun run build:mac-x64构建后的可执行文件位于 dist/ 目录下。
proxy-deepseek/
├── index.ts # 主程序文件
├── proxy-deepseek-config.yaml # 配置文件
├── package.json # 项目配置
├── tsconfig.json # TypeScript 配置
├── bun.lock # Bun 锁文件
└── README.md # 项目说明
-
端口被占用
- 修改
proxy-deepseek-config.yaml中的server.port配置
- 修改
-
API Key 错误
- 检查
proxy-deepseek-config.yaml中的deepseek.apiKey是否正确 - 确认 DeepSeek API Key 有效且未过期
- 检查
-
连接超时
- 检查网络连接
- 确认 DeepSeek API 服务可用
程序运行时会输出详细的日志信息,包括:
- 配置加载状态
- 请求处理信息
- 错误信息
本项目基于 MIT 许可证开源。
欢迎提交 Issue 和 Pull Request!