Skip to main content
This page shows a complete override that can be saved directly, as well as practical expectations for common errors.

Modify port and mode

基础字段.yaml
基础字段 diff.yaml
mixed-port and mode are both scalars, and ordinary keys will directly overwrite the original values.

Modify DNS

Recursive modification

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

Complete replacement

DNS 完整替换.yaml
dns-force will delete other fields in the original dns object, leaving only the above content.

Add direct connection rules

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

Add Provider

添加规则 Provider.yaml
The runtime patch will normalize the Provider path to the current configuration directory to prevent relative paths from leaving the configuration scope.

Modify policy group

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

YAML anchors and <<

The overwritten file will first expand anchors, aliases, and << merge keys by the YAML parser.
使用锚点.yaml
Explicit fields take precedence over anchor content:
锚点覆盖结果 diff.yaml

reality-opts.short-id

YumeBox protects the string value of reality-opts.short-id in the top-level proxies list. This way 0123 and 1e5 will not be parsed as numbers by YAML.
Reality short-id.yaml
Reality short-id 预期.yaml
short-id nested within other custom objects will not trigger this private protection.

Literal keys

Angle brackets turn off modifier parsing and remove the angle brackets at compile time:
字面量键.yaml
字面量键结果 diff.yaml
When not wrapped, rules+ will be parsed into appending to rules; only after wrapping will the field named rules+ be written.

Multiple overwrite files

The overwritten files are executed in the binding order in the subscription, and the latter file can modify the results of the previous file.
第一个覆写.yaml
第二个覆写.yaml
覆写链最终 diff.yaml

Empty file

Empty files or files containing only whitespace characters will be skipped and the configuration will not be modified:
空覆写.yaml
The compilation result will be successful, but skip empty override file will appear in warnings.

YAML parsing error

Indentation errors, illegal mappings, or unclosed strings will stop the current overwriting chain:
错误的缩进.yaml
Expected results:
The error message will include the path to the overwritten file, and subsequent overwriting will not continue.

Wrong root type

When the YAML top level is not an object, the override engine replaces the root configuration with that value; the compiler then rejects it:
错误的根类型.yaml
Expected results:

geosite-matcher Verification error

The override itself can write strings, but the final check only accepts mph and succinct:
错误的 Matcher.yaml
Expected results:

Runtime boundaries

After the user overwrite is completed, YumeBox will still perform runtime patches: Therefore, successful overwriting does not mean that all fields will become the final running values; the running mode related settings may be adjusted by applying a patch at the end.
Last modified on August 13, 2026