导出与回收站
导出

⌘E 导出当前打开的会话。三种格式对应三种不同的用途:
| 格式 | 用来做什么 |
|---|---|
| Markdown | 粘进 issue、PR 或文档 |
| HTML | 发给别人。完全离线,任何浏览器都能开,不用附带任何资源文件 |
| JSON | 留数据。无损,仍然可被程序读取 |
HTML 导出是自包含的:图片内嵌、样式内联,可以选浅色或深色主题渲染。没有东西要起服务,也没有会过期的链接。
批量导出对选中的会话做同样的事,之前导出过的记录留在一份历史列表里,方便找上周生成的那个文件。
回收站

删除会话是把它移进一个回收站目录,不会调 rm。
⌘⇧T 打开回收站。里面每一项都标着来自哪个 agent、哪个项目、什么时候删的,还原会把它放回原位。如果目标位置已经存在同一个会话,还原会拒绝覆盖。
七种 agent 共用一个回收站
七种 agent 的会话形态各不相同:有的是单个文件,有的是整个目录,opencode 是 SQLite 库里的一行。回收站用同一份列表处理所有这些,为每一项记下原路径、agent、项目和存储种类,才能正确还原。
这一点对目录型的 agent 最要紧。删一个 Grok Build 会话意味着移动整个文件夹,updates.jsonl、summary.json、锁文件一个不落,还原时也要把那个文件夹原样重建出来。
只读保证
应用永远不修改原始记录的内容。阅读、搜索、导出、分析全都是只读操作。
会写到 agent 数据的只有三件事,而且三件都是你主动发起的:
- 重命名会话,会同步回去,让 CLI 自己的会话列表也认这个名字
- 删除,移进回收站,可逆
- 在对话里继续会话,新的轮次由 agent 的 CLI 自己追加,和你在终端里敲出来的完全一样
所有东西都留在你自己的机器上,不往任何地方上传。
