平时挂着多个 WorkBuddy(腾讯 AI 编程助手)账号轮着用,切账号、盯积分、补签到这些重复劳动非常磨人,于是做了这款工具。

仓库地址:https://github.com/heylumen/workbuddy-switch-tidy

WorkBuddy Switch Tidy 账号管理界面

项目来源

本项目 fork 自 changexbc/workbuddy-switch,在保留上游全部功能的基础上,修复了多账号使用场景中的若干实际问题。

技术栈:Rust / Tauri(桌面 App)+ Node.js(npm webui,跨平台)。
下载:Releases 提供 Windows x64 单 EXE,双击即用,无需安装。

macOS / Linux 暂无预编译版本,可通过 npm 使用 webui(界面与桌面 App 一致):

1
2
3
npm i -g workbuddy-switch
workbuddy-switch # 启动本地服务 + 自动打开浏览器
workbuddy-switch status # 终端查看当前账号

核心功能

模块说明
账号管理OAuth 扫码登录、从本机导入、手动添加 token、删除账号
账号切换备份认证文件 → 关闭 WorkBuddy → 写入目标账号 → 重启,切换过程实时进度反馈
会话复制将勾选会话复制给目标账号;复制前自动去重,目标已存在等价会话则跳过
清理重复会话按「工作目录 + jsonl 正文逐字一致」合并副本,每组保留最近更新的一条
折叠同名会话按「工作区 + 标题」收起视图冗余,专治切换账号反复复制导致的同名重复
自动签到默认开启;启动时立即检查,运行期间每 30 分钟自动补签;30 天签到日志
Token 保活惰性刷新 + 每日保活,避免 refresh token 过期
积分到期查询查询各账号积分资源、剩余量与到期时间;7 天内到期高亮并按到期优先排序
积分统计汇总官方请求用量,展示每日趋势、模型分布、账号消耗与请求明细
CodeBuddy CLI与 WorkBuddy 复用账号库,默认账号独立
自动轮换后台定时把 CLI 后续启动账号设为积分最紧迫的账号

两个整理功能的区别

这是最容易混淆的两个功能,设计取舍如下:

清理重复会话折叠同名会话
判定依据工作目录相同 且 正文逐字一致工作区 + 标题(同标题不同内容也会折叠)
处理对象切换复制产生的完全相同的副本同一对话被反复复制产生的同名冗余
数据风险较高:会删除 jsonl 正文,不可恢复低:仅软隐藏,正文留盘可找回
数据处理软删除(标记 deleted_at)+ 删除正文软隐藏(标记 deleted_at),jsonl 正文原样留盘

折叠之所以敢按「同标题」放宽,是因为它不删正文、随时可恢复;清理会真删文件,因此必须要求正文逐字一致才动手。
两者都只作用于所选账号,都需先关闭 WorkBuddy 再执行。

日常使用流程

  1. 添加账号:账号页 →「扫码登录」或「从本机导入」「手动添加」
  2. 切换账号:账号卡片 →「切换」,可勾选复制当前会话
  3. 查看积分:账号页自动查询;点「刷新积分」手动更新,临期账号排最前并标记「建议优先」
  4. 整理重复会话:点账号卡片右上角的 ⋮ 菜单,选择「清理重复会话」或「折叠同名会话」
  5. CodeBuddy CLI:账号页一键接入;切换只影响后续会话,当前会话需重新加载或重启 CLI

下载

  • 桌面 App:Releases 下载 workbuddy-switch-tidy_<版本>.exe,双击运行
  • 首次运行如遇 SmartScreen 提示,点「更多信息」→「仍要运行」即可
  • 本项目不做应用内自动更新,请到 Releases 手动下载新版本替换

欢迎提 Issue 反馈问题:https://github.com/heylumen/workbuddy-switch-tidy/issues