AI News HubLIVE
站内改写2 分で読了

Show HN:WinkTerm – ターミナルであなたと同じPTYを共有するAI

WinkTermは、AIがユーザーと同じ擬似端末(PTY)セッションを共有するオープンソースのターミナルツールです。AIはコマンドを提案するだけでなく、直接ターミナルの入力行にタイプし、ユーザーが確認・編集・実行できます。マルチモデル対応、SSH接続、ファイル転送、永続的なチャット履歴、外部エージェントAPIなどをサポート。

ソースHacker News AI著者: Cznorth

WinkTerm は、AIが単なるアドバイスを提供するだけでなく、ユーザーと同じ擬似端末(PTY)セッション内で直接協働できるようにする、革新的なターミナルツールです。従来のAIチャットインターフェースとは異なり、WinkTermのAIエージェントはユーザーのターミナル入力行に直接コマンドを入力し、ユーザーはEnterキーで実行、編集、またはCtrl+Cでキャンセルすることができます。これにより、制御を維持しながら効率的なコラボレーションが可能になります。

主な機能として、共有PTYセッションによりAIとユーザーが同じ端末プロセスで操作できるため、コピー&ペーストが不要です。インターミナルチャット機能では、シェルプロンプトで「#」に続けて質問を入力するだけで、タブを切り替えることなく質問できます。サイドバーAIパネルは、マルチ会話タブ、AI生成タイトル、チャット/クラフトモード切り替えを提供します。チャット履歴は ~/.winkterm/chat_history.json に保存され、ページ読み込み時に復元され、WebSocketの再接続やバックエンド再起動後も保持されます。ストリーミング再開機能により、途中で更新や再接続を行っても処理中のトークンを失うことなく、アクティブなストリームはサーバー側で追跡され、新しいWebSocketクライアントに再生されます。ストリーミングキューとサジェスト機能では、AI応答中にフォローアップメッセージをキューに入れたり(いつでも中断・削除可能)、回答後にワンクリックでフォローアップ候補を表示します。

WinkTerm の特筆すべき点は外部エージェントAPIです。これは認証済みHTTPインターフェースであり、Claude CodeやCursorなどの外部AIエージェントがリモートから端末、SSH、ファイル転送を操作できるようにします。APIは、アトミック実行、ワンショットSSH実行、SSH接続管理、名前付きコントロールキー、サーバーサイドgrep、SSEリアルタイム出力、操作イベントストリームなどを提供します。終了コードはファーストクラスで扱われ、出力から障害を検出するためにgrepする必要はありません。プリインストールされたClaude Codeプラグイン、またはスキルファイルを直接ダウンロードすることで、任意のAIエージェントが迅速に統合できます。また、内部クラフトエージェントと外部HTTP APIは同じ端末セッションプールとツールサーフェスを共有し、エージェントが作成した端末はWeb UIで通常のタブとして表示されます。

WinkTerm は複数のLLMバックエンド(OpenAI、Anthropic、Ollama、およびOpenAI互換エンドポイント)をサポートします。Docker(docker runまたはdocker-compose up)で迅速にデプロイできるほか、デスクトップアプリ(Windows/macOS)も利用可能です。設定は簡単で、APIキーとモデル名を設定するだけです。このツールは「コラボレーティブオペレーションズ」の哲学を掲げており、AIがコマンドを書き、ユーザーがレビューして実行することで、盲目的な信頼ではなく理解と選択を促します。

オープンソースプロジェクトとして、WinkTerm はPython + FastAPI + LangGraph + LangChainバックエンド、Next.js + xterm.jsフロントエンドを採用し、データベースなしで構成とチャット履歴をディスクに保存します。GitHubで活発に開発されており、詳細なドキュメント、デモ動画、事例研究(AIエージェントが30分でXMRマイニングマルウェアを除去)が提供されています。WinkTerm は、共有PTY、オープンソース、セルフホスト、Web UI、SSH+ファイル転送、デスクトップアプリの各機能において、Warp、Tabby、Claude Codeなどのツールと比較して明確な優位性を持っています。