Acode向けのターミナルプラグイン。アプリ内でTermuxのシェルセッションを実行でき、AIによるコマンド補助も利用できます。
butlerx/wetty
HTTP/HTTPS経由で提供され、xterm.jsとWebSocketsを基盤とするブラウザー上のターミナルエミュレーター。
- スター
- 5,479
- フォーク
- 771
- 未解決の Issue
- 15
- 最終コミット
- 一昨日
これは何?
WeTTYを使うと、ブラウザー上でシェルを利用できます。xterm.jsのターミナルページを配信するNode.jsサーバーを実行し、WebSockets経由でローカルシェルまたはSSHサーバーに入出力を中継します。AjaxtermやAnytermなど従来のブラウザーターミナルと比べ、AjaxポーリングではなくWebSocketsを使うため、キー入力への応答が速く保たれます。
rootで実行すると、WeTTYはユーザーがユーザー名を入力できるように /bin/login を起動します。それ以外の場合はsshを起動し、デフォルトでlocalhostに接続します。SSHのホスト、ポート、ユーザーのオプションを指定すれば、リモートホストにも接続できます。認証方式はパスワードまたは公開鍵に対応しており、サーバーには許可するブラウザーオリジンのリストを明示する必要があります。npmやDockerイメージから実行できるほか、HTTPSを利用する場合はnginxやtraefikなどのリバースプロキシの背後に配置できます。
主な機能
- 01xterm.jsを使い、ブラウザー上で本格的なターミナルエミュレーターを実行します。
- 02WebSockets(Socket.IO)を使い、低遅延で入出力を処理します。
- 03ローカルのログインシェルまたはリモートのSSHサーバーに接続します。
- 04SSHのパスワード認証と公開鍵認証に対応しています。
- 05許可するオリジンのリストが必須で、ベースパスも設定できます。
- 06npmパッケージとDockerイメージを提供しています。
ユースケース
- ネイティブのSSHクライアントを使わずに、チームメンバーへブラウザー経由でサーバーのシェルアクセスを提供する。
- リバースプロキシの背後にある社内マシンで、Webターミナルを提供する。
- ターミナルアプリのないデバイスから、自宅のサーバーやラボのマシンにアクセスする。
クイックスタート
- 1
npmでWeTTYをグローバルインストールする
npm -g i wetty - 2
許可するブラウザーのオリジンを指定してWeTTYを起動する
wetty --allowed-origin http://yourserver:3000 - 3
ブラウザーでサーバーのアドレスを開き、ログインする
使う前に知っておきたいこと
- node 20以降と、make、python、build-essentialなどのビルドツールが必要です。
- 接続を受け付けるには、--allowed-originを明示的に設定する必要があります。
- 端末への完全なアクセスを許可するため、HTTPSとリバースプロキシで保護する必要があります。
収録されている特集
トピック
よくある質問
- wetty とは?
- HTTP/HTTPS経由で提供され、xterm.jsとWebSocketsを基盤とするブラウザー上のターミナルエミュレーター。 WeTTYを使うと、ブラウザー上でシェルを利用できます。xterm.jsのターミナルページを配信するNode.jsサーバーを実行し、WebSockets経由でローカルシェルまたはSSHサーバーに入出力を中継します。AjaxtermやAnytermなど従来のブラウザーターミナルと比べ、AjaxポーリングではなくWebSocketsを使うため、キー入力への応答が速く保たれます。
- wetty は無料で使えますか?ライセンスは?
- wetty は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- wetty は今もメンテナンスされていますか?
- 活発にメンテナンス中。wetty の最終コミットは 2026年11月6日 です。
- wetty は何に使えますか?
- ネイティブのSSHクライアントを使わずに、チームメンバーへブラウザー経由でサーバーのシェルアクセスを提供する。 リバースプロキシの背後にある社内マシンで、Webターミナルを提供する。 ターミナルアプリのないデバイスから、自宅のサーバーやラボのマシンにアクセスする。
- wetty のインストール方法は?
- npmでWeTTYをグローバルインストールする: npm -g i wetty 許可するブラウザーのオリジンを指定してWeTTYを起動する: wetty --allowed-origin http://yourserver:3000 ブラウザーでサーバーのアドレスを開き、ログインする
- wetty はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/butlerx/wetty
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
ブラウザ上のxterm.jsターミナルを通じて、任意のターミナルプログラムをWeb上で共有できるコマンドラインツールです。
piのターミナルコーディングエージェントを遠隔操作。セルフホストのリレー経由でライブセッションをブラウザーやスマートフォンに表示し、メッセージやコマンドを送信できます。
どのデバイスからでもシェルやAIコーディングエージェントのセッションを実行・監視・操作できる、ブラウザベースのターミナルアクセスツール。
永続セッション、ファイル編集、複数ホスト対応を備え、PC・タブレット・スマートフォンから使えるクラウドネイティブなWebターミナル兼ACPエージェント環境。
SSHターミナルとSFTPファイル転送に対応したセルフホスト型ブラウザワークスペース。複数ユーザーアカウント、パスキー、OIDC、暗号化キー保存を備えます。