エンドツーエンド暗号化により、ターミナルとペアリングされたデバイス間で、AIエージェントがファイル、テキスト、メディアを安全に送受信できるようにします。
別名 paironce/cli, cli
- スター
- 0
- ツール
- —
- ダウンロード数(30日間)
- —
- 最新バージョン
- 0.11.4
- 最終コミット
- 2026年11月7日
- ライセンス
- Apache-2.0
PairOnce MCPとは
PairOnceはMCPサーバーです。 エンドツーエンド暗号化により、ターミナルとペアリングされたデバイス間で、AIエージェントがファイル、テキスト、メディアを安全に送受信できるようにします。.
プロジェクトのREADMEから生成された概要
PairOnce MCP server について
PairOnceは、AIエージェントが個人のデバイスとファイル、テキスト、メディアを交換するための安全な方法を提供します。npx paironce mcp コマンド経由でサーバーを実行することで、エージェントは iPhone、Android、デスクトップコンピュータなど、ウェブブラウザを実行しているあらゆるデバイスとやり取りできます。このセットアップにはアカウント作成は不要で、エンドツーエンド暗号化を使用してデータを保護します。接続は、モバイルまたはデスクトップデバイスで承認する6桁のペアリングコードを通じて確立されます。
開発者はこのサーバーを使用して、ターミナル環境と物理的な世界との間のギャップを埋めることができます。エージェントはビルドログをスマートフォンに送信したり、ハードウェアラベルの写真やドキュメントのスキャンなど、特定のアイテムを要求したりできます。視覚的な支援のための専用ツールが含まれており、エージェントがカメラやスクリーンフレームを要求して、手動作業のガイドを行うことが可能です。サーバーは、頻繁な手動承認なしでスムーズなワークフローを実現するために、最後のツール呼び出しから30分間接続を維持します。
できること
- 1ターミナルデータをモバイルに転送AIエージェントに、特定のビルドログやファイルをスマートフォンに直接送信するよう指示できます。
- 2物理的な情報のキャプチャエージェントがタスクを完了するために、特定のオブジェクトの写真を撮るようユーザーに依頼できます。
- 3スキャンしたドキュメントをワークスペースに取り込むエージェントに、スマートフォンからローカルフォルダへスキャンデータや写真がアップロードされるのを待機させることができます。
- 4視覚的なステップバイステップのガイダンスエージェントがカメラや画面から定期的に静止画を要求し、複雑な手順を支援することができます。
プロジェクトの README から作成されています。すべてのユースケースは、その引用と照らし合わせて確認されています。
PairOnce MCPのインストール方法
フォーマット検証日 2026年11月10日Claude CodeにPairOnce MCPをインストール
$ claude mcp add cli -- npx -y paironceCursorにPairOnce MCPをインストール
~/.cursor/mcp.json
{
"mcpServers": {
"cli": {
"command": "npx",
"args": [
"-y",
"paironce"
]
}
}
}VS CodeにPairOnce MCPをインストール
.vscode/mcp.json
{
"servers": {
"cli": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"paironce"
]
}
}
}Claude DesktopにPairOnce MCPをインストール
claude_desktop_config.json
{
"mcpServers": {
"cli": {
"command": "npx",
"args": [
"-y",
"paironce"
]
}
}
}CodexにPairOnce MCPをインストール
~/.codex/config.toml
[mcp_servers.cli] command = "npx" args = ["-y", "paironce"]
Gemini CLIにPairOnce MCPをインストール
~/.gemini/settings.json
{
"mcpServers": {
"cli": {
"command": "npx",
"args": [
"-y",
"paironce"
]
}
}
}設定
PAIRONCE_NAME
| 名前 | 説明 | 種類 |
|---|---|---|
| PAIRONCE_NAME | — |
自動チェック
実行日 2026年11月14日詳細レポート →自動チェックに合格しました。これはセキュリティ監査ではありません。コードを読み、サーバーに必要最小限のアクセス権を与えてください。 チェックの仕組み
- ソースリポジトリがリンクされており、アクセス可能paironce/cli is public and reachablegithub.com/paironce/cli ↗合格
- パッケージがこのリポジトリをソースとして示しているpaironce names paironce/cli as sourcenpmjs.com/package/paironce ↗合格
- ビルドの来歴(Sigstore 証明)Sigstore attestation for paironcenpmjs.com/package/paironce/v/0.11.4#provenance ↗合格
- オープンソースライセンス (OSI)Apache-2.0spdx.org/licenses/Apache-2.0.html ↗合格
- 過去1年以内にコミットまたはリリースありLast commit or release 2026-11-07github.com/paironce/cli ↗合格
- OpenSSF Scorecard未チェック
- パッケージ名が有名なパッケージに酷似していないNo popular package one edit away from paironce合格
- パッケージと依存関係に重大なアドバイザリがない21 resolved dependencies checked; no critical advisoryosv.dev ↗合格
- モデルへの隠れた指示がない0 tool descriptions and the README read; no override phrases, credential paths or hidden characters合格
- 破壊的なツールがラベル付けされている未チェック
- リモート endpoint が MCP ハンドシェイクに応答する未チェック
README
GitHubで見るpaironce
Send files and text from a terminal to your own phone or computer with PairOnce. Pair once with
a six-digit code; after that, npx paironce send report.pdf puts the file on your phone. End-to-end encrypted, direct
between the devices whenever the network allows, and through an encrypted relay when it does not. No account.
npx paironce pair # shows a code: type it at paironce.com on your phone
npx paironce send build.zip # sends to the paired device
npx paironce text "https://example.com/some/long/link"
npx paironce receive --to ./inbox # receives files sent from the phone
The other device is any browser with https://paironce.com open: iPhone, Android, Windows, Mac or Linux. Nothing to install there.
Commands
| Command | What it does |
|---|---|
paironce pair |
Shows a six-digit code. On the other device, open paironce.com, choose Enter a code and type it. Both screens show the same safety code; approve the device in the terminal. |
paironce pair 123456 |
Joins with the code the other device shows, for a person at this terminal. |
paironce send <file>... |
Sends files to the paired device. With several paired devices, add --to "<name>". The other device accepts each file before it arrives. |
paironce text "<message>" |
Sends a message or a link. |
paironce receive |
Receives files into the current folder (--to <folder>). Asks before each file; --yes accepts every file during this run. Large files are written straight to disk, so they can be as large as the sender may send, and one cut off continues when it is sent again. |
paironce devices |
Lists paired devices. |
paironce forget <name> |
Forgets a paired device. |
paironce mcp |
Runs as an MCP server for AI agents. |
--name "<name>" (or the PAIRONCE_NAME variable) sets what the other device shows for this one, for example
--name "Build server". The key stays the same, so paired devices still know it. --agent marks this device as an AI
agent on the other device (the MCP server always does). The MCP server stays connected for 30 minutes after its last tool call, so the next task needs no tap on your device; you see it as connected and can end it there. The MCP tools save inside the folder the server runs in (inbox by default). --ephemeral uses a throwaway identity in a temporary folder,
which the other device forgets after a day without a connection: right for a sandbox that is thrown away.
When a paired device is not connected, the command asks it to connect: PairOnce on that device shows "Windows · Terminal wants to reconnect" with a Connect button.
Use it from an AI agent (MCP)
paironce mcp gives an agent ten tools:
| Tool | What it does |
|---|---|
pair_device |
Pairs one of your devices. The agent gives you a six-digit code; you open paironce.com on that device, choose Enter a code and type it. The agent then tells you a safety code, and goes on only after you say your device shows the same. Once per device. |
send_file, send_text |
Sends to a paired device; you accept every file there. |
receive_files |
Waits while you send files from your device (a photo of a whiteboard, a scan, a document) and saves them into ./inbox. |
request_photo, request_scan, request_file |
Asks for something specific, with the reason. Your device shows the request; you take the photo, scan the pages or choose the file there, or decline. Saved into ./inbox. |
watch_frames, watch_stop |
Asks to see your camera or screen, with the reason. You share it on your device, or decline; the agent then gets a still picture each time it asks (at most two a second) and can guide you step by step. Your device shows the share and a stop button; it ends when either side stops it. |
list_devices |
Lists the paired devices. |
The agent reaches only devices you paired and approved, and nothing arrives anywhere unasked. Your device marks it Agent when it asks to be approved and in your saved devices. Design and plans: Agent as a Device.
send_file does not send hidden files and folders (such as .env or .ssh), Windows's AppData, a Mac's Library or this
device's own PairOnce files; you can still send those yourself with paironce send. A file that arrives after receive_files
or a request stopped waiting is saved in the folder it was accepted for, and the next receive_files reports it. Changes in
each version are in the releases.
Claude Code:
claude mcp add paironce -e PAIRONCE_NAME="Claude Code · Agent" -- npx -y paironce mcp
# in a throwaway sandbox: ... -- npx -y paironce mcp --ephemeral
# on Windows, through cmd: claude mcp add paironce -- cmd /c npx -y paironce mcp
Other clients (Cursor, Claude Desktop and others), in their MCP configuration:
{ "mcpServers": { "paironce": { "command": "npx", "args": ["-y", "paironce", "mcp"], "env": { "PAIRONCE_NAME": "Cursor · Agent" } } } }
Then ask: "pair with my phone", "send the build log to my phone", or let the agent ask you: "I need a photo of the label on the back of the router".
How it works
The CLI runs the same connection code as paironce.com: the PairOnce protocol and @paironce/core for pairing and encryption, with WebRTC from node-datachannel for direct connections and @roamhq/wrtc (libwebrtc) for the relay. Files and messages are encrypted on this computer and decrypted on the other device; the PairOnce service only introduces the two devices and, when needed, relays encrypted bytes it cannot read.
This computer's device key and the list of paired devices are kept in ~/.paironce (or $PAIRONCE_HOME), readable only
by you. The private key never leaves this computer.
It connects directly whenever the networks allow it, otherwise through the encrypted relay over UDP, TCP or TLS on port
443, and where even that is blocked, through the PairOnce tunnel: the same encrypted data over a secure WebSocket to
paironce.com. So it works on servers, in containers that block UDP, and behind a web proxy (HTTPS_PROXY is used
automatically). In a cloud sandbox with an allow-list, such as Claude Code on the web, add paironce.com to the allowed
domains. PAIRONCE_DEBUG=1 shows each step of connecting.
Requires Node.js 22 or later on Windows, macOS (x64 and arm64) or Linux (x64 and arm64).
License
Apache-2.0. PairOnce is a trademark of its owner; see https://paironce.com.
PairOnce MCPのよくある質問
PairOnce MCPをClaude Codeに追加するには
ターミナルでclaude mcp add cli -- npx -y paironceを実行します。すべてのプロジェクトで利用するには--scope userを追加します。
PairOnce MCPをCursorに追加するには
~/.cursor/mcp.jsonを開き、上記のインストールセクションに示すCursor設定を使ってmcpServersの下にサーバーを追加します。
AIエージェントとデバイスをペアリングするにはどうすればよいですか?
エージェントが6桁のコードを表示します。デバイスで paironce.com にアクセスしてそのコードを入力し、両方の画面に表示されるセーフティコードを承認してください。
転送中のデータはプライベートですか?
はい、すべてのファイルとメッセージはエンドツーエンドで暗号化されており、秘密鍵がコンピュータから外部に出ることはありません。
エージェントは常に接続を維持する必要がありますか?
MCP server は、最後のツール呼び出しから30分間接続を維持するため、再ペアリングなしで後続のタスクを実行できます。