egoist/kero

A cross-platform native terminal app optimized for agents

解決する課題

Claude CodeやCodexのようなコーディングエージェントは通常ターミナルで実行されますが、ターミナルを閉じるとセッションが失われてしまいます。Keroはコーディングエージェントのために構築されたターミナルです。各エージェントを独自の永続的なセッションで実行し、プロジェクトごとにセッションをグループ化し、現在動作中か、待機中か、完了したかを可視化します。開発サーバーやテストウォッチャーもセッション内で実行できるため、すべてを1か所に集約できます。

仕組み

Keroは、kerodと呼ばれる小さなバックグラウンドデーモン内で各セッションを開始します。デーモンはアプリのウィンドウとは分離されているため、Keroを終了してもセッションは停止しません。Keroを再起動すると、すべてのペインとスクロールバックが復元されます。セッションはサイドバーでプロジェクトごとにグループ化され、各ペインには動作中、待機中、アイドル、エラー、終了のラベルが付けられます。キーボードショートカット (⌘J) で必要なペインにジャンプでき、エージェントが完了、失敗、またはブロックされたときに通知を受け取ります。コマンドラインインターフェースも用意されており、keroコマンドでセッションの開始、ペインの分割、入力、待機、画面の読み取りが可能なため、スクリプトからエージェントを操作できます。KeroはSSHやTailscale経由でリモートホスト(Linuxボックス、クラウドVM、Mac、Windows PC、WSL)に接続し、それらのセッションを同じサイドバーに表示できます。ノートPCがスリープ状態になってもセッションは実行され続けます。ターミナルのレンダリングにはlibghosttyを使用しているため、Ghosttyのテーマ、フォント、設定キーをそのまま使用できます。

対象ユーザー

複数のコーディングエージェントを同時に実行し、それらを維持し、プロジェクトごとに整理し、ローカルまたはリモートマシン上でどのエージェントが注意を必要としているかを簡単に確認できる専用ターミナルを求める開発者。

ハイライト

  • ウィンドウより長生きするセッション:kerodで実行されるため、アプリを終了してもセッションは終了しません。
  • 一目でわかるステータス:各ペインには動作中、待機中、アイドル、エラー、終了のラベルが付き、ショートカットで必要なペインにジャンプできます。
  • エージェントが操作可能なCLI:keroでセッションの開始、ペインの分割、入力、待機、画面の読み取りが可能です。
  • リモートホスト:Linux、Mac、Windows、クラウドVM、WSL上でエージェントを実行し、SSHやTailscale経由で同じサイドバーから確認できます。
  • Ghosttyベースのエンジン:テーマ、フォント、設定キーがそのまま機能します。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト