フォルダごとに、それぞれのルール。
Devbroom はどの場所も、OpenCode 自身の振る舞いに合わせて扱います。エージェント自身が片付けるものはエージェントに任せ、専用のコマンドがあるものはそのコマンドに任せます。
元に戻すためのスナップショット
シャドウ git リポジトリ。プロジェクトやワークツリーが削除されると孤立します。
~/.local/share/opencode/snapshot1.2 より前のセッションファイル
移行時に SQLite にコピーされ、その後も削除されません。
~/.local/share/opencode/storageログとキャッシュ
ローテーションされないログファイルが 1 つと、削除しても安全だと文書化されているキャッシュ。
~/.local/share/opencode/log~/.cache/opencodeセッションデータベース
読み取りのみ。ファイルが自然に小さくなることはありません。opencode session delete <id> でクリーンアップしてください。
~/.local/share/opencode/opencode.dbOpenCode のワークツリー
OpenCode アプリから削除すべきものです。自然に期限切れになることはありません。
~/.local/share/opencode/worktreeツールの出力
実行中、7 日より古いものは OpenCode 自身が削除します。
~/.local/share/opencode/tool-outputアカウントと設定には触れません。
これらのファイルとフォルダは保護されています。どの判定もこれらをクリーンアップの対象にすることはなく、サイズにかかわらずその場に残ります。
opencode.db · -wal · -shmauth.jsonmcp-auth.jsonOpenCode のワークツリーを、その痕跡で見分けます。
次の痕跡から、ワークツリーが OpenCode のものだと見分けます。痕跡が強いほど、所有者をより確かに示します。
- 高いOpenCode のワークツリーフォルダの中にある
- 可能性あり
opencode/で始まるブランチ名
- 保存されていない作業を含むならブロック。 git は
--forceなしではそのようなワークツリーを削除せず、Devbroom は--forceを決して使いません。 - その中か親フォルダでセッションが実行中ならブロック。
- 無視されたファイルがあるなら要確認:
git worktree removeは確認なしにそれらを削除します。
見えていますが、実行中は触れません。
Devbroom は、どの OpenCode セッションがどのフォルダにあるかをデータベースから読み取ります。実行中のセッションのプロセスには決して触れず、セッションが続くあいだ、そのフォルダはブロックのままです。
まず OpenCode のファイルを確認します。
エージェントのデータを信頼する前に、Devbroom はファイルが想定どおりの形式かどうかを確認します。そうでなければ、そのデータは読み取るだけで、クリーンアップ可能とは見なしません。
この範囲外のバージョンでも、形式が合っていれば動作し、「未テスト」と表示されます。
opencode.db が読み取り専用で開けて、その session テーブルにこの 2 つの列がある必要があります。
フォルダが別の場所にある場合は XDG_DATA_HOME, XDG_CACHE_HOME, OPENCODE_DB に従います。