# clash-rule **Repository Path**: standardpuzzle/clash-rule ## Basic Information - **Project Name**: clash-rule - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-12-23 - **Last Updated**: 2026-03-06 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 沉浸感专用 clash-rule(自定义分流规则仓库) 本仓库用于维护两份「可被 Clash 定时拉取」的自定义分流规则文件,供网关/路由器侧的 Clash 配置引用。 - `direct.txt`:直连白名单(命中后走 DIRECT) - `proxy.txt`:代理清单(命中后走 Proxy 策略组) > 目的:把“需要稳定直连/更快”的域名放到 direct,把“必须走代理”的域名放到 proxy,做到可控、可协作、可回滚。 --- ## 与 Loyalsoldier 白名单模式的关系(重要) 本仓库的规则是基于 **Loyalsoldier/clash-rules 的白名单模式(Rules 配置方式)**补充而来,用于覆盖与增强默认规则集。 - 参考仓库:`https://github.com/Loyalsoldier/clash-rules` - 本仓库定位:在不改动 Loyalsoldier 规则集的前提下,提供“企业/团队可协作维护”的增量规则(direct/proxy 两类)。 ### 优先级说明 在网关侧的 `rules:` 中,通常会将本仓库的规则引用放在 Loyalsoldier 规则集之前(更靠前的位置)。 由于 Clash 规则是“自上而下匹配,命中即停止”,因此 **本仓库规则的优先级通常高于 Loyalsoldier/clash-rules**(以网关侧实际顺序为准)。 ### 如何了解“哪些域名默认走代理/直连”? 如果维护人员想了解 Loyalsoldier 白名单模式下的默认分流逻辑、已有规则内容与 Rules 配置方式,请直接查看: `https://github.com/Loyalsoldier/clash-rules` --- ## 运行逻辑(必读) Clash 的规则匹配遵循两个核心原则: 1. **自上而下**匹配 2. **命中第一条即停止**(不会继续往下找) 因此,当一个域名同时满足多个规则时,**哪一类规则在更靠前的位置**,就会决定最终走向。 本仓库的两份规则文件通常用于实现: - `direct.txt` 用于“优先直连”的白名单(例如 Steam 下载域名、公司内网域名、国内 CDN 等) - `proxy.txt` 用于“强制代理”的清单(例如明确需要代理访问的服务) ### 冲突处理原则(非常重要) - **同一个域名不要同时写进 `direct.txt` 和 `proxy.txt`** - 如果必须覆盖(极少数情况),以网关侧规则顺序为准;但本仓库的维护规范默认“禁止冲突”。 --- ## 更新间隔说明(600 秒) 网关侧会按固定间隔定时拉取本仓库的规则文件。 - 当前建议更新间隔:**600 秒(10 分钟)** - 含义:网关每 10 分钟检查并更新一次规则文件(direct / proxy 各一次) - 注意: - 即使设置了 600 秒,很多网关实现也可能在“重载/重启 Clash 内核”时立即拉取一次 - 因此:**提交规则后不一定立刻生效**,最迟在 10 分钟内自动生效;若需要立刻生效,请在网关侧执行一次“更新规则/重载内核”(具体操作因设备而异) --- ## 文件格式与维护规范 ### 统一格式:payload YAML(文件名虽然是 .txt,但内容是 YAML) 两个文件都必须使用以下结构: ```yaml payload: - '<规则1>' - '<规则2>' ``` ### 规则写法(domain 行为) 本仓库用于域名规则,推荐只使用以下两种写法: - `+.example.com`:匹配所有子域名(推荐,最常用) - `example.com`:仅匹配主域名(不推荐,容易漏掉子域名) > 强烈建议优先使用 `+.domain.com`,避免出现“看似加了规则但没命中”的问题。 ### 维护规则(协作必遵守) 1. **禁止冲突**:同一域名不得同时出现在 `direct.txt` 与 `proxy.txt` 2. **避免过宽匹配**:不要写会误伤大量站点的泛域名 - ✅ `+.steamcontent.com` - ❌ `+.akamaihd.net`(太宽,很多站点都在用) 3. **一行一个条目**:每条规则独占一行 4. **建议排序**:按字母排序,便于 Review 和 diff 5. **允许注释**:可用 `#` 写注释说明用途/来源 6. **变更建议走 PR/Review**:尤其是新增较宽规则、涉及支付/登录/系统服务相关域名 --- ## 维护指南:什么时候写进 direct / proxy? ### direct.txt(直连白名单)适合放: - 下载/更新类域名(直连更快更稳定) - 公司内网域名(必须直连) - 已知走代理反而异常的服务域名(例如某些设备升级、推送等) ### proxy.txt(强制代理清单)适合放: - 明确需要代理才能访问的服务 - 某些需要固定走代理链路的业务域名(按公司策略) --- ## 示例 ### 示例 1:Steam 下载直连(direct.txt) Steam 下载常使用子域名与 CDN,推荐写成: ```yaml payload: - '+.steamcontent.com' - '+.steamcdn-a.akamaihd.net' - '+.steamserver.net' ``` ### 示例 2:强制某些服务走代理(proxy.txt) ```yaml payload: - '+.openai.com' - '+.chatgpt.com' - '+.youtube.com' ``` ### 示例 3:公司内网域名直连(direct.txt) ```yaml payload: - '+.corp.example.com' - '+.intranet.example.com' ``` --- ## 提交与验证建议 - 提交前自查: - 是否写成 `+.domain.com`(子域名是否覆盖) - 是否与另一个文件冲突 - 是否过宽导致误伤 - 提交后: - 等待自动更新(最长 10 分钟) - 如需立刻生效,在网关侧手动触发“更新规则/重载内核” - 通过网关面板查看连接命中规则,确认符合预期