🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI
← 全部攻略

dsh-connect-trae 是怎么把本机 Trae 登录态变成模型通道的

工具 / 效率类文章2026/10/28 发布9 次阅读

Trae 的额度躺在客户端里,DeepSeek Harness(下称 DSH)的下拉框里却看不见它。dsh-connect-trae 补的就是这一跳:不代理流量、不搬 prompt,只把你本机已经登录的那份凭据读出来,装成一个 DSH 认得的 provider,让"模型产出结构化 tool_calls、工具在本地跑"这套循环照常转。

当前版本 4.6.2,MIT 许可(版权 LaoDing),仓库 dingminhua/dsh-connect-trae 165 星,npm 周下载 4,261 —— 后者含 CI 与镜像流量,不等于真实装机数。

三段拼起来的东西:provider、桥、工具循环

对 DSH 来说,一个模型供应商最后要落成两样:一串能枚举的模型 id,一个能吐 OpenAI 兼容 SSE 的端点。前者好办,后者麻烦 —— Trae 的对话接口不是 OpenAI 形状,它自己有一套 SSE 事件,里面夹着"待执行的 function_call"。

插件的选择不是翻译,是"接住"。

第一段:PiAiAdapter

DSH 侧每个 provider 配一套适配器。职责很窄:把这次调用(系统提示、工具声明、多轮消息)整理成一次 HTTP 请求,再把回来的流解析成 DSH 认的事件。它只关心这个端点像不像 OpenAI。

第二段:loopback shim

整套设计里最值得单独讲的一层。每个区域起一个本地 HTTP 服务,端口随机,另配一个进程内生成的随机 secret;适配器的 baseURL 指向 127.0.0.1 那个端口,Authorization 里放的是这个临时串,不是 Trae 的真 token。

请求到达 shim 后按 bearer 分派:国内区同时挂着两条 provider,就有两条 bearer,未知 token 一律 401,不会"退回第一条"。路由在构建客户端那一刻就固定了,不存在按调用内容猜一次的机会。

第三段:TraeSoloBridge

过了 shim 才是桥,它负责真正跟上游讲话:拼 Trae 自己的头(设备号、机器号、IDE 版本)、处理凭据刷新、从事件流里把想调用的工具挑出来。企业网关要求每次请求带 session_id,消费网关相反 —— 带上它会被拒,所以这个字段只加在 enterprise 那条路由上。

第四段:上游 llm_utils_chat

三个区域三个端点,README 写得直白:

  • 国内版 https://trae-api-cn.mchost.guru/api/agent/v3/llm_utils_chat
  • 企业版 https://console.enterprise.trae.cn/api/agent/v3/llm_utils_chat
  • 国际版 https://coresg-normal.trae.ai/api/agent/v3/llm_utils_chat
第五段与第六段:SSE 回来之后

模型想调工具时,Trae 的流里给出的是一段 pending function_call;桥把它攒成完整调用,改写成 OpenAI 形状的 tool_calls 事件推给适配器。DSH 收到并不把它丢回上游,而是在本地真跑 —— bash、read、write、edit 都是本机进程,跑完把结果当成一条新消息塞回对话,再走一遍上面五段。

工具确实在你机器上跑,模型只出主意。

三路上游,两种买单的人

国内区并列注册 trae 与 trae-enterprise,国际区一个 trae-global。三者能同时在线,不同会话各挑一边 —— 每个面板各持一整套运行时(凭据 store、catalog、wire 映射、上游客户端、shim、adapter)。

分歧出在计费。企业版不是国内版的别名:同一张 CN 凭据若属于 tob_online 租户,会被两个网关同时服务,消费池扣个人积分、租户池扣企业额度。同一个模型两个付账方,插件不替你猜,所以企业版默认关闭,得你亲手勾。trae 永不碰企业网关;trae-enterprise 被拒就报错,不回落 —— 回落等于悄悄换成你自己掏钱。

为什么中间要夹一层 loopback

把 token 直接塞进适配器的 Authorization 也能跑,为什么要多起一个本地服务?

第一是隔离。pi-ai 是外部依赖,日志、错误对象、异常栈都可能把请求头带出来;shim 只认自己发的临时串,真凭据始终留在插件进程内。

第二是分派。同区两条 provider 要按 bearer 区分消费网关与租户网关,HTTP 中间层天然有这个位置,塞进适配器内部更容易写错。

第三是可关。取消勾选某个面板,整条 provider 从 DSH 撤下、不再发请求,shim 随之停。

代价是每次请求多一次本地回环,换来一个"凭据不出进程"的边界。

唯一会写服务端的那个按钮

插件里几乎所有查询都是只读的:用量走 https://api.trae.cn/trae/api/v2/pay/* 与 /trae/api/v2/ug/*,模型目录也是读,都不扣额度。

唯一的写操作是每日签到:POST /trae/api/v2/ug/checkin_credits/claim,必须带本机设备号 x-device-id。而设备号正是"每台设备每天一次"的判定依据 —— 换账号不会重置当天名额。所以插件把"该账号今天领了"和"这台机器今天领过了"分成两种文案:前者叫已领取,后者叫本机已签,绝不混着说。

账号池里的"全部签到"也不是盲目重试:上游回 9095(本机今日已签)就整批停,把剩下的如实标成本机已签。产出真相,而不是一排假失败。

三个值得提前知道的技术边界

peer 上界别写成 <0.2.0-0。 SemVer 里 0.2.0-rc.1 < 0.2.0-0,这么写会把整条 0.2.0 预发布线一起挡在门外,用户升到第一个预发布版后插件整体失效 —— 而且 tsc 通过、单测全绿、CI 全过,只有真实宿主会拒绝加载。正确写法是 <0.3.0-0,并且要有测试钉住这条不变式。

pi-ai 的两代上下文别错配。 0.86 之前是顶层 systemPrompt / tools,0.86 起只挂在那条 system 消息上。新宿主配旧库会直接崩在 token 估算上(任意模型都崩、耗时极短、usage 恒为 0);旧宿主配新库不崩,但顶层字段被静默忽略,工具声明全丢,模型永远不产生 toolCall —— 后者更难查。看启动日志那行 dsh-connect-trae: pi-ai <版本> (<代数>) 的 legacy 即可定位。

目录里有、SOLO 通道没有的模型会报 4001。 kimi-k2.8-preview、qwen3.8-flash 来自 TraeCode 通道,列表里能看见,选中发消息会得到明确的"上游不提供"。这是策略而非缺陷:隐藏你 IDE 里明明有的模型,比让你看到一条清楚的错误更糟。官方开放到 SOLO 后自动可用,不用升级插件。

可信度这件事

站点给的判定是:信任档位「已验证」,本站已在 dsh 0.2.1-rc.2 下真实安装成功(L4 级),安装兼容性自动检查通过(Node 要求 ^22.19.0 || >=24.0.0,基线 22.19 满足)。

但安全扫描那一栏必须如实念:🔵 含敏感能力、尚无人工评估。静态扫描看到它能执行外部命令、读写删除本地文件、发起网络请求,共 28 处证据 —— 这是能力清单,不是危险判定,也不等于安全背书。它要读 Trae 的登录文件、要把凭据落到 $DSH_HOME/.trae-auth.cn.json 与 .trae-auth.ai.json,这些动作本来就是它的工作原理。

总结

它把"已经付过钱的登录态"变成了一条标准模型通道,链路清晰、边界也划得清楚;想对照同类插件的中文清单见 DeepSeek Harness Hub 插件清单。

适合与不适合

适合:本机已经登录 Trae 且额度用不完的人;想在同一套 DSH 工作流里混用 Trae 与别家模型的会话;需要看积分余额和到期提醒、但不想开客户端的人;手里有企业租户账号、想显式指定走租户池的团队。

不适合:没装 Trae 或没登录的人,插件没有别的取凭据途径;账号被识别成美国区(userRegion: "US")的人,这里只识别不接入,重新登录也不会变;只想白嫖免费额度、不愿承担任何凭据落盘风险的人 —— 它确实会写本地文件,也确实是"含敏感能力、尚无人工评估"。

标签:dsh-connect-trae、DeepSeek Harness、Trae 接入

本文由 DeepSeek Harness Hub 自动整理,数据来源于插件详情页。

60 秒视频版 · AI 辅助生成并人工校对
回到顶部