它查看什么
每个文件夹都有自己的规则。
Devbroom 按照 OpenCode 自身的行为方式处理每个位置。智能体会自己清理的交给智能体;有专用命令的交给那个命令。
逐项评估每一项都单独检查;结果为可清理即可清理。
通过 OpenCode 自身只能通过 OpenCode 自己的命令。Devbroom 把这些显示为已锁定,并告诉你该怎么做。
OpenCode 会删除旧的由智能体自己清理;Devbroom 只显示。
撤销快照
影子 git 仓库;项目或 worktree 被删除后就成了孤立的仓库。
~/.local/share/opencode/snapshot1.2 之前的会话文件
迁移时已复制到 SQLite 中,但从未删除。
~/.local/share/opencode/storage日志和缓存
一个从不轮转的日志文件,以及一个文档注明可以安全删除的缓存。
~/.local/share/opencode/log~/.cache/opencode会话数据库
只读。这个文件不会自己变小;请用 opencode session delete <id> 清理。
~/.local/share/opencode/opencode.dbOpenCode worktree
应在 OpenCode 应用中删除;它们不会自行过期。
~/.local/share/opencode/worktree工具输出
OpenCode 运行时会自己删除超过 7 天的输出。
~/.local/share/opencode/tool-output
受保护
你的账户和设置原封不动。
这些文件和文件夹受保护。任何判定都不会让它们进入清理范围;无论多大,它们都留在原处。
会话数据库及其日志文件
opencode.db · -wal · -shm凭据
auth.jsonMCP 凭据
mcp-auth.json
Worktree
通过痕迹识别 OpenCode 的 worktree。
它根据这些痕迹判断 worktree 是否属于 OpenCode;痕迹越强,显示的归属就越确定。
- 很可能位于 OpenCode 的 worktree 文件夹中
- 可能以
opencode/开头的分支名
- 含有未保存的工作时为已锁定。 没有
--force,git 不会删除这样的 worktree;Devbroom 从不使用--force。 - 其中或其上级文件夹中有会话运行时为已锁定。
- 含有被忽略的文件时为需查看:
git worktree remove会不加询问地删除它们。
运行中的会话
看得见它们,运行时不打扰。
Devbroom 从数据库中读取哪些 OpenCode 会话位于哪个文件夹。它从不触碰运行中会话的进程;会话持续期间,其文件夹保持已锁定。
兼容性
先检查 OpenCode 的文件。
在信任某个智能体的数据之前,Devbroom 会检查其文件是否符合预期格式。如果不符合,这些数据只读取;其中任何内容都不算可清理。
已测试的版本暂无
超出此范围的版本只要格式不变仍可正常使用,并显示为“尚未测试”。
格式检查id 和 directory
opencode.db 必须能以只读方式打开,且其 session 表必须有这两列。
你的版本devbroom compat
如果它的文件夹在别处,会按照 XDG_DATA_HOME, XDG_CACHE_HOME, OPENCODE_DB 查找。