查看: 1|回复: 0

我 vibe coding 了一个原生的 Surge 配置管理工具:规则、模块和多端 Profile 一起管

[复制链接]

1

主题

0

回帖

3

积分

新手上路

积分
3
发表于 4 天前 | 显示全部楼层 |阅读模式
平时用 Surge 的朋友应该都遇到过这些问题:

规则源越来越多,顺序不好整理;

模块散落在不同地方,更新起来很麻烦;

Mac 、iPhone 、iPad 各有一份配置,改一个地方还得惦记另外几份;

规则一旦选择内联,生成的配置文件很快就会变得又大又难维护。

所以我 vibe 了一个 macOS 原生工具——Surge Shallow。

它不是代理客户端,也不会替代 Surge 。简单来说,它更像是一个 Surge 配置管理台:把平时需要手动维护的规则源、Proxy 、Proxy Group 、平台差异和模块集中到一个地方,检查通过后再生成可以直接交给 Surge 使用的配置文件。

目前主要支持这些功能:

集中管理多个规则源,可以调整顺序、策略和适用平台;

Surge Ruleset 默认以 RULE-SET URL 的方式保留,不下载、不展开、不合并去重,生成的 Profile 会小很多;

如果遇到 Clash Payload 、纯域名列表或者需要转换格式的来源,也可以单独切换成下载并内联合并;

可以导入已有的 Surge .conf / .dconf,先查看迁移结果,确认后再应用;

原生管理 Proxy 和 Proxy Group ,不用一直手写配置;

macOS 与 iOS/iPadOS 的公共配置可以复用,只需要单独维护平台差异;

支持 Surge 、Loon 、Quantumult X 的模块来源,并转换成 Surge 可以使用的模块;

模块参数、脚本、策略、MITM 和自定义规则都可以在界面里调整;

生成结果会先做检查,通过之后再写入 Surge 的 iCloud 目录;

Mac 、iPhone 和 iPad 可以继续通过 Surge 自己的 iCloud 配置同步使用。

我自己比较在意的一点,是它不会为了“方便管理”把所有远端 Ruleset 都塞进最终配置。

现在新增规则源时,默认就是“外部 Ruleset 引用”。最终 Profile 只保存一条类似下面这样的配置:

RULE-SET,https://example.com/rules.list,PROXY

规则正文仍然由 Surge 加载,这样配置文件不会因为规则越来越多而不断膨胀。只有确实需要转换、内联或者内容级去重时,才需要主动切换到内联合并模式。

界面使用 SwiftUI 编写,是一个真正的 macOS 原生应用。规则、模块、Profile 和设置共用同一套导航与应用状态,不是简单把另一个项目的页面嵌进来。

目前最新版本是 Surge Shallow 2.0.0,适用于 macOS 26 。

项目已经开源,感兴趣的话可以下载试试,也欢迎提交 Issue 、建议或者 PR:

GitHub:

https://github.com/funnythingfunnylove/Surge-Shallow

最新版下载:

https://github.com/funnythingfunnylove/Surge-Shallow/releases/tag/v2.0.0

如果你平时也在手动维护一大堆 Surge 规则、模块和多端配置,希望 Surge Shallow 能帮你少复制几次配置、少检查几个文件,把时间留给真正需要折腾的东西。另外感谢 EEliberto/SurgeRelay-macOS ,提供了模块管理的思路 借鉴了一下
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖
返回顶部