Skip to main content
本页展示可以直接保存的完整覆写,以及常见错误的实际预期.

修改端口和模式

基础字段.yaml
基础字段 diff.yaml
mixed-portmode 都是标量,普通键会直接覆盖原值.

修改 DNS

递归修改

DNS 子字段.yaml
DNS 子字段 diff.yaml

完整替换

DNS 完整替换.yaml
dns-force 会删除原 dns 对象中的其他字段,只保留上面的内容.

添加直连规则

添加直连规则.yaml
添加直连规则 diff.yaml

添加 Provider

添加规则 Provider.yaml
运行时补丁会将 Provider 路径规范化到当前配置目录下,避免相对路径离开配置作用域.

修改策略组

修改策略组.yaml
修改策略组 diff.yaml

YAML 锚点和 <<

覆写文件会先由 YAML 解析器展开锚点、别名和 << 合并键.
使用锚点.yaml
显式字段优先于锚点内容:
锚点覆盖结果 diff.yaml

reality-opts.short-id

YumeBox 会保护顶层 proxies 列表中 reality-opts.short-id 的字符串值.这样 01231e5 不会被 YAML 解析成数字.
Reality short-id.yaml
Reality short-id 预期.yaml
嵌套在其他自定义对象中的 short-id 不会触发这个专用保护.

字面量键

尖括号会关闭修饰符解析,并在编译时去掉尖括号:
字面量键.yaml
字面量键结果 diff.yaml
未包裹时,rules+ 会被解析成向 rules 追加;包裹后才会写入名为 rules+ 的字段.

多个覆写文件

覆写文件按照订阅中的绑定顺序执行,后一个文件可以修改前一个文件的结果.
第一个覆写.yaml
第二个覆写.yaml
覆写链最终 diff.yaml

空文件

空文件或只包含空白字符的文件会被跳过,不会修改配置:
空覆写.yaml
编译结果会成功,但 warnings 中会出现 skip empty override file.

YAML 解析错误

缩进错误、非法映射或未闭合字符串会停止当前覆写链:
错误的缩进.yaml
预期结果:
错误信息会包含覆写文件路径,后续覆写不会继续执行.

错误的根类型

YAML 顶层不是对象时,覆写引擎会把根配置替换成该值;随后编译器会拒绝它:
错误的根类型.yaml
预期结果:

geosite-matcher 校验错误

覆写本身可以写入字符串,但最终校验只接受 mphsuccinct
错误的 Matcher.yaml
预期结果:

运行时边界

用户覆写完成后,YumeBox 仍会执行运行时补丁: 因此,覆写成功不代表所有字段都会成为最终运行值;运行模式相关设置可能在最后被应用补丁调整.
最后修改于 2026年8月14日