CopySync

こっちでコピーして、
あっちで貼り付け。

Mac、Windows、Linux に対応。テキスト、画像、ファイル、フォルダまるごと。同じアカウントは要りません。同じネットワークならサーバーなしで使え、ネットワークをまたいでも使えます。データはデバイス間を直接流れ、エンドツーエンドで暗号化されます。

バージョン 1.6.4、無料・オープンソース。macOS 13 以降、Windows 10・11、Linux(x64 と ARM64)。

はじめての方は、3 ステップのはじめかたへ →

どのデバイスでコピーしたものも、ここに

履歴には直近 3 日分が残り、いつでもクリップボードに戻せます。画像はクリックでプレビュー。50 MB までのファイルはコピーした時点で届いていて、それより大きいものは必要なときにワンクリックで取り込めます。

CopySync の履歴画面:MacBook Air と Mac mini から届いたファイル、画像、テキスト。大きなファイルには「このデバイスに取り込む」ボタン

コピーしたあと、何が起きるか

テキストも画像も、ファイルもフォルダも、同じ道を通ります。

  1. 気づく

    Mac ではバックグラウンドサービスが短い間隔でクリップボードの変更カウントを確認します。カウントと種類を見るだけなので許可は不要で、確認ダイアログも出ません。Windows ではコピーした瞬間にシステムが知らせます。

  2. 送る

    テキストはメッセージと一緒に送ります。50 MB までの画像とファイルはその場でストリームとして送り、それより大きいファイルは記録だけを送って、必要になったときに転送します。

  3. 貼り付ける

    受け取った側はまず内容をローカルに保存してから、クリップボードに入れます。⌘V や Ctrl+V で貼り付けられるのは、手元にある本物のファイルです。

いまある方法では足りない理由

ユニバーサルクリップボードは同じ Apple ID で、近くにいる必要があります。AirDrop は毎回受け取り操作が要ります。自分宛てにメッセージで送ると手動でダウンロードすることになり、ファイルは他社のサーバーに残ります。Mac と Windows の組み合わせでは、標準の方法はどれも使えません。

CopySync とほかの方法の比較
CopySyncユニバーサル
クリップボード
AirDropチャットアプリ
別々の Apple ID のあいだできるできない受け取り操作が必要できる
Mac と Windows のあいだできるできないできないできる
別のネットワーク(自宅と会社)できるできないできないできる
コピーしてすぐ貼り付け、受け取り操作なしできるできるできないできない
ファイルとフォルダまるごとできる不安定できる先に圧縮
前にコピーしたものを探すできるできないできない履歴をさかのぼる
内容が第三者のサーバーを通らない通らない通らない通らない通る

しくみ

2 台のコンピューターは、暗号化された接続で直接つながります。同じネットワークなら自分たちでお互いを見つけます。ネットワークをまたぐときはサーバーが引き合わせ、直接つながらないときだけ中継します。下の図はネットワークをまたぐ場合です。

CopySync の接続のしかた コンピューター A と B(Mac または Windows)は WebRTC で直接つながります。どちらもシグナリングのためにあなたのサーバーへ接続し、直接接続に失敗したときはサーバーの TURN でデータを中継します。 あなたのサーバー シグナリング、STUN、TURN 中継 シグナリング:接続情報の交換 中継:直接つながらないときだけ Mac ここでコピー Mac または Windows ここで貼り付け WebRTC 直接接続、DTLS 暗号化 データは 2 台のあいだだけを流れる データ(直接) データ(中継、予備) シグナリング
  • WebRTC 直接接続、DTLS 暗号化 データは 2 台のあいだだけを流れる
  • あなたのサーバー シグナリング、STUN、TURN 中継
  • 中継:直接つながらないときだけ

サーバーにはコピーした内容が見えない

  • サーバーはアカウントも内容も保存しない。デバイスの身元は Ed25519 の鍵で、デバイス ID は公開鍵から計算されます。サーバーはユーザー表なしで身元を確かめられます。
  • ペアリングでは指紋をあなたが照合する。両方の画面に同じ 2 行、つまりお互いの公開鍵の指紋が表示されます。サーバーは転送中の公開鍵をすり替えられますが、すり替えれば 2 つの画面が一致しなくなります。この照合が中間者攻撃を防ぐ関門です。
  • その後のメッセージはすべて署名付き。サーバーがあなたのデバイスになりすますことはできません。直接接続の証明書もハンドシェイク後にもう一度照合し、食い違えばすぐ切断します。
  • 中継も暗号文を転送するだけ。TURN が運ぶのは暗号化済みのパケットです。中継用の認証情報はデバイスごとに発行され、12 時間で失効します。
  • ローカルネットワークでも同じ。デバイスが LAN に流すのは毎日変わる匿名の識別子だけで、誰のコンピューターかはわかりません。デバイス名を流すのは「近くを検索」を開いている間だけです。ペアリングでは同じく指紋を照合し、その後のメッセージも署名付きです。
ペアリング時の「セキュリティ指紋を確認」ダイアログ。R8NF-2WTC-QL5J が表示され、もう一台の表示と完全に一致するか確かめるよう求めている

うまくいかないときに起きること

ネットワークの事情は人それぞれです。ここに挙げたケースはどれも想定済みで、テストがあります。

同じネットワークなのに相手が見つからない
サブネットが違う、ゲストネットワーク、クライアント分離(AP アイソレーション)が有効な Wi‑Fi では、LAN 内の検出が届きません。ペアリング時に相手のコードの下に表示されたアドレスを入力してください。アドレスはその後も記憶され、両方のアドレスが変わったときはデバイス一覧からもう一度入力します。
システムがローカルネットワークを止めている
macOS 15 以降、バックグラウンドサービスが LAN 上のデバイスに接続するにはあなたの許可が要ります。Windows は初回起動時にファイアウォールについて聞いてきます。許可されていないときはアプリが知らせ、設定へ直接飛べるボタンを出します。
2 台が直接つながらない
対称型 NAT や会社のファイアウォールでよく起きます。自動であなたのサーバーの TURN 中継に切り替わり、内容は暗号化されたまま。デバイス一覧には「中継」と表示されます。
公開 STUN サーバーにつながらない
中国本土などでは公開 STUN が不安定です。サーバーは STUN を内蔵していて、クライアントはそちらを優先します。
先に中継でつながった
中継のハンドシェイクは速く、直接接続より先に決まることがあります。接続後、接続を始めた側がアイドル時にもう一度穴あけを試み、成功すれば直接接続に切り替えます。転送中は邪魔しません。
相手がスリープ、切断、再起動した
黙って切れた接続にも気づき、すぐに閉じて再接続します。そのあいだにコピーしたものは記録しておき、つながったら相手の履歴に追加します。相手のいまのクリップボードは上書きしません。
サーバーとの接続が切れた
自動で再接続します。間隔は 1 秒から倍々で最大 30 秒、ランダムな揺らぎ付きで、たくさんのデバイスが一斉に再接続しないようにしています。同じネットワークのデバイスは影響を受けず、そのまま同期します。
ファイルが大きすぎる
上限を超えるものは記録だけを同期し、必要なときに取り込みます。そのとき元のファイルが消えていれば、あいまいな失敗ではなく、はっきりそう伝えます。
プレーンテキストしか受け付けない場所に貼り付ける
Web からコピーした書式付きテキストは HTML とプレーンテキストの両方で書き込むので、どこに貼り付けてもタグが混ざりません。
Windows では使えないファイル名
Mac では使えるコロンや疑問符などは、対応する全角文字に置き換えて受け取るので、名前はそのまま読めます。大文字と小文字だけが違う 2 つのファイルが上書きし合うこともありません。
パスワードをコピーした
Windows ではパスワードマネージャーがコピーした内容に「記録しない」印が付きます。CopySync はそれを見て飛ばします。同期も履歴への保存もしません。
クリップボードの読み取りをまだ許可していない
内容は読みに行きません。読みに行くと、バックグラウンドプロセスが見えないダイアログで止まってしまうからです。アプリが許可を促し、設定へ直接飛べるボタンを出します。
バックグラウンドサービスが落ちた
Mac ではシステムの launchd が、Windows では CopySync 自身の監視プロセスが再起動します。10 秒に 1 回までに抑え、暴走はしません。
アプリを更新した、または移動した
アプリを開いたときにログイン項目を正しい場所に向け直し、バックグラウンドサービスを新しいバージョンで再起動します。

インストール

それぞれのコンピューターにアプリを入れます。同じネットワークならそのままペアリングでき、ネットワークをまたぐときは 2 台がお互いを見つける方法をひとつ選びます。はじめての方ははじめかたをどうぞ。

Mac

  1. DMG をダウンロードして開き、CopySync を「アプリケーション」にドラッグします。Apple シリコン版と Intel 版があります。自分の Mac がどちらかの確かめ方は、ダウンロードページにあります。
  2. 「アプリケーション」から開きます。初回は「開発元を検証できません」と表示されます。CopySync はまだ Apple の公証を受けていないためです。「システム設定 → プライバシーとセキュリティ」を開き、ページ下部の「このまま開く」をクリックします。必要なのは一度だけです。
  3. 「バックグラウンド同期を有効にする」をクリックします。クリップボードの読み取りと、ローカルネットワーク上のデバイスを探すことについて聞かれたら、どちらも許可します。
  4. ネットワークをまたいで同期するときは、「設定」でサーバーのアドレス ws://サーバーアドレス:8787/signal を入力して Return を押します。同じネットワークなら空欄のままです。
Mac 版をダウンロード

Windows

  1. CopySync-Setup.exe を実行します。現在のユーザーのフォルダにインストールされ、管理者権限は要りません。CopySync はまだコード署名されていないため、「Windows によって PC が保護されました」と表示されます。「詳細情報」を押してから「実行」を押してください。インストーラーを使いたくない場合はポータブル版もあります。
  2. CopySync を開き、「バックグラウンド同期を有効にする」をクリックします。ファイアウォールに聞かれたら許可します。ウィンドウを閉じても、画面右下の通知領域で動き続けます。
  3. ネットワークをまたいで同期するときは、「設定」でサーバーのアドレスを入力して Enter を押します。同じネットワークなら空欄のままです。
Windows 版をダウンロード

Linux

  1. Ubuntu や Debian などでは .deb をダウンロードし、sudo apt install ./CopySync-linux-amd64.deb を実行します。ほかのディストリビューションでは tar.gz をダウンロードして展開し、./CopySync/install.sh を実行します。
  2. アプリケーションメニューから CopySync を開き、「バックグラウンド同期を有効にする」をクリックします。以後はログイン時に自動で起動します。
  3. ネットワークをまたいで同期するときは、「設定」でサーバーのアドレスを入力して Enter を押します。同じネットワークなら空欄のままです。
Linux 版をダウンロード

接続方法

同じネットワークならサーバーは要りません。状況に合うものを選んでください。どれにも手順のページがあります:

3 通りを比べる

ペアリング:一台で「デバイス → デバイスを追加」を開いて 6 桁のコードを表示し、もう一台で入力します。両方の画面に同じ 2 行の指紋が表示されたら確定します。別のサブネットにある場合は、コードの下に表示されたアドレスも入力します。Mac、Windows、Linux のどの組み合わせでも同じ手順です。

仕様

バージョン1.6.4(公開)
Mac アプリmacOS 13 Ventura 以降。Apple シリコン版と Intel 版に分かれ、ダウンロードはそれぞれ約 25 MB で Rosetta 不要。両方で動くユニバーサル版は約 47 MB
Windows アプリWindows 10 と Windows 11、x64。ユーザーごとのインストールで管理者権限不要。ダウンロードは約 23 MB
Linux アプリx64 と ARM64。.deb(Debian、Ubuntu など)または tar.gz(ほかのディストリビューション)、約 22 MB。X11 のデスクトップ、または XWayland 付きの Wayland デスクトップ(GNOME、KDE などは標準で搭載)が必要。GTK 3
サーバー任意。ネットワークをまたぐときだけ必要。Linux(x86_64 または ARM64、systemd または Docker)、macOS(Intel と Apple シリコン)、Windows 10・11 x64(サービスとして動作)。メモリは約 15 MB
表示言語日本語、英語、簡体字中国語。初期設定はシステムに合わせ、「設定」で切り替え可能
同期する内容プレーンテキスト、書式付きテキスト、画像とスクリーンショット、ファイル、フォルダ。種類ごとにオフにできる
転送WebRTC データチャネル。直接接続を優先し、つながらなければ TURN で中継。同じネットワークでは mDNS で発見し、UDP 8788 で接続情報を交換。複数の出口があるネットワークでは出口ごとに調査。ファイルは tar + zstd でストリーム転送
暗号化と身元DTLS によるエンドツーエンド暗号化。デバイスの身元は Ed25519 の鍵。シグナリングのメッセージはすべて署名付き
ペアリング5 分間有効な 6 桁のコード。0/O や 1/I のような紛らわしい文字は使わない。指紋は人が照合
自動同期の上限初期値 50 MB、1 MB〜1 GB で調整可能
履歴の保存期間初期値 3 日、1 時間〜30 日で調整可能。期限が来たら自動で削除
実測の速度LAN の直接接続で 20 MB のファイルを約 330 ミリ秒で転送、チェックサム一致
技術スタックバックグラウンドサービスとサーバーは Go(Windows では Go から Win32 を直接呼び出し、Linux では Go で X11 プロトコルを直接扱う)、アプリは Flutter(3 つの OS で同じコード)、メッセージ定義は Protocol Buffers
ライセンスGNU AGPL-3.0

よくある質問

UU Remote の使用中に .uuremote_ ファイルが増え続けるのはなぜですか?

UU Remote は一時的なプレースホルダーファイルをシステムのクリップボードに書き込みます。旧版の CopySync はそれを通常のファイルとして記録・転送していました。1.3.2 では確認済みの命名パターンを送受信時に除外し、起動時にプレースホルダーだけの履歴を削除します。通常の空ファイル、隠しファイル、大容量ファイルは対象外です。50 MB は自動転送のしきい値であり、UU の UDP P2P 設定とは関係ありません。両端を更新してください。他のクリップボード同期ツールによる通常コンテンツの重複は起こり得ます。

macOS のユニバーサルクリップボードとの違いは?

ユニバーサルクリップボードは、両方のデバイスが同じ Apple ID でサインインし、Bluetooth と Wi‑Fi をオンにして近くにある必要があり、Apple 製品どうしでしか使えません。CopySync は同じネットワークならインストールしてすぐ使え、ネットワークをまたぐときは両方があなたのサーバーにつながるか、Tailscale を入れていれば使えます。Apple ID が別でも、自宅と会社に離れていても、Mac と Windows の組み合わせでも使えます。さらに履歴があり、大きなファイルは必要なときに取り込めます。

2 台の Mac が同じ Apple ID でいつも並んでいて、主にテキストをコピーするだけなら、標準機能で十分です。

サーバーにコピーした内容は見えますか?

見えません。直接接続のときデータはサーバーを通りません。中継が必要なときも、サーバーが転送するのは DTLS で暗号化されたパケットです。サーバーはアカウントもコピーした内容も保存しません。コードは公開されているので、ご自身で確かめられます。

出口が複数ある会社のネットワークでも直接つながりますか?

つながります。こうしたネットワークは宛先ごとに出口を選びます。CopySync はひとつのポートから複数のサーバーに問い合わせて出口ごとのアドレスを集め、すべて相手に送り、相手がひとつずつ試します。テストでは、出口が 4 つある会社の Mac と家庭の回線が直接つながりました。相手がポートをランダムに割り当てる NAT の場合は中継になります。

サーバーは自分で用意する必要がありますか?

場合によります。コンピューターが同じネットワークにあるなら、アプリを入れてペアリングするだけで、サーバーは要りません。

ネットワークをまたぐ方法は 2 つあります。公開サーバーは最小構成のクラウドサーバーで足り、どこからでも同期できます。Tailscale は各コンピューターに入れ、ペアリング時に相手の Tailscale アドレスを入力するだけで、サーバーは要りません。CopySync は公開サーバーを提供しないので、誰のデータも他人のマシンを通りません。

自宅にグローバル IP がありません。自宅と会社のあいだで同期できますか?

できます。方法は 2 つあります。公開サーバーがあれば、そこにサーバーを置いて両方のコンピューターから直接つなぎます(公開サーバーでの手順)。なければ、すべてのコンピューターに Tailscale を入れて同じアカウントでサインインし、ペアリング時に相手の Tailscale アドレスを入力します(Tailscale での手順)。

同じネットワークなのに、もう一台が見つからないのはなぜ?

まず本当に同じサブネットか確認してください。会社の有線と Wi‑Fi、ゲストネットワーク、クライアント分離が有効な Wi‑Fi では、デバイス同士が見えないことがよくあります。その場合は、コードを入力する側で「別のサブネットにありますか?」をクリックし、相手のコードの下に表示されたアドレスを入力します。

Windows では初回起動時にファイアウォールに聞かれたら許可してください。キャンセルした場合は「設定 → ローカルネットワーク」で「許可」をクリックします。Mac では「システム設定 → プライバシーとセキュリティ → ローカルネットワーク」で CopySync Daemon をオンにします。詳しくは同じネットワークでの手順を。

Windows や Linux に対応していますか?iPhone は?

Windows 10 と Windows 11(x64)に対応し、Mac と相互に使えます。Windows で貼り付けたファイルは本物のファイルなので、エクスプローラーや Office にそのまま貼り付けられます。

x64 と ARM64 の Linux デスクトップにも対応しています。X11、または XWayland 付きの Wayland デスクトップ(GNOME、KDE などは標準で搭載)で動きます。コピーしたファイルはファイルマネージャーにそのまま貼り付けられます。

iPhone と iPad には対応していません。iOS ではアプリがバックグラウンドでクリップボードを監視できないため、コピーしてすぐ同期することができないからです。

初めて開くときにシステムに止められるのはなぜ?

CopySync はまだ Apple の公証を受けておらず、Windows 版もコード署名していません。どちらも毎年費用のかかる証明書が必要です。

Mac では「システム設定 → プライバシーとセキュリティ」でページ下部の「このまま開く」をクリック、Windows では「Windows によって PC が保護されました」で「詳細情報」から「実行」を押してください。どちらも一度だけで済みます。

大きなファイルはどうなりますか?

初期設定では 50 MB までのものはコピーした時点でもう一台に送られ、そのまま貼り付けられます。それより大きいファイルは記録だけを同期し、必要なときに履歴から「このデバイスに取り込む」で転送します。上限は「設定」で変えられます。

無料ですか?会社で使えますか?

無料です。CopySync は GNU AGPL-3.0 のオープンソースで、個人も会社も無料で使い、改変できます。配布する場合や、改変したものをネットワーク越しに提供する場合は、同じライセンスでソースコードを公開する必要があります。

2 台のコンピューター、
ひとつのクリップボード。

バージョン 1.6.4、無料・オープンソース。macOS 13 以降、Windows 10・11、Linux(x64 と ARM64)。

はじめての方は、3 ステップのはじめかたへ → GitHub でソースコードを見る