Skip to content
Public template

Latest commit

 

History

364 Commits

Folders and files

Repository files navigation

XVSVTsama

XVSVT's Mihomic Config

自用 · 路由配置 · 远程覆写脚本

License Last Commit Repo Size Stars Homepage

YAML YAML Syntax JavaScript JavaScript Syntax Mihomo Real Core

远程覆写地址 · YAML 说明 · JavaScript 说明 · dns-host背景说明 · 规则集重合 · 更新需知 · 致谢 · Star History · 免责声明


🔗 远程覆写脚本地址

默认远程覆写脚本地址(代码块右上角可直接复制):

https://raw.githubusercontent.com/XVSVTsama/XVSVT-Clash-Config/refs/heads/main/script_override.js


🧱 YAML 说明


mihomo.yaml 是本仓库的基准配置模板,同时也是覆写脚本合并时使用的内嵌模板:一份不含任何节点的完整配置骨架,不可直接使用它。

🗂 分流组结构(按 mihomo.yaml 定义)

策略组名称 默认行为 / 触发条件 注意事项
🌍 PROXY 未命中的所有默认海外流量 可选手动、自动或负载均衡
🔄 负载均衡 采用 sticky-sessions (粘性会话) 策略 保证同一域名短时间内 IP 不变
👉 手动切换 手动选择特定节点 YAML 与 JS 均使用 include-all,纳入顶层节点与 provider 节点
♻️ 自动选择 url-test 自动测试并选择延迟最低的节点 容差设置为 50ms;节点由原生 include 字段引入
🍎 海外苹果 未被前置直连规则匹配的 Apple 域名/IP 固定策略项与动态节点并存;echs_direct 等通用直连规则优先
💠 海外微软 未被前置直连规则匹配的 Microsoft 域名/IP 固定策略项与动态节点并存;echs_direct 等通用直连规则优先
🎮 Steam平台(非下载/CDN) Steam 域名/IP 规则 default-selected: DIRECT;命中前置直连规则的国内游戏/下载会提前直连
📲 Telegram 匹配进程名、Telegram 域名与 CIDR 规则集 节点由 YAML/JS 的原生 include 字段引入
🎮 Games-Global 国际服游戏流量 default-selected: 🎮 Steam平台(非下载/CDN),保留嵌套组并动态引入节点
✖️ Twitter filter 匹配住宅/美国系命名节点,排除香港/新加坡节点 🚨 节点命名不符将导致此策略组为空!
🤖 AI大模型 filter 匹配住宅/美国系命名节点,排除香港/新加坡节点 🚨 节点命名不符将导致此策略组为空!
🎵 TikTok filter 匹配住宅/美国系命名节点,排除香港/新加坡节点 🚨 节点命名不符将导致此策略组为空!
FCM Google FCM 相关域名(rules 中 googlefcm 规则集的目标组) 静态 YAML 依次提供 👉 手动切换、DIRECT;使用 JS 后由 FCM直连 控制,默认仅 DIRECT

注:不使用覆写脚本直接运行 YAML 时,需自行提供节点或有效订阅 provider。YAML 与脚本的常规动态节点组均通过 Mihomo 原生 include-all 纳入顶层 proxies 与 proxy-providers 节点,带 filter 的组对两者继续筛选;🌍 PROXY、FCM 不直接使用该字段。🍎 海外苹果 / 💠 海外微软 / 🎮 Steam平台(非下载/CDN)/ 🎮 Games-Global 保留固定策略项。脚本的 TGDC 实验地区组例外:仅依据顶层节点筛选,地区无候选时显式列出合格保底节点。

🛠️ 使用前必改 (抄作业必看)

本配置按个人使用习惯定制,并非开箱即用的通用模板,尤其是对于直接导入 YAML 的使用形式。使用前请完成以下必要设置;如不熟悉 Mihomo、TUN、DNS 或策略组过滤规则,请先了解相关机制再使用。

  1. 直接使用 YAML (mihomo.yaml):不使用 JavaScript 覆写脚本时,将 proxy-providers.subscription.url 的占位地址在本地替换为自己的 Clash/Mihomo 订阅链接;include-all 策略组会自动纳入 provider 节点。也可删除不用的示例 provider,将 proxies: ~ 替换为自己的节点列表。模板不会自动读取客户端中的其他订阅,请勿把真实订阅链接或凭据提交到公开仓库。
  2. 节点过滤规则 (Filter):配置默认使用长正则匹配住宅/美国系命名节点(住宅/家宽/家庭宽带/residential/home broadband/🇺🇸/美国/美國/U.S. 等多种命名变体),并排除香港/新加坡相关节点(🇭🇰/香港/Hong Kong/HK/🇸🇬/新加坡/Singapore/SG)。如果订阅节点名称不符合这些条件,可根据实际情况调整相关策略组的 filter 正则。
  3. 按需删减规则:如果你不需要屏蔽番茄小说海外版的广告,建议删除 sub-rules 中 fanqie 相关的规则,以节省性能。


⚙️ JavaScript 说明


覆写脚本把订阅配置与本仓库维护的内嵌模板合并成最终配置:模板中已写好的字段(dns、rules、rule-providers、sniffer、tun、proxy-groups 分组结构等)以模板为准,节点与订阅自带 proxy-providers 来自订阅。脚本地址见页首 远程覆写脚本地址,在 Bettbox / FlClash 系客户端中给订阅挂上即可。

合并产物:

  • 节点与代理组:订阅里的真实节点填入顶层 proxies;常规动态节点组通过 Mihomo 原生 include-all 引入顶层节点与 provider 节点,带 filter 的组继续由 Mihomo 筛选。固定策略项保留在各组的 proxies 列表中。
  • 订阅自带 proxy-providers:原样保留;使用 include-all 的代理组会原生纳入这些 provider。脚本生成的 TGDC 实验地区组仍使用 include-all-proxies 或显式保底列表,不纳入 provider 运行时节点。
  • DNS:动态合并出 dns.proxy-server-nameserver-policy(模板不预置该键,以脚本计算结果为准),细节见下方流程图。
  • 开关声明:脚本首行的 Compatible_With_Bettbox 兼容声明必须置顶——Bettbox 只在脚本开头识别该声明,删除或下移会导致"自定义规则开关"入口不显示;声明中的 policyGroupOptions 列出归入图形化开关分类的 12 个策略组,ruleOptionsEnable 则是实际生效的开关表,键名需与声明保持一致。

🔀 hosts / DNS 处理流程

在线查看:hosts / DNS 三种处理流程

🗂 代理组与 Bettbox 开关(脚本合并后)

脚本开头的 Compatible_With_Bettbox 声明用 policyGroupOptions 划定了"策略组开关"分类:只列进去的组出现在该分类下,没列进去的组不受它控制,改由脚本的 ruleOptionsEnable 决定存在形态(两者都在脚本顶部可查)。

列入 policyGroupOptions 的策略组(12 个)

策略组名称 Bettbox 开关 默认
🌍 PROXY 🌍 PROXY 开启
🔄 负载均衡 🔄 负载均衡 开启
👉 手动切换 👉 手动切换 开启
♻️ 自动选择 ♻️ 自动选择 开启
📲 Telegram 📲 Telegram 开启
🎮 Games-Global 🎮 Games-Global 开启
🍎 海外苹果 🍎 海外苹果 开启
💠 海外微软 💠 海外微软 开启
🎮 Steam平台(非下载/CDN) 🎮 Steam平台(非下载/CDN) 开启
✖️ Twitter ✖️ Twitter 开启
🤖 AI大模型 🤖 AI大模型 开启
🎵 TikTok 🎵 TikTok 开启

这 12 个开关默认全部开启,关闭即移除该组,并清理其他组与 rules 中的引用(🌍 PROXY 关闭时其余引用回退到 DIRECT;TGDC 开启时 📲 Telegram 开关同时管 📲 Telegram(兜底))。

未列入 policyGroupOptions 的组

策略组名称 由哪个开关决定 默认 说明
FCM FCM直连 开启 开关不移除本组,只改写组内节点:开启=DIRECT;关闭且 👉 手动切换 已禁用时回退到全局兜底。脚本内嵌模板把本组标记为隐藏组(hidden)
📲 Telegram(兜底) TGDC实验分流 关闭 该开关开启时由 📲 Telegram 更名而来,承接 Telegram 进程、域名与 CIDR 规则
📲 Telegram-DC1-DC3-Miami TGDC实验分流 关闭 开关开启时按 Telegram DC IP 规则优先命中美国/迈阿密节点;地区无候选时列出全部合格节点供手动选择
📲 Telegram-DC2-DC4-Amsterdam TGDC实验分流 关闭 同上,对应荷兰/阿姆斯特丹节点
📲 Telegram-DC5-SG TGDC实验分流 关闭 同上,DC5 同时匹配新加坡与香港节点
国内入口解析 入口解析 关闭 开关开启时统一注入维护区所有运营商的入口节点并建立该组,由用户手动选择入口;每个运营商支持多个节点,排列顺序不代表优先级

同样不在 policyGroupOptions、也不对应任何策略组的开关(4 个)

开关 默认 作用
强制证书验证 关闭 开启时统一把订阅节点的 skip-cert-verify 置为 false;关闭时不干预订阅节点原有设置
启用 Reality 增强 开启 为带非空 public-key / short-id 的 Reality 节点启用 X25519MLKEM768 后量子密钥协商
IPv6优先 关闭 改写顶层节点 ip-version:ipv6 保持不变,ipv6-prefer 改为 ipv6,其余设为 ipv6-prefer;不处理 provider 运行时节点
代理节点 DNS 使用 TCP 关闭 为代理节点解析 DNS 中未标协议的地址启用 TCP;显式协议不变,失败时不回退 UDP

关于客户端:这套图形化开关由 Bettbox 原生支持——脚本开头的 Compatible_With_Bettbox 声明就是给 Bettbox 识别用的。换到其他客户端分两种情况:

  • 支持 JS 覆写脚本、但没有开关面板的客户端(例如 FlClash):需要自行打开 script_override.js,把 ruleOptionsEnable 里对应开关的值改成 true 或 false,保存后重新加载订阅即可生效;
  • 不支持 JS 覆写脚本的客户端:没有这个入口,只能改用 mihomo.yaml 模板自行维护策略组。


hosts真假域名映射-私有DoH复合DNS流程


在线阅读:节点域名、Hosts 与私有 DNS 联动模型


🧮 规则集重合关系(额外说明)


本小节不属于 YAML 或脚本单方面的说明:本仓库引用的规则集来自多个上游,彼此存在规则集与规则集之间的覆盖重合。下面按重合的集合分组,全部用韦恩图说明。

1. 国内直连的三个来源

venn-beta
  set E["echs_direct(echs-top 直连域名集)"]
  set C["cn(DustinWin 国内域名集)"]
  set A["applications(Loyalsoldier 国内应用域名集)"]
  union E,C
  union E,A
  union C,A
  union E,C,A
Loading

三者交集与两两交集是同一批国内直连域名,在 rules 的直连段依次命中、统一走 DIRECT。

2. 直连规则集与海外组规则集

venn-beta
  set E["echs_direct"]
  set P["apple(bett-rules)"]
  set M["microsoft(bett-rules)"]
  union E,P
  union E,M
Loading

apple / microsoft 的国内部分落在 echs_direct 里,rules 把 echs_direct 排在海外组之前,重合部分先走 DIRECT;games 与 echs_direct 同理。

3. 出海域名集的多个来源

venn-beta
  set X["proxy(DustinWin 代理域名集)"]
  set G["gfw(GFW 域名集)"]
  set O["google(Loyalsoldier Google 域名集)"]
  union X,G
  union X,O
  union G,O
Loading

三者覆盖的都是"需要走代理的域名",在 rules 中同指 🌍 PROXY。

4. Twitter 的三套规则集

venn-beta
  set D["twitter-x-domain(MetaCubeX)"]
  set I["twitter-x-ip(MetaCubeX)"]
  set B["twitter-x-blackmatrix7-No_Resolve"]
  union D,B
  union I,B
Loading

blackmatrix7 的 No_Resolve 集同时包含域名与 IP,与 MetaCubeX 的两套各自重合。

5. 两套 AI 规则集

venn-beta
  set A1["ai-1(DustinWin ai.mrs)"]
  set A2["ai-2(MetaCubeX category-ai-!cn)"]
  union A1,A2
Loading

两套来源不同却覆盖同类站点,在 rules 中同指 🤖 AI大模型。

以上重合关系按各规则集的覆盖范围与来源判断(依据取自 mihomo.yaml 的 rules: 引用与注释)。



更新需知


更新提醒(8 条)

2026-10-22

适用范围:JS/YAML

接管虚拟网卡中的 DNS 请求,让域名解析按配置统一处理。

相关提交:635708b


2026-10-21—2026-10-22

适用范围:JS/YAML

支持使用订阅中的节点,减少手动维护节点列表的需要;直接使用 YAML 时,需先填入自己的订阅。

相关提交:0fffb5d、15e41c6、073081c


2026-10-14

适用范围:JS/YAML

国际游戏流量默认直连;需要代理时,请手动切换。

相关提交:beafa5c


2026-10-14

适用范围:JS/YAML

Apple、Microsoft 等服务中符合直连条件的流量优先直连,其余流量仍可单独选择线路。

相关提交:8b2e458


2026-10-06

适用范围:JS/YAML

Twitter、AI 和 TikTok 仅使用名称符合住宅、美国等条件且不含香港、新加坡标记的节点;没有匹配节点时,需调整节点选择条件。

相关提交:6bf27df


2026-09-28

适用范围:JS/YAML

调整虚拟网卡的网络处理方式,更新后请留意设备上的连接兼容性。

相关提交:41bc108


2026-09-03

适用范围:JS/YAML

Claude 等 AI 服务可使用 AI 专用线路,便于与其他流量分开选择节点。

相关提交:aafa648


2026-08-08—2026-09-03

适用范围:JS

支持节点域名的自定义映射与私有 DNS,方便使用自建解析服务。

相关提交:fb461c0、8fad6ec



🙏 致谢


本项目建立在开源内核、客户端、规则集与图标资源之上。以下列出本项目使用或参考的相关项目;引用或参考不代表这些项目与本仓库存在合作或背书关系。具体资源请以各上游项目的说明和许可为准。

内核与客户端

规则集作者与原项目

图标作者与原项目

图标资源统一托管在 assets/icons/ 并通过 jsDelivr 引用。

脚本与配置参考

以上参考均用于学习与对照,具体实现以本仓库代码为准。


⭐ Star History


Star History Chart


⚠️ 免责声明


  1. 本仓库的YAML模板与JS脚本设计并非完美,或可能有代码质量问题,也不一定适合所有环境,尤其是 DNS 与路由规则。
  2. 使用者应自行评估使用、修改或传播本仓库内容所涉及的风险,并遵守所在地区适用的法律法规。因使用本仓库内容产生的后果,由使用者自行承担。