Clashのオープンソースエコシステム:本家・Meta・mihomoと各クライアントの関係を徹底解説

本家Clashカーネルから、Metaブランチがmihomoへ改名した経緯、FlClash・Verge・ClashXなど各クライアントの採用カーネルと現在の保守状況まで整理します。

カーネル・クライアント・設定ファイルをまず区別する

Clashエコシステムでよくある誤解は、Clashという名前を含むソフトウェアをすべて同じプロジェクトだと考えることです。実際には少なくとも、通信転送を担うカーネル、グラフィカルインターフェースを提供するクライアント、そして購読サービスやユーザーが管理するYAML設定の3層に分かれます。3層は組み合わせて使えますが、メンテナー、バージョン番号、互換範囲はそれぞれ異なります。

実際のトラフィック処理を担うカーネル

カーネルは設定ファイルを読み込み、ローカルのプロキシポートを待ち受け、DNS、ルール照合、プロキシグループの選択、送信接続を実行します。従来の設定では、HTTPとSOCKSの混合ポートに 7890、外部コントロールインターフェースに 127.0.0.1:9090 を設定する例が一般的です。システムプロキシ、TUN仮想NIC、ルールベースの振り分けも、最終的にはカーネルが処理します。

mixed-port: 7890
allow-lan: false
mode: rule
log-level: info
external-controller: 127.0.0.1:9090
secret: change-this-secret

クライアントはカーネルを操作する画面

FlClash、Clash Verge Rev、ClashXなどは、通常グラフィカルクライアントを指します。クライアントは購読設定の追加、カーネルの起動・停止、システムプロキシの変更、接続履歴の表示を担い、システムサービスやTUN権限を管理する場合もあります。クライアントが起動できることと、カーネルが正常に待ち受けていることは別です。稼働状況を確認する際は、カーネルログ、ポートの使用状況、コントロールインターフェースを併せて確認してください。

購読設定はクライアントのインストーラーではない

購読リンクが返すのは通常、ノードとプロキシグループの設定です。カーネルをインストールしたり、システムのネットワーク権限を自動的に付与したりするものではありません。同じ基本購読設定を複数のクライアントに読み込めますが、設定で rule-providerssniffer、Hysteria2、TUIC、またはmihomo固有のDNSフィールドを使っている場合、従来のClashカーネルでは解析できないことがあります。

本家Clash:エコシステムの設定とAPIの基盤

本家ClashはDreamacroによって始められ、Goで実装されました。現在も多くのクライアントが引き継ぐ基本モデルを確立し、プロキシノードを proxies に、プロキシグループを proxy-groups に定義します。トラフィックは rules を上から順に照合し、RESTful外部コントロールインターフェースを通じて、グラフィカルインターフェースに状態、接続、プロキシ切り替えの機能を提供します。

mode: rulemixed-portdns.enableexternal-controller などの基本フィールドは、現在もエコシステムの共通言語です。そのため、mihomoを使っていても設定ファイルの見た目は本家Clashによく似ています。これは互換性が引き継がれているためであり、2つのカーネルが同じ保守系列にあることを意味しません。

本家の保守終了がもたらす実際の影響

本家プロジェクトは2023年に公開保守を終了し、よく知られているアーカイブ版は v1.18.0 です。保守終了後は、新しいプロトコル、ルール機能、OSのネットワークスタック変更、安全性修正が本家へ継続的に追加されません。古い端末に固定された従来の設定は動き続ける可能性がありますが、新規導入の標準選択には適していません。

  • 設定層:基本プロキシ、プロキシグループ、ドメインルールは今でも高い移行価値があります。
  • カーネル層:本家に新しいプロトコル対応やTUN改善が追加されることは期待できません。
  • クライアント層:Clashの名前が残るソフトウェアでも、すでにmihomoへ置き換えられている場合と、古いカーネルを同梱している場合があります。
  • 購読設定層:サーバー側でmihomo拡張を有効にして設定を生成すると、従来のカーネルではフィールドエラーが発生することがあります。

Clash.Metaからmihomoへ:改名と継続的な進化

Clash.Metaは当初、Clashの設定体系との互換性を保つ拡張ブランチとして始まりました。本家でよく使われる設定構造とコントロールインターフェースを維持しながら、より多くのプロキシプロトコル、ルールセット、DNS動作、トラフィックスニッフィング、TUN機能を追加しました。本家の保守終了後、Clash.Metaは多くの新しいクライアントが採用するカーネル系列となりました。

その後、Clash.Metaはmihomoへ改名され、プロジェクトはMetaCubeXコミュニティによって保守されています。改名によって変わったのは主にプロジェクト名、バイナリファイル名、イメージ名、ドキュメントの入口であり、設定体系全体が作り直されたわけではありません。古い資料の「Metaカーネル」と新しい資料の「mihomoカーネル」は、通常、同じ進化系列における異なる段階を指します。

mihomoは従来のカーネルに何を追加したのか

  • 対応する送信プロトコルの拡充:従来のShadowsocks、VMess、Trojanなどに加え、VLESS、TUIC、Hysteria2、WireGuardなどの実装が継続的に拡張されています。
  • ルールセット機能:rule-providers を使ってローカルファイルやリモートURLからルールセットを読み込み、大規模なドメイン・IPルールを分割して更新できます。
  • TUNの改善:仮想NICを通じて、システムプロキシに従わないソフトウェアの通信も取り込み、プラットフォームに適したネットワークスタックを利用できます。
  • トラフィックスニッフィング:条件が整えばTLS SNIやHTTP Hostから接続先ドメインを復元し、接続先IPしか得られない通信でもドメインルールに一致させられる可能性があります。
  • DNS拡張:fake-ip、redir-host、ドメインごとのリゾルバー選択、ルール連動、より細かなnameserverポリシーを提供します。

mihomoを採用したクライアントをインストールしただけで、これらの機能が自動的に有効になるわけではありません。たとえばTUNにはシステム権限と正しいルーティングが必要です。スニッフィングには sniffer.enable: true の設定が必要で、リモートルールセットには有効なダウンロードURLと更新間隔が求められます。カーネルが機能を提供し、設定が有効化を決めます。

現在mihomoが動作していることを確認する方法

最も直接的な方法は、クライアントの「情報」「カーネル」「バージョン」画面を確認することです。表示されない場合は、外部コントロールインターフェースを有効にしたうえで /version にリクエストを送ります。以下のコマンドはコントロールポート 9090 に対し、前述のコントロールキーを使用します。

curl -H "Authorization: Bearer change-this-secret" \
  http://127.0.0.1:9090/version

応答には通常、バージョン文字列と実装識別子が含まれます。インターフェースへの接続が拒否された場合は、まずコアが動作していることを確認し、external-controller がローカルアドレスのみにバインドされていないか確認してください。401 Unauthorized が返る場合、コントロールインターフェースには到達できていますが、リクエストのキーが一致していません。

FlClash、Verge、ClashXはそれぞれどの層に位置するのか

クライアント間の重要な違いは、インターフェースのデザインだけではありません。どのカーネル保守系列を使うのか、システムプロキシとTUNをどう管理するのか、設定をそのまま移行できるのかも重要です。以下ではプロジェクトファミリーごとに説明します。

FlClash:Flutterクライアントとmihomoカーネル

FlClashはFlutterで構築されたマルチプラットフォーム対応のグラフィカルクライアントで、実行コアにはmihomoを採用しています。購読設定の管理、プロキシ切り替え、接続確認、ログ表示、システムプロキシなどを担当し、プロトコル解析とルール処理はmihomoが行います。そのため、FlClashが特定のプロキシプロトコルに対応しているかを確認する際は、FlClashに組み込まれたカーネルのバージョンと、そのプロトコルに対応する設定フィールドを併せて確認してください。

FlClashのクロスプラットフォームUIは操作ロジックを統一しやすい一方、Windows、macOS、Linux、Androidでは権限モデルが異なります。たとえばデスクトップのシステムプロキシは、プロキシ設定に従うアプリに主に影響しますが、TUNモードでは仮想ネットワークインターフェースの作成が必要です。AndroidではシステムVPNの許可ダイアログを通じて通信を取り込むため、デスクトップ版の権限手順をそのままモバイル版に適用することはできません。

Clash VergeとClash Verge Rev:名前は似ていても保守系列は異なる

旧Clash Vergeは、Windows、macOS、Linuxで広く使われたデスクトップ向けグラフィカルクライアントです。旧プロジェクトの保守終了後、コミュニティによる後継プロジェクトClash Verge Revが新たな保守ブランチとなりました。「Verge ダウンロード」で検索すると、旧版、派生パッケージ、Rev版が同時に表示されることがあるため、正式なプロジェクト名、公開日、カーネル情報を必ず確認してください。

Clash Verge Revはmihomo系列を採用し、デスクトップのトレイ常駐、システムプロキシ、TUN、購読設定の管理、接続確認を必要とするユーザーに適しています。旧Clash Vergeの設定データは移行元として利用できますが、データベース、サービスのインストール方式、アプリ設定が完全互換だと考えるべきではありません。移行時は、購読URLと自作YAMLをエクスポートし、新しいクライアントで改めて読み込む方法がより安全です。

ClashX:macOS向けのクラシッククライアントファミリー

ClashXは、macOSで早くから普及したメニューバークライアントで、歴代バージョンの多くは従来のClashカーネルを中心に動作していました。本家Clashの設定構造と密接に関係していますが、主要な保守系列はすでに停滞しています。旧ClashXを使い続ける場合、基本的なHTTP、SOCKS、一般的なプロキシグループは動作する可能性がありますが、mihomoで追加されたフィールドや新しいプロトコルが互換性を持つとは限りません。

ClashX Pro、ClashX.Metaなど、似た名前のプロジェクトも存在しましたが、同じリポジトリの継続バージョンではありません。特にClashX.Metaは、macOSのグラフィカルインターフェースとMetaカーネルを組み合わせる派生構想を示すものです。「ClashX」という文字を見かけたら、具体的なブランチ、最終公開日、CPUアーキテクチャ、実際のコアを追加で確認する必要があります。

Clash for Windows:よく知られているが保守終了済みのデスクトップクライアント

Clash for WindowsはCFWと略されることが多く、Windows、macOS、Linuxに対応していました。これはグラフィカルクライアントであり、本家Clashのカーネルプロジェクトと同一ではありません。また、クライアント自体がClashオープンソースエコシステム全体の統一された上流プロジェクトというわけでもありません。CFWは2023年に保守を終了しており、旧インストーラーに含まれるUIやコアが通常更新されることはありません。

CFWから移行する際に優先して保存すべきなのは、購読URL、自作設定、オーバーライドルール、プロキシグループの設定であり、アプリケーションのフォルダー全体ではありません。旧設定の parsers、スクリプト、クライアント固有のオーバーライド機能は、別のクライアントでそのまま認識されない場合があります。移行先が対応するオーバーライド方式、または標準mihomo YAMLへ書き換えてください。

現在もよく使われるその他のmihomoクライアント

  • Clash Nyanpasu:デスクトップ向けのグラフィカルクライアントで、mihomo系列のカーネルを採用し、設定、プロキシ、接続を管理できます。
  • Mihomo Party:mihomoを中核とするデスクトップクライアントで、名前からもカーネルとの関係が分かります。
  • OpenClash:OpenWrt向けの管理・統合ソリューションです。ルーター上のサービスとしてClash.Metaまたはmihomoを動かし、ファイアウォールルールと組み合わせてLAN内の通信を取り込みます。
  • コマンドライン版mihomo:グラフィカルクライアントに依存せず、YAML、システムサービス、外部コントロールパネルを組み合わせてサーバーやゲートウェイを構成できます。

「起動できる」だけで保守状態を判断しない

クライアントが起動できるということは、現在のインストーラーと現在のシステムで一時的に動作していることを示すだけです。保守状態を判断するには、リリース状況、コミット活動、カーネルの更新速度、システム対応の記録を確認してください。特にOSのメジャーアップデート後は、TUNドライバー、ネットワーク拡張、システムサービス権限、コード署名が変わる可能性があります。

プロジェクト名より信頼できる4つの確認項目

  1. 最新リリースを確認:リポジトリのドキュメントが最後に更新された日ではなく、最新安定版の公開日を確認します。
  2. カーネルバージョンを確認:クライアントが更新されてもmihomoまで同時に更新されるとは限りません。情報画面またはコアログで実際のバージョンを確認してください。
  3. システム対応を確認:macOSのApple SiliconとIntel、Windowsのx64とarm64など、インストーラーが現在のCPUアーキテクチャに対応していることを確認します。
  4. 問題対応を確認:インストール失敗、TUNの起動不能、購読設定の解析エラーなどが、現在もメンテナーによって対応されているかを確認します。

本稿執筆時点の2026年7月28日現在、本家Clash、旧Clash Verge、ClashXの主要系列、Clash for Windowsは保守終了プロジェクトとして扱うべきです。mihomoは現在も活発なカーネル系列であり、FlClash、Clash Verge Revなどはmihomoを基盤に構築された独立プロジェクトです。クライアントの保守状況は変化するため、インストール前には各プロジェクトの最新正式リリースを確認してください。

設定移行:基本フィールドの互換性は完全互換を意味しない

従来のClashクライアントからmihomoクライアントへの移行は、基本的なノード、プロキシグループ、ルール構文が引き継がれているため、通常はスムーズです。逆方向の移行はより失敗しやすく、従来のカーネルではmihomoが後から追加したプロトコルやフィールドを認識できません。移行前に、「標準の基本設定」「カーネル拡張設定」「クライアント固有の設定」を区別してください。

通常そのまま移行できる内容

  • 購読URLとローカルYAMLファイル。
  • 一般的な proxiesproxy-groupsrules
  • DOMAINDOMAIN-SUFFIXIP-CIDRGEOIPMATCH などの基本ルール。
  • 一般的なポート、LANアクセスの許可設定、基本的なDNSアドレス。

再確認が必要な内容

  • クライアント固有のオーバーライド、スクリプト、設定のマージ、購読設定の前処理機能。
  • TUNネットワークスタック、自動ルーティング、厳格ルーティング、インターフェース名。
  • GeoDataモード、ルールセット形式、リモートリソースの更新URL。
  • fake-ipの除外リスト、DNSの振り分け、システムhostsの動作。
  • VLESS、Reality、TUIC、Hysteria2などの拡張プロトコル用フィールド。

移行後はまず mode: rule を維持し、購読設定の更新、ノード接続、DNS解決、ルール照合、システムプロキシを順番に確認します。最後にTUNを有効にし、同時に変更する要素を増やさないようにしてください。ログに field not foundunsupported proxy type、YAML解析エラーが出た場合は、クライアントを何度も再インストールするのではなく、まずフィールドの互換性を確認します。

選定の結論:まず保守系列、次にインターフェース

新規インストールでは、活発に開発されているmihomoカーネルを採用し、継続的にリリースされ、現在のシステムを明確にサポートしているクライアントを優先してください。Windows、macOS、Linux、Androidで似た操作感を保ちたい場合はFlClashを検討できます。デスクトップのトレイ常駐やシステムサービス管理を重視する場合は、FlClash、Clash Verge Rev、Clash Nyanpasu、Mihomo Partyを比較するとよいでしょう。OpenWrtルーターでLAN内の通信を一元的に取り込むなら、OpenClashとコマンドライン版mihomoを評価してください。

古いクライアントがまだ動作していても、まず購読URLを記録し、自作ルールをエクスポートし、現在のポートを確認してください。よく使われる 789078919090 が旧プロセスに占有され、新しいクライアントのコア起動に失敗することがあります。移行中は、システムプロキシまたはTUNを制御するクライアントを1つだけにすると、プロキシループやデフォルトルートの競合を減らせます。

エコシステム全体は、次のように整理できます。本家Clashが設定とコントロールインターフェースの基礎を築き、Clash.Metaが互換性を保ちながら機能を拡張しました。その後Clash.Metaはmihomoへ改名され、現在も保守が続いています。FlClash、Clash Verge Revなどはmihomoを呼び出すグラフィカルクライアントです。一方、ClashX、旧Clash Verge、CFWは、それぞれ異なる時期に属するクライアントプロジェクトです。この構造を理解すれば、似た名前に惑わされず選定できます。

FlClash ダウンロード 各プラットフォーム版を確認