Skip to content
PililinkPublic

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

1 watching

Forks

Latest commit

 

History

163 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AirRules

这个仓库用于维护自己的 Clash 及分流规则文件,当前核心配置放在 clash/config/ 下,包含基础线路分组与规则集。

当前配置结构

  • clash/config/base-clash-ruleset.yaml(及其变体 2-subscription-clash-rule-set.yaml = AB、2-subscription-ac-clash-rule-set.yaml = AC、3-subscription-clash-rule-set.yaml = ABC,四份内容对齐、需同步修改)
    • 代理集配置(proxy-providers)
    • 代理组策略(proxy-groups)
    • 规则集定义(rule-providers)
    • 路由规则(rules)
  • clash/ruleset/ 存放自维护规则集;当前 Clash 模板的通用规则源以 ACL4SSR Clash/Providers 为主,代理域名改用 Loyalsoldier,微软/谷歌/电报/Steam/Epic 服务分类改用 blackmatrix7,PS/PSN 域名改用本仓库 psn.list(不再依赖第三方 Sony / PlayStation 规则集)

关键策略说明

人工智能分组(🤖 人工智能)优先策略

🤖 人工智能 已设置为优先走 自建 AI 出口,其次 美国节点:

  • 🇺🇸 美国节点:type: url-test
    • 入口探测:https://www.gstatic.com/generate_204
    • 覆盖范围:通过 filter 匹配美国节点
    • 刷新间隔:interval: 120
  • 🤖 人工智能 的候选顺序为(base 模板;AB / AC / ABC 模板为 🛫 AI出口节点 → 各机场全线路 → 🚀 节点选择):
    1. 🛫 AI出口节点
    2. 🇺🇸 美国节点
    3. 其它地区分组(香港、日本、韩国、新加坡、台湾、欧洲、土耳其、印度、俄罗斯、其他)
    4. 🚀 节点选择

AI 分组默认使用自建 AI 出口(见下文「填充自建 AI 出口」);未填 AI出口 订阅时 🛫 AI出口节点 为 COMPATIBLE(等同直连),需在面板中手动改选 🇺🇸 美国节点 等线路。

Claude 细分分组(🧠 Claude)

四个 Clash 模板(base / AB / AC / ABC)在 🤖 人工智能 基础上把 Claude / Anthropic 单独拆出:

  • 规则:clash/ruleset/claude.list(provider myclaude),置于 RULE-SET,myai 之前命中;ai.list 不再包含 Claude 域名
  • 分组:🧠 Claude 为 select,候选与 🤖 人工智能 相同,可独立选择线路(如 Claude 固定走 🛫 AI出口节点,其他 AI 服务仍走机场节点)

AI 规则覆盖范围(补充完善)

自维护的 AI 命中源已在各端统一补齐(clash/ruleset/ai.list ↔ sing-box/rules_json/ai.json 同源镜像),覆盖:

  • OpenAI / ChatGPT:openai.com、chat.com、chatgpt.com、livekit.cloud、oaistatic.com、oaistatsig.com、oaiusercontent.com、auth0.com、stripe.com、sentry.io 等依赖与风控域名
  • Anthropic / Claude:anthropic.com、claude.ai、claude.com、clau.de、claudemcpclient.com、claudemcpcontent.com、claudeusercontent.com 等(Clash 端已拆至 clash/ruleset/claude.list,走 🧠 Claude;sing-box ai.json 仍保留)
  • xAI / Grok:grok.com、grok.x.com、x.ai、grokipedia.com
  • Google AI 全量:aistudio.google.com、notebooklm.google.com、makersuite.google.com、ai.google.dev、deepmind.google、generativelanguage.googleapis.com、aiplatform.googleapis.com、aida.googleapis.com、aisandbox-pa.googleapis.com、notebooklm-pa.googleapis.com、antigravity.google、jules.google、labs.google、cloudaicompanion.googleapis.com 等
  • AI 编程与 Agent:OpenCode (opencode.ai)、Command Code (commandcode.ai / commandcode.dev)、Cursor (cursor.com / cursor.sh / cursorapi.com)、Windsurf & Codeium (codeium.com / windsurf.ai / windsurf.com)、Devin & Cognition (devin.ai / cognition.ai)、Bolt.new、Lovable (lovable.dev)、v0 (v0.dev)、Aider (aider.chat)、Continue (continue.dev)、Augment Code (augmentcode.com)、CodeRabbit (coderabbit.ai)、JetBrains AI (jetbrains.ai / grazie.ai)、Tabnine、MarsCode、Trae、Qoder、Kiro、Zed、Sourcegraph
  • 模型推理 API 与云平台:Groq (groq.com)、Cerebras (cerebras.ai)、Together AI (together.ai)、Fireworks AI (fireworks.ai)、DeepInfra (deepinfra.com)、OpenRouter (openrouter.ai)、Mistral AI (mistral.ai)、Cohere (cohere.com / cohere.ai)
  • 主流国外 AI 对话 / 搜索 / 社区:Perplexity (perplexity.ai)、Poe (poe.com)、Character.AI (character.ai)、Phind (phind.com)、DuckDuckGo AI (duck.ai)、Meta AI (meta.ai)、Dify (dify.ai)、Kimi / Moonshot (kimi.ai / moonshot.ai)
  • 中国厂商海外版:WorkBuddy / CodeBuddy 国际版 (workbuddy.ai / codebuddy.ai)、Qwen 国际站 (qwenlm.ai)、MiniMax 国际版 (minimax.io / hailuoai.video)、豆包海外版 Dola / 旧 Cici (dola.com / ciciai.com)、扣子国际版 (coze.com)、可灵国际站 (kling.ai / klingai.com)、即梦海外版 (dreamina.capcut.com)、Manus、Skywork、阶跃国际版 (stepfun.ai)、01.AI、PixVerse、Vidu、Genspark。国内服务不进 AI 组:z.ai、qwen.ai、dashscope-intl.aliyuncs.com 和 CodeBuddy 的 myqcloud.com COS 桶交给后面的 ChinaDomain 直连;workbuddy.cn、codebuddy.cn、minimaxi.com、stepfun.com、bigmodel.cn 以及 tencent.com / myqcloud.com 整域也不写入
  • 图像 / 视频 / 音乐 / 语音多模态 AI:Midjourney (midjourney.com)、Sora (sora.com)、Runway (runway.com / runwayml.com)、Luma AI (lumalabs.ai)、Pika (pika.art)、Krea AI (krea.ai)、Ideogram (ideogram.ai)、Recraft (recraft.ai)、Black Forest Labs (blackforestlabs.ai)、Stability AI (stability.ai)、ElevenLabs (elevenlabs.io)、Suno (suno.com / suno.ai)、Udio (udio.com)、Jasper AI (jasper.ai)、NovelAI (novelai.net)、Leonardo、HeyGen、D-ID、Synthesia、Clipdrop、Tripo3D

模型下载站不走 🤖 人工智能 分组,始终走 🪜 代理域名:HuggingFace(hf.co / hf.space / huggingface.co)、Ollama(ollama.com)、Replicate(replicate.com / replicate.delivery)流量大,避免打满 AI 组的美区自动优选。Clash 经由 proxy.list,sing-box 经由路由内联规则置于 AI 规则之前。

Google Antigravity / Cloud Code 地区风控:daily-cloudcode-pa.sandbox.googleapis.com、sandbox.googleapis.com、cloudcode-pa.googleapis.com 必须先于 UnBan、GoogleCN 等直连规则命中 AI 组,避免 API 以本地出口访问触发服务端地区限制(与 OAuth gstatic.com/recaptcha.net 同理)。

  • Clash:内联进 rules 且置于 RULE-SET,myai 之前
  • sing-box:通过本地 myai(rules_srs/ai.srs)在第三方 DustinWin ai 规则之前命中
  • Loon / Surfboard:内联规则置于第三方 AI 规则源之前

其他分组

  • 基础区域组仍使用 url-test,用于自动测试响应延迟与可用性。
  • 关键用途规则:
    • 🚀 节点选择 作为总入口
    • 🐟 漏网之鱼 兜底全部流量
    • 📲 电报消息 / 🎮 游戏服务 / 🕹️ PSN 服务 / 🍎 苹果服务 / 🪟 微软服务 / 🇬 谷歌服务 按用途分流(🕹️ PSN 服务 默认 REJECT,见下文「PSN 服务分组」)
    • 规则源使用 ACL4SSR 的 LocalAreaNetwork / UnBan / BanAD / BanProgramAD / ChinaDomain / ChinaIp 以及常用服务规则集
    • 代理域名改用 Loyalsoldier/clash-rules proxy.txt(behavior: domain,每日更新)替代 ACL4SSR ProxyGFWlist
    • Microsoft / Google(No_Resolve) / Telegram(No_Resolve) / Steam / Epic 改用 blackmatrix7:ACL4SSR 这几类已 1–3 年未更新;.cn 域名由前置的 ChinaDomain(含 DOMAIN-SUFFIX,cn)直连,不受影响;blackmatrix7 Microsoft 含 xbox 域名,game-xbox 已前移到 microsoft 之前
    • 🎮 游戏服务 补充 blackmatrix7 平台规则(No_Resolve):Blizzard、Battle、EA、Riot、Ubisoft、UBI、Rockstar、HoYoverse、Garena、Gog、2KGames、Supercell;其中国服域名(.cn、163.com、netease.com)由前置 ChinaDomain 直连。PS/PSN 已从该组拆出,见下文「PSN 服务分组」
    • clash/ruleset/speedtest.list 补充 blackmatrix7 Speedtest 未覆盖的测速域名(来源 SukkaW),与上游同归 📈 网络测试
    • clash/ruleset/ignore.list 和 clash/ruleset/proxy.list 作为自定义直连/代理覆盖规则,优先级高于 ACL4SSR 通用代理规则

PSN 服务分组(🕹️ PSN 服务)

PS/PSN 相关规则原先由 game-sony(ACL4SSR Ruleset/Sony.yaml)与 game-playstation(blackmatrix7 PlayStation_No_Resolve)指向 🎮 游戏服务,但这两条规则排在 - RULE-SET,cn,🇨🇳 直连域名 之后——而 ACL4SSR ChinaDomain 恰好也含 playstation.com / playstation.net / playstationnetwork.com / sony.com / sonyentertainmentnetwork.com,命中即定向 🇨🇳 直连域名([DIRECT]),所以这两条规则从未生效过(死规则)。

现在改为:

  • 新增 🕹️ PSN 服务(type: select,proxies: [REJECT, DIRECT, 🎮 游戏服务],首项即默认选中 REJECT),分组放在 🎮 游戏服务 之前:REJECT = 断网(默认)、DIRECT = 恢复直连、🎮 游戏服务 = 跟随游戏线路(需要给 PSN 走代理/加速时选它)。注:图标用 🕹️(摇杆)而非 🎮,与 🎮 游戏服务 在面板里一眼区分

  • PS 域名统一为一条自维护规则集(mypsn),前置到 RULE-SET,cn 之前:

    规则 来源 内容
    RULE-SET,mypsn 自维护 clash/ruleset/psn.list 12 条(10 条 suffix + 2 条通配):PSN 核心(playstation.com / playstation.net / playstationnetwork.com / sonyentertainmentnetwork.com)、Sony 官方域(sony.com / sony.com.cn)、PS 事业部(sonyinteractive.com / sie.com / scea.com)、.playstation 顶级域,以及 DOMAIN-WILDCARD,playstation.* + *.playstation.*
  • PS 域名极简:对比 meta-rules-dat geosite/playstation、v2fly data/playstation、blackmatrix7 PlayStation_No_Resolve,PSN 核心在各家都只是 playstation.com / playstation.net / playstationnetwork.com / sonyentertainmentnetwork.com 这 4 条(meta-rules-dat 与 v2fly 另加裸 playstation,blackmatrix7 只有这 4 条),因此不需要引宽泛的第三方列表

  • 各国/地区域名靠通配覆盖:在候选中实测以下 20 个 playstation.<ccTLD> 有 A 记录(.co.uk、.de、.fr、.ca、.nl、.ch、.se、.no、.fi、.dk、.cz、.ru、.ie、.co.nz、.com.tr、.co.kr、.co.in、.com.ph、.com.ar、.com.cn;未穷举所有 ccTLD),DOMAIN-SUFFIX,playstation.com 盖不住它们,因此用 DOMAIN-WILDCARD,playstation.*(地区顶级域本身)+ *.playstation.*(其子域)。mihomo 的 * 匹配零或多个字符且包含点(见 component/wildcard/wildcard.go),故 playstation.* 能命中 playstation.co.uk。代价:含 playstation 作为中间标签的第三方域名也会被拦(如 x.playstation.example.com),实际不存在此类站点

  • sie.com 实测 301 到 sonyinteractive.com(标题 Sony Interactive Entertainment),不拦等于给已拦的 sonyinteractive.com 留后门

  • 原来的 game-sony(ACL4SSR Ruleset/Sony.yaml)与 game-playstation(blackmatrix7 PlayStation_No_Resolve)两个 provider 及其规则已删除:两家并集去重后只有 5 条(4 条 PSN + sony.com),blackmatrix7 那个文件头写着 TOTAL: 4、最近一次提交为 2025-06 时内容仍是这 4 条,上游自动更新价值低于“单一可见来源”。上游地址已作为注释写入 psn.list 头部,新增域名时人工比对后补一行

  • sony.com 与 sony.com.cn 也归入 🕹️ PSN 服务(有意为之):会连带阻断 Sony 官网 / 音乐 / 影业 / 相机页面 / Sony 中国;不需要时删掉 psn.list 里对应行

  • 面板把 🕹️ PSN 服务 改选 DIRECT 即可临时恢复 PSN,改选 🎮 游戏服务 则 PSN 跟随游戏线路出网;不用改配置。注意 🎮 游戏服务 默认首项是 🎯 全球直连,选它等于直连,要先在该组里选好节点才有意义

CI 已加断言:mypsn provider 必须存在、RULE-SET,mypsn 必须早于 RULE-SET,cn、不得再引用 game-sony / game-playstation、🕹️ PSN 服务 分组必须存在且 proxies 严格等于 [REJECT, DIRECT, 🎮 游戏服务](并校验 🎮 游戏服务 真实存在,避免悬空引用导致 Mihomo 拒载)、psn.list 必须含全部域名与两条通配且不得混入其他规则类型。

范围:🕹️ PSN 服务 / psn.list 仅在 Clash 侧维护,不做 Loon / Surfboard / sing-box 镜像(有意为之,与 ai.list ↔ sing-box/rules_json/ai.json 的双向镜像策略不同)。那边 PS 域名仍按原分流规则走(可正常联网)。free-clash-rule-set.yaml 是精简的免费节点链路池模板,不含游戏/平台分组,也未接入 PSN 规则。

🕹️ PSN 服务 只覆盖域名维度:PSN 登录 / 商店 / 下载更新 / 联机认证会按该组当前选择(默认 REJECT)处理,但 PS5 上的 YouTube、Netflix、浏览器等第三方应用不受影响。要连第三方应用一起断、或者要按设备(而不是按域名)来封,推荐在路由器上按该设备的 MAC 地址封禁:比 Clash 的 SRC-IP-CIDR 更精准,不受 DHCP 换 IP 影响,也不用关设备 IPv6。

使用方式(简要)

  • 每次修改任一 Clash 模板(base-clash-ruleset.yaml,或 AB / AC / ABC 的 2- / 3-subscription-*.yaml)后,确保 Clash 重新加载配置;公共规则(如 PSN、AI)需四个模板同步,CI 会对此做断言。
  • 自维护规则集(psn.list / ai.list / claude.list / ignore.list / proxy.list)是通过 raw.githubusercontent.com/<repo>/main/... 拉取的,改动必须先 push 到 main 才会被订阅拉到;各 provider 的 interval 为 7200 秒(2 小时),本地测试可先将 path 指向本地文件。
  • 更新订阅或远程规则前可先检查 rule-providers 链接是否可达。
  • 对于远程规则文件变化,确认 path 目录(如 ./rule_provider/、./proxy_provider/)存在对应文件或能被规则源自动更新。

兼容建议

  • fallback 组与 url-test 可共存:上层 select 组(如 🤖 人工智能)决定优先级,底层各组决定各自选择逻辑。
  • 建议在高并发环境中降低无效测试比例:保持较小 interval 的 fallback/url-test 对可用性更敏感的组,避免过度拉低测试效率。

本地记录

本仓库最近的调整重点:

  • 将 🇺🇸 美国节点 放到 🤖 人工智能 的第一候选
  • 保留原有各国家地区 url-test 组,继续作为稳定备选线路
  • 修复规则模式下 Google 账号登录点击无反应(XTLS/Xray-core#1618):ACL4SSR UnBan(直连)含 ssl.gstatic.com/www.gstatic.com 等,且 google-cn(直连)含 recaptcha.net,均排在 Clash 模板的 google 规则集之前,导致 OAuth 登录页静态资源/验证组件走直连而 accounts.google.com 走代理,出口 IP 不一致被 Google 风控拦截(全局模式正常)。已在各端把 gstatic.com、recaptcha.net 强制走代理(Clash 内联到 🇬 谷歌服务并置于 UnBan 之前,Surfboard/Loon/sing-box 走各自代理列表),保证与 accounts.google.com 同出口。url-test 探测不受影响(健康检查直接走被测节点、不经过路由规则)
  • 新增 PT / tracker 直连规则:采用 blackmatrix7/ios_rule_script PrivateTracker(当前 248 条),覆盖常见 PT 站点和 tracker / announce 域名;Clash、Loon、Surfboard 直接引用上游规则,sing-box 使用同源已编译快照,均在通用分流规则之前匹配为直连,避免 Fake-IP、代理及代理 DNS 影响私有站汇报和 IPv6 announce
  • 统一补全并镜像国外 AI 命中源(clash/ruleset/ai.list ↔ sing-box/rules_json/ai.json):新增 Claude/Anthropic、Google AI 全量(AI Studio/NotebookLM/MakerSuite/DeepMind/generativelanguage/aiplatform/aida/aisandbox-pa/notebooklm-pa)以及 openrouter/perplexity/meta.ai/mistral/cohere/cursor/jetbrains/kimi/moonshot/grokipedia 等国外平台;sing-box 本地 myai(rules_srs/ai.srs)已接入路由并在第三方 DustinWin ai 规则之前命中(原先 rules_json/openai.json 已编译但未接线的孤儿文件删除)
  • Google Antigravity / Cloud Code 地区风控:daily-cloudcode-pa.sandbox.googleapis.com、sandbox.googleapis.com、cloudcode-pa.googleapis.com、aiplatform.googleapis.com 等必须在 UnBan / GoogleCN 等直连规则之前命中 AI 组,避免 API 以本地出口触发服务端地区限制;Clash 内联前置、sing-box 走本地 myai 前置、Loon/Surfboard 内联前置
  • 模型下载站固定走 🪜 代理域名 不进 🤖 人工智能 分组:HuggingFace(hf.co/hf.space/huggingface.co)、Ollama(ollama.com)、Replicate(replicate.com/replicate.delivery)流量大,已在所有 AI 命中源显式排除(Clash 经 proxy.list、sing-box 经路由内联规则置于 AI 规则之前),避免打满美区自动优选
  • CI 校验新增 AI 路由约束:clash/ruleset/ai.list 与 sing-box/rules_json/ai.json 不得包含 HF 域名、proxy.list 必须含 HF、sing-box myai 路由必须先于第三方 ai 规则
  • 修复 PS/PSN 规则长期失效并统一收敛到单一来源:game-sony / game-playstation 原先排在 RULE-SET,cn 之后,而 ACL4SSR ChinaDomain 含同套 playstation.* / sonyentertainmentnetwork.com / sony.com 域名,命中即直连 → 两条规则从未生效。现新增 🕹️ PSN 服务 分组与自维护 clash/ruleset/psn.list(12 条:10 条 DOMAIN-SUFFIX + 2 条 DOMAIN-WILDCARD,在两家上游基础上补了 playstation.com.cn / sony.com.cn / sonyinteractive.com / sie.com / scea.com 与地区域名通配),删除两个第三方 Sony / PlayStation provider;规则前置到 cn 之前,CI 新增顺序、存在性、组内候选与列表内容断言
  • 补充中国厂商海外版 AI 命中:WorkBuddy / CodeBuddy 国际版及 Qwen、Z.ai、MiniMax、Dola、Coze、可灵、Dreamina、Manus 等海外产品域名;国内 .cn 站与腾讯云整域不写入

Sub-Store 使用说明(base/AB/AC/ABC)

base-clash-ruleset.yaml、2-subscription-clash-rule-set.yaml(AB)、2-subscription-ac-clash-rule-set.yaml(AC)和 3-subscription-clash-rule-set.yaml(ABC)可以直接作为 Sub-Store 远程文件托管使用,建议按文件分别建立订阅。若你只做规则定制,这些文件本身更推荐只维护 proxy-groups 与 rules,把机场订阅链接留空,避免暴露个人链接。

1. 新增远程文件

在 Sub-Store 中按以下方式新增文件:

  • 文件选择 > 创建文件
  • 类型:文件
  • 来源:远程
  • 地址:粘贴以下对应 URL
    • base: https://raw.githubusercontent.com/Pililink/AirRules/refs/heads/main/clash/config/base-clash-ruleset.yaml
    • 2-subscription(AB): https://raw.githubusercontent.com/Pililink/AirRules/refs/heads/main/clash/config/2-subscription-clash-rule-set.yaml
    • 2-subscription(AC): https://raw.githubusercontent.com/Pililink/AirRules/refs/heads/main/clash/config/2-subscription-ac-clash-rule-set.yaml
    • 3-subscription(ABC): https://raw.githubusercontent.com/Pililink/AirRules/refs/heads/main/clash/config/3-subscription-clash-rule-set.yaml

2. 编辑文件脚本(动态填充订阅地址)

在 Sub-Store 中创建所需的机场订阅或组合订阅后,复制它们面向 Clash/Mihomo 的完整下载地址。脚本不再接收订阅名称,也不再使用 base 拼接地址,而是把完整 HTTP(S) URL 原样写入 proxy-providers。

完整地址示例:

  • 普通订阅:https://sub.example.com/token/download/Qcloud?target=ClashMeta
  • 组合订阅:https://sub.example.com/token/download/collection/MyGroup?target=ClashMeta

脚本参数对应关系:

  • a -> A机场
  • b -> B机场
  • c -> C机场
  • sub -> 机场1

完整地址通常包含私密 token,只应保存在私有 Sub-Store 配置中,不要提交到仓库或分享完整的脚本操作 URL。由于脚本参数位于 URL 片段中,请先对每个完整地址执行 encodeURIComponent。例如上面的普通订阅应写成:

https%3A%2F%2Fsub.example.com%2Ftoken%2Fdownload%2FQcloud%3Ftarget%3DClashMeta

文件脚本地址格式:

  • 2-subscription(AB): https://raw.githubusercontent.com/Pililink/AirRules/refs/heads/main/clash/config/sub-store-fill-clash-providers.js#a=<A完整URL编码>&b=<B完整URL编码>#noCache
  • 2-subscription(AC): https://raw.githubusercontent.com/Pililink/AirRules/refs/heads/main/clash/config/sub-store-fill-clash-providers.js#a=<A完整URL编码>&c=<C完整URL编码>#noCache
  • 3-subscription(ABC): https://raw.githubusercontent.com/Pililink/AirRules/refs/heads/main/clash/config/sub-store-fill-clash-providers.js#a=<A完整URL编码>&b=<B完整URL编码>&c=<C完整URL编码>#noCache
  • base: https://raw.githubusercontent.com/Pililink/AirRules/refs/heads/main/clash/config/sub-store-fill-clash-providers.js#sub=<完整URL编码>#noCache

AC / ABC / AB 模板中的 A / B / C 机场全线路保持手动选择:A全线路自选、B全线路自选、C全线路自选 直接列出对应机场节点供自选,不做 url-test 自动优选。

同一个 Sub-Store 文件只保留一个 Clash 模板来源;base、2-subscription(AB)、2-subscription-ac(AC)、3-subscription(ABC)需要分别建文件,避免多个完整 YAML 被拼接后产生重复顶层键。

3. 可选:注入 Tailscale 出站

机场订阅填完后,可以再给同一个 Sub-Store 文件追加独立脚本,把 Mihomo type: tailscale 节点写入 proxies,并放到 🏠 家庭网络 第一位。这不是 proxy-providers URL,也不会复用本机官方 Tailscale 客户端。

推荐地址(不带密钥):

https://raw.githubusercontent.com/Pililink/AirRules/refs/heads/main/clash/config/sub-store-add-tailscale-proxy.js#noCache

常用参数:

  • ts_hostname / hostname:Tailnet 设备名,默认 mihomo-home
  • ts_state_dir / state-dir:本机 tsnet 状态目录,默认 ./tailscale
  • ts_dialer_proxy / dialer-proxy:控制面/DERP 出口,默认 DIRECT
  • ts_group / group:挂载的策略组,默认 🏠 家庭网络
  • ts_auth_key / auth-key:可选。仅私有 Sub-Store 使用;不填则首次命中时从 Mihomo 日志打开登录 URL

示例:

https://raw.githubusercontent.com/Pililink/AirRules/refs/heads/main/clash/config/sub-store-add-tailscale-proxy.js#ts_hostname=mihomo-home&ts_dialer_proxy=DIRECT#noCache

模板会优先把 .ts.net MagicDNS 域名交给 🏠 家庭网络;注入 Tailscale 出站后,由内嵌 tsnet 完成域名解析和连接。家中 Mac mini 仍需自行发布并批准子网路由后,Clash 才能访问家庭 LAN。不要把 auth-key 提交到公开仓库。

4. 可选:填充自建 AI 出口

四个 Clash 模板(base / AB / AC / ABC)内置 AI出口 proxy-provider 以及两个策略组:

  • 🛫 AI出口节点:fallback,只收录 AI出口 订阅中的节点,多个节点时按订阅顺序取首个可用节点,失效自动切换下一个;位于 🤖 人工智能 / 🧠 Claude 首位作为默认
  • 🔗 AI前置节点:AI 出口节点的上游线路,通过 provider override.dialer-proxy 链式出站(SOCKS5 为明文协议,不宜从国内直连),建议选与出口同地区的线路;末尾 🎯 全球直连 表示出口节点不经前置直接连接(适合加密协议出口或境外网络环境)

在 Sub-Store 中新建一个只含该节点的订阅,把它的 ClashMeta 下载地址编码后传给独立脚本,追加在机场填充脚本之后:

https://raw.githubusercontent.com/Pililink/AirRules/refs/heads/main/clash/config/sub-store-fill-ai-provider.js#ai=<AI订阅完整URL编码>#noCache

参数:

  • ai / ai_url:AI 出口订阅的完整 HTTP(S) 地址(需 encodeURIComponent)
  • ai_dialer_proxy / dialer-proxy:可选,改写链式前置,须为模板中已有的策略组名(或 DIRECT),默认 🔗 AI前置节点
  • ai_provider / provider:可选,provider 名称,默认 AI出口

未填 ai 时 🛫 AI出口节点 为 COMPATIBLE(等同直连),而它是 🤖 人工智能 / 🧠 Claude 的默认项,需在面板中将这两个组改选为其他线路。订阅地址可能含节点账号密码,只保存在私有 Sub-Store 中。

5. 完整示例:base 模板

base 只有一个机场 provider(机场1),各地区分组(🇺🇸 美国节点 等)按节点名从 机场1 中筛选。

  1. 新增远程文件,地址:

    https://raw.githubusercontent.com/Pililink/AirRules/refs/heads/main/clash/config/base-clash-ruleset.yaml

  2. 在同一个文件上依次添加文件脚本(① 必须放在最前,② ③ 顺序不限):

    • ① 填充机场订阅(必填),sub 对应 机场1:

      https://raw.githubusercontent.com/Pililink/AirRules/refs/heads/main/clash/config/sub-store-fill-clash-providers.js#sub=<机场订阅完整URL编码>#noCache

    • ② 填充自建 AI 出口(可选),出口节点不经前置时追加 &ai_dialer_proxy=DIRECT:

      https://raw.githubusercontent.com/Pililink/AirRules/refs/heads/main/clash/config/sub-store-fill-ai-provider.js#ai=<AI订阅完整URL编码>#noCache

    • ③ 注入 Tailscale 出站(可选),写入 🏠 Tailscale 并放到 🏠 家庭网络 第一位:

      https://raw.githubusercontent.com/Pililink/AirRules/refs/heads/main/clash/config/sub-store-add-tailscale-proxy.js#ts_hostname=mihomo-home&ts_dialer_proxy=DIRECT#noCache

  3. 复制该文件在 Sub-Store 中的下载地址(https://<Sub-Store 地址>/<路径>/api/file/<文件名>),导入 Clash Verge / Mihomo。

导入后在面板中确认:

  • 🤖 人工智能 / 🧠 Claude:默认 🛫 AI出口节点;未添加脚本 ② 时改选 🇺🇸 美国节点 等线路
  • 🕹️ PSN 服务:默认 REJECT(PSN 登录 / 商店 / 更新 / 联机全不可用);要放行改选 DIRECT,要让 PSN 跟随游戏线路改选 🎮 游戏服务
  • 🔗 AI前置节点:选与出口同地区的线路
  • 🏠 家庭网络:添加脚本 ③ 后应为 🏠 Tailscale;模板内置家庭网段为 192.168.31.0/24、192.168.100.0/24,其他网段需自行修改模板规则

不需要家庭网络的设备可另建一份不添加脚本 ③ 的文件。订阅地址与 ts_auth_key 只保存在私有 Sub-Store 中。

6. 可选:新增自定义分流分组

不改模板,在 Sub-Store 文件上追加脚本即可新增一个 select 策略组,并为它挂上一个或多个规则源(放在机场填充脚本之后;需要多个分组时重复添加该脚本):

https://raw.githubusercontent.com/Pililink/AirRules/refs/heads/main/clash/config/sub-store-add-rule-group.js#name=<分组名URL编码>&url=<规则源URL编码>#noCache

参数:

  • name / group:分组名称(必填),如 📺 Twitch;与已有分组重名时报错
  • url / urls:规则源完整 HTTP(S) 地址(必填),多个用 | 分隔;可逐个 encodeURIComponent 后再用 | 连接
  • like:复制候选的分组,默认 🚀 节点选择
  • before_group:新分组插在哪个分组之前,默认 🐟 漏网之鱼(不存在时追加到末尾)
  • before_rule:规则插在哪条规则之前(按前缀匹配),默认 RULE-SET,proxy,,即先于 🪜 代理域名 命中;cn 等直连规则仍优先
  • behavior / format:默认按扩展名识别,.yaml/.yml 为 yaml、.mrs 为 mrs(behavior 默认 domain)、其他为 text;behavior 默认 classical
  • interval:规则更新间隔(秒),默认 86400
  • no_resolve:为 true 时规则追加 ,no-resolve

每个规则源生成一个 rg-<分组名ASCII部分> rule-provider(多个时追加 -1、-2;分组名无 ASCII 字符时使用哈希;与已有 provider 重名时自动追加序号)。

同一文件可挂载多次该脚本,每次新增一个分组:后挂的脚本在前一个结果上继续追加,分组按挂载顺序排在 before_group 之前,规则也按挂载顺序排在 before_rule 之前(先挂的先命中);like 也可以指定先挂的自定义分组。示例:新增 📺 Twitch,规则源为 blackmatrix7 Twitch:

https://raw.githubusercontent.com/Pililink/AirRules/refs/heads/main/clash/config/sub-store-add-rule-group.js#name=%F0%9F%93%BA%20Twitch&url=https%3A%2F%2Fraw.githubusercontent.com%2Fblackmatrix7%2Fios_rule_script%2Fmaster%2Frule%2FClash%2FTwitch%2FTwitch_No_Resolve.yaml#noCache

Sub-Store 使用说明(Loon AC)

Loon AC 配置也可以作为 Sub-Store 远程文件,并通过文件脚本动态填充 A/C 机场地址,避免把真实订阅写入公开模板。

1. 新增远程文件

在 Sub-Store 文件管理中创建一个远程文件,地址填写:

https://raw.githubusercontent.com/Pililink/AirRules/refs/heads/main/loon/config/2-subscription-ac-loon-rule.lcf

2. 添加文件脚本

复制 A/C 订阅面向 Loon 的完整 HTTP(S) 下载地址。脚本不再接收订阅名称,也不再使用 base 拼接地址,而是原样写入 [Remote Proxy]。

完整地址示例:

  • 普通订阅:https://sub.example.com/token/download/Qcloud?target=Loon
  • 组合订阅:https://sub.example.com/token/download/collection/MyGroup?target=Loon

参数对应关系:

  • a -> A机场
  • c -> C机场

完整地址通常包含私密 token,只应保存在私有 Sub-Store 配置中。由于脚本参数位于 URL 片段中,请先对每个完整地址执行 encodeURIComponent,再添加文件脚本:

https://raw.githubusercontent.com/Pililink/AirRules/refs/heads/main/loon/config/sub-store-fill-loon-proxies.js#a=<A完整URL编码>&c=<C完整URL编码>#noCache

处理完成后,复制该文件在 Sub-Store 中的下载地址,将它作为 Loon 配置使用。不要把真实机场订阅地址提交到公开仓库。

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages