692 字
3 分钟
跨平台分流规则维护指南:rconvert仓库自动化构建实践

跨平台分流规则维护指南:自动化构建的艺术#

维护一套好用的分流规则是个体力活。市面上开源的规则库不少,但格式各异——Surge、Clash、Quantumult X、小火箭,每个平台都有自己的语法。手动转换、去重、更新,不出一个月就会崩溃。

我的解决方案是 rconvert。这个仓库的核心逻辑很简单:融合上游优秀规则 + 自动格式转换 + 定时构建

项目架构#

rconvert 用 GitHub Actions 每三天早上6点自动运行一次。整个流程包括:

  1. 拉取多个上游规则源
  2. 子域名去重(把 a.example.comb.example.com 合并成 example.com
  3. 格式转换输出
  4. 推送到仓库并同步到 Cloudflare 镜像

构建时间从最初的十几分钟优化到了现在的3分钟左右。

支持的规则类型#

目前稳定输出的规则包括:

规则名称用途条目数
去广告完整版合并 blackmatrix7、毒奶、sukka 规则~10万条
去广告实验版完整版 + EasyPrivacy + 额外规则~20万条
CDN 分流合并 sukka 的 CDN 规则~1000条
大流量分流CDN + 流媒体 + 文件分享站~4000条
国内直连sukka + blackmatrix7 国内域名~4000条
文件分享站国外网赚网盘列表(手动维护)~300条
使用建议

4、5、6号规则是为流量紧张的用户设计的。如果你每月有几TB流量,直接跳过这些,用完整版即可。

格式转换说明#

rconvert 的核心脚本 r.cmd 支持自动识别多种输入格式:

  • DOMAINSET
  • RULESET
  • Quantumult X
  • Clash YAML
  • AdBlock DNS

输出时统一转换为4种格式,方便不同平台使用:

fin.txt - Rule-set 格式(Surge/Clash)
fin-qx.txt - Quantumult X 格式
fin.yaml - Clash Rule Provider 格式
fin-adb.txt - AdBlock DNS 格式

订阅地址#

GitHub raw 地址:

https://raw.githubusercontent.com/DoingDog/rconvert/main/a2/fin.txt

Cloudflare 镜像(国内推荐):

https://r.awsl.app/a2/fin.txt

其他规则替换路径中的 a2 即可:

  • a1 - 实验版去广告
  • cdn - CDN 规则
  • big-data - 大流量分流
  • dirt - 国内直连

示例配置#

Quantumult X 配置示例:

Profile.ini
[filter_remote]
https://r.awsl.app/a2/fin.txt, tag=去广告, force-policy=reject, enabled=true
[rewrite_remote]
https://r.awsl.app/static/main/Adb-unblock.list, tag=去广告白名单, enabled=true

Clash 配置使用 Rule Provider:

clash-config.yaml
rule-providers:
adblock:
type: http
behavior: domain
url: "https://r.awsl.app/a2/fin.yaml"
path: ./ruleset/adblock.yaml
interval: 86400
rules:
- RULE-SET,adblock,REJECT

自定义构建#

fork 仓库后可以修改 r.cmdini 目录下的上游规则链接。GitHub Actions 工作流在 .github/workflows 目录,定时配置每3天运行一次:

.github/workflows/build.yml
schedule:
- cron: '0 6 */3 * *'
注意事项

这是个人自用的极端拦截规则列表,拦截力度很大。如果某些网站访问异常,检查是否被规则误杀,可以提交 issue 或自行添加到白名单。

参考链接#

跨平台分流规则维护指南:rconvert仓库自动化构建实践
https://im.awsl.app/posts/networking/032-rconvert-rules/
作者
uu
发布于
2025-03-10
许可协议
CC0 1.0