オープンソース · スマホから CLI AI エージェントを操作

AI エージェント
どこへでも持ち歩こう

tunnelbox は opencode、Claude Code、Codex、DeepSeek Harness、OpenClaw、Hermes、Cursor、CodeBuddy、Kimi Code、TraeCode、Qoder をあなたのポケットに——ストリーミング出力の閲覧、タスクの投入、危険な操作の承認ができます。パブリック IP もポート転送も不要。

macOS · Windows · Linux · アカウントでログインするだけ
opencode serve

$ opencode serve --print-logs

[tunnelbox] リレー wss://relay.tunnelbox.top に接続中 …

[tunnelbox] ペアリングコード:8F3K-9Q2Z (10 分間有効)

[tunnelbox] スマホで QR をスキャンして開始:

└ またはスマホで tunnelbox アプリを開き、コードを手入力

[tunnelbox] ✓ エージェントを登録しました agentID: opencode-main

[tunnelbox] ✓ スマホの接続を待機中 …

ファイアウォールや社内ネットワークを貫通 1 台で複数エージェントを併用 危険な操作はスマホで承認 スキャンで数秒ペアリング リレーに内容を保存しない · プライバシー優先

主な機能

1 つのリモコンで、すべてのエージェントを

CLI / ヘッドレスエージェントのエコシステムに、統一されたリモートゲートウェイを——セッション、ストリーミング、権限、コマンドを 1 つのプロトコルに正規化。

svg-connect

リバース接続でパブリック IP 不要

PC 上のアダプターは外向き接続のみ——パブリック IP もポートマッピングもトンネルも不要。あらゆるファイアウォールや社内ネットワークで動作します。

svg-agents

多数のエージェントを 1 台で

opencode、Claude Code、Codex などを同時に実行。それぞれ独立してペアリング・接続し、スマホで切り替えられます。同じタスクを別のエージェントで比較することも可能です。

svg-approve

危険な操作をスマホで承認

bash の実行やファイル編集の前に、権限リクエストがスマホのカードに届きます——許可 / 拒否 / 常に許可をワンタップで。危険な操作が自動承認されることはありません。

svg-scan

QR コードをスキャンしてペアリング

ターミナルに QR コードとペアリングコードが表示されます。tunnelbox アプリの「スキャンしてペアリング」ですぐ接続。コードは 1 回限りで 10 分後に失効します。

svg-layers

1 つのプロトコル、バックエンドを意識しない

セッション一覧 / ストリーミング出力 / 権限承認 / スラッシュコマンドをすべて 1 つのプロトコルに正規化——スマホ側は背後がどのエージェントかを気にする必要がありません。

svg-lock

プライバシー優先

リレーはステートレスな転送のみを行い、会話内容を保存しません。通信はすべて TLS。プライバシーを重視する方はリレーをセルフホストして管理できます。

対応エージェント

主要な CLI エージェントをすべて網羅

各エージェントは、そのセッション / ストリーミング / 権限を統一リモートプロトコルに正規化するアダプターに対応——リレーとスマホ側は何も意識しません。

エージェント アダプター 種類 ステータス
opencode プロセス内プラグイン(@tunnelbox/opencode) A ✅ MVP · 実装済み
DeepSeek Harness (dsh) ネイティブ Cordis プラグイン(@tunnelbox/dsh-tunnelbox) B ✅ 実装済み
Claude Code claude-agent-sdk ブリッジ(別プロセス) B ✅ 実装済み
Codex codex app-server ブリッジ(別プロセス) B ✅ 実装済み
OpenClaw 公式 Gateway operator WS · Gateway ≥ 2026.6.11 B ✅ 実装済み · テスト済み(6.35 / 9.4)
Hermes hermes chat -Q -q oneshot ブリッジ(Native プラグイン含む) B ✅ 実装済み
Cursor Cursor CLI agent acp(別プロセス) B ✅ 実装済み
CodeBuddy CodeBuddy CLI codebuddy --acp(別プロセス) B ✅ 実装済み
Kimi Code Kimi Code CLI kimi acp(別プロセス) B ✅ 実装済み
TraeCode TraeCode CLI traecli acp serve(別プロセス) B ✅ 実装済み · 実験的 · E2E 未検証
Qoder Qoder CLI qoder --acp(別プロセス) B ✅ 実装済み

A プロセス内プラグイン · エージェントのサーバープロセス内で動作;B CLI / ヘッドレスブリッジ · 別のコネクタプロセスが非対話モードを駆動。同種の複数インスタンスに対応(opencode1 / opencode2 …)。

仕組み

リバース接続 + ステートレスリレー

エージェントエコシステムのための統一リモートゲートウェイ:スマホはリレーに接続し、PC 上のアダプターが逆方向に接続——メッセージは双方向に流れます。

svg-phone

あなたのスマホ

Android · iOS アプリ

  • WSS でリレーに接続
  • セッションとストリーミング出力を閲覧
  • タスク送信 / 権限承認
svg-relay

リレー relay(Go)

クラウドサーバー · セルフホスト可能

  • ペアリング / 認証 / 転送
  • ステートレス——会話を保存しない
  • NATS によるマルチノード水平スケール
svg-pc

あなたの PC

エージェントアダプター

  • 外向きに接続(アウトバウンド WS)
  • opencode:プロセス内プラグイン
  • その他:CLI / SDK ブリッジ
アダプターは外向きに接続

リバース接続は NAT やファイアウォールを自然に貫通——社内ネットワークや寮でも問題なく動作し、パブリック IP やトンネルサービスは不要です。

リレーは転送のみ

低コストでスケールしやすい。ノードはステートレスで自動再接続し、セッションデータは常に PC 上のエージェントのローカルストレージにのみ存在します。

一度ペアリングすれば永続利用

初回スキャンでセッショントークンを取得し、以後は自動接続。MySQL を設定すればリレー再起動時も再ペアリング不要です。

ダウンロード

今すぐはじめる

公式サイトから tunnelbox アプリをダウンロード(Android / iOS 対応)。QR コードをスキャンするか、下のボタンをタップしてください。

スキャンしてアプリをダウンロード

Android · iOS

tunnelbox アプリ

ネイティブモバイルアプリ:スキャンでペアリング、リモートセッション、ストリーミング出力、危険操作の承認、プッシュ通知。

チュートリアル

3 ステップでペアリング、すぐに離陸

どのエージェントも同じ流れ:PC にアダプターをインストール → スマホでスキャン → 開始。下のセットアップ手順では各エージェントのコマンドを順番に掲載——ワンクリックでコピーできます。

1

ステップ 1 · PC でエージェントのアダプターを実行

使用するエージェントのアダプターをインストールして実行します(コマンドは下の「セットアップ手順」)。起動するとターミナルに QR コード + ペアリングコード が表示されます。

2

ステップ 2 · スマホに tunnelbox アプリをインストールして開く

公式サイトから tunnelbox アプリ(Android / iOS)をダウンロードしてインストールし、ログインします。

3

ステップ 3 · スキャンしてペアリング

「スキャンしてペアリング」をタップし、ターミナルの QR コードを写して自動接続——またはペアリングコードを手入力。ペアリング後、エージェントはホーム一覧に表示されます。

4

ステップ 4 · リモート操作を開始

エージェントのチャット画面を開きます:タブでセッションの切り替え / 作成、プロンプト送信、ストリーミング出力をリアルタイム表示、カードで危険操作を承認、いつでも「停止」できます。

エージェント別セットアップ手順

下からエージェントを選び、手順どおりに進めてください——各コマンドにワンクリックコピーのボタンがあります。

前提条件

  • 推奨環境:macOS / Linux / Windows(WSL)
  • Node の個別インストールは不要——opencode は Bun ランタイムを同梱し、プラグインはその中で動作します

opencode をインストール(公式)

まず opencode 本体をインストールします(macOS / Linux は公式ワンライナー、Windows は WSL か Chocolatey / Scoop):

# macOS / Linux (official one-line installer)
curl -fsSL https://opencode.ai/install | bash

# Windows (PowerShell): Chocolatey / Scoop / WSL
choco install opencode

インストール後、opencode --version でバージョンが表示されれば成功です。

インストール手順

1opencode.json の plugin 配列に npm パッケージを追加(初回起動時に自動インストール)
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "plugin": ["@tunnelbox/opencode"]
}

実行とペアリング

2opencode を再起動します(--print-logs 推奨)。プラグインがリレーに接続し、QR コードとペアリングコードを表示します。opencode 内で「スマホ用ペアリングコードを表示」と頼むか、いつでも /pair を入力すると、チャットにペアリングコードとスキャン可能な QR が表示されます。
opencode serve --print-logs

✅ ターミナルに [tunnelbox] の QR コードが表示されれば完了——スマホでスキャンしてペアリングします。

任意設定とヒント

公式リレーを使う場合、設定は不要です。独自のリレーを使う場合は、TUNNELBOX_RELAY_URL 環境変数を設定するか、opencode.json のオブジェクト形式で options.relayUrl を渡します:

// opencode.json (custom relay)
{
  "plugin": [{ "package": "@tunnelbox/opencode", "options": { "relayUrl": "wss://relay.tunnelbox.top" } }]
}

状態は ~/.tunnelbox/remote-state.json に保存されます(エージェント ID と言語のみ)。1 台の PC で複数のアダプターを実行でき、それぞれ独立してペアリングし、スマホからワンタップで切り替えられます。

前提条件

  • Node.js ≥ 22(tunnelbox アダプターが必要とします)
  • 有料の Claude プラン(Pro / Max / Team)または Anthropic Console の API キー

Claude Code をインストール(公式)

まず Claude Code 本体をインストールします(公式ネイティブインストーラー——自動更新、追加ランタイム不要):

# macOS / Linux / WSL (official native installer)
curl -fsSL https://claude.ai/install.sh | bash

# Windows PowerShell
irm https://claude.ai/install.ps1 | iex

インストール後、claude --version が動作すれば成功。初回起動時は有料の Claude アカウントでログインします。

インストール手順

1npm でアダプターをグローバルインストール(リポジトリのクローン不要)
# no repo clone needed
npm install -g @tunnelbox/claude-code

実行とペアリング

2アダプターを起動します(PC 上で常駐)。ターミナルに QR コードとペアリングコードが表示されます。スマホ側に Claude SDK は不要です。
tunnelbox-claude-code

✅ QR コードが表示されれば完了——スマホでスキャンしてペアリングします。

任意設定とヒント

すべて任意です。よく使う例:

TUNNELBOX_RELAY_URL=wss://relay.tunnelbox.top \
TUNNELBOX_CWD=D:/workspace/project \
TUNNELBOX_CLAUDE_MODE=plan \
tunnelbox-claude-code

ツール承認は既定でスマホに届きます(許可 / 拒否 / 常に許可)。切断または 120 秒のタイムアウトで自動的に拒否(fail-closed)——自動承認はされません。モード:default / plan / acceptEdits / bypassPermissions。

前提条件

  • Node.js ≥ 22
  • OpenAI アカウント(ChatGPT Plus / Pro、またはプラットフォーム API キー)と、codex app-server サブコマンドに対応した Codex CLI

Codex CLI をインストール(公式)

まず Codex CLI 本体をインストールします(公式インストーラーまたは npm):

# macOS / Linux (official installer)
curl -fsSL https://chatgpt.com/codex/install.sh | sh

# Windows PowerShell
irm https://chatgpt.com/codex/install.ps1 | iex

# or Node: npm install -g @openai/codex
npm install -g @openai/codex

codex --version で確認し、codex login でログインします。アダプターの自己チェック:tunnelbox-codex --checkcodex app-server が利用可能か確認)。

インストール手順

1npm でアダプターをグローバルインストール(リポジトリのクローン不要)
# no repo clone needed
npm install -g @tunnelbox/codex

実行とペアリング

2アダプターを起動します(PC 上で常駐)。ターミナルに QR コードとペアリングコードが表示されます。
tunnelbox-codex

✅ QR コードが表示されれば完了——スマホでスキャンしてペアリングします。

任意設定とヒント

すべて任意です。よく使う例:

TUNNELBOX_RELAY_URL=wss://relay.tunnelbox.top \
TUNNELBOX_CODEX_SANDBOX=workspace-write \
tunnelbox-codex

# optional: TUNNELBOX_CODEX_APPSERVER_ARGS="--stdio"

承認と選択はネイティブ:codex はツール承認リクエストと選択式の質問をそのままスマホに送り(許可 / 拒否、選択肢の選択)、推論はリアルタイムにストリーミングされます。切断 / タイムアウトは自動拒否(fail-closed)。許可される範囲は引き続き TUNNELBOX_CODEX_SANDBOX に従います(read-only / workspace-write / danger-full-access)。

前提条件

  • Node.js ^22.19 または >=24
  • DeepSeek API キー(dsh の認証情報は $DSH_HOME/.credentials.yaml、既定は ~/.dsh

DeepSeek Harness をインストール(公式)

まず dsh 本体をインストールします(DeepSeek 公式 npm パッケージ。Node.js ^22.19 または >=24 が必要):

# Install dsh globally (official package)
npm install -g @deepseek-ai/dsh

# or try instantly: npx @deepseek-ai/dsh web

インストール後、dsh --version が動作すれば成功。初回利用時に DeepSeek API キーを設定します($DSH_HOME/.credentials.yaml に保存)。

インストール手順

1npm から dsh の profile にインストール(1 回だけ、リポジトリのクローン不要)
dsh plugin --profile tunnelbox add @tunnelbox/dsh-tunnelbox
dsh --profile tunnelbox --dump-config   # verify the tunnelbox-dsh layer

実行とペアリング

2harness とプラグインを起動します。ターミナルに QR コードとペアリングコードが表示されます:
dsh --profile tunnelbox

✅ QR コードが表示されれば完了。モデル / 作業ディレクトリは profile の cordis.yml で設定できます。

任意設定とヒント

すべて任意です。profile 設定の例(cordis.patch.yml):

- id: tunnelbox-dsh
  config:
    relayUrl: 'wss://relay.tunnelbox.top'
    model: 'deepseek-v4-flash'
    cwd: 'D:/workspace/project'

承認は dsh の approval / sandbox-policy に従います(既定は workspace-write + ask)——危険な操作はスマホに届きます。複数インスタンスを実行するには、それぞれ異なる DSH_HOME を設定します。

前提条件

  • Node.js ≥ 22.19
  • ローカルの OpenClaw Gateway ≥ 2026.6.11(protocol v4)が実行可能——旧系統(< 2026.9.1)と新系統(≥ 2026.9.1)の両方に対応(実行時に機能を検出)

OpenClaw をインストール(公式)

まず OpenClaw をインストールし(公式インストーラー)、onboard ウィザードを完了します:

# macOS / Linux (official installer)
curl -fsSL https://openclaw.ai/install.sh | bash

# Windows PowerShell
iwr -useb https://openclaw.ai/install.ps1 | iex

# finish the setup wizard after install
openclaw onboard

openclaw が動作し、Gateway が実行されていれば準備完了です。

インストール手順

1npm でアダプターをグローバルインストール(リポジトリのクローン不要)
# no repo clone needed
npm install -g @tunnelbox/openclaw
2Gateway 認証(通常は自動)

アダプターは ~/.openclaw/openclaw.json から Gateway トークンを自動的に読み取ります(または TUNNELBOX_OPENCLAW_TOKEN)。Gateway がデバイス承認を求める場合は、一度承認してください:

openclaw devices list              # note the requestId
openclaw devices approve <requestId>

実行とペアリング

3アダプターを起動します(ローカルの Gateway に接続)。デバイスが承認されると、ターミナルに tunnelbox の QR コードが表示されます:
tunnelbox-openclaw

✅ デバイスを承認すると QR コードが表示されます——スマホでスキャンしてペアリングします。

任意設定とヒント

すべて任意です。よく使う例:

TUNNELBOX_RELAY_URL=wss://relay.tunnelbox.top \
TUNNELBOX_OPENCLAW_GATEWAY_URL=ws://127.0.0.1:18789 \
tunnelbox-openclaw

セッション削除は Gateway 経由で完全削除されます(sessions.deleteoperator.admin が必要)。アダプターは gateway.auth.token / password を自動検出します(設定、環境変数、実行中の Gateway プロセス、または 2026.9.1 以降の認証情報ファイル)。TUNNELBOX_OPENCLAW_TOKEN で上書き、--check-gateway-auth で確認、--save-token で保存、TUNNELBOX_OPENCLAW_AUTOSTART=start|install で Gateway を自動起動できます。承認(exec/plugin)とツールカード(コマンド引数付き)はスマホに届きます。対話式の選択 / 質問カードは Gateway ≥ 2026.7(question.*)が必要で、古い Gateway では承認またはプレーンテキストとして表示されます。

前提条件

  • Node.js ≥ 22
  • Hermes アカウント / モデル API キー(hermes setup で設定)

Hermes Agent をインストール(公式)

まず Hermes Agent をインストールし(公式インストーラー)、セットアップを完了します:

# official installer
curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash

# finish setup after install
hermes setup

hermes chat -Q -q "hi" が応答すれば準備完了です。

インストール手順

1npm でアダプターをグローバルインストール(リポジトリのクローン不要)
# no repo clone needed
npm install -g @tunnelbox/hermes

実行とペアリング

2アダプターを起動します(PC 上で常駐)。ターミナルに QR コードとペアリングコードが表示されます。
tunnelbox-hermes

✅ QR コードが表示されれば完了——スマホでスキャンしてペアリングします。

任意設定とヒント

すべて任意です。よく使う例:

TUNNELBOX_RELAY_URL=wss://relay.tunnelbox.top \
TUNNELBOX_HERMES_MODEL="anthropic/claude-sonnet-4" \
tunnelbox-hermes

注意:このヘッドレスアダプターはスマホ承認を提供しません。危険な操作は hermes 自身のセキュリティポリシーで制御されます(fail-closed)。セッションは実際の Hermes セッションで継続します(初回ターン後に id を自動検出)。対話セッションの承認 / 質問フローは Hermes 公式ネイティブプラグイン(native-plugin/)にあります。

前提条件

  • Node.js ≥ 22
  • Cursor アカウント(ヘッドレス利用は Cursor プランに課金されます)

Cursor CLI をインストール(公式)

まず Cursor CLI 本体をインストールします(公式インストーラー):

# macOS / Linux (official installer)
curl https://cursor.com/install -fsS | bash

# Windows PowerShell
irm 'https://cursor.com/install?win32=true' | iex

agent -p "hello" が正常に出力すれば準備完了(ヘッドレス利用は Cursor の課金対象)。

インストール手順

1npm でアダプターをグローバルインストール(リポジトリのクローン不要)
# no repo clone needed
npm install -g @tunnelbox/cursor

実行とペアリング

2アダプターを起動します(PC 上で常駐)。ターミナルに QR コードとペアリングコードが表示されます。ヘッドレス利用は Cursor の課金対象——プランに含まれているか確認してください。
tunnelbox-cursor

✅ QR コードが表示されれば完了——スマホでスキャンしてペアリングします。

任意設定とヒント

すべて任意です。よく使う例(plan モード + ファイル編集を許可):

TUNNELBOX_RELAY_URL=wss://relay.tunnelbox.top \
TUNNELBOX_CURSOR_MODE=plan \
TUNNELBOX_CURSOR_FORCE=1 \
tunnelbox-cursor

スマホ承認は利用できません(Cursor の hooks は IDE / Cloud agent 専用で、ヘッドレスの agent -p には外部承認リレーがありません)。また print モードでは思考が抑制されます(推論カードなし)。実行される内容は permissions の allow/deny + --force/--yolo + --sandbox で決まります。既定は読み取り専用(--force なしではエージェントは提案のみで編集しません)。実際に編集するには TUNNELBOX_CURSOR_FORCE=1 を設定します。CLI がまだない場合:macOS / Linux は curl https://cursor.com/install -fsS | bash、Windows は irm 'https://cursor.com/install?win32=true' | iex

前提条件

  • Node.js ≥ 22
  • CodeBuddy CLI をインストールしてログイン済み(npm i -g @tencent-ai/codebuddy-code。一度 codebuddy を実行してログイン、または CODEBUDDY_API_KEY を設定)

CodeBuddy CLI をインストール(公式)

まず CodeBuddy CLI 本体をインストールします(npm グローバルインストール):

# install the CodeBuddy CLI
npm install -g @tencent-ai/codebuddy-code

# first login (or use CODEBUDDY_API_KEY)
codebuddy

codebuddy --version でバージョンが表示されれば準備完了。初回実行にはログインが必要です。

インストール手順

1npm でアダプターをグローバルインストール(リポジトリのクローン不要)
# no repo clone needed
npm install -g @tunnelbox/codebuddy

実行とペアリング

2アダプターを起動します(PC 上で常駐)。ターミナルに QR コードとペアリングコードが表示されます。
tunnelbox-codebuddy

✅ QR コードが表示されれば完了——スマホでスキャンしてペアリングします。

任意設定とヒント

すべて任意です。よく使う例(plan モード):

TUNNELBOX_RELAY_URL=wss://relay.tunnelbox.top \
TUNNELBOX_CODEBUDDY_MODE=plan \
tunnelbox-codebuddy

codebuddy --acp(ACP)を駆動します。ツール承認はスマホに届きます(許可 / 拒否 / 常に許可)。オフラインまたは 120 秒のタイムアウトで自動拒否(fail-closed)。選択 / プラン / 質問はネイティブ ACP(AskUserQuestion / ExitPlanMode / elicitation)。未ログインの場合は codebuddy を一度実行してログインします(または CODEBUDDY_API_KEY を設定)。

前提条件

  • Node.js ≥ 22
  • Kimi Code CLI をインストールしてログイン済み(一度 kimi を実行して /login を送信)

Kimi Code CLI をインストール(公式)

まず Kimi Code CLI 本体をインストールし(公式スクリプトまたは npm)、一度実行して /login を送信します:

# macOS / Linux (official installer)
curl -fsSL https://code.kimi.com/kimi-code/install.sh | bash

# Windows PowerShell
irm https://code.kimi.com/kimi-code/install.ps1 | iex

# first login
kimi   # then send /login

kimi --version でバージョンが表示されれば準備完了。初回実行には /login が必要です。

インストール手順

1npm でアダプターをグローバルインストール(リポジトリのクローン不要)
# no repo clone needed
npm install -g @tunnelbox/kimi

実行とペアリング

2アダプターを起動します(PC 上で常駐)。ターミナルに QR コードとペアリングコードが表示されます。
tunnelbox-kimi

✅ QR コードが表示されれば完了——スマホでスキャンしてペアリングします。

任意設定とヒント

すべて任意です。よく使う例(plan モード):

TUNNELBOX_RELAY_URL=wss://relay.tunnelbox.top \
TUNNELBOX_KIMI_MODE=plan \
tunnelbox-kimi

kimi acp(ACP)を駆動します。公式の機能マトリクスにはネイティブの session/list|resume|delete が含まれます。ツール承認と質問プロンプトは session/request_permission を共有してスマホに届きます。オフラインまたは 120 秒のタイムアウトで自動拒否(fail-closed)。未ログインの場合は kimi を一度実行して /login を送信します。

前提条件

  • Node.js ≥ 22
  • TraeCode CLI をインストールしてログイン済み(traecli login)。注意:TraeCode CLI は TRAE エンタープライズ フラッグシップ プランが必要です

TraeCode CLI をインストール(公式)

公式ドキュメントに従って TraeCode CLI 本体をインストールし、ログインします:

# see https://docs.trae.cn/cli_what-is-trae-cli
traecli login

traecli --version が動作し、traecli login が成功すれば準備完了です。

インストール手順

1npm でアダプターをグローバルインストール(リポジトリのクローン不要)
# no repo clone needed
npm install -g @tunnelbox/trae

実行とペアリング

2アダプターを起動します(PC 上で常駐)。ターミナルに QR コードとペアリングコードが表示されます。
tunnelbox-trae

✅ QR コードが表示されれば完了——スマホでスキャンしてペアリングします。

任意設定とヒント

すべて任意です。よく使う例(auto 権限モード):

TUNNELBOX_RELAY_URL=wss://relay.tunnelbox.top \
TUNNELBOX_TRAE_PERMISSION_MODE=auto \
tunnelbox-trae

traecli acp serve(ACP)を駆動します。公式ドキュメントは ACP 対応のみを記載し機能マトリクスを公開していないため、このアダプターは実験的です——ストリーミング / 承認 / 選択 / 中止は実機の CLI で検証してください(npm run probe)。承認は既定で fail-closed。TraeCode CLI は TRAE エンタープライズ フラッグシップ プランが必要で、既定は Max モードです(クォータに注意)。

前提条件

  • Node.js ≥ 22
  • Qoder CLI をインストールしてログイン済み(qoder login、または QODER_PERSONAL_ACCESS_TOKEN を設定)

Qoder CLI をインストール(公式)

まず Qoder CLI 本体をインストールし(npm)、ログインします:

# install Qoder CLI
npm install -g @qoder-ai/qodercli

# log in (or set QODER_PERSONAL_ACCESS_TOKEN)
qoder login

qoder --version でバージョンが表示され、ログイン済みなら準備完了です。

インストール手順

1npm でアダプターをグローバルインストール(リポジトリのクローン不要)
# no repo clone needed
npm install -g @tunnelbox/qoder

実行とペアリング

2アダプターを起動します(PC 上で常駐)。ターミナルに QR コードとペアリングコードが表示されます。
tunnelbox-qoder

✅ QR コードが表示されれば完了——スマホでスキャンしてペアリングします。

任意設定とヒント

すべて任意です。よく使う例(auto 権限モード):

TUNNELBOX_RELAY_URL=wss://relay.tunnelbox.top \
TUNNELBOX_QODER_PERMISSION_MODE=auto \
tunnelbox-qoder

qoder --acp(ACP)を駆動します。ツール承認はスマホに届きます(許可 / 拒否 / 常に許可)。オフラインまたは 120 秒のタイムアウトで自動拒否(fail-closed)。選択 / プラン / 質問は ACP 権限チャネルを経由します。未ログインの場合は qoder login を実行するか QODER_PERSONAL_ACCESS_TOKEN を設定します。

さらに先へ:より多くのエージェントとセルフホスト

  • アダプター別 README:上記の手順に加え、より詳しいアーキテクチャ / プロトコルの詳細はリポジトリの plugin/ 配下にある各アダプターの README にあります。
  • リレーをセルフホスト:docker compose up -d でリレーをワンコマンドでデプロイ(MySQL 永続化は任意)。nginx.conf テンプレートがリバースプロキシ HTTPS を提供し、NATS_URL を設定すると複数ノードにスケールできます。

FAQ

よくある質問

PC にパブリック IP がありません——社内 / 寮のネットワークでも使えますか?

使えます。PC 上のアダプターは外向きの WebSocket 接続(リバース接続)のみを行います。パブリック IP、ポート転送、トンネルは不要で、NAT やファイアウォールを貫通するため社内ネットワークでも問題なく動作します。

メッセージがリレーを経由しますが安全ですか?

リレーはステートレスな転送のみを行い、会話内容を保存しません。通信はすべて TLS。ペアリングコードは 1 回限りで 10 分後に失効し、セッショントークンは SHA-256 ハッシュで保存されます。プライバシーを重視する方はリレーをセルフホストして、データを自分のサーバーに留められます。

会話履歴はどこに保存されますか?

PC 上のエージェントのローカルストレージにのみ保存されます。セッションを開くとアプリがリアルタイムで PC から履歴を取得します。PC がオフまたはプラグインがオフラインの間は取得できません。リレーはクラウド同期やバックアップを行いません——これは意図的なプライバシー優先・低コストのトレードオフです。

対応しているエージェントは?同時に複数実行できますか?

opencode、Claude Code、Codex、DeepSeek Harness、OpenClaw、Hermes、Cursor に対応し、同種の複数インスタンス(例:opencode1 / opencode2)も利用できます。それぞれ独立してペアリング・接続し、スマホの一覧から切り替えたり、同じタスクを別のエージェントで並べて比較できます。

危険な操作は必ず承認が必要ですか?

はい。bash やファイル編集などのツールが呼び出されると、各エージェントのネイティブな ask / 承認モデルに従ってリクエストがスマホに届き、許可または拒否した後にのみ実行されます。ツールごとに「常に許可」を選ぶこともできます(現在のセッションのみ)。

無料ですか?セルフホスト / デプロイできますか?

無料かつオープンソースです(リポジトリの LICENSE を参照)。リレーはセルフホスト可能:Docker / docker compose でワンコマンドでデプロイでき、nginx リバースプロキシで HTTPS、MySQL 永続化、NATS マルチノードスケールに対応します。Android / iOS アプリは公式サイトで入手できます。

AionUi のような製品との違いは?

tunnelbox はスマホからのリモート操作を中心に設計されています:リレーによるリバース接続とネイティブ Android / iOS アプリで、PC 上の複数の CLI エージェントをどこからでも操作できます。統一プロトコル、ステートレスリレー、セルフホストのしやすさにより、1 台のマシンで多数のエージェントを簡単に運用・管理できます。

AI をポケットに——今すぐ出発

PC にアダプターをインストールし、スマホを取り出してスキャン。すべてのエージェントが待機しています。

はじめる GitHub でスター