モジュール

Chuteは、再利用可能で共有可能なルール、スクリプト、MITMホスト、DNSマッピングで設定を拡張するための外部モジュールファイル(.sgmodule)をサポートしています。モジュールはSurgeモジュール形式に従います。

モジュールは[Module]セクションで定義されます:

[Module]
https://example.com/my-module.sgmodule
/path/to/local-module.sgmodule
~/.chute/custom-module.sgmodule

URLはリモートから取得され、/または~で始まるパスはローカルファイルシステムから読み込まれます。

モジュールファイル構造

.sgmoduleファイルはメイン設定ファイルと同じ構文に従います。サポートされるセクション:

セクション 目的
[MITM] MITM復号リストにホスト名を追加
[Script] JavaScriptスクリプトを登録
[URL Rewrite] URLリライトルールを追加
[Header Rewrite] ヘッダーリライトルールを追加
[Rule] ルーティングルールを追加
[Host] DNSホスト-IPマッピングを追加

モジュールメタデータ

モジュールにはメタデータディレクティブ(#!で始まる行)を含めることができます:

#!name = My Custom Module
#!desc = Blocks ads and trackers for example.com
#!system = ios,macos
ディレクティブ 説明
#!name モジュール名(UIに表示)
#!desc モジュールの説明
#!system プラットフォームフィルタ: iosmacos(カンマ区切り)

#!systemはモジュールエディタに表示される情報メタデータです。現在は読み込みを制限せず、モジュールは全てのプラットフォームで適用されます。

モジュール例

#!name = Ad Block Module
#!desc = Block common ad domains
#!system = ios,macos

[Rule]
DOMAIN-SUFFIX,doubleclick.net,REJECT
DOMAIN-SUFFIX,googlesyndication.com,REJECT
DOMAIN-SUFFIX,googleadservices.com,REJECT

[Host]
localhost = 127.0.0.1

[MITM]
hostname = *.google-analytics.com

[URL Rewrite]
^https://example\.com/old-api https://example.com/new-api 302

モジュールライフサイクル

  • モジュールはメイン設定の解析後に読み込まれます。
  • モジュールからのルール、スクリプト、MITMホスト、DNSホストはランタイムマネージャーに追加されます。
  • モジュールが削除または無効化されると、その全てのルール、スクリプト、ホストが登録解除されます。
  • リモートモジュールのコンテンツはトンネル起動時に取得され、設定の再読み込みで[Module]のURLリストが変更された場合にのみ再取得されます。
S. Smart Rabbit LLC © All Rights Reserved            updated 2026-07-28 17:49:04

results matching ""

    No results matching ""