Featured image of post 三重仮想化の極致

三重仮想化の極致

目次

背景

  • 10年以上、tmux on screen(GNU Screen)を使い続けてきた
  • しかし、ここに来て、zellijも使い始めた
  • その結果、zellij on tmux on screenという三重仮想化の極致に達した
  • 二重仮想化をしている人も全く見ないが、三重の人はさらに稀有だろう
  • AIコーディングをスマホでもrcなしでやるために、zellijも使った3重仮想化に至った

2重仮想化

  • もともとは2重仮想化までだった
  • ボトムバーにscreenのタブ、ヘッドバーにtmuxのタブを表示していた
  • これで10年以上、全く問題なく運用していた

2重仮想化のスクリーンショット

3重仮想化に至った背景

  • 問題はAIだった
  • AIコーディングをrcなしで一元的に管理したくなり、そのためにはttydなどでterminalの仮想化が必要になった
  • それに伴いどこからでもatttachできるterminalが必要になった
  • しかし、現状screenとtmuxを使っているので、その中にtmux in tmuxみたいなことは困難だった
  • そこで、別のterminal multiplexerを使う必要が生まれ、zellijを使うに至った
  • これを使うことにより、スマホからでもブラウザ経由で自由にclaude codeなどをrc抜きで操作ができるようになった

3重仮想化

以下のように更に、zellijが生まれて三重のターミナルとなった。

3重仮想化のスクリーンショット

Terminal Multiplexerのショートカットは以下にしている:

  • Screen: ctrl-z
  • Tmux: ctrl-q
  • Zellij: 無効化

3重仮想化とスマホ

スマホでの操作

  • また、ttydによって、スマホからもアクセスして、rcなしで以下のように簡便に操作が可能になった
  • これによって、複数PCのAgentを束ねて、10個以上のAgentをスマホで簡単に管理できるようになった

神キーの配置

  • PCには、左Ctrlキーに近いところに3つの神キーがある
  • 言わずもしれた、QAZの3つのキーである
  • このキーはCtrlと相性が良いので個人的に神キーと読んでいる
  • その上で、Ctrl-aはあえてTeminal Multiplexerのprefixキーとしては使わない設計としている
  • 理由は、Ctrl-aはEmacsやVimで使うため、そっちを優先して開けているからだ

HHKB

まとめ

  • もともとはnohupコマンドを打たずにずっとプロセスをbackgroundで実行するために、screenを使っていた
  • そのうち、便利さのために、その中でtmuxも使い2重化し完全にPCを支配下に置いていた
  • さらに最近、AIのために、zellijとttydも使い3重化している
  • その結果、スマホからでもPCの作業を簡便にすることができるようになった
  • ちにみに、今は更に一歩進んで統括Agentと仕事をするようにもなっている
Built with Hugo
テーマ StackJimmy によって設計されています。