这个仓库用于维护自己的 Clash 及分流规则文件,当前核心配置放在 clash/config/ 下,包含基础线路分组与规则集。
clash/config/base-clash-ruleset.yaml- 代理集配置(
proxy-providers) - 代理组策略(
proxy-groups) - 规则集定义(
rule-providers) - 路由规则(
rules)
- 代理集配置(
clash/ruleset/存放自定义规则文件(由rule-providers拉取/引用)
🤖 人工智能 已设置为优先走 美国自动选择,并在第一位保留回退:
🇺🇸 美国自动选择:type: fallback- 入口探测:
https://www.gstatic.com/generate_204 - 覆盖范围:通过
filter匹配美国节点 - 刷新间隔:
interval: 600
- 入口探测:
🤖 人工智能的候选顺序为:🇺🇸 美国自动选择- 其它地区分组(香港、日本、韩国、新加坡、美国、台湾、欧洲、土耳其、印度、俄罗斯、其他)
🚀 节点选择
如果你希望让 AI 线路永远优先美国延迟回退,可直接按该顺序调整分组即可;后续如需扩展为更多层级回退,可在此组末尾继续添加 DIRECT 或其他 fallback 组。
- 基础区域组仍使用
url-test,用于自动测试响应延迟与可用性。 - 关键用途规则:
🚀 节点选择作为总入口🐟 漏网之鱼兜底全部流量📲 电报消息 / 📈 网络测试 / 🎮 游戏服务 / 🍎 苹果服务 / 🪟 微软服务 / 🇬 谷歌服务按用途分流
- 每次修改
clash/config/base-clash-ruleset.yaml后,确保 Clash 重新加载配置。 - 更新订阅或远程规则前可先检查
rule-providers链接是否可达。 - 对于本地规则文件变化,确认
path目录(如./rule_provider/、./proxy_provider/)存在对应文件或能被规则源自动更新。
fallback组与url-test可共存:上层 select 组(如🤖 人工智能)决定优先级,底层各组决定各自选择逻辑。- 建议在高并发环境中降低无效测试比例:保持较小
interval的fallback/url-test对可用性更敏感的组,避免过度拉低测试效率。
本仓库最近的调整重点:
- 为人工智能分组新增
🇺🇸 美国自动选择(fallback) - 将
🇺🇸 美国自动选择放到🤖 人工智能的第一候选 - 保留原有各国家地区
url-test组,继续作为稳定备选线路
base-clash-ruleset.yaml、2-subscription-clash-rule-set.yaml 和 3-subscription-clash-rule-set.yaml 可以直接作为 Sub-Store 远程文件托管使用,建议按文件分别建立订阅。若你只做规则定制,这些文件本身更推荐只维护 proxy-groups 与 rules,把机场订阅链接留空,避免暴露个人链接。
在 Sub-Store 中按以下方式新增文件:
- 文件选择 > 创建文件
- 类型:
文件 - 来源:
远程 - 地址:粘贴以下对应 URL
- base:
https://raw.githubusercontent.com/Pililink/AirRules/refs/heads/main/clash/config/base-clash-ruleset.yaml - 2-subscription:
https://raw.githubusercontent.com/Pililink/AirRules/refs/heads/main/clash/config/2-subscription-clash-rule-set.yaml - 3-subscription:
https://raw.githubusercontent.com/Pililink/AirRules/refs/heads/main/clash/config/3-subscription-clash-rule-set.yaml
- base:
在该远程文件的 脚本 栏填入以下 JS,可在 Sub-Store 下发给客户端前统一清空订阅地址占位,方便你在本地或其他地方动态注入:
- base:
const yaml = ProxyUtils.yaml.safeLoad($content ?? $files?.[0] ?? '') || {};
if (yaml['proxy-providers']?.['机场1']) {
yaml['proxy-providers']['机场1'].url = '';
}
$content = ProxyUtils.yaml.dump(yaml);- multi:
const yaml = ProxyUtils.yaml.safeLoad($content ?? $files?.[0] ?? '') || {};
if (yaml['proxy-providers']?.['A机场']) {
yaml['proxy-providers']['A机场'].url = '';
}
if (yaml['proxy-providers']?.['B机场']) {
yaml['proxy-providers']['B机场'].url = '';
}
$content = ProxyUtils.yaml.dump(yaml);