2026-06-10 読了時間 約8分

Clash クライアントが起動時にクラッシュする?Windows / macOS 別クラッシュ解決手順

アイコンをダブルクリックしても反応しない、ウィンドウが一瞬表示されて消える、画面は開くのにカーネル起動失敗と表示される——これが Clash系クライアントで最も多い3種類の起動トラブルです。本記事では故障の発生レイヤー別に原因を整理し、WindowsmacOS それぞれの解決手順を紹介します。すべての操作は元に戻せますが、作業前に必ず設定ディレクトリをバックアップしてください。

まずクラッシュが起きているレイヤーを見極める

起動トラブルは大きく2つのレイヤーに分かれ、対処法も全く異なります。手を動かす前に1分だけ使ってレイヤーを特定しましょう。

  • GUI層のクラッシュ:アイコンをダブルクリックしても無反応、プロセスが起動した直後に終了する、ウィンドウが真っ白になる、といった症状です。実行環境の不足、インストーラーとシステムアーキテクチャの不一致、権限不足が主な原因です。
  • カーネル層のクラッシュ:画面自体は正常に開くものの、「カーネル起動失敗」「Clash core exited」と表示される、またはシステムプロキシをオンにした瞬間にエラーが出る、といった症状です。設定ファイルの破損、ポートの競合、前回起動時のプロセス残留が主な原因です。

見極め方は、クライアントのログ画面を開くか、データディレクトリ内の logs フォルダを直接確認することです。ログが画面初期化の段階で止まっていれば GUI層の問題、ログに mihomoclash カーネルのエラー行が出ていればカーネル層の問題です。カーネル層の問題はまず設定ファイルを、GUI層の問題はまず実行環境を確認しましょう。

共通チェック:設定ファイルとサブスクリプション

設定ファイルの破損は、カーネル層クラッシュの最も多い原因です。Clash の設定は YAML 形式で、インデントや文字に非常に敏感なため、わずかな書式エラーでもカーネルが起動解析の段階で即終了してしまいます。

よくある破損パターンは次の3つです。

  • 設定ファイルを手動編集した際に、Tab インデントが混入した。YAML はスペースインデントのみ許容するため、Tab が1つ混じるだけで解析に失敗します。
  • サブスクリプションのURLが YAML ではなく、エラーページやログインページ、空のコンテンツを返している。クライアントがそれをそのまま書き込むと解析できません。
  • クライアントが異常終了したタイミングで設定ファイルへの書き込み中だった場合、ファイルが途中で切れてしまい、不完全な YAML が残る。

対処法は1行ずつ修正するのではなく、クライアントに設定を再構築させることです。

  1. クライアントを完全に終了し、設定ディレクトリ(下表参照)を開く。
  2. ディレクトリ全体をリネームしてバックアップする(例:元の名前に .bak を付ける)。
  3. クライアントを再起動する。デフォルト設定が自動的に再構築される。
  4. サブスクリプションを再度インポートし、正常に起動することを確認したうえで、バックアップから必要なカスタムルールだけを選んで戻す。
クライアントWindows 設定ディレクトリmacOS 設定ディレクトリ
Clash Verge Rev%APPDATA%\io.github.clash-verge-rev.clash-verge-rev~/Library/Application Support/io.github.clash-verge-rev.clash-verge-rev
Clash for Windows%APPDATA%\clash
ClashX Meta~/.config/clash
mihomo カーネル(単体実行)~/.config/mihomo
警告設定ディレクトリをリネームする前に、クライアントを完全に終了しておく必要があります。稼働中のプロセスがファイルハンドルを保持していると、旧設定が書き戻されて再構築に失敗します。

もう1つよくある破損として、キャッシュファイル cache.db が挙げられます。これは Fake-IP マッピングなどの稼働状態を記録しており、異常なシャットダウン後に破損してカーネルが起動直後にクラッシュする原因になることがあります。このファイルは削除するだけで問題ありません。クライアントが自動的に再生成し、設定内容には影響しません。

Windows での解決手順

WebView2 ランタイムを修復する

Clash Verge Rev や Clash Nyanpasu など、Tauri フレームワークを採用したクライアントは、画面描画にシステムの WebView2 コンポーネントを使用しています。WebView2 が欠損・破損していると、ウィンドウが真っ白になったり、起動直後に終了したりするのが典型的な症状です。

「設定 → アプリ → インストールされているアプリ」を開き、WebView2 を検索します。存在する場合は「変更 → 修復」を選択し、存在しない場合はマイクロソフト公式サイトから Microsoft Edge WebView2 Runtime をダウンロードしてインストールし、インストール後にクライアントを再起動してください。Electron 系クライアント(Clash for Windows など)は独自のレンダリングエンジンを内蔵しており WebView2 に依存しないため、この項目はスキップして構いません。

ポートの競合を確認する

デフォルトの混合ポート 7890 が他のプログラムに使用されていると、カーネルは起動に失敗します。コマンドプロンプトで次を実行してください。

netstat -ano | findstr :7890

出力があればそのポートは使用中です。最後の列が使用中プロセスの PID なので、タスクマネージャーの「詳細」タブでその PID を探します。多くの場合、前回終了しきれなかった Clash カーネルが原因なので、そのままプロセスを終了させれば解決します。使用中のプロセスに触れたくない場合は、クライアントの設定で混合ポートを 7897 など空いているポートに変更しても構いません。

残留プロセスを削除する

クライアントが異常終了した後、カーネルプロセスがバックグラウンドで動き続けていることがあり、次回起動時にポートやファイルロックの競合を引き起こします。管理者権限のコマンドプロンプトで次を実行してください。

taskkill /F /IM verge-mihomo.exe
taskkill /F /IM clash-meta.exe
taskkill /F /IM mihomo.exe

実際に使用しているクライアントのカーネルプロセス名に合わせて実行してください。「該当プロセスが見つかりません」と表示された場合は、残留がないという意味なので無視して構いません。

権限とセキュリティソフト

  • TUN モードとサービスモードには管理者権限が必要です。クライアントのアイコンを右クリックして「管理者として実行」を選び、権限が原因かどうかを検証できます。
  • 一部のセキュリティソフトはカーネルの通信をブロックしたり、カーネルの実行ファイルを誤検知して隔離したりします。セキュリティソフトの隔離エリアを確認し、隔離されたファイルを復元したうえで、クライアントのインストールディレクトリを信頼リストに追加してください。
  • インストールパスには日本語や空白以外の特殊文字を含めないようにしてください。一部の旧バージョンは非 ASCII パスの処理が不完全です。

macOS での解決手順

「壊れています」エラーと隔離属性

ブラウザからダウンロードした未公証のアプリには Gatekeeper によって隔離属性が付与され、ダブルクリックすると「壊れています」と表示されてそのまま終了します。ファイル自体は通常問題ないため、隔離属性を解除すれば解決します。「アプリケーション → ユーティリティ → ターミナル」を開き、次を実行してください。

sudo xattr -rd com.apple.quarantine /Applications/Clash\ Verge.app

パスは実際のアプリ名に置き換えてください。ログインパスワードを入力して Enter を押した後、通常どおり起動できます。

チップアーキテクチャの確認

Apple シリコン(M系)には arm64 版インストーラーが、Intel チップには x64 版が対応します。逆のバージョンをインストールした場合の典型的な症状は、Dock アイコンが一瞬跳ねてすぐに終了することで、ターミナルからバイナリを直接実行すると Bad CPU type in executable というエラーが出ます。左上のアップルメニュー →「この Mac について」でチップの種類を確認し、ダウンロードページで対応するアーキテクチャのバージョンに入れ替えてください。

ポートと残留プロセス

Windows と同様に、まずデフォルトポートを確認します。

lsof -i :7890

出力があれば、2列目の PID を指定してプロセスを終了させます。

kill -9 <PID>

プロセス名で残留カーネルを直接終了することもできます:pkill -f mihomo

権限の修復

初回起動時にシステムプロキシ設定を書き込むための認証ダイアログが表示されます。ここで「キャンセル」を選ぶと、以降の起動処理が正常に進まなくなります。また、以前 sudo を使ってクライアントを直接実行したことがある場合、設定ディレクトリの所有者が root に変わってしまい、その後通常権限で起動すると読み書きに失敗することがあります。所有者を修復するには次を実行します。

sudo chown -R $(whoami) ~/Library/Application\ Support/io.github.clash-verge-rev.clash-verge-rev

パスは上表を参照し、実際に使用しているクライアントのディレクトリに置き換えてください。

完全にクリーンアップして再インストールする

個別の修復で解決しない場合は、以下の順序でクリーンな再インストールを行ってください。再インストールで解決できるのは「ローカルデータディレクトリの破損」に類する問題です。サブスクリプション自体の失効やプロキシサービス側の障害はこの範囲外で、そうした問題はクライアントをどれだけクリーンにしても接続できません。

  1. クライアントを終了し、上記の方法でカーネルプロセスが完全に終了していることを確認する。
  2. データディレクトリをリネームしてバックアップする(.bak を付ける)。
  3. 元のデータディレクトリを削除し、旧バージョンをアンインストールする。
  4. 最新版クライアントをインストールし、起動後にサブスクリプションを再インポートする。
  5. まず TUN モードを有効にせず、システムプロキシモードで正常に接続できることを確認する。
  6. カスタム設定を1項目ずつ元に戻し、変更するたびに再起動して、クラッシュの原因となっている具体的な設定項目を特定する。
補足ステップ6が根本原因の特定における最重要ポイントです。ある項目を復元した時点でクラッシュが再現するなら、問題はクライアント本体ではなく、その設定項目にあります。

それでも解決しない場合:ログを収集して調査する

以上の手順で解決しない場合は、クライアントのログレベルを debug に変更してクラッシュを再現し、次の情報を収集してください。

  • OSのバージョン(例:Windows 11 23H2、macOS 15.5)。
  • クライアント名とバージョン番号、およびカーネルの種類(mihomo または Clash Premium)。
  • 完全な再現手順:アイコンをダブルクリックしてからクラッシュするまでの操作を1つずつ記録したもの。
  • クラッシュ前後のログのエラー箇所。末尾30行程度あれば十分な場合が多いです。

これらの情報を持って、クライアントプロジェクトの GitHub Issues ページで検索してみてください。多くの起動クラッシュは既に原因が判明し、修正版が出ています。該当する情報が見つからない場合は、上記のリストを添えて新しい issue を投稿すると、回答を得るまでの時間を大幅に短縮できます。

最新版クライアントをダウンロード

旧バージョンの既知の不具合は、起動クラッシュの典型的な原因です。ダウンロードページでは、各プラットフォームで現在もメンテナンスされている Clash クライアントを、カーネルの種類と対応アーキテクチャ付きで掲載しています。最新版をインストールすれば、修正済みの起動トラブルを一気に解消できます。

Clash をダウンロード