dsh-connect-trae-models

modeltested: passnpmMIT

Aggregates all local Trae accounts into one auto-failover model provider, with manual and automated daily check-in, credits and expiry monitoring, and a model selection settings card.

下载量 / Downloads
1,504
依赖体积 / node_modules
0.48 MB
测试时间 / Tested
2026-11-06
DSH 版本 / Version
0.2.2-rc.1

Install

dsh plugin --profile web add dsh-connect-trae-models

Sandbox test results

StageResult
1 install✓
2 list✓
3 mount✓
4 boot—

Four stages run in an isolated sandbox: install (network on) → list → mount → boot (last three with no network).

README

DSH Connect Trae Models

![npm version](https://www.npmjs.com/package/dsh-connect-trae-models)

![npm downloads](https://www.npmjs.com/package/dsh-connect-trae-models)

![license](./LICENSE)

多账号 Trae 模型池插件:把本机所有 Trae 登录态聚合成 DeepSeek Harness 里的一个模型供应商,

请求在账号池内自动容错换号,并配套手动/自动签到、模型倍率显示、账号使用方式切换(自动轮转 +

手动钉号)与可选模型配置页面。

装上之后,模型选择器里会出现两个分组:Trae Connect Models(国内版) 和

Trae Connect Models(国际版)(provider id connect-trae-models / connect-trae-models-global)。

亮点

  • 多账号自动池化:扫描本机四个 Trae edition × 三个平台的登录快照,自动收进一个共享池;

请求被限流或欠费时在同一个请求内换号重试,429 不会以「对话失败」的形式到达用户。

  • 五种派活策略 + 手动钉号:优先 / 轮换 / 均衡 / 粘性(保 prompt 缓存)/ 到期优先;

也可以在积分面板里把某个账号钉死,钉选不关闭自动容错。

  • 手动 + 自动签到:卡片逐账号「立即签到」,区分账号级 / 设备级 / 活动未开启四态;

自动签到按北京时区小时表跑(默认关闭),今日收益有账本。

  • 模型倍率与上下文如实申报:上游实时名册 + 静态回退;倍率画进模型名;

上下文窗口按上游 dev / Max 档位选择,绝不虚报更大的数。

  • 积分包到期提醒:区分 ≤3 天临期、远期、已过期、无截止时间四种状态,不误报。
和单账号连接插件的区别:dsh-connect-trae 是「一次一个账号」。本插件把多账号当默认情况
—— 不挑号、不手动导入,本机 Trae 所有历史登录快照全部收进一个共享池,对外用一个 provider 分组,
池内自动容错。凭据只读,插件从不索要你的密码,也不把 token 落盘。

功能

一、多账号池:自动换号,也手动钉号

池子走自动发现:Trae 桌面端每次登录都会在本机留下一个带令牌的快照,本插件扫描

四个 Trae edition × 三个平台 + CLI home 的候选路径,把每个账号都收进池。所以

多账号 = 在 Trae 客户端里换着登几次,之后点卡片上的「重新检测账号」或重启 DSH,新号就自动进池。

探测的客户端(凭据只读,插件从不索要你的密码):

Edition · macOS / Linux · Windows(取自 product.json 的 win32DirName)

国内 · Trae CN · Trae CN / trae-cn

国际 · Trae · Trae

SOLO 国内 · TRAE SOLO CN · TRAE SOLO CN / trae-solo-cn

SOLO 国际 · TRAE SOLO · TRAE SOLO

另加 CLI 令牌文件($HOME/.trae-cn/trae-jwt-token、$HOME/.trae/trae-jwt-token)作为兜底候选。

账号使用方式(自动) —— 卡片上「账号使用方式」下拉,五种:

方式 · 行为 · 适合

优先(默认) · 一直打同一个号,直到被限流或积分耗尽才换下一个 · 单号额度大、想尽快用完一个

轮换 · 连续请求依次轮过每个号,花费均摊 · 多个号额度差不多,想均匀消耗

均衡 · 随机,按闲置时长加权 · 有一个号不稳定时,不让它把整池拖住

粘性 · 一个对话固定一个账号,新对话才换 · 想保住 prompt 缓存命中率(上游缓存按账号隔离,对话中途换号会整段作废)

到期优先 · 先花快要过期的积分 · 有临期积分包,别让它作废

账号使用方式(手动) —— 对话栏积分面板里点「切换用户」钉住某个账号,或点

「使用自动轮转」取消钉选。钉选只改本机派活顺序,不改上游状态、不写凭据;钉到一个

不在池里的账号会被拒绝(否则请求会一直等一个永远不会被派活的号)。

自动与手动的关系:手动钉号只影响「下一次该谁上」,不关掉自动容错。钉住的号一旦

被限流、欠费或登录失效,shim 会在同一个请求内换号重试,429 不会以「对话失败」的形式

到达用户。

二、签到:手动与自动

手动签到:卡片每个账号行一个「立即签到」按钮,四态区分得很死:

状态 · 按钮 · 含义

可领取 · 可点 · 「可签到领 N 积分」

账号级已领 · 禁用 · 这个账号今天的奖励已到账

设备级已用 · 禁用 · 这台机器用掉了今天的名额(很可能是为别的账号用的)

活动未开启 · 禁用 · 上游当前关闭签到活动

账号级与设备级刻意分开。didCheckedIn(设备级)当成「今天签过了」是一个已发生过的缺陷——
切换账号后按钮变灰,而新账号其实一分未得。

自动签到:卡片「积分自动化」区一个总开关(写进 settings,改完立即生效)+「立即运行」。

默认关闭;开启后按北京时区的小时表跑(默认 9,可改成多个小时)。

  • 只自动签到这一件事。其它 Trae 奖励需要客户端里的真实活动,插件不假装能做。
  • 不跳过冷却中的账号:签到走独立的 pay/ug 端点,不该被对话路由的 429 连坐。只跳过

用户手动禁用和 ai 区域的账号。

  • 每日收益有账本:今日赚到多少、逐账号明细、触发过的时段数,都会写进 automationEarnings。

三、模型与倍率

  • 模型名册优先取上游网关的实时列表;上游离线时回退内置静态名册,保证 provider

永不为空(国内 4 个 + 国际 7 个模型)。卡片上会标明当前名册是「来自网关」还是「内置回退」。

  • 倍率画进模型名:DeepSeek-V4-Pro · x0.08 这种写法,和 Trae 自家选择器一致。

卡片「模型管理」区逐模型显示 x{倍率},multiplier === 0 的显示「免费」。

  • 模型管理:逐模型开关「启用」、打开「图像输入」、设「上下文预算」(上限只能是上游

宣告的原生窗口,绝不虚构更大的数)。保存只影响当前区域,另一个标签页各自一份。

  • 上下文窗口按上游档位如实申报:Trae 给每个模型宣告两档——dev(通常 200K/256K/272K)

与 Max(通常 1M)。插件不再把窗口钉死在 200K,而是按以下默认策略选档:

无 Max 档 → 用 dev;Max ≤ 500K → 直接用 Max;Max > 500K(如 1M)→ 默认取 500K

(保守默认,想要完整 1M 可在卡片上显式选 Max 档)。卡片会在「上下文预算」输入框给出

dev / 500K(若适用) / Max 三个建议档位,任何比 Max 更宽的预算都会被夹回 Max,

绝不向上游或 DSH 虚报窗口。

  • 上下文窗口每个模型都必有值——缺了会让 DSH 以 INVALID_MODEL_CONTEXT 拖垮整条路由。

四、积分包到期提醒

三种状态刻意分开,不把「还没看」当成「马上到期」:

情况 · 展示

有包 ≤3 天到期 · 橙色「N 天后到期 · 剩 M 积分」,合计旁另加汇总徽标

有包 3 天以后到期 · 弱色只报到期时间(不告警)

所有包都已过期 · 灰显最近一笔「已于 … 过期」

没有任何带 end_time 的包 · 明说「没有带截止时间的积分包」,绝不误报


安装

前置条件:装好 Trae 客户端并登录(插件复用它存在本机的登录态,从不索要密码)。

多账号 = 在客户端里换着登几次。

方式一:从 npm 安装(推荐)

包已发布在 npm:dsh-connect-trae-models

# dsh 不在 PATH 时,用 node ~/.dsh/profiles/node_modules/@deepseek-ai/dsh/lib/bin.js 代替 dsh
dsh plugin --profile desktop add dsh-connect-trae-models
推荐 npm:需要拉取的依赖只有插件自己(1 个包,几秒搞定)。从 GitHub 源码装会连带装
开发依赖(构建器、测试框架等几百个包),慢得多。

方式二:从本地源码安装(开发者)

dsh plugin --profile desktop add /absolute/path/to/dsh-connect-trae-models
本地路径必须是绝对路径(宿主会拒绝相对路径);file: 与 link: 前缀都等价于绝对路径。
这种装法是软链到工作目录,改完 pnpm build 再重启 DSH 就生效,不需要反复重装。
dsh plugin add 用的是包名,不是目录名。

方式三:从 Git 仓库安装

dsh plugin --profile desktop add github:DragonHorizon-xtihc/dsh-connect-trae-models

也接受 gitlab: / bitbucket: / gist: 简写、完整 git URL、https:// 仓库地址,

以及 .tgz / .tar.gz tarball。注意:插件的 .gitignore 故意不忽略 lib/,

构建产物随源码提交,所以从仓库装不需要任何安装期脚本,也不会弹 pnpm 那句「构建脚本被拦截」。

手动注册 bundle(一般用不到)

dsh plugin add 会自动把带 dsh.bundle.patch 的包装进 profile 的 bundles。

只有在你手工编辑过 profile、或装的是一个不带 bundle 元数据的包装时才需要手动补:

# 编辑 ~/.dsh/profiles/desktop/package.json,
# 在 "dsh" → "profile" → "bundles" 数组末尾加上 "dsh-connect-trae-models",然后重启 DSH

Web / TUI profile 同样可用(--profile web / --profile dsh-tui)。

本地构建

npx pnpm@11 install --config.confirmModulesPurge=false --config.minimumReleaseAge=0
pnpm build        # tsdown:lib/index.js(宿主 ESM)+ lib/client.js(浏览器 CJS)
pnpm typecheck    # 宿主侧 + 客户端侧 tsc --noEmit
pnpm test         # vitest run,377 项
改了 src/ 记得重新 pnpm build——lib/ 是提交物,用户拿到的是构建产物,不是源码。

装完之后

  • 模型选择器里出现 Trae Connect Models(国内版) 与 Trae Connect Models(国际版) 两个分组。
  • 设置面板:从侧边栏的设置入口打开(宿主自有入口,位置随 DSH 版本而定),导航里选

Trae Models 那一栏(row.navLabel)。能看到池健康、每个账号的令牌/积分/签到/冷却状态,

还有「重新检测账号」「清除所有冷却」按钮。

  • 对话栏积分面板:显示当前账号可用积分,点开可钉号。

配置

配置走插件设置节(命名空间 connect-trae-models),在设置面板里改完立即生效、不用重启。

…(truncated)

Rendered from the README published on npm. Formatted only, not edited.

Versions

Published on npm::7,最后更新 2026-11-04

Links

GitHub · Homepage · npm

Same category