sub.manager是Clash/Mihomo配置生成器,从订阅源获取节点,按自定义规则生成配置文件。
- 订阅源 - 提供节点的URL
- 节点池 - 从订阅源获取的节点 + 自建节点
- 代理分组 - 按规则筛选节点的组(如美国节点、ChatGPT节点)
- 路由规则 - 决定哪些域名/IP走哪个分组
-
core/config.py - 所有配置常量
SELF_HOSTED_NODES- 自建节点定义GROUPS- 代理分组定义RULES- 路由规则定义
-
core/clash_rule_builder.py - 主程序
- 读取config.py的配置
- 生成最终的YAML文件
-
core/clash.py - 配置管理类
clash_yaml类封装所有YAML操作
rule/clash/QR_*.list- 自定义规则rule/clash/*.list- 第三方规则
bin/makeurl.sh- 批量生成所有场景配置
- 先读
core/config.py了解配置结构 - 再读
core/clash_rule_builder.py了解生成流程 - 最后读
core/clash.py了解具体实现
QG_*- 代理分组(Groups)QP_*- 自建节点(Proxies)QR_*- 规则文件(Rules)qtags- 条件标签
1. 解析命令行参数
2. 添加订阅源 (proxy-providers)
3. 构建节点池 (根据参数过滤)
4. 构建代理分组 (proxy-groups)
5. 添加路由规则 (rules)
6. 写入YAML文件
- 创建
rule/clash/QR_NewRule.list - 在
core/config.py的RULES中注册
在 core/config.py 的 GROUPS 中添加条目
在 core/config.py 的 SELF_HOSTED_NODES 中添加条目
遵循 AGENT_COLLABORATION_RULES.md 中的规则。
- INDEX.md - 文档索引
- ARCHITECTURE.md - 代码架构
- DEVELOPMENT.md - 开发指南
- TROUBLESHOOTING.md - 故障排查