关于 clash-meta-proxy
clash-meta-proxy 是用于更新 Clash-Meta 代理配置的 Agent skill。它自动备份文件、替换代理列表、检查引用并生成差异,最终生效仍需人工确认。
主要功能
- 01备份现有配置文件
- 02从 .proxies.yaml 替换代理
- 03检查代理组引用
- 04注释无效代理名称
- 05生成差异供审核
适用场景
- 01更新 config.yaml 中的代理节点
- 02生效前审核配置变更
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ qin2dim/ skills --skill clash-meta-proxy安装后在 Claude Code 中输入/clash-meta-proxy确认已加载。
附带文件scripts/update_clash_config.py
详细介绍
来自项目 READMEClash-Meta 配置更新
更新服务器的 clash-meta 代理配置。
环境信息
- 默认工作目录:
./ - 现配置文件:
config.yaml - 新代理配置:
.proxies.yaml
使用脚本自动化(推荐)
提供 PEP 723 内联元数据脚本,支持 uv run 直接运行,无需手动安装依赖。
运行方式
方式一:直接运行(推荐)
# In the work_dir
uv run scripts/update_clash_config.py
方式二:指定工作目录运行
uv run --cwd ./ scripts/update_clash_config.py
脚本自动完成:
- 文件备份(
config.yaml.bak+ 时间戳备份 +config.yaml.editing) - 读取
.proxies.yaml并完整覆盖proxies - 核验
proxy-groups,注释失效代理 - 生成 diff 到控制台和
.update.diff
人工确认与生效(关键步骤)
脚本不会自动重命名文件,需人工确认后执行:
- 检查 diff 输出
cat ./.update.diff
- 确认无误后生效
mv ./config.yaml.editing ./config.yaml
手动操作流程
若脚本无法使用,按以下步骤手动操作:
-
备份配置
- 复制
config.yaml为config.yaml.bak - 复制
config.yaml为config.yaml.editing
- 复制
-
更新 proxies 配置
- 读取
.proxies.yaml获取新代理节点 - 用新代理列表完整覆盖
config.yaml.editing中的proxies字段
- 读取
-
核验 proxy-groups
- 检查
proxy-groups[*].proxies引用的 name 是否存在于proxies列表 - 若发现失效代理,注释掉而非删除
- 检查
-
diff 确认并重命名
- 执行
diff config.yaml.bak config.yaml.editing对比 - 确认无误后,将
config.yaml.editing重命名为config.yaml
- 执行
配置示例
.proxies.yaml 结构
proxies:
- name: hy2.node.proxychain.top
type: hysteria2
server: IP
port: PORT
password: PASSWORD
sni: hy2.node.proxychain.top
skip-cert-verify: false
proxy-groups 结构
proxy-groups:
- name: G-SELECT
type: select
proxies:
# - 失效节点名 # 已失效,需注释
- hy2.node.proxychain.top # 有效节点
注意事项
proxy-groups[*].proxies引用的 name 必须与proxies[*].name严格对应- 仅注释失效代理名,保留配置结构完整
- 始终保留
config.yaml.bak以便回滚 - 最终重命名操作必须由人工确认后执行
评论
支持 Markdown