WorkBuddy 会话同步与跨设备续接
WorkBuddy 是项目维度最强的一个:它在 workbuddy.db 里维护一份项目清单(workspaces 表),所以同步不只带走会话,还会把项目一起并进共享项目池。
会话存在哪里
| 项 | 值 |
|---|---|
| 数据目录 | ~/.workbuddy-ai(旧版本为 ~/.workbuddy) |
| 会话 | projects/<项目 slug>/*.jsonl |
| 数据库 | workbuddy.db:sessions 表存会话,workspaces 表存项目清单(path + last_opened_at) |
接入同步
- 在接入帮助页选择 WorkBuddy → 下载客户端包(服务端地址已自动预填)。
- 解压后首次运行
install-deps.bat(Windows)或./install-deps.sh(macOS / Linux)。 - 用页面给出的注册命令接入(工作区 API Key 已自动填入),客户端以
HERMES_SYNC_AGENT=workbuddy启动。 - 重启 WorkBuddy。
首次启动增量拉取;远端为空时自动推送本地数据完成配对;之后每 5 分钟同步一次。
同步行为与注意点
- 只追加:会话以 JSONL 追加写入,同步不会重写你的历史条目。
- 会合并分散的副本:同一个会话如果因为项目目录移动被拆到多个项目目录下,读取时会合并处理,不会只看到一半。
- 运行中的会话会被跳过:被锁文件占住的会话本轮不同步,等它空闲后下一轮自动补上 —— 这避免了写冲突。
- 写下来的会话需要重启 WorkBuddy 才出现在它的列表里:这是 WorkBuddy 自身的加载时机,不是同步没成功。想立刻确认,看 Web 控制台的会话列表即可。
- 时间戳单位已处理:毫秒与秒的差异在适配器里转换,不会因为单位不同把会话排到 1970 年。
项目池
WorkBuddy 的 workspaces 表会作为项目进共享池(并带一份身份 sidecar 用于跨设备对齐),所以项目卡片在多台机器之间也是同一套。注意:盘符根目录或用户主目录不会进池 —— 那种路径会把下面所有会话都吞进一张卡片,且在每台机器上指向不同目录。
跨设备与跨 Agent
一台公司的机器、一台家里的机器,各自接入同一工作区,项目与会话都在池子里;换成 Hermes、OpenCode 继续同一个项目也可以。
相关
- 支持的 Agent
- 接入帮助(登录后可用)
- 技术细节:SUPPORTED_AGENTS.md