【产品建议】同一项目WIN/MAC”微信级“无缝切换(本地任务)

【当前痛点】

我是一名在 WIN 和 MAC 双平台交替开发同一项目的用户。当前遇到的核心问题是:TRAE IDE 的项目对话记录与本地工作区路径绑定,无法跨设备同步。

具体表现为:

  1. 对话记录不跨设备:在 WIN 端的 TRAE IDE 中就同一项目进行了数十轮对话、代码改造、策略调试后,切换到 MAC 端打开同一项目(git pull 后代码是最新的),但对话历史完全空白——之前的上下文、决策、待办全部丢失,相当于从零开始。

  2. 移动端授权同步的范围不覆盖 IDE 项目对话:我已开启「设置 > TRAE 移动端 > 允许 TRAE 移动端控制当前设备」,TraeWork 的任务确实能在三端同步。但 TRAE IDE 的项目级对话记录(存储在本地 ModularData/ai-agent/database.* 中的加密数据库)不走云端同步,换设备后不可见。

  3. .code-workspace 绑定也不跨设备:即使用「Save Workspace As」生成 .code-workspace 文件并提交到 Git,对话记录绑定的仍是本地加密数据库,MAC 端打开同一个 .code-workspace 也无法恢复对话历史。

  4. 被迫自建 workaround:我目前不得不手动维护一套"记忆机制"——每次结束工作时把当日对话摘要 + 最后 3 轮原文写入 Markdown 文件存进 Git 仓库,切换设备后先 pull 再读取这些文件恢复上下文。虽然能用,但每次切换要手动操作 3-5 分钟,且信息压缩导致部分上下文丢失,远不如原生同步体验。

总结一句话:TRAE 的代码可以靠 Git 跨设备同步,但 TRAE 的"对话记忆"不行——而这恰恰是 AI 编程最核心的上下文资产。

建议方案详述】

方案一(推荐):IDE 项目对话记录云端同步

核心思路:参考 TraeWork 已有的三端同步机制,将 TRAE IDE 的项目对话记录也纳入同账号的云端同步范围。

具体设计

  1. 同步触发时机:每轮对话结束后,自动将对话内容增量上传到云端(与 TraeWork 任务同步同一套基础设施)。
  2. 同步范围:同一账号下,以「项目标识」为维度同步对话记录。项目标识可基于以下方式确定(优先级从高到低):
    • 若项目有 .code-workspace 文件,以该文件的唯一 ID 为锚点;
    • 若项目有 Git 仓库,以 remote origin URL + 分支 为锚点;
    • 若以上都没有,以项目文件夹名 + 本地路径哈希为锚点(仅本地,不跨设备)。
  3. 新设备恢复:在 MAC 端打开同一项目(git clone 或 git pull 后),TRAE IDE 检测到同账号下该项目标识有云端对话记录,自动提示「检测到你在其他设备上有 N 轮对话记录,是否恢复?」,用户确认后加载到本地。
  4. 冲突处理:若两端各自有新对话(离线场景),合并时按时间线串联展示,不互相覆盖,用户可自行跳转浏览。

隐私与安全

  • 同步前对对话内容中可能包含的 .env / API Key 等敏感字段做自动检测和脱敏(或至少给用户一个「敏感内容扫描」开关)。
  • 用户可在设置中关闭对话同步,或对特定项目排除同步。
  • 同步的对话内容加密存储,与 TraeWork 任务数据同等安全级别。

方案二(备选):对话记录导出/导入功能

若方案一的工程量过大,退一步提供手动迁移能力:

  1. 导出:在项目对话面板提供「导出对话记录」按钮,导出为 .trae-chat.json(结构化 JSON,含角色、内容、时间戳、关联文件引用等),可提交到 Git 仓库。
  2. 导入:在新设备打开同一项目后,TRAE IDE 检测到 .trae-chat.json 文件,提示「检测到对话记录备份,是否导入恢复?」。
  3. 局限:这是半自动方案,需要用户手动操作,且导入的对话是只读的(不能继续从那一轮"接话"),但至少能恢复上下文参考。

预期效果

  1. 核心体验:在 WIN 端就同一项目聊了 50 轮、改了 20 个文件后,切换到 MAC 端打开同一项目,对话历史自动恢复,可直接接续上一轮对话继续提问,无需任何手动操作。

  2. 效率提升:跨设备切换的上下文恢复时间从当前 workaround 的 3-5 分钟 → 0 秒(自动同步),且信息保真度从"压缩摘要"→“完整原始记录”。

  3. 用户粘性:解决了多设备开发者的最大痛点,降低切换成本,让 TRAE 成为多设备用户的唯一选择而非"每台设备各自独立"。

  4. 与 TraeWork 一致性:TraeWork 已经实现了三端任务同步,TRAE IDE 的项目对话同步是同一套能力的自然延伸,用户预期一致,不会感到割裂。

  5. 社区已有需求验证:论坛「产品建议」板块已有"账号同步配置功能"(3 票)等类似需求,说明多设备同步是多用户共同痛点。


补充说明:如果短期内无法实现方案一的完整云端同步,至少希望提供方案二的导出/导入能力作为过渡。当前我自建的 Markdown 摘要 + Git 仓库的 workaround 虽然能用,但每轮切换都要手动操作,且压缩后的摘要无法 100% 还原上下文,远不如原生同步理想。

补充场景】:从 Git 远程仓库拉取后的一键环境适配

我还有一个高频场景希望官方考虑:我每次跨设备切换的工作流是「上传代码 → push 到 Git 远程仓库 → 换设备 → pull 代码」。代码能同步,但环境适配工作完全靠手动——pull 下来之后还要自己走一遍:复制 .env.example → 按本机路径填 .env → 跑 check_envpip install → 逐项确认通过。

这个流程每次切换设备都要重复一遍,且容易遗漏某一步导致后续脚本报错。

希望官方能提供「从远程仓库一键拉取 + 环境适配」能力,具体设想:

  1. 一键 clone/pull + 自动向导:在 TRAE 中打开一个 Git 远程仓库(或 pull 最新代码)时,TRAE 检测到项目含有 .env.example / requirements.txt / check_env.py 等环境配置文件,且当前设备尚未完成环境配置(本地无 .envcheck_env 未通过),自动弹出「环境适配向导」。

  2. 向导自动化流程:向导自动执行 4 步——① 复制 .env.example.env → ② 逐项提示用户填写本机路径(对 Windows 端已有的路径配置自动提示转换为当前平台等价路径,如 C:\Users\.../Users/...)→ ③ 自动运行环境检查脚本(如 check_env.py)→ ④ 检测缺失依赖并提示一键 pip install -r requirements.txt

  3. 配置状态持久化:适配完成后,TRAE 在项目元数据中标记「本设备环境已就绪」,下次打开不再重复向导;若 .env.example 有更新(git pull 后检测到 diff),则提示「环境配置模板已更新,是否重新适配新增项?」

这样从 Git 远程仓库 pull 代码后,点一下「适配」,2 分钟内环境就绪,不用再手动一步步走。

1 个赞