前言¶
在 DeepSeek Harness(DSH)裏做智能體開發時,模型來源通常來自自建 API 或第三方 OpenAI 兼容網關。若你已經在本機安裝並登錄 Trae 桌面 App(國內版或國際版),賬號裏其實帶着可用的 remote 會話能力與模型目錄,但這些接口並非 OpenAI 形態,DSH 也無法直接讀取桌面程序的登錄態。
下面介紹的 dsh-trae-connect(維護者 marsma-101)做的是:在本機解密 Trae 保存的憑據、把 Trae remote 會話協議翻譯成 loopback 上的 OpenAI 兼容 HTTP 小門,並在 DSH 模型選擇器裏註冊 Trae(國內版)與 Trae Intl(國際版)兩個分組。裝上後儘量零配置,依賴自動發現安裝路徑與數據目錄。項目僅供個人學習與研究,請遵守 Trae 服務條款;協議實現參照 MIT 許可的 Trae2api-cn 公開文檔。
這是什麼¶
dsh-trae-connect 是 DSH 社區插件(分類:模型推理),當前版本 0.1.0,許可證 MIT。它不復刻 Trae 賬號體系,而是複用你已登錄的桌面 App:讀 product.json 判斷國內版 / 國際版與真實上游鏡像,解密 storage.json 中的 Cloud-IDE-JWT,從線上拉取模型列表,經 ctx.llm.registerAdapter 註冊 provider id 爲 trae 與 trae-intl 的適配器。
核心功能¶
自動發現 Trae 安裝與數據目錄¶
插件按平臺掃描候選路徑:Windows 讀卸載註冊表 InstallLocation(非默認盤也能找到);macOS 查 /Applications;Linux 查兩個 XDG base,WSL 另試 /mnt/<盤> 映射。命中後讀取 resources/app/product.json,用 packageType(TRAE_CN / TRAE_I18N)區分版本,用 bootConfig.remote.trae 取該賬號實際上游(國際版按 region 在 normal / SG / US 等鏡像間選擇,不寫死主機名)。
數據目錄方面,在 %APPDATA% / %LOCALAPPDATA% 等候選根下先試已知目錄名,再疊加目錄名含 trae 的寬鬆掃描,逐個嘗試解密 User\globalStorage\storage.json。國內版與國際版各取第一個能解出有效令牌的目錄;兩個版本都裝則兩組都出現。顯式路徑優先:設置卡可填國內版 / 國際版數據目錄或 storage.json 全路徑,也可用環境變量 TRAE_DATA_DIR_CN / TRAE_DATA_DIR_INTL。
若掃描後沒有任何憑據,日誌會提示確認 Trae 已啓動並登錄過(拉模型列表與掃描路徑期間需保持 App 運行;首次使用需先在 Trae 內完成登錄)。
動態模型目錄與展示¶
模型列表從 Trae 線上實時拉取(/models?functions=<按版本選桶>&show_custom_model=true),每 10 分鐘刷新;失敗時回落內置兜底列表。國內版桶爲 solo_agent_remote;國際版爲 solo_agent(全量目錄,與 Trae 國際版界面一致)。模型名後可標註積分倍率(如 · x0.8);國際版對付費檔未解鎖模型標 · 🔒 未解鎖,判據爲 features 裏 access.enable === true。用戶在 Trae 自配的自定義模型不會出現在選擇器中。
設置卡片還提供:「使用上游聲明的最大上下文窗口」開關(默認開,max-mode 用 1M 窗口);思考強度檔位(由 reasoning.enable 與 reasoning_effort_config.options 決定);「即用即焚」(每輪對話結束後刪除 Trae 側臨時遠程會話,默認開)。
憑據、小門與協議翻譯¶
憑據從 iCubeAuthInfo://icube.cloudide 經「tc」信封算法(AES-128-CBC + SHA-512 派生密鑰)解密,副本存於 <DSH_HOME>\.trae-connect\credentials.json(國內版)與 credentials-intl.json(國際版),權限 0600。Cloud-IDE-JWT 到期前 30 分鐘經 ExchangeToken 自動刷新。
本機 127.0.0.1 隨機端口起 OpenAI 兼容服務(/v1/models、/v1/chat/completions),國內版與國際版各持一枚 Bearer 令牌,並做 Host/Origin 迴環校驗。OpenAI 請求被翻譯成 POST /api/remote/v1/chat_sessions 與 SSE 事件流;國內版單頭 Authorization: Cloud-IDE-JWT、Origin solo.trae.cn;國際版需同時發送 Cloud-IDE-JWT 與 Authorization: Cloud-IDE-JWT 兩個頭,Origin 爲 work.trae.ai。
國內版與國際版對照¶
| 分組 | provider id | 典型數據路徑(Windows) | 上游(示例) |
|---|---|---|---|
| Trae(國內版) | trae |
%APPDATA%\Trae CN\User\globalStorage\storage.json |
https://trae-api-cn.mchost.guru/api/remote/v1(實測可用) |
| Trae Intl(國際版) | trae-intl |
%APPDATA%\Trae\User\globalStorage\storage.json |
從已安裝程序 product.json 按 region 選鏡像;設置卡「國際版上游地址」可覆蓋 |
國際版模型列表回包形態與國內版不同(data.list[].models),插件解析器兩種都支持。選中鎖定模型時上游會拒絕建會話,插件報錯會註明需升級 Trae 付費檔。
安裝與啓用¶
已抓取 README 與 SkillHub 目錄頁 均未給出固定的 dsh plugin add … 安裝命令行原文。安裝方式請以 DSH 當前版本的插件安裝說明,以及目錄頁「可安裝」入口爲準;源碼與 cordis.patch.yml 見 GitHub 倉庫。
啓用前請注意:插件以 當前 DSH 進程的用戶權限 運行,會讀取 Trae 數據目錄並寫入 <DSH_HOME>\.trae-connect\ 下的憑據副本。安裝前應自行審閱源碼與 MIT 許可證,確認可接受解密本地登錄態、訪問 Trae 私有 remote 接口等行爲。
典型用法¶
README 未提供獨立 CLI 示例;預期工作流如下:
- 在本機安裝 Trae 桌面 App(國內版和/或國際版),完成登錄並保持 App 可運行。
- 在 DSH 中安裝並啓用 dsh-trae-connect。
- 在 DSH 模型選擇器中選擇 Trae 或 Trae Intl 分組下的模型,按常規模型對話使用。
- 若自動發現失敗,在插件設置卡填寫數據目錄或設置
TRAE_DATA_DIR_CN/TRAE_DATA_DIR_INTL;國際版積分查詢需自行填寫「國際版積分接口根地址」(官方積分域名在資料中標註爲未實測)。
適用場景與限制¶
適合:已用 Trae 桌面 App 且希望在 DSH 智能體流程裏複用同一賬號模型目錄與登錄態的個人開發者;需要國內版與國際版分組並存、模型列表隨 Trae 線上更新而無需改插件的場景。
限制(README 明確):
- 工具調用(function calling)未實現,僅支持文本 / 推理對話。
- 依賴 Trae 客戶端私有接口,Trae 大版本更新後插件可能需要調整。
- 國際版積分接口域名未實測,狀態卡積分需自填根地址才啓用。
免責聲明:項目與 Trae、字節跳動、DeepSeek 無關聯;使用後果由使用者自行承擔,請勿用於商業用途。
鏈接¶
- 社區目錄:https://www.skillhub.cn/plugins/marsma-101/dsh-trae-connect
- 源碼與說明:https://github.com/marsma-101/dsh-trae-connect
DSH 生態強調「一切皆插件」;SkillHub 爲社區獨立目錄,與 DeepSeek / 幻方無官方從屬關係。