梯子Z 来自巴黎的稳定快速安全ShadowsocksR梯子返回首页

订阅转换 YAML:从格式判断到客户端导入的完整步骤

更新于 2026-11-02 · zionladderq.shop

简答:如果你的订阅本身已经是完整的 Clash/Mihomo YAML,就不必再次转换;如果返回的是 Base64、SS/SSR、V2Ray 节点或其他订阅格式,则需要转换为目标客户端能够读取的 YAML。当前能从开源项目文档核实的做法,是部署 subconverter 后使用本地接口生成配置;没有核实到可长期信任的公共在线转换入口,因此不要把含令牌的完整订阅链接随意粘贴到陌生网页。

定义:订阅转换 YAML,是把节点订阅或其他客户端格式整理成带有 YAML 配置结构、可供兼容客户端读取的配置文件或远程配置地址。

先做格式判断:你可能根本不需要转换

本文是中立技术说明,不代表任何品牌官网。开始前先完成一个结果判断:你需要的是完整配置 YAML,还是只包含节点的配置片段。两者都可能以 .yaml 结尾,但导入后的表现不同。

订阅内容与处理方式速查
看到的内容通常意味着什么下一步
开头能看到 proxies:、proxy-groups: 或 rules:可能已经是完整或半完整的 YAML 配置先保存副本,直接尝试导入;报错后再检查内核字段
一长串字母数字,常见为 Base64 样式可能是编码后的节点列表转换为目标客户端格式,不要直接改扩展名
内容由 ss://、vmess:// 等 URI 组成明文节点链接集合选择支持对应源格式的转换程序
打开后是 HTML、登录页、403 或错误提示订阅请求没有返回配置先修复订阅访问,不要把错误页面当 YAML 导入
只有 proxies:,没有策略组和规则更接近节点集合,而不是完整配置导入后可能还要在客户端补充策略组或规则

YAML 对大小写和缩进敏感,缩进使用空格而不是 Tab;Mihomo 文档还说明键值之间使用冒号和空格,层级关系由缩进表达。出现“解析失败”时,优先检查 Tab、混用缩进、漏写冒号和特殊字符。参考 Mihomo YAML 语法文档 与 YAML 1.2 规范。

订阅转换 YAML 的可核实方案:本地接口优先

目前能够直接核实的开源方案是 tindy2013/subconverter。项目 README 将它定义为多种订阅格式之间的转换工具,并列出了 Clash、ClashR、SS、SSR、V2Ray、Surge 等输入或输出类型。需要注意:README 给出的访问地址是本机接口,不是一个无需部署的公共在线网站。

  1. 准备本地实例。按照项目仓库中的程序或 Docker 文档完成部署;部署成功后,默认接口示例为 http://127.0.0.1:25500/sub。
  2. 选择目标格式。接口要求使用 target 参数,README 中的目标名包含 clash 等值。若最终要在 Mihomo 中使用,仍应以当前客户端能够接受的字段为准,不能因为文件扩展名是 YAML 就默认全部字段兼容。
  3. 填写订阅地址。使用 url 参数传入订阅地址或文件路径,并先进行 URL 编码。完整接口结构可参考:http://127.0.0.1:25500/sub?target=clash&url=已编码的订阅地址。
  4. 需要模板时再填写配置参数。项目文档允许通过 config 参数指定外部配置文件,也支持按文档规则合并多个订阅。新手先不要叠加复杂模板,先确认基础转换能返回有效内容。
  5. 保存并核对结果。把返回内容保存为 YAML 文件,检查是否出现 proxies、策略组、规则等必要结构,再导入客户端。

如果你只想临时转换而不愿部署本地实例,必须先确认在线页面的运营方、隐私说明、输入是否会被保存以及输出链接是否公开。本文没有核实一个可长期信任的公共在线输入框,因此不建议把完整订阅令牌直接提交到陌生网页。

导入 Clash Verge Rev 或 Mihomo 前后的最短闭环

对于桌面客户端,建议把“生成配置”和“启用配置”分成两个动作。先在本地保存 YAML 副本,再导入;这样即使刷新订阅或更新失败,也能回退到上一次文件。

  1. 导入远程配置:如果你得到的是可访问的远程 YAML 地址,可使用客户端的订阅链接导入或订阅链接配置方式。
  2. 导入本地文件:如果你得到的是下载后的 YAML 文件,可使用新建配置文件导入或拖拽配置文件导入。官方文档明确区分了远程订阅和本地配置两种方式,并说明拖拽导入有版本要求,当前页面标注为 Clash Verge Rev 至少为 v1.6.2。
  3. 选择并启用:导入成功不等于已经启用。确认配置出现在配置列表后,选择它作为当前配置,再观察客户端是否能读取节点和策略组。
  4. 验证运行:先查看节点数量、策略组名称和规则数量,再进行低风险连接测试。不要一开始就修改 DNS、TUN 或 MTU,否则发生连接问题时很难判断是转换错误还是网络设置变化。

Clash Verge Rev 的配置文档可参考 官方配置导入说明。该文档说明远程订阅支持订阅链接导入、订阅链接配置和 URL Schemes,本地配置支持新建配置文件和拖拽文件导入。

如果客户端提示 client error(Connect),先回到导入方式本身排查;如果远程地址返回内容不稳定,改用本地生成的文件可以帮助区分“订阅请求失败”和“YAML 内容不兼容”。不要轻易勾选“允许无效证书(危险)”,只有在你能确认地址、证书和服务归属时才考虑按客户端提示处理。

转换成功后的 6 项核对清单

不要只看页面显示“转换完成”。真正可用的标准是:文件能被目标客户端读取,且关键内容没有在转换过程中丢失。

  • 语法:检查缩进是否使用空格,键名是否大小写一致,冒号后是否有空格。
  • 节点数量:对比转换前能够识别的节点数量和转换后 proxies 中的数量。数量减少时,不要直接认为是测速筛选,可能是协议字段或特殊字符不被目标格式接受。
  • 协议字段:重点核对服务器、端口、密码、UUID、TLS、传输方式、流控和域名等字段是否仍然存在。新协议或扩展字段必须以目标客户端内核文档为准。
  • 策略组:确认策略组引用的节点名称与实际节点名称一致。只有节点列表而没有策略组时,导入后可能看不到可直接选择的分流入口。
  • 规则:如果配置包含规则集或外部规则地址,确认地址可访问;规则加载失败不一定代表节点转换失败。
  • 更新方式:远程配置会在客户端刷新时再次请求订阅地址;本地文件不会自动获得上游变化,选择哪一种要根据你的更新需求决定。

Clash Verge Rev 的隐私说明指出,配置文件、订阅 URL、密码、UUID 和日志可能保存在本机文件中;远程配置更新时,客户端会向你填写的订阅地址发起请求。相关信息可查看 Clash Verge Rev 隐私说明。因此,导入前后都应把订阅地址当作访问凭据处理。

常见报错与回退动作

订阅转换 YAML 报错分流
现象优先判断回退动作
403、401 或返回登录页订阅权限、令牌或请求头不满足要求回到订阅提供方确认地址是否有效;不要重复提交令牌
返回 HTML 而不是 YAML访问到了错误页、验证页或重定向页面保存返回内容前先检查首行;修复访问链路后再转换
返回空 YAML源格式未识别、订阅为空或筛选条件排除了全部节点去掉筛选和模板,先做一次最基础转换
YAML 解析失败Tab、缩进、冒号或特殊字符问题用编辑器显示空白字符,统一改为空格并恢复上一份副本
节点数量减少协议字段、编码、命名或目标格式不兼容先保留原始订阅,逐类比较丢失节点,不要直接覆盖旧配置
导入成功但没有策略组得到的是节点集合而非完整配置改用完整模板,或在客户端补充策略组;字段以当前内核文档为准

如果无法互相印证订阅域名、账户权限、转换服务来源和客户端内核兼容性,应停止下载、付款或继续导入。尤其不要把含有完整令牌的链接发到公开 issue、群聊或截图中。

安全建议:为什么本地转换更容易控制边界

订阅链接通常不仅是普通网址,还可能包含用于获取配置的个人令牌。公共转换服务至少会接触你提交的地址,并可能继续请求上游订阅;而本地转换可以把处理过程限制在自己的设备或自建环境中。这里不是对任何公共服务作安全结论,而是提醒你先确认数据流向。

  • 优先使用本地文件或自建实例,不在普通浏览器历史记录中长期保留完整令牌。
  • 不要把完整订阅地址放入公开截图、代码仓库、工单或聊天记录。
  • 转换完成后检查输出文件和日志,确认没有把订阅地址、密码、UUID 一并发布。
  • 如果怀疑令牌已经泄露,回到订阅管理页面重新生成或重置地址,并更新客户端配置。
  • 遇到连接问题时先验证订阅是否返回有效内容,再排查 DNS、MTU、延迟和丢包;不要把 YAML 解析错误误判为线路故障。

最终建议可以概括为:先判断格式,再做最小转换;先保存副本,再导入启用;先核对节点和策略组,再调整网络参数。

常见问题

订阅转换 YAML 和直接改文件后缀有什么区别?

改文件后缀不会改变内容结构。订阅转换会读取源格式,再按目标客户端所需结构生成 YAML;如果源内容本来就是完整 YAML,通常不需要再次转换。

有没有可以直接粘贴订阅链接的在线转换工具?

本文没有核实一个可长期信任的公共在线输入框。能够从开源项目文档确认的是 subconverter 的本地接口,默认示例为 127.0.0.1:25500/sub。含令牌的订阅地址建议优先在本地或自建环境处理。

为什么转换后 YAML 能导入,但节点数量变少?

常见原因包括源协议字段未被目标格式识别、特殊字符或编码处理失败、模板筛选条件排除了节点,以及目标内核不支持某些字段。应保留原始订阅,关闭筛选和模板后重新转换,再逐类比较。

只有 proxies 没有 proxy-groups,算不算完整 YAML?

通常只能视为节点集合或不完整配置。它可能包含可用节点,但客户端未必能直接提供策略组和规则选择。导入后如果没有可选择的分组,需要补充兼容当前内核的策略组配置。

YAML 报错时应该先改 DNS 或 MTU 吗?

不应该。YAML 解析失败属于配置内容问题,应先检查缩进、Tab、冒号、大小写和字段兼容性;只有配置成功加载后仍然连接异常,才进入 DNS、MTU、延迟和丢包排查。

相关阅读

参考资料

  1. subconverter 官方 GitHub 仓库与 README
  2. Mihomo 官方 YAML 语法文档
  3. Clash Verge Rev 官方配置导入说明
  4. Clash Verge Rev 官方隐私说明
  5. YAML 1.2 规范