OpenAI Chat Completions、OpenAI Responses、Anthropic Messages、Google Gemini —— 四套主流协议同时暴露,指向同一个 DevinAPI 实例即可。全部汇进同一个 chat 处理器、同一个账号池,再送往 Devin 云端。
$ curl http://localhost:3003/v1/chat/completions \ -H "Authorization: Bearer sk-dv-demo" \ -d '{ "model": "gpt-5.2", "messages": [ {"role":"user","content":"hello"} ], "stream": true }' # → Server-Sent Events (OpenAI chunk 格式)
$ curl http://localhost:3003/v1/messages \ -H "x-api-key: sk-dv-demo" \ -d '{ "model": "claude-opus-4.6", "messages": [ {"role":"user","content":"hello"} ], "stream": true }' # → SSE (Anthropic message_delta 格式)
$ curl http://localhost:3003/v1/responses \ -H "Authorization: Bearer sk-dv-demo" \ -d '{ "model": "gpt-5.5", "input": "hello", "stream": true }' # → SSE (response.output_text.delta 事件)
$ curl http://localhost:3003/v1beta/models/gemini-3.0-pro:streamGenerateContent \ -H "x-goog-api-key: sk-dv-demo" \ -d '{ "contents": [{"parts":[{"text":"hello"}]}] }' # → SSE (Gemini streamGenerateContent 格式)
/v1/messages,Cursor / OpenAI SDK 走 /v1/chat/completions,Codex / Agents SDK 走 /v1/responses,Gemini 客户端走 generateContent / streamGenerateContent,互不干扰。另有 /v1/models 目录与 /v1/messages/count_tokens。
橫跨 9 家供應商的 145 個現役模型,一致計費、即時切換,不必為每家重接一次 API。最新上線 Claude Opus 4.8(low→max 與 fast 全通道)、GPT-5.5 全系與 Gemini 3.1 Pro;另有 9 個免費模型與 14 個思考型變體。清單由 src/models.js 權威生成、後端雲端目錄自動發現。
DEVIN_CONNECT=1)透過 GetChatMessage 自動發現雲端目錄,/v1/models 即時反映,無需拷貝任何二進位。scripts/gen-docs-models.js 從 src/models.js 自動生成。
請求從客戶端出發,經過協定翻譯、帳號池選號、工具仿真、路徑淨化,再以手寫 Protobuf 透過 Connect-RPC 直送 Devin 雲端的 GetChatMessage——預設路徑不需要任何二進位。回應原路返回,流式解析後交付。傳統的 Windsurf 語言伺服器(本地 gRPC)仍保留為第二條傳輸鏈。
遷移不只是換個上游位址。為了純 HTTP 直連 Devin 雲端,我們手寫了整條協定棧——沒有 protobuf 執行庫,沒有 npm 依賴。
零依賴、免 schema 的 wire-format codec,varint 全手寫,透過 Connect-RPC 對話 Devin 雲端。
Chat Completions、Responses、Anthropic Messages、Gemini 四套前端汇进同一个 chat 处理器再扇出。
Devin 雲端(純 HTTP,新預設)與傳統 Windsurf 語言伺服器(本地 gRPC)共用同一套 proto + connect 底層。
解析 Devin 免費的 GetUserStatus 帳本,還原真實餘額、計費週期與各模型 credit 費率,零成本查詢。
忠實重建圖像 tool_result 的 wire 結構,讓圖片輸入與文字走同一個 protobuf 封包。
內建 jpeg-js(BSD-3)與自寫的純 Node PNG 解碼器(node:zlib)負責縮圖,不引入原生或 npm 影像庫。
訪問 /dashboard,暗色 Web 介面。日誌即時串流、帳號一鍵登入、模型黑白名單、封禁偵測。
運行時間、帳號池狀態、分模型成功率
Email/密碼直接註冊,自動取得 Token
新增、刪除、停用、真實餘額 / credit 查詢
全域與帳號層的模型白/黑名單
全域及個別帳號 HTTP/SOCKS5 代理
即時 SSE 串流,級別篩選,關鍵字高亮
按模型/帳號維度的指標與圖表
錯誤模式偵測,帳號健康自動監控
一鍵 git pull + PM2 重啟服務
Contributors 列表
兩種方式任選。
$ curl -fsSL https://deb.nodesource.com/setup_20.x | bash - $ apt install -y nodejs
$ git clone https://github.com/dwgx/WindsurfAPI.git $ cd WindsurfAPI $ cp .env.example .env $ node src/index.js # 零依賴,免安裝直接跑
.envDEVIN_CONNECT=1 # 走 Devin 雲端 GetChatMessage,無需二進位 PORT=3003 API_KEY= # 留空 = 不驗證 DEFAULT_MODEL=claude-4.5-sonnet-thinking DASHBOARD_PASSWORD= # 留空 = 後台免密碼
accounts.json 即可,其餘免配置。傳統語言伺服器路徑仍可用,設 LS_BINARY_PATH 即回退到本地 gRPC。$ npm install -g pm2 $ pm2 start src/index.js --name devin-api $ pm2 save && pm2 startup
bash update.sh$ git clone https://github.com/dwgx/WindsurfAPI.git $ cd WindsurfAPI $ cp .env.example .env
$ docker compose up -d --build $ docker compose logs -f
.docker-data/data 持久化帳號 / 配置。Devin 雲端路徑無需下載任何二進位,設好 accounts.json 即可啟動。
windsurfapi-windows.zip —— 系統匣托盤版(推薦)windsurfapi.exe —— 純控制台單檔(約 60 MB)tray.vbs:無黑窗,右下角系統匣出現圖示;或直接雙擊 windsurfapi.exe:彈出控制台視窗顯示日誌。首次執行自動產生 API_KEY 與 DASHBOARD_PASSWORD(寫入同目錄 .env)並自動開啟後台面板。.env。服務崩潰會自動重拉,連續異常才停並提示。DEVIN_CONNECT=1 # Devin 雲端純 HTTP 主路,無需二進位 HOST=127.0.0.1 # 預設僅本機綁定 PORT=3003 API_KEY=sk-windsurf-… # 首次隨機生成 DASHBOARD_PASSWORD=… # 首次隨機生成
HOST 改成 0.0.0.0 並保留強 API_KEY。改 BASE_URL,塞 API KEY,完事。
→ /v1/messages · Anthropic 協定
export ANTHROPIC_BASE_URL="http://YOUR_IP:3003" export ANTHROPIC_API_KEY="sk-dv-your-key" claude
→ /v1/chat/completions · OpenAI 協定
# Settings → Models → Custom OpenAI Base URL: http://YOUR_IP:3003/v1 API Key: sk-dv-your-key Model: claude-opus-4.6
→ Anthropic 或 OpenAI provider 皆可
# Provider: OpenAI Compatible Base URL: http://YOUR_IP:3003/v1 API Key: sk-dv-your-key
→ /v1/chat/completions
from openai import OpenAI client = OpenAI( base_url="http://YOUR_IP:3003/v1", api_key="sk-dv-your-key", )
windsurfapi-windows.zip(內建 Node,免安裝、免 clone),解壓後雙擊 tray.vbs 即縮進系統匣,首次自動生成金鑰與後台密碼,右鍵可一鍵複製密碼 / API Key、開面板、重啟;只想要單檔也可下裸 windsurfapi.exe(控制台視窗版)。當然也能照手動 / Docker 方式跑:預設的 Devin 雲端路徑(DEVIN_CONNECT=1)是純 HTTP,不依賴平台專屬二進位,Windows / macOS / Linux 通吃,只有選用的傳統語言伺服器路徑仍限 Linux。/v1/models 透過 GetChatMessage 自動發現雲端目錄,新模型上線即可見,無需拷貝或更新任何二進位;清單看似落後就重啟服務重新拉取。/v1/chat/completions、/v1/responses、/v1/messages 与 Gemini 端点。每一條 PR 都附上 root-cause 分析;每一個 root-cause 都對應半夜在 Issues 區罵 Claude 的瞬間。權重按貢獻次數與精準度排,不是按代碼行數。
想加入這份名單?到 Issues 提 bug 或到 Pull requests 直接動手都歡迎。