コンテンツにスキップ

閉じても消えない(tmux バックエンド)

tako を閉じても、PC を再起動しても、うっかり閉じてしまっても、作業は戻ってきます。AI に一晩かかる仕事を任せて寝る、が現実的にできます。設定は要りません(tmux が入っていれば最初から有効です)。

スクロールすると、画面がその手順の状態に変わります。

  1. いつもの作業の途中

    司令塔の AI(ペイン 1)が担当の AI(ペイン 2)に仕事を任せ、隣のペイン 3 では dev サーバーが動いています。

  2. 閉じても、裏で動き続ける

    ⌘+Q で tako を終了しても、AI も dev サーバーも止まりません。各ペインは tako 専用の tmux の上で動いているので、閉じるのは画面だけです。

    Windows では tmux の代わりに psmux が同じ役をします(終了は Ctrl+Shift+Q)。

  3. 開き直すと、同じタブ・同じ分割

    もう一度起動すると、タブも分割もペイン番号も閉じる前のまま、各ペインのプロセスにつなぎ直します。閉じている間に進んだ出力も、そのまま画面に出ています。

  4. AI も、同じペイン番号で続ける

    ペイン番号が変わらないので、AI が覚えていた番号での操作もそのまま通ります。司令塔の AI は、再起動をはさんでも担当の報告を読みに行けます。

PC を再起動しても、会話は戻る

Section titled “PC を再起動しても、会話は戻る”

再起動で消えるのはプロセスです。AI との会話は、tako が覚えておいて続きから再開します。

  1. AI と話している途中で

    ペイン 1 で司令塔の AI(claude)、ペイン 2 で codex と話しながら、ペイン 3 で dev サーバーを動かしています。

  2. PC を再起動すると、プロセスは消える

    PC を再起動すると、tmux ごと全部のプロセスが終わります。それでも tako は、各ペインでどの会話をしていたかを覚えています。

  3. tako が会話を打ち直して、続きから

    tako を起動すると、覚えていた会話を指定して claude --resume や codex resume を各ペインのシェルに打ち込みます(agy は agy --conversation)。司令塔は司令塔のまま、会話の続きから戻ります。

    dev サーバーのようなふつうのプロセスは戻らず、同じフォルダの新しいシェルになります。

    Windows で会話ごと戻るのは claude だけです。codex と agy のペインは、同じフォルダの新しいシェルで開き直します。

  4. 何をどう戻したかが、1 行で残る

    戻し方の内訳は persist.log に 1 行で残り、合計は必ずペインの数と一致します。戻らなかったペインがあっても、理由をあとから確かめられます(tako persist でも読めます)。

タブやペインを閉じすぎたときは、tako recover で直前の構成へ戻せます。

  1. いつもの構成

    AI と話すペインの右に、dev サーバーとテスト。別のタブにはドキュメントの作業があります。

  2. まとめて閉じてしまった

    うっかりタブやペインを閉じてしまっても、tako は閉じる前の構成を世代として残しています(最大 3 世代)。

  3. tako を終了して、世代の一覧を見る

    tako を終了してから、外のターミナルでこう打つと、今の構成と残っている世代が並びます。

    tako recover
  4. 世代を選んで書き戻す

    戻したい世代の番号を渡します。今の構成のファイルは別名で取っておくので、やり直しもできます。

    tako recover --apply 1
  5. 起動すると、元の構成

    tako を起動すると、戻した構成で開きます。閉じたときに終わったプロセスは、同じ作業フォルダの新しいシェルで開き直します。

claude が新しくなっても、会話を捨てて起動し直す必要はありません。

  1. 新しい版が出ると、ペインに知らせが出る

    動いている claude より新しい版が入ると、そのペインの上に黄色い帯が出ます。古い版のまま作業を続けることもできます。

  2. 「張り直す」で、プロセスだけ建て直す

    押すと tako が古い claude を終わらせ、同じ会話を指定して新しい版を起こします。ペインの右クリックの「会話を保って再起動(CLI 更新)」も同じ操作です。

  3. 会話はそのまま、新しい版で続きから

    担当の AI は役割も会話も保ったまま、続きから進めます。司令塔のペインでは代わりに「引き継ぐ」が出て、引き継ぎを書かせてから後任へ交代します。

    Windows では、会話を保ったままの張り直しはまだ使えません。引き継ぎを書かせて再起動する方は使えます。

tako(GUI)─── attach ──→ tmux session(バックエンド)─── PTY ──→ シェル

各ペインは tako 専用の tmux サーバーの上にセッションとして作られ、tako はそこへ attach して画面を描きます。tako を閉じると attach が外れるだけで、セッション(= シェルとプロセス)は生き続けます。次に起動したときは、保存しておいた構成(タブ・分割・ペイン番号・作業フォルダ)をもとに同じ形で attach し直します。

PC の再起動などでセッションが消えていたペインは、保存しておいた作業フォルダの新しいシェルで開き直し、AI の会話を覚えていれば再開コマンドを打ち込みます。戻し方の内訳は毎回 persist.log に 1 行で残ります。

tmux(Windows では psmux)が無い環境では、ペインを直接起動します。このとき tako を閉じるとプロセスも終わり、次の起動で戻るのはタブの構成と作業フォルダだけです。

tmux の導入は必須ではありませんが、リモートアクセスとオーケストレーターの worker 管理には tmux が必要です。これらは tako 本体とは別のプロセスからペインへ届く必要があるためです。

brew install tmux
winget install marlocarlo.psmux

既定で有効です。止めたいときだけ切り替えます。

Terminal window
tako persist # 今の状態と、直近の復元の内訳
tako persist off # 無効にする
tako persist on # 有効に戻す

MCP ツール tako_persist からも同じ操作ができます。

過去の会話とペインの出力をさかのぼる

Section titled “過去の会話とペインの出力をさかのぼる”

閉じてしまったペインの会話も、あとから呼び戻せます。tako sessions list で一覧を出し、ID(先頭だけでよい)を渡すと、記録された作業フォルダで新しいペインに開き直します(一覧に出るのは claude の会話です)。

Terminal window
tako sessions list
tako sessions resume 3f9c

ペインが消えたあとでも、そのペインの出力は平文のログに残っています。tako logs list で一覧、tako logs show 3 でペイン 3 の末尾を読めます。

自分で作った tmux セッションを取り込む

Section titled “自分で作った tmux セッションを取り込む”

tako の外で tmux new して作ったセッション(たとえば AI エージェントを動かしているもの)も、tako のペインとして開けます。

Terminal window
tako tmux list # 既定の tmux サーバーと tako のセッションの一覧
tako tmux open api # 「api」セッションを今のタブの右側のペインへ取り込む

tmux で AI エージェントを動かすときの基本(外から画面を読む・指示を送るときの注意)は tmux で AI エージェントを動かすにまとめています。

右パネルの fleet ビュー(tako panel --view fleet)では、tako が管理しているセッションと、その中のペインをまとめて確認できます。

  • タブ枠ごとにペインを入れ子表示
  • 前面表示中 / バックグラウンドの状態バッジ
  • バックグラウンドのペインをホバーでプレビュー
  • orphan セッション(tako から切り離されて残った tmux)の検出と一括の片付け
Terminal window
tako tmux cleanup # 取り残された tako のセッションを片付ける(使用中のものには触れない)

Windows では tmux の代わりに psmux が同じ役をします。psmux を入れておけば、tako を閉じて開き直してもプロセスと画面が戻り、PC を再起動したあとは claude の会話が続きから戻ります。過去の会話の呼び戻し(tako sessions)とペインのログ(tako logs)も使えます。

次のものは、まだ使えないか、一部が落ちます。最新の状況は Windows 対応状況 にあります。

  • 一部 CLI の更新のあとの張り直し 会話を保ったまま CLI を建て直す「張り直す」は使えません(プロセスを終わらせる仕組みがまだ Windows に無いため)。引き継ぎを書かせて再起動する方は使えます。
  • 一部 自分で終わったコマンドの最後の出力 psmux の中のコマンドが出力し続けている最中に自分で終わると、最後の最大 10 秒ぶんの行がペインのログに入りません。手で閉じたときと、出力が止まってから終わったときは最後まで入ります。
  • まだ 自分で作った tmux セッションの取り込み psmux では attach と寸法の指定を前提にする操作ができません。

PC を再起動したあとに会話ごと戻るのは claude だけです。codex と agy のペインは、同じ作業フォルダの新しいシェルで開き直します(Windows では会話の ID を取り出せないため)。