Repolode
onesuper

onesuper/tui-use

PTY経由でREPL、デバッガー、TUIアプリなどの対話型ターミナルプログラムをAIエージェントから操作できるCLI。

スター
270
フォーク
25
未解決の Issue
2
最終コミット
6 か月前

これは何?

tui-useは、キーボード操作を前提とするプログラムをAIエージェントが扱えるようにするコマンドラインツールです。プログラムを擬似端末内で起動し、ヘッドレスのxtermエミュレーターで出力を描画して、現在の画面を整形されたプレーンテキストとして提供します。エージェントはキー入力を送り、結果を読み取り、次の操作を判断できます。

通常のシェルコマンドでは対応しにくい用途を想定しています。たとえば、大量のインメモリ状態を保持するPythonやpdbのセッション、GDBのデバッグセッション、Node REPL、vim、lazygit、htop、fzfなどの全画面アプリです。デーモンがCLIの呼び出しをまたいでPTYセッションを維持するため、手順ごとにプロセスを再起動する必要はありません。

待機とポーリングを繰り返す代わりに、`wait`コマンドを使うと、画面が設定可能なアイドル時間にわたって変化しなくなったとき、または指定したテキストパターンが現れたときに処理が完了します。各スナップショットには、現在選択中のメニュー項目やタブを示す、反転表示された領域も含まれます。インストールにはnpmを使い、Claude CodeおよびOpenAI Codex向けのプラグインバンドルも提供しています。

主な機能

  • 01任意のプログラムをPTY内で実行し、ヘッドレスのxtermエミュレーターで出力を描画します。
  • 02画面のスナップショットをプレーンテキストで取得でき、JSON形式も選べます。
  • 03画面が安定するまで、または特定のテキストパターンが現れるまで待機します。
  • 04反転表示された範囲を報告し、エージェントが現在の選択項目を把握できるようにします。
  • 05バックグラウンドデーモンを通じて、CLIの呼び出しをまたいでセッションを維持します。
  • 06文字入力、貼り付け、特殊キーの押下、スクロール、画面上の正規表現検索に対応します。

ユースケース

  • 長時間実行するPythonセッションのインメモリ状態を失わずにデバッグする。
  • エージェントからGDBやpdbのブレークポイント操作や変数の確認を行う。
  • AIコーディングエージェントにvimやlazygitなどの全画面ツールを操作させる。
  • 各ステップが前の出力に依存する対話型REPLセッションを実行する。

クイックスタート

  1. 1

    CLI を npm からインストールする

    npm install -g tui-use
  2. 2

    PTY セッションでプログラムを起動する

    tui-use start python3 examples/ask.py
  3. 3

    画面が安定するまで待ってから、応答を入力して Enter キーを押す

    tui-use wait
  4. 4

    現在の画面のスナップショットを撮る

    tui-use snapshot

使う前に知っておきたいこと

  • 画面出力から色とほとんどのテキスト書式が除去されます。ハイライト、タイトル、全画面表示の状態のみ保持されます。
  • Claude Code または Codex のプラグインを使用する前に、別途 CLI をインストールする必要があります。

トピック

よくある質問

tui-use とは?
PTY経由でREPL、デバッガー、TUIアプリなどの対話型ターミナルプログラムをAIエージェントから操作できるCLI。 tui-useは、キーボード操作を前提とするプログラムをAIエージェントが扱えるようにするコマンドラインツールです。プログラムを擬似端末内で起動し、ヘッドレスのxtermエミュレーターで出力を描画して、現在の画面を整形されたプレーンテキストとして提供します。エージェントはキー入力を送り、結果を読み取り、次の操作を判断できます。
tui-use は無料で使えますか?ライセンスは?
tui-use は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
tui-use は今もメンテナンスされていますか?
半年以上コミットなし。tui-use の最終コミットは 2026年4月11日 です。
tui-use は何に使えますか?
長時間実行するPythonセッションのインメモリ状態を失わずにデバッグする。 エージェントからGDBやpdbのブレークポイント操作や変数の確認を行う。 AIコーディングエージェントにvimやlazygitなどの全画面ツールを操作させる。 各ステップが前の出力に依存する対話型REPLセッションを実行する。
tui-use のインストール方法は?
CLI を npm からインストールする: npm install -g tui-use PTY セッションでプログラムを起動する: tui-use start python3 examples/ask.py 画面が安定するまで待ってから、応答を入力して Enter キーを押す: tui-use wait 現在の画面のスナップショットを撮る: tui-use snapshot
tui-use はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/onesuper/tui-use

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト