Yaver について
Yaverは、自分のマシン上でコーディングエージェントを動かす開発者向けの操作・プレビューシステムです。ターミナルエージェントやビルド状況をスマートフォンなどの画面とつなぎ、ペアリングした実機でプレビューできます。
主な機能
- 01モバイルからターミナルエージェントを操作
- 02Expoバンドルをペアリング済み端末へ送信
- 03タスクとビルドの進行状況を配信
- 04スクリーンショット、ログ、再生コンテキストを収集
活用シーン
- 01スマートフォンから問題を再現して修正
- 02React Nativeの更新をペアリング済み端末へ送信
- 03ローカルのタスクやビルド状況を遠隔確認
MCP 対応
YaverをMCPサーバーとして登録すると、Claude Code、Codex、opencodeからチャット経由で開発マシンを操作できます。`yaver-mcp`で起動でき、CLIからの設定にも対応します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Yaver とは
AI は数秒でコードを書きます。その前後のサイクル――ビルド、インストール、再現、問題の説明、エージェントからの回答――には、今も何時間もかかります。Yaver はこのサイクルを短縮します。
yaver エージェントは、すでにお持ちのハードウェア上で動作します。Mac、Linux マシン、WSL マシン、Pi、VPS などです。コーディングエージェントはそこで、実際のリポジトリを使って作業します。スマートフォン、ウォッチ、テレビ、車、AR/VR、ブラウザーなど、ほかのすべての画面は、そのマシンをリモート操作し、プレビューするためのものです。
すでにお支払いの AI サブスクリプションで動作します。トークンへの上乗せ料金はなく、コードがマシンの外に出ることもありません。
現在、最も充実しているのは iOS と Android です。ウォッチ、テレビ、車、AR/VR 向けの機能もこのリポジトリにあり、同じコアを共有しています。
クイックスタート
npm install -g yaver-cli
yaver auth
yaver serve
ヘッドレス環境(Pi、VPS、SSH のみの環境)では、yaver auth --headless を実行すると、任意のブラウザーで開ける短いコードと URL が表示されます。
サポートされているインストール方法は npm のみです。macOS(Apple Silicon と Intel)、Linux(x64 と arm64)、および WSL2 経由の Windows に対応しています。お使いのプラットフォーム向けの署名済み・公証済みエージェントバイナリがダウンロードされます。
続いてアプリを入手し、そのマシンとペアリングします。
Yaver を開き、開発マシンからプロジェクトを選んで、スマートフォンでプレビューします。スマートフォンを振ってバイブコーディングを始めましょう。バグの修正、小さな機能の追加、スタイルの調整をすれば、新しいバンドルが数秒で届きます。必要なのは、1 つの画面と実機だけ。追加のハードウェアは不要です。
コーディングエージェントからインストールまたは利用する
CLI を直接インストールするか、Yaver を MCP サーバーとして登録すると、Claude Code、Codex、opencode からチャットでマシンを操作できます。MCP を先にグローバルインストールする必要はありません。初回実行時に npx がサーバーを取得します。
# direct CLI
npm install -g yaver-cli
yaver auth
# or as MCP
# Claude Code
claude mcp add --scope user yaver -- npx -y yaver-cli yaver-mcp
# Codex
codex mcp add yaver -- npx -y yaver-cli yaver-mcp
# opencode
npx -y -p yaver-cli yaver mcp setup opencode
# then, in the agent chat:
call yaver_lazy_setup
既存の Expo アプリに Yaver を追加するには、アプリのディレクトリをエージェントに渡し、yaver_sdk_integrate を呼び出すよう依頼します。これに相当する、直接実行できる決定的なコマンドは次のとおりです。
npx -y yaver-cli integrate --dir /path/to/app --framework expo --verify quick
互換性のある依存関係をインストールし、アプリ内に Yaver の画面をマウントして、Expo プラグインを接続し、プロジェクトを検証します。バンドル ID の選択、アプリ独自の認証設定、デプロイ、公開は行いません。
Yaver が生成した、AI が必要な Expo + Convex スターターの場合は、続いてエージェントからモノレポのルートで yaver_openrouter_integrate を呼び出せます。認証付きでコスト上限のある HTTP/SSE 接続部分と React Native のストリームヘルパーを追加し、OpenRouter のキーはサーバー側に保持します。ポーリングも、トークンごとのデータベース書き込みもありません。
すでにグローバルインストール済みですか?yaver mcp setup claude-code(または codex/opencode)を実行すると同じエントリが書き込まれます。また、yaver auth は初回サインイン時に、インストール済みのすべてのランナーを自動登録します。Yaver は公式 MCP レジストリに io.github.yaver-io/yaver として公開されています。Codex Desktop では、リポジトリ内のプラグイン plugins/yaver も読み込めます。
ツールの全一覧と HTTP/リモートのセットアップについては、**MCP ガイド**をご覧ください。
仕組み
- 自身のマシンで
yaver serveを起動します。 - サーフェス(モバイルアプリ、ウェブダッシュボード、または別の Yaver クライアント)をペアリングします。
- 最寄りのサーフェスからコーディングエージェントにタスクを送信します。
- ターミナル、ビルド、リロードの進行状況がリアルタイムでストリーミングされる様子を確認します。
- 修正を実機にプッシュするか、準備ができたら自身のマシンからデプロイします。
CLI、エージェント、リレー、バックエンドはすべてセルフホスト可能です。クライアントアプリは現在、ID 管理とデバイス検出のために、薄いホスト型の調整プレーンを介して接続します。クライアントの完全なセルフホストにも対応予定です。
リモートアクセスには、Yaver Relay がデフォルトの接続経路です。無料の共有リレーは、軽い個人利用向けで、公平な利用制限があります。独自のリレーを運用したい場合は、リレーの実装がオープンソースで公開されています。Relay Pro は、アカウント全体の転送上限がより高い、任意で利用できる月額 9 ドルのマネージド接続経路です。すでに管理しているマシンまたは VPS に接続します。ホスト型のコンピューティング環境や AI サブスクリプションは含まれません。
現在利用できる機能
- Yaver エージェントから Claude Code、Codex、OpenCode、Aider、Goose などのターミナルエージェントを操作できます。
- ネイティブ Hermes 経路を通じて、React Native/Expo バンドルをペアリング済みのスマートフォンにプッシュできます。
- スクリーンショット、ログ、リプレイコンテキストを使って、開発ビルドのフィードバックを収集できます。
- タスク、ビルド、リロードの進行状況をモバイルまたはウェブダッシュボードにストリーミングできます。
- ピア検出、リレー、Vault の各フローをローカルファーストで運用できます。
- React Native、Flutter、ウェブ、Unity、Go、Python、JS/TS 向けの SDK とサンプルを使って開発できます。
費用
個人開発者なら、オープンソースのスタックを $0 で利用開始できます。
| コンポーネント | 実行場所 | 費用 |
|---|---|---|
| Yaver CLI + エージェント | 開発マシン | $0 |
| Yaver サーフェスアプリ | iOS / Android / watch / TV / car / AR/VR | $0 |
| Web ダッシュボード | ブラウザー | $0 |
| 自分のマシン上のバックエンド | 自分の Mac / Linux / WSL / VPS | $0 + ハードウェア費用 |
| Yaver 共有リレー | Yaver ホスト、フェアユース制限あり | $0 |
| Relay Pro | 共有リレーホスト上の、アカウント専用のマネージドレーン | $9/月 |
| AI モデル(Ollama) | 自分の GPU または CPU | $0 |
オープンソースのスタックには、モバイルアプリ、CLI、エージェント、Web ダッシュボード、SDK、リレーの実装が含まれます。Yaver の共有リレーは、利用開始時にフェアユースの範囲内で利用できます。コーディングエージェントのログインまたはサブスクリプションは各自で用意します。Yaver がトークンを再販することはありません。
V1 は、自分のデバイスとセルフホストのマシンに重点を置いています。Relay Pro がリリース時点で唯一の有料製品です。すべてのクライアントサーフェス、ブラウザー/Hermes レーン、MCP とライブラリーの連携、フィードバック SDK が含まれます。このリリースで、Yaver がホストするコーディングワークスペースは販売しません。
リポジトリの構成
| パス | 用途 |
|---|---|
desktop/agent/ | Go エージェント、CLI サーフェス、ローカル API、リレー/P2P/ランタイム連携 |
mobile/ | React Native モバイルアプリとネイティブプレビューコンテナー |
watch/, wear/, tvos/ | Apple Watch、Wear OS、Apple TV のクライアントサーフェス |
web/ | Next.js マーケティングサイトとダッシュボード |
backend/convex/ | ホスト型の ID、セッション、デバイス検出メタデータ |
relay/ | QUIC リレーサービス |
sdk/ | パブリック SDK とフィードバッククライアント |
demo/ | SDK とプッシュのフローをテストするための小規模なフィクスチャーアプリ |
demo-videos/ | ランディングページ/デモ動画のソースノート |
docs/ | アーキテクチャのメモ、セットアップガイド、監査、引き継ぎ資料、計画資料 |
Yaver のデプロイ
ローカルのエントリーポイントは、次の 1 つだけを使用してください。
./deploy/deploy.sh <target> [options]
ターゲットは all、backend、cloudflare、ios、android、npm、mcp です。エイリアスの一覧は ./deploy/deploy.sh --help で確認できます。エントリーポイントは、保守されている Vault 対応スクリプトと yaver deploy コマンドに処理を委譲しますが、人間、エージェント、MCP が使う経路を 1 つにすることで、デプロイ方法がばらつくのを防ぎます。
デプロイを実行できるのは所有者だけです。Convex、Cloudflare、App Store Connect、Play Console、npm、MCP レジストリの認証情報にアクセスする前に、リポジトリまたはスクリプトのパスがグループやその他のユーザーに書き込み可能な場合、スクリプトは処理を拒否します。
このリポジトリがモノレポです
Yaver は 1 つのモノレポです。このリポジトリがそれにあたります。 エージェント、CLI、モバイル、ウォッチ、TV、車載、AR/VR、Web、リレー、バックエンド、SDK はすべてここにあり、まとめてリリースされます。これらを分割しても、連携が必要なサーフェス間でバージョンのずれが生じるだけです。
yaver-io 組織内のそれ以外のものは、すべて検証/ユースケースアプリです。Yaver を外部から試すことだけを目的としたものです。ユーザーのプロジェクトと同じように、単独でクローン、ビルド、変更できる必要があるため、これらは別のリポジトリに置いています。ここに含めると、このリポジトリのツールに依存してしまい、率直なテストではなくなります。
ルール:製品コードはこのリポジトリに置き、製品を外部からテストするものには、それぞれ専用のリポジトリを用意します。
検証用アプリ
Yaver の動作を実証するアプリは、このリポジトリではなく、それぞれ独自のリポジトリにあります。これらはローカル専用の todo アプリで、バックエンドもアカウントもネットワークもありません。比較対象として使うため、意図的にシンプルにしています。
同じ todo アプリを 5 種類の方法で構築しています。Yaver はそれぞれ異なる方法で接続するため、スタックごとに実行ループの感覚が異なる場合、その違いはアプリではなくトランスポートにあります。
| Repo | Stack | Yaver からの接続方法 |
|---|---|---|
| yaver-todo-rn | Expo / React Native | Hermes — エージェントが HBC バンドルをコンパイルし、コンテナがその場で差し替えます |
| yaver-todo-kt | ネイティブ Android(Kotlin) | native-webrtc — ビルドホストで実行し、H.264 をスマートフォンにストリーミングして、タップ操作を送り返します |
| yaver-todo-swift | ネイティブ iOS(SwiftUI) | native-webrtc — 同じ方式ですが、macOS のビルドホストが必要です |
| yaver-todo-flutter | Flutter / Dart | native-webrtc — Dart には Hermes に相当するものがありません |
| yaver-todo-web | Next.js | dev server — Yaver のリレーパス経由で HMR を行います |
Hermes は React-Native 専用です。ネイティブアプリと Flutter アプリは実際のバイナリにコンパイルされるため、Yaver コンテナに読み込むことはできません。5 つのうち 3 つが存在するのはそのためです。ストリーミング経路を検証するには、これらが唯一の正直な方法です。
それぞれ別のリポジトリにすることで、このリポジトリに影響を与えずにクローン、ビルド、破損させることができます。各 README には、スタックごとに何が機能し、何が機能しないかが記載されており、フィードバック SDK がまだ存在しない箇所も含まれています。
ドキュメント
ドキュメント一覧 · セットアップ · コントリビューション · ランタイムアーキテクチャ · プロトコル · フィードバック SDK · セキュリティ · ライセンス
AI コーディングエージェントに Yaver のセットアップを任せる場合は、まず正規のマシンガイドを参照するよう伝えてください。
curl -s https://yaver.io/llms.txt
このリポジトリの Markdown はコンテキストであり、信頼できる情報源ではありません。ドキュメントとコードが食い違う場合はコードを優先し、同じ変更でドキュメントも修正してください。
開発
# Web dashboard / landing
cd web && npm install && npm run dev
# Go agent tests
cd desktop/agent && go test ./...
変更する領域に絞ったパッケージテストを実行してください。このリポジトリは Go、Node、React Native、Swift、Kotlin、Flutter、Unity、組み込み C にまたがっています。
ライセンス
このリポジトリは分割ライセンスを採用しています。コアは FSL-1.1 で、2 年後に自動的に Apache-2.0 に切り替わります。クライアント SDK はクローズドソースアプリに組み込めるよう Apache-2.0 です。詳しくは docs/planning/LICENSING.md をご覧ください。
法務チームがコアに別のライセンス条件を必要とする場合は、商用ライセンスを利用できます。[email protected] までメールでお問い合わせください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。