要求 Node.js 22 或更高版本。
npm install
npm run build
npm run deploynpm install
npm run build
npm run dev
npm test上线前推荐直接执行完整门禁:
npm run verifyShadowSocks, VMess, VLESS, Hysteria2, Trojan, TUIC
Sing-Box, Clash/Mihomo, Xray/V2Ray, Surge
- Base64 订阅
- HTTP/HTTPS 订阅
- 完整配置:Sing-Box JSON、Clash YAML、Surge INI
- 导入多个来源的订阅
- 基于 KV 存储生成固定或随机短链
- 将订阅转换为多个代理客户端配置
- 自定义规则集与策略组
- 按 ID 存储可复用的基础配置
- 多语言 Web 界面
短链和已保存配置使用 Cloudflare KV。npm run deploy 会先执行 scripts/setup-kv.cjs,自动检查或创建 SUBLINK_KV 命名空间,并更新 wrangler.toml。
静态资源由 Workers Assets 提供,配置位于 wrangler.toml:
[assets]
directory = "./public"
binding = "ASSETS"GET /singbox?config=...:输出 Sing-Box JSONGET /clash?config=...:输出 Clash/Mihomo YAMLGET /surge?config=...:输出 Surge 配置GET /xray?config=...:输出 Base64 代理链接列表GET /subconverter:输出规则集配置GET /shorten-v2?url=...:创建短链代码POST /config:存储可复用的基础配置并返回配置 ID
- 改协议解析时,同步检查协议解析器注册、客户端配置转换和对应测试。
- 改配置生成时,确认 Sing-Box、Clash/Mihomo、Surge、Xray/V2Ray 是否都受影响。
- 改运行时或 KV 时,验证 Cloudflare Workers 入口、KV 绑定和本地 Wrangler 开发环境。
- 改 Web 界面文案时,同步维护
src/i18n/下的多语言内容。 - 小改动优先跑相关单测;涉及入口、运行时、KV 或共享逻辑后跑
npm test。 - 部署、WAF 放行和线上验证流程见 Operations Guide。
- 不引入新的格式化、检查或构建工具,除非确有必要。
- 不随手重构无关模块,避免把运行时差异放进协议解析或配置构建逻辑。
- 不用临时字符串拼接替代已有解析器、构建器或结构化配置处理逻辑。
- 不改生成产物、锁文件或部署配置,除非本次变更确实依赖它们。
本项目使用 MIT 许可证。详情见 LICENSE。
本项目仅供学习与交流使用,请勿用于非法用途。使用者需自行承担使用行为及其后果。