Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1453 commits
Select commit Hold shift + click to select a range
feb5bc5
feat: Egern 模块
xream Aug 9, 2025
f5595ce
初始化 ws-opts 以避免未定义时报错
Ayideyia Aug 11, 2025
631c539
Merge pull request #478 from Ayideyia/master
xream Aug 11, 2025
e042ab8
feat: 完善 ws 传输层
xream Aug 11, 2025
116dd30
fix: 修复 Surge ws 传输层
xream Aug 12, 2025
3b3e34d
doc: demo.js
xream Aug 14, 2025
039bf88
feat: 若设置 $options._res.status, 拉取文件时将设置自定义响应状态码
xream Aug 15, 2025
94c820e
fix: 修复 doh
xream Aug 16, 2025
9569068
feat: Gist 备份选项
xream Aug 19, 2025
0527ad6
feat: geo 补充 Dubai > 阿联酋 🇦🇪, Czech 或 Czech Republic > 捷克 🇨🇿, Algeria …
xream Aug 20, 2025
4f19131
feat: geo 补充梵蒂冈
xream Aug 20, 2025
f8213a1
feat: TUIC URI 输入兼容不规范的 insecure 参数
xream Aug 21, 2025
64c7f33
feat: URI 逻辑调整. AnyTLS URI/sing-box 支持传输层(mihomo, Shadowrocket 中自动过滤此…
xream Aug 22, 2025
ce10c96
feat: URI 参数逻辑优化
xream Aug 22, 2025
818370d
feat: 引入 TextEncoder/Decoder polyfill
xream Aug 26, 2025
1286244
revert: Shadowrocket Hysteria 2 obfs password 已经没问题了, 撤回兼容性修改
xream Aug 28, 2025
bb443c8
feat: 通知支持 shoutrrr(需自行安装或使用打包好的 Docker 镜像)
xream Aug 30, 2025
1b9e91e
fix: 修复 sing-box max_early_data null 的问题
xream Sep 5, 2025
ff5bb13
fix: 修复 sing-box server_ports 端口范围
xream Sep 5, 2025
b1cc4bd
fix: 修复 Egern VMesss legacy
xream Sep 5, 2025
be7dbfe
feat: Egern 支持 VLESS REALITY(xtls-rprx-vision). 根据请求的 User-Agent 中的版本…
xream Sep 8, 2025
85e8320
fix: 修复 Egern VMesss legacy
xream Sep 8, 2025
1a479a8
feat: VLESS 支持 encryption 和 pqv
xream Sep 14, 2025
7450a8c
feat: 增强 SOCKS5 URI 兼容性
xream Sep 14, 2025
a8ffdd4
feat: mihomo VLESS 支持 encryption
xream Sep 23, 2025
276d5ce
feat: 去除部分默认 alpn
xream Sep 28, 2025
2270a9e
fix: 修复 Surge WireGuard preshared-key
xream Sep 30, 2025
8452407
feat: Loon Shadowsocks 2022 不支持 obfs
xream Oct 1, 2025
4cbb0f6
feat: `sing-box` 支持 `_fragment`, `_fragment_fallback_delay`, `_record…
xream Oct 3, 2025
d6f18a3
feat: 使用远程链接的响应内容作为订阅流量信息时, 先简单用状态码排除一下错误响应防止缓存
xream Oct 12, 2025
a179653
feat: mihomo/Shadowrocket 输出排除掉 XHTTP 传输层(现在 Sub-Store 输出到 Shadowrock…
xream Oct 20, 2025
2e12620
feat: 根据类型名称 token 删除分享(前端>=2.15.76)
xream Oct 21, 2025
13a4788
feat: Egern 正式支持 VLESS REALITY(xtls-rprx-vision)
xream Nov 4, 2025
dbd1f76
doc: README
xream Nov 4, 2025
a3d41a9
feat: 订阅流量数据兼容无 upload 字段的情况
xream Nov 5, 2025
fc9eea0
fix: 修复使用 HTTP 代理时 insecure 无效的问题
xream Nov 5, 2025
0ea8300
feat: Surge 模块参数新增最大响应体尺寸(默认为无限制)
xream Nov 9, 2025
405f042
feat: `sing-box` 支持 `_certificate`, `_certificate_path`, `_certificat…
xream Nov 12, 2025
fd685a9
feat: geo 补充卡塔尔
xream Nov 12, 2025
2317709
feat: geo 补充萨摩亚
xream Nov 12, 2025
c419b55
feat: Node.js 环境支持使用环境变量 SUB_STORE_MAX_HEADER_SIZE 设置请求的 header 大小限制
xream Nov 17, 2025
c076069
Fix typos in some files
namkhanh20xx Nov 18, 2025
b90d080
Merge pull request #510 from Edge-Seven/Fix/typos/20251118161314
xream Nov 18, 2025
d9f4157
feat: 默认查询流量信息的 `User-Agent` 从 `clash` 改为 `clash.meta/v1.19.16`
xream Nov 21, 2025
48da7a8
feat: geo 补充阿曼
xream Nov 25, 2025
1b00db0
Add 'tcp' to supported network types for vmess
eldoradoel Nov 26, 2025
51a8db1
Merge pull request #512 from eldoradoel/patch-1
xream Nov 26, 2025
a5fe77b
release: bump version
xream Nov 26, 2025
1a0bfdd
feat: geo 补充南极, 安提瓜和巴布达, 格陵兰, 津巴布韦, 阿鲁巴, 马里, 北马里亚纳, 索马里
xream Nov 26, 2025
8a2100f
feat: env backend 名称规范化
xream Nov 26, 2025
f6fed8c
feat: 支持使用环境变量 SUB_STORE_X_POWERED_BY 自定义响应头中的 X-Powered-By
xream Nov 28, 2025
a00a408
feat: 支持 sudoku
xream Nov 28, 2025
da34670
fix: 修复非 Node 环境报错
xream Nov 28, 2025
ff614b6
feat: Egern 支持 block_quic 参数 和 HTTPS 协议
xream Dec 5, 2025
fede003
feat: Surge 支持 anytls. 根据请求的 User-Agent 中的版本号自动开启, 或使用 includeUnsuppo…
xream Dec 11, 2025
f9050e5
feat: Surge 自动过滤带传输层的 anytls
xream Dec 12, 2025
82b60f1
feat: sing-box 支持 naive 出站
xream Dec 15, 2025
2da346e
fix: sing-box insecure is not supported on naive outbound
xream Dec 15, 2025
87525d0
doc: demo.js, README
xream Dec 15, 2025
48e2001
feat: QX 支持 REALITY. 由于 QX 的请求不带 build 等信息, 无法根据请求判断版本号自动开启. 请使用 inc…
xream Dec 16, 2025
0875b97
chore: UUID 可能非法的日志从 error 改为 info
xream Dec 16, 2025
9897e09
feat: QX 支持 XTLS Vision for VLESS. 由于 QX 的请求不带 build 等信息, 无法根据请求判断版本…
xream Dec 24, 2025
29b0775
feat: 只给 Surge 用的话, 不是使用 `interface-name` 使用 `interface` 也可以
xream Dec 24, 2025
5920359
doc: demo.js
xream Dec 24, 2025
311a929
feat: sing-box naive 出站支持 quic 和 quic-congestion-control
xream Dec 25, 2025
6c553e4
feat: ⚠️ BREAKING CHANGE 脚本中的 第三个参数 context 改为脚本共享的上下文, 可自由操作. 原本的 en…
xream Dec 27, 2025
5d3790d
feat: Stash 支持 AnyTLS. 由于 Stash 的请求不带 build 等信息, 无法根据请求判断版本号自动开启. 请使…
xream Dec 29, 2025
525e54e
feat: Surge 支持 Hysteria 2 Salamander 混淆. 根据请求的 User-Agent 中的版本号自动开启, …
xream Dec 30, 2025
57326de
feat: VMess YAML/JSON 输入解析时处理 cipher 和 alterId 默认值
xream Dec 30, 2025
439fcb7
feat: 过滤不支持的 VLESS encryption
xream Dec 31, 2025
da7cccb
fix: 更新encryption可能为none的判断逻辑
hsingyin Dec 31, 2025
b156297
fix: 修复 shadowrocket 输出筛选逻辑
xream Dec 31, 2025
d0cd900
fix: 修复 Surge VMess network 筛选逻辑
xream Jan 1, 2026
182e712
chore: network 逻辑有点乱了 可能还牵扯到别的逻辑 补充一点说明 以后再优化
xream Jan 1, 2026
6087d8c
feat: 统一 Trojan/VMess/VLESS network 逻辑
xream Jan 1, 2026
533fffb
feat: 通过链接参数传入 $options 时, 保留默认的 _req 请求数据; 订阅输出也支持使用 $options._res.s…
xream Jan 3, 2026
6dc7cc4
chore: Loon 插件支持修改定时任务 cron
xream Jan 4, 2026
c273174
feat: 订阅流量信息还原为 profile-web-page-url 响应头, 避免某些客户端出现异常
xream Jan 5, 2026
2944399
feat: 细致规范化订阅流量信息
xream Jan 5, 2026
3bc153a
feat: Shadowsocks 支持更多传输层
xream Jan 6, 2026
c1a8503
feat: mihomo 增加默认 client-fingerprint chrome
xream Jan 7, 2026
c3c0dac
mihomo 从全局配置获取的 global-client-fingerprint 和默认的 client-fingerprint 仅用于…
xream Jan 8, 2026
b01b4c6
feat: 增强 SUB_STORE_PRODUCE_CRON 解析兼容性, 增加解析结果详情
xream Jan 9, 2026
5529183
feat: 筛选掉不支持 http upgrade 的节点
xream Jan 9, 2026
9ca2114
feat: 无效分享返回假节点(防客户端缓存)(前端 >= 2.15.93)
xream Jan 11, 2026
8a4063d
fix: 修复 merge 模式路由
xream Jan 13, 2026
d23b640
feat: 更新资源时确保名称正确
xream Jan 13, 2026
7e421db
feat: QX 正式支持 Reality; 去除部分不合法的 flow
xream Jan 14, 2026
bf9d0ad
feat: 重构缓存逻辑, 支持配置各项缓存 TTL 配置(前端 >= 2.16.0), 不再支持其他方式自定义; scriptResou…
xream Jan 14, 2026
a7e340d
feat: 订阅中的订阅流量信息链接也支持响应头的数据
xream Jan 14, 2026
3377f2f
feat: 支持使用脚本删除响应头字段
xream Jan 14, 2026
db7efaf
feat: 校验备份文件时 settings 字段可以无任何字段
xream Jan 15, 2026
f1839c2
feat: Egern 支持 WireGuard. 由于 Egern 的请求不带 build 等信息, 无法根据请求判断是否支持来自动开启…
xream Jan 16, 2026
850c463
feat: Egern 支持根据请求头自动判断或使用 `includeUnsupportedProxy` 参数或开启 `包含官方/商店版不…
xream Jan 18, 2026
d052885
feat: Surge External Proxy Program 支持 `udp-relay`
xream Jan 18, 2026
f47bda5
feat: VLESS 支持 pcs 参数
xream Jan 19, 2026
6437946
feat: VLESS 支持 ech, h2 参数
xream Jan 19, 2026
3efd39c
feat: TUIC alpn 默认为 h3, congestion-controller 默认为 cubic, udp-relay-mo…
xream Jan 19, 2026
1af1af1
fix: 修复 QX VMess TLS
xream Jan 20, 2026
5cea099
feat: `sing-box` 支持使用完整的 `_ech` 结构设置 `tls` 的 `ech`, URI 里的改为 `_echCon…
xream Jan 23, 2026
8a9bc1c
feat: 节点去重支持多字度和 lodash get 语法(前端 >= 2.16.11)
xream Jan 24, 2026
a63bf54
feat: Egern 正式支持 WireGuard
xream Jan 26, 2026
bffe230
feat: Surge 支持 TrustTunnel. 根据请求的 User-Agent 中的版本号自动开启, 或使用 includeUn…
xream Jan 27, 2026
7984dfb
fix: 修复订阅流量信息合法性判断
xream Jan 30, 2026
21fbf59
Stash 新版支持代理链(dialer-proxy). 旧版请使用 代理的转发链 https://stash.wiki/proxy-pr…
xream Jan 31, 2026
88a03c1
feat: `sing-box` 支持使用完整的 `_curve_preferences` 结构设置 `tls` 的 `curve_pre…
xream Feb 6, 2026
bf3832a
feat: 协议过滤支持 MASQUE
xream Feb 8, 2026
7eeaff4
feat: Surfboard 支持 AnyTLS
xream Feb 14, 2026
7578e9e
feat: Surfboard 支持 Shadowsocks 2022
xream Feb 15, 2026
9ead260
feat: 远程链接支持完全自定义请求头(前端 >= 2.16.15)
xream Feb 16, 2026
6f91bce
feat: Stash 正式版支持 AnyTLS
xream Feb 24, 2026
f22e7bc
fix: 修复 Stash dialer-proxy
xream Feb 24, 2026
7ce2fa6
fix: 修复 Egern VLESS flow
xream Feb 26, 2026
54b5cbd
feat: Egern 支持 AnyTLS. 根据请求的 User-Agent 中的版本号自动开启, 或使用 includeUnsuppo…
xream Feb 26, 2026
dd2ed93
feat: 调整 env backend 判断
xream Feb 26, 2026
cd023cd
fix: 修复 mihomo 输入 servername 转换
xream Mar 1, 2026
517136d
feat: Node.js 环境规范化 profile-web-page-url 的值, 设置响应头失败时仅输出日志
xream Mar 1, 2026
c07a15b
feat: 修复并增强 shadowsocks uri v2ray-plugin 兼容性
xream Mar 2, 2026
b3bf582
feat: Loon 输入输出支持 AnyTLS
xream Mar 2, 2026
e41fb9d
docs: README
xream Mar 2, 2026
5704c05
feat: Surfboard 支持 Snell 1,2,3
xream Mar 2, 2026
5e8100e
feat: trust-tunnel -> trusttunnel; mihomo 支持 trusttunnel; 修复 Surge tr…
xream Mar 2, 2026
e921ebf
feat: Egern 正式支持 AnyTLS
xream Mar 3, 2026
d7e3659
feat: 新增 tokens 排序接口
xream Mar 5, 2026
008c388
fix: 修复 AnyTLS URI
xream Mar 7, 2026
57956de
feat: Loon 输出删除 idle-session-check-interval 和 min-idle-session 参数
xream Mar 7, 2026
4f5e7f7
feat: Loon shadowsocks 支持 udp over tcp(版本 2, 不支持 obfs)
xream Mar 11, 2026
e9297e8
feat: sing-box WireGuard 调整并输出为 endpoints
xream Mar 12, 2026
9563df2
feat: closes #556; mihomo 不再从全局配置获取的 global-client-fingerprint; 默认的 c…
xream Mar 13, 2026
4c52afd
feat: WireGuard ip 和 ipv6 字段兼容性调整
xream Mar 13, 2026
2cdd48a
feat: sni 字段使用引号包裹
xream Mar 13, 2026
d12e4e1
revert: loon sni 字段回退引号包裹的逻辑
xream Mar 14, 2026
be19860
feat: sni, host 等字段不再限制为 domain
xream Mar 14, 2026
6c9bc98
fix(backend): normalize exported clash yaml short-id
constansino Mar 21, 2026
2c1d0bc
Merge pull request #560 from constansino/fix/file-export-short-id-quote
xream Mar 21, 2026
185c926
feat: 调整 normalizeClashYaml 处理方式
xream Mar 21, 2026
5dcb221
fix: 修复 SUB_STORE_MAX_HEADER_SIZE 类型转换
xream Mar 22, 2026
5706d4d
feat: Stash 支持 Tailscale, 根据请求判断版本号自动开启或使用 includeUnsupportedProxy 参数…
xream Mar 23, 2026
dd05a92
feat: sing-box 支持 Tailscale, 输出为 endpoints
xream Mar 23, 2026
8bdee1d
feat: `sing-box` 支持使用完整的 `_domain_resolver` 结构设置 `domain_resolver` 字段
xream Mar 23, 2026
eaba311
doc: demo.js
xream Mar 23, 2026
3cd71f9
chore(backend): overhaul proxy-utils coverage and retire legacy parse…
xream Mar 25, 2026
a1789cc
fix: 修复 WireGuard URI 编码问题
xream Mar 26, 2026
1f9ce27
feat: support sing-box ech
duakc Mar 27, 2026
d1f2f62
fix: query-server-name
duakc Mar 27, 2026
60e61e0
feat: add more fields
duakc Mar 27, 2026
c7ce682
Merge pull request #563 from duakc/master
xream Mar 27, 2026
38e49e5
fix: 修复 sni 逻辑
xream Mar 27, 2026
9a1fe28
doc: demo.js
xream Mar 27, 2026
cd42bbe
fix: 修复 sing-box ech
xream Mar 27, 2026
a9debf0
feat: mihomo 支持 XHTTP(详见 MetaCubeX/mihomo#2645)
xream Mar 27, 2026
f143710
feat: ⚠️ BREAKING CHANGE 以后默认输出该客户端支持的所有协议
xream Mar 28, 2026
01d7673
feat: 支持调整新创建的项目在最上面还是最下面
xream Mar 29, 2026
db7ad0a
feat: Surfboard 支持 Hysteria 2
xream Mar 30, 2026
ec54404
fix: 修复 Egern 单节点报错导致订阅整体报错的问题
xream Mar 30, 2026
6762c46
feat: 支持归档(回收站)
xream Mar 30, 2026
1299764
chore: 要转换 extra 里的 downloadSettings 到 mihomo 格式过于复杂, 不予支持
xream Mar 31, 2026
dea8852
feat: Surge for macOS 设置节点字段 `_mihomoExternal` 为 `true` 可强制指定使用 mihom…
xream Mar 31, 2026
03be414
feat: Stash VLESS REALITY 支持各种 flow(未限制 一般常见的截断后能使用), 不支持非 TCP 以外的传输层
xream Mar 31, 2026
2d49196
doc: demo.js
xream Apr 1, 2026
ee6148c
fix: 支持 plugin 参数中 \= 这种转义形式
xream Apr 1, 2026
436a631
feat: ProxyUtils 新增 hex_md5
xream Apr 2, 2026
0c016e9
chore: 简化 dev
xream Apr 2, 2026
0883ec9
fix 修复 VLESS/SS URI 解析
xream Apr 3, 2026
690b2c1
feat: clash 系/sing-box mux 逻辑处理; dev 保持两种
xream Apr 3, 2026
43c5fc2
chore: 补全测试
xream Apr 3, 2026
7ea0677
fix: 修复 sing-box ech
xream Apr 3, 2026
c241894
fix: 修复 Surge 模块版无法使用已归档的问题
xream Apr 4, 2026
404df83
fix: 修复 mux
xream Apr 5, 2026
ed4ae7a
feat: 新增参数 prettyYaml 输出更易读的块状 YAML, 默认仍是单行 JSON 风格
xream Apr 5, 2026
8bcba35
fix: normalize v2ray-plugin mux values for URI and sing-box exports
xream Apr 5, 2026
1e8dd78
feat: 支持 scMaxEachPostBytes 和 xmux
xream Apr 6, 2026
6006832
fix: 修复恢复备份路由
xream Apr 7, 2026
d412db1
feat: 转换 scMaxEachPostBytes 为 mihomo 兼容
xream Apr 8, 2026
a8afff1
feat: 过滤掉缺少 obfs-password 的 hysteria2
xream Apr 8, 2026
d6b0791
feat: 完善 VLESS URI 与 mihomo 转换
xream Apr 9, 2026
bdd5635
feat: 完善 VLESS/Trojan URI 与 mihomo 转换
xream Apr 10, 2026
78c7b62
feat: 自动更新默认 User-Agent
xream Apr 10, 2026
8c98f39
feat: 支持订阅/文件级别的自定义缓存时长
xream Apr 10, 2026
cc22851
feat: Hysteria2 hop-interval 支持范围格式, 先只做拆分兼容
xream Apr 11, 2026
2a760ce
feat: QX/Shadowrocket 支持 SS+TLS; 内部字段 `_qx_obfs_http` 方便设置 QX 的几个特殊的 …
xream Apr 12, 2026
9799a57
fix: 修复 QX 无传输层时的 sni 逻辑
xream Apr 12, 2026
dd01117
feat: 优化 VLESS URI 逻辑
xream Apr 12, 2026
48cdcad
feat: 支持非标用法: VMess Base64 URI 末尾加 #节点名
xream Apr 14, 2026
7e70ffd
feat: 支持 sc-min-posts-interval-ms; 优化 VLESS URI 转换逻辑
xream Apr 14, 2026
621d619
feat: QX 支持 AnyTLS
xream Apr 15, 2026
820c191
feat: Shadowsocks v2ray-plugin plugin-opts 中 mode 使用真实取值; 增强 V2Ray UR…
xream Apr 15, 2026
2a2e76a
feat: 完善 WireGuard IP/IPv6 解析转换
xream Apr 15, 2026
8ffb62f
feat: 完善 VLESS URI 转换
xream Apr 19, 2026
52dbecf
feat: add proxy utils esm bundle
Ayideyia Apr 19, 2026
9b06271
feat: 订阅失败处理新增兜底通知和兜底静默
xream Apr 19, 2026
ab4d678
Merge pull request #577 from Ayideyia/master
xream Apr 19, 2026
681d306
release: bump version
xream Apr 19, 2026
fe20dd4
feat(geo): add flags for Lesotho and Central African Republic
Aethersailor Apr 21, 2026
5534416
Merge pull request #579 from Aethersailor/add-missing-flags
xream Apr 21, 2026
e2d6b83
release: bump version
xream Apr 21, 2026
ea8bb4d
feat: 分享支持直接设置到期时间
xream Apr 21, 2026
89767ce
feat: 支持查看日志(前端>=2.16.60)
xream Apr 24, 2026
946cdaf
feat: mihomo VLESS XHTTP 下行 阻断 reality-opts 继承,补充 Shadowrocket XHTTP …
xream Apr 27, 2026
201e0ee
fix: 修复下行 reality 合法性检查
xream Apr 28, 2026
4c3da54
fix: 修复并统一 VLESS XHTTP 的 host/mode 映射与继承
xream Apr 28, 2026
a2a6989
fix: 修复 SS URI 解析
xream Apr 28, 2026
860975c
feat: 完整通知日志输出
xream Apr 29, 2026
837604d
feat: 取消同步配置完成的通知
xream Apr 29, 2026
12fec7c
Update issue templates
xream Apr 29, 2026
60ea29f
fix: 统一 WebSocket ed 参数在解析与导出的处理逻辑
xream Apr 30, 2026
def3e6b
feat: 节点字段 _config 对象可覆盖 Surge for macOS 转换的 External Proxy Program 的…
xream May 1, 2026
d0c5ccf
fix: 优化 Surge 与 SurgeMac 的不支持代理处理和降级逻辑
xream May 1, 2026
8979f6b
feat: SurgeMac 新增合并模式, 支持仅启动一个 mihomo 使用多个入站
xream May 1, 2026
2d1401a
doc: demo.js
xream May 3, 2026
729e853
feat: 新增 sync_success_notify 开关并增强同步任务参数解析
xream May 4, 2026
94ac8bb
feat: 组合订阅可设置是否透传单条订阅的流量信息(前端 >= 2.16.84)
xream May 4, 2026
93ae942
feat: 脚本操作中可使用内部 DOMAIN_RESOLVERS
xream May 5, 2026
c1c7070
chore: issue 模板
xream May 6, 2026
489dadc
feat: Shadowrocket 支持 VLESS Encryption
xream May 6, 2026
c5ab519
chore: issue 模板
xream May 6, 2026
ad5a0e3
feat: 支持订阅流量请求传入自定义 headers
xream May 6, 2026
3ac78bd
feat: 优化 artifact 同步配置和 GitHub API 地址处理
xream May 8, 2026
491885b
feat: 避免删除配置后 Gist 变空,新增占位文件兜底并回传同步状态
xream May 8, 2026
7be333d
feat: 支持 VLESS ECH 配置在 URI 与 Mihomo 间互转(含 nested xhttp 与告警)
xream May 9, 2026
506d8c3
feat: Shadowrocket 支持 trusttunnel, 下发 XHTTP 并输出日志提示
xream May 9, 2026
59f985a
feat: 支持配置独立的 GitHub API 请求超时
xream May 10, 2026
58ab0a7
feat: 优化 Gist 同步诊断信息并更新 Node/Mocha 依赖策略
xream May 11, 2026
58fccc7
feat: 调整 AnyTLS 不同情况下的过滤逻辑(暂时先不扩展到 所有的 REALITY 的检测)
xream May 11, 2026
8bf61c1
Update Egern.yaml
unknowntokyo May 11, 2026
24e15b9
Merge pull request #587 from unknowntokyo/master
xream May 11, 2026
000b895
chore: 文案
xream May 11, 2026
547e0ab
feat: 增加同步配置分批上传与失败后续批次继续机制
xream May 12, 2026
7474b05
docs: README
xream May 13, 2026
e33c3d0
feat: mihomo 支持 OpenVPN
xream May 13, 2026
e95a0f6
feat: Loon 资源解析器支持 noCache
xream May 13, 2026
79f46b2
feat: 优化域名解析并发, 优化 sing-box Tailscale 转换, 支持 mihomo Tailscale
xream May 14, 2026
900e1dc
feat: shadowrocket 输出支持 mieru
xream May 14, 2026
e615700
feat(surgemac): expose mihomoMerge / mihomoMergeName via URL query
hhh2210 May 15, 2026
82c1e57
feat(wip): 支持 h2-connect 与 proxy headers 的解析/导出,并补齐兼容性过滤
xream May 15, 2026
b485234
Merge pull request #588 from hhh2210/feat-expose-mihomo-merge-url-param
xream May 15, 2026
106b3a8
feat(wip): 支持 SurgeMac 下载参数透传并增强 Mihomo External 合并行为
xream May 15, 2026
495e88c
feat(surge): 支持 Surge headers 复杂场景的解析与导出
xream May 15, 2026
6ca5236
feat: 优化 sing-box network 转换逻辑, 兼容 UDP 开关, 区分不支持协议
xream May 15, 2026
a9e42d6
feat: 脚本上下文参数 $options._req 字段传递 socket.remoteAddress
xream May 16, 2026
0ed1fd3
feat: mihomo 支持 GOST Relay
xream May 16, 2026
c07ca12
feat: 新增操作 修改响应, 可用于修改最终发出的响应
xream May 17, 2026
f069fbb
feat: Egern Hysteria 2 支持 bandwidth; Hysteria 2 URI 支持解析 upmbps 和 dow…
xream May 17, 2026
27e7fa3
feat: Surge 支持 client-cert
xream May 17, 2026
0111766
feat: Surge HTTP/2 CONNECT 和 TrustTunnel 支持 max-streams
xream May 18, 2026
049f468
feat: Loon Hysteria 2 支持 server-ports, hop-interval
xream May 19, 2026
7dcc0b0
feat: 支持“仅生成不上传”模式,优化定时同步与上传流程
xream May 20, 2026
5c90301
feat: 支持 Shadowrocket gost-plugin SS URI 解析,mihomo plugin mux 规范化
xream May 20, 2026
5007a34
feat: Node 环境支持为同步配置设置独立的 cron
xream May 21, 2026
7188d29
feat: mihomo 校验 ShadowTLS, 支持新版 Snell
xream May 21, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
74 changes: 74 additions & 0 deletions .github/ISSUE_TEMPLATE/功能建议.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
name: 功能建议
description: 改进或新功能等
title: "[FR] "
body:
- type: dropdown
id: request-type
attributes:
label: 建议类型
description: 请选择最接近的类型。
multiple: false
options:
- 新功能
- 现有功能改进
- UI/交互优化
- 文档/示例改进
- 其他
validations:
required: true
- type: dropdown
id: runtime
attributes:
label: 运行环境
description: 请选择这个建议涉及的运行环境。
multiple: false
options:
- Node.js
- Android
- Docker
- 自部署
- Surge
- Loon
- Quantumult X
- Stash
- Shadowrocket
- 其他
validations:
required: true
- type: dropdown
id: affected-areas
attributes:
label: 影响范围
description: 可多选,请选择这个建议涉及的部分。
multiple: true
options:
- 后端
- 前端
- 订阅转换
- 节点/策略组
- 同步/缓存
- 配置/部署
- 代理 App 兼容
- 文档
- 其他
validations:
required: true
- type: textarea
id: requirement
attributes:
label: 需求描述
description: 建议把需求讲清楚,不要一下子跳到一个解决方案。
validations:
required: true
- type: textarea
id: proposed-solution
attributes:
label: 解决方案
description: 建议先把上面的需求讲清楚,然后根据需求提解决方案。
validations:
required: true
- type: textarea
id: additional-context
attributes:
label: 其他信息
description: 例如参考链接、截图、替代方案或额外背景。
104 changes: 104 additions & 0 deletions .github/ISSUE_TEMPLATE/问题反馈.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,104 @@
name: 问题反馈
description: 先读完排查方法再反馈
title: "[BUG] "
body:
- type: markdown
attributes:
value: |
**先读我**

[排查方法](https://t.me/zhetengsha/218)
- type: checkboxes
id: read-troubleshooting
attributes:
label: 阅读确认
options:
- label: 我已阅读上方排查方法
required: true
- type: dropdown
id: runtime
attributes:
label: 运行环境
description: 请选择主要出现问题的运行环境。
multiple: false
options:
- Node.js
- Android
- Docker
- 自部署
- Surge
- Loon
- Quantumult X
- Stash
- Shadowrocket
- 其他
validations:
required: true
- type: dropdown
id: affected-areas
attributes:
label: 影响范围
description: 可多选,请选择和问题相关的部分。
multiple: true
options:
- 后端
- 前端
- 订阅转换
- 节点/策略组
- 同步/缓存
- 配置/环境变量
- 代理 App
- 其他
validations:
required: true
- type: input
id: runtime-version
attributes:
label: 上述运行环境版本/App 版本
description: 例如 Node.js 版本、Android 版本、Docker 镜像版本或代理 App 版本。
validations:
required: true
- type: input
id: backend-version
attributes:
label: 后端版本
description: 填写当前使用的后端版本。
validations:
required: true
- type: input
id: frontend-version
attributes:
label: 前端版本
description: 填写当前使用的前端版本。
validations:
required: true
- type: textarea
id: reproduction
attributes:
label: 复现方式
description: 请按步骤说明如何复现。
value: |
1.
2.
3.
validations:
required: true
- type: textarea
id: expected-behavior
attributes:
label: 期望表现
description: 描述你认为应该发生什么。
validations:
required: true
- type: textarea
id: actual-behavior
attributes:
label: 实际表现
description: 描述实际发生了什么。
validations:
required: true
- type: textarea
id: additional-context
attributes:
label: 其他信息
description: 例如截图、日志、配置片段或相关链接。
116 changes: 116 additions & 0 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,116 @@
name: build
on:
workflow_dispatch:
push:
branches:
- master
paths:
- "backend/package.json"
pull_request:
branches:
- master
paths:
- "backend/package.json"
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v6
with:
ref: "master"
- name: Set up Node.js
uses: actions/setup-node@v6
with:
node-version-file: ".node-version"
- name: Install dependencies
run: |
corepack enable
cd backend && pnpm i --no-frozen-lockfile
- name: Sync latest mihomo version
run: |
MIHOMO_VERSION="$(curl -fsSL https://github.com/MetaCubeX/mihomo/releases/latest/download/version.txt | tr -d '\r\n')"
test -n "$MIHOMO_VERSION"
echo "Using mihomo version: $MIHOMO_VERSION"
cd backend
MIHOMO_VERSION="$MIHOMO_VERSION" node <<'NODE'
const fs = require('fs');

const files = ['src/utils/download.js', 'src/utils/flow.js'];
const version = process.env.MIHOMO_VERSION;
let replacements = 0;

for (const file of files) {
const source = fs.readFileSync(file, 'utf8');
const next = source.replace(/clash\.meta\/[^"']+/g, () => {
replacements += 1;
return `clash.meta/${version}`;
});

if (next !== source) {
fs.writeFileSync(file, next);
}
}

if (replacements === 0) {
throw new Error('No clash.meta version strings were updated.');
}

console.log(`Updated ${replacements} clash.meta version string(s).`);
NODE
- name: Test
run: |
cd backend
pnpm test
# - name: Build
# run: |
# cd backend
# pnpm run build
- name: Bundle
run: |
cd backend
pnpm bundle:esbuild
- id: tag
name: Generate release tag
run: |
cd backend
SUBSTORE_RELEASE=`node --eval="process.stdout.write(require('./package.json').version)"`
echo "release_tag=$SUBSTORE_RELEASE" >> $GITHUB_OUTPUT
- name: Prepare release
run: |
cd backend
pnpm i -D conventional-changelog-cli
pnpm run changelog
- name: Release
uses: softprops/action-gh-release@v1
if: ${{ success() }}
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
body_path: ./backend/CHANGELOG.md
tag_name: ${{ steps.tag.outputs.release_tag }}
# generate_release_notes: true
files: |
./backend/sub-store.min.js
./backend/dist/sub-store-0.min.js
./backend/dist/sub-store-1.min.js
./backend/dist/sub-store-parser.loon.min.js
./backend/dist/cron-sync-artifacts.min.js
./backend/dist/proxy-utils.esm.mjs
./backend/dist/sub-store.bundle.js
- name: Git push assets to "release" branch
run: |
cd backend/dist || exit 1
git init
git config --local user.name "github-actions[bot]"
git config --local user.email "github-actions[bot]@users.noreply.github.com"
git checkout -b release
git add .
git commit -m "release: ${{ steps.tag.outputs.release_tag }}"
git remote add origin "https://${{ github.actor }}:${{ secrets.GITHUB_TOKEN }}@github.com/${{ github.repository }}"
git push -f -u origin release
# - name: Sync to GitLab
# env:
# GITLAB_PIPELINE_TOKEN: ${{ secrets.GITLAB_PIPELINE_TOKEN }}
# run: |
# curl -X POST --fail -F token=$GITLAB_PIPELINE_TOKEN -F ref=master https://gitlab.com/api/v4/projects/48891296/trigger/pipeline
28 changes: 26 additions & 2 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
.DS_Store
# json config
sub-store.json
sub-store_*.json
root.json

# Logs
Expand Down Expand Up @@ -86,7 +88,7 @@ out

# Nuxt.js build / generate output
.nuxt
dist
# dist

# Gatsby files
.cache/
Expand Down Expand Up @@ -117,4 +119,26 @@ dist
.yarn/unplugged
.yarn/build-state.yml
.yarn/install-state.gz
.pnp.*
.pnp.*

# Editor directories and files
.idea
.vscode
*.suo
*.ntvs*
*.njsproj
*.sln
*.sw?

# Dist files
backend/dist/*
!backend/dist/.gitkeep
backend/sub-store.min.js

CHANGELOG.md

.codeartsdoer
.github/copilot-instructions.md
CODEMAP.md
CONTEXT_BUNDLE.md
mydocs
5 changes: 0 additions & 5 deletions .idea/.gitignore

This file was deleted.

12 changes: 0 additions & 12 deletions .idea/MagicStore.iml

This file was deleted.

7 changes: 0 additions & 7 deletions .idea/dictionaries/pengym.xml

This file was deleted.

6 changes: 0 additions & 6 deletions .idea/inspectionProfiles/Project_Default.xml

This file was deleted.

6 changes: 0 additions & 6 deletions .idea/misc.xml

This file was deleted.

8 changes: 0 additions & 8 deletions .idea/modules.xml

This file was deleted.

Loading