A Clash configuration is YAML text. Errors in indentation, colons, quotes, or list markers prevent it from loading. Use the line and column in the log to locate the syntax issue, then confirm that the field is supported by the current core version. Change only one item near the reported error at a time and reload after saving. Once parsing succeeds, verify that the field belongs to the current core.
Locate the failing field from line and column
Use line and column from the log to extract the three lines above and below the error. Check same-level indentation, spaces after colons, Tabs, and unquoted # characters.
- Does the error log include line or column?
- Does the field value contain an unescaped colon, hash sign, or special character?
- Does indentation mix Tabs and spaces?
- Is the field supported by the current Clash or Mihomo version?
Fix indentation, quoting, and fields unsupported by the core
- Use the log line number to isolate the smallest failing fragment first
- Indent with spaces, not Tabs
- Quote passwords, SNI values, and paths that contain special characters
- Confirm that the protocol fields match the current core documentation(See Configuration reference, Outbound proxy configuration)
Passing YAML parsing does not mean a node can connect
Mihomo extension fields may not be recognized by original Clash
Save the original configuration before editing so you can roll back
