Cool Scripts
16.6K subscribers
364 photos
24 videos
3 files
627 links
QuanX, Loon, Surge, JsBox, Pythonista, Scriptable, Shortcuts等脚本分享
Download Telegram
🔗 Sub-Store

🆕 前端 更新 2.14.27

🟢前端节点操作中的多个正则支持拖拽排序
Please open Telegram to view this post
VIEW IN TELEGRAM
3👍2
🔗 Sub-Store

🆕 前端 2.14.28, 后端 2.14.134

🟢支持 ⚠️ Surfboard
Please open Telegram to view this post
VIEW IN TELEGRAM
9👍5
🔗 Sub-Store

🆕 后端 2.14.139

🟢Node.js 版的通知支持第三方推送服务

环境变量名 SUB_STORE_PUSH_SERVICE

支持 Bark/PushPlus 等服务

形如: https://api.day.app/XXXXXXXXXXXX/[推送标题]/[推送内容]?group=SubStore&autoCopy=1&isArchive=1&sound=shake&level=timeSensitive&icon=https%3A%2F%2Fraw.githubusercontent.com%2F58xinian%2Ficon%2Fmaster%2FSub-Store1.png



http://www.pushplus.plus/send?token=XXXXXXXXX&title=[推送标题]&content=[推送内容]&channel=wechat


URL 中的 [推送标题][推送内容] 会被自动替换

👍不要再问支不支持 XX 服务, 已经约等于支持任何能进行 GET 请求的第三方推送服务了

❗️ Sub-Store 服务器/云平台/Docker/Android 版的相关教程
Please open Telegram to view this post
VIEW IN TELEGRAM
👍31
🔗 Sub-Store

🆕 后端 2.14.141 前端 2.14.30

🟢兼容部分不带参数/不带节点名的 URI 输入

🟢支持设置全局请求超时

暂时只支持全局修改 再观察一下

一般代理 app 加载外部资源有自己的超时

有时候某些远程订阅超时, 可能会导致组合订阅整体拉取的时长超过此时长. 可设置此参数, 保证组合订阅能在代理 app 内拉取成功

❗️ Sub-Store 服务器/云平台/Docker/Android 版的相关教程
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
🔗 Sub-Store

🆕 前端 2.14.32

🟢默认隐藏悬浮刷新按钮(可在设置中切换)

PS: 悬浮操作按钮式是可以拖动的
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🥰31
🔗 Sub-Store

🆕 前端 2.14.38 后端 2.14.146

👨‍💻 新增文件功能

🟢文件支持本地/远程, 按顺序合并, 忽略失败的远程文件

🟢文件支持脚本操作和预览

🟢可使用链接访问文件内容

🟢可将文件内容同步到 Gist

🟢可在脚本操作中使用 /api/file/name 访问内部文件

🟢接口 /api/file/name 支持参数覆盖

❗️ 使用场景

🟢在脚本操作复用内部文件

🟢🔗 Sub-Store 统一管理配置文件/规则集/脚本/模块

🟢对本地/远程的文本内容进行合并, 脚本操作

🟢利用参数覆盖功能 复用工作流模板 /api/file/name?url=&content=&ua=&mergeSources&ignoreFailedRemoteFile

服务器版直接使用链接

非服务器版 本设备使用 或 同步到 Gist 供其他设备使用

🛠️ Sub-Store 服务器/云平台/Docker/Android 版的相关教程

改动较大 有问题大家及时反馈(
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
7🔥2
🚀 Shadowrocket 测试版更新

Version 2.2.45 (2163)

测试内容:
* fix http request script early response issue

此版本的🚀 Shadowrocket🔗 Sub-Store 无法同步到 Gist 的问题已确认修复
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1🥰1
🔗 Sub-Store 文件动态生成 📦 sing-box 配置示例

🆕 查看最新版带参数规则的脚本

———

💃 亚托莉佬的模板和远程脚本

远程文件填 链接1 链接2
脚本操作填链接 https://raw.githubusercontent.com/xishang0128/sub-store-template/main/sing-box.js#type=1&name=name // "1" 表示组合订阅, name 为订阅的 "名称", 具体看文件中的说明

⚠️ 此脚本与此模板配套 如果要用自定义模板/有自定义脚本的需求 可使用👇🏻的方案自己动手 或者 查看最新版带参数规则的脚本

1.1 使用远程模板

远程链接 中 第一行为 sing-box 模板文件链接
例: https://a.com/sing-box.tpl.json

1.2 或者使用本地模板
本地文本 中为 sing-box 模板文件的内容

假设 你的 sing-box 模板文件中的 outbounds 是这样的: { "outbounds": [ { "tag": "全部节点", "type": "selector", "default": "urltest", "outbounds": [ "美国节点" ] }, { "tag": "美国节点", "type": "urltest", "outbounds": [] } ] }

脚本操作:
let config = JSON.parse($files[0]) // 文件中的第一个
let proxies = await produceArtifact({
type: 'subscription', // 如果是组合订阅 就是 'collection'
name: '订阅的name', // 订阅的"名称", 不是"显示名称"
platform: 'sing-box',
produceType: 'internal'
})

// 先将全部节点结构插到 outbounds
config.outbounds.push(...proxies)

config.outbounds.map(i => {
// 在 全部节点 中插入全部节点名
if (['全部节点'].includes(i.tag)) {
i.outbounds.push(...proxies.map(p => p.tag))
}
// 在 美国节点 中插入全部美国节点名
if (['美国节点'].includes(i.tag)) {
i.outbounds.push(...proxies.filter(p => /美国|🇺🇸|us|united states/i.test(p.tag)).map(p => p.tag))
}
})

$content = JSON.stringify(config, null, 2)


▎其他示例(YAML, JSON):

let singboxProxies = await produceArtifact({
type: 'subscription', // type: 'subscription' 或 'collection'
name: 'sub', // subscription name
platform: 'sing-box', // target platform
produceType: 'internal' // 'internal' produces an Array, otherwise produces a String( JSON.parse('JSON String') )
})

let clashMetaProxies = await produceArtifact({
type: 'subscription',
name: 'sub',
platform: 'ClashMeta',
produceType: 'internal' // 'internal' produces an Array, otherwise produces a String( ProxyUtils.yaml.safeLoad('YAML String').proxies )
}))

// YAML
$content = ProxyUtils.yaml.safeDump({})

// JSON
$content = JSON.stringify({}, null, 2)


🎲 Sub-Store 代理 App 版安装下载

🛠 Sub-Store 服务器/云平台/Docker/Android 版的相关教程
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍86🤔2😍1
#Sub-Store #教程 #自建 #免费 #平台 #Docker #Node.js #Android

🔗 Sub-Store 相关教程整合更新

Docker 版 和 🤗 Hugging Face 的目前为最新版

其他 Docker 云平台可以参考它的

🎲 Sub-Store 代理 App 版安装下载

🛠 Sub-Store 服务器/云平台/Docker/Android 版的相关教程
Please open Telegram to view this post
VIEW IN TELEGRAM
🔗 Sub-Store 文件动态生成 📦 sing-box 配置示例

🆕 新增远程脚本链接 可配置参数自定义将哪些节点插入哪些 outbound 中

💃 亚托莉佬的模板和远程脚本

远程文件填 链接1 链接2
脚本操作填链接 https://raw.githubusercontent.com/xishang0128/sub-store-template/main/sing-box.js#type=1&name=name // "1" 表示组合订阅, name 为订阅的 "名称", 具体看文件中的说明

⚠️ 此脚本与此模板配套 如果要用自定义模板/有自定义脚本的需求 可使用👇🏻的方案

1.1 使用远程模板

远程链接 中 第一行为 sing-box 模板文件链接
例: https://a.com/sing-box.tpl.json

1.2 或者使用本地模板
本地文本 中为 sing-box 模板文件的内容

使用脚本操作 填入链接:

https://raw.githubusercontent.com/xream/scripts/main/surge/modules/sub-store-scripts/sing-box/template.js#type=组合订阅&name=机场&outbound=🕳ℹ️all|all-auto🕳ℹ️hk|hk-auto🏷ℹ️港|hk|hongkong|kong kong|🇭🇰🕳ℹ️tw|tw-auto🏷ℹ️台|tw|taiwan|🇹🇼🕳ℹ️jp|jp-auto🏷ℹ️日本|jp|japan|🇯🇵🕳ℹ️sg|sg-auto🏷ℹ️^(?!.*(?:us)).*(新|sg|singapore|🇸🇬)🕳ℹ️us|us-auto🏷ℹ️美|us|unitedstates|united states|🇺🇸

示例表示:

读取 名称为 "机场" 的 组合订阅 中的节点(单订阅不需要设置 type 参数)
把 所有节点插入匹配 /all|all-auto/i 的 outbound 中(跟在 🕳 后面, ℹ️ 表示忽略大小写, 不筛选节点不需要给 🏷 )
把匹配 /港|hk|hongkong|kong kong|🇭🇰/i (跟在 🏷 后面, ℹ️ 表示忽略大小写) 的节点插入匹配 /hk|hk-auto/i 的 outbound 中
...

⚠️ 如果 outbounds 为空, 自动创建 COMPATIBLE(direct) 并插入 防止报错

如果想完全手写 可参考 https://t.me/cool_scripts/483

🎲 Sub-Store 代理 App 版安装下载

🛠 Sub-Store 服务器/云平台/Docker/Android 版的相关教程
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
7🥰2
🔗 Sub-Store

🆕 后端 2.14.163

🟢Node.js 版本体支持定时任务, 环境变量 SUB_STORE_BACKEND_CRON

🟢优化订阅流量获取, 启用共享缓存(默认一分钟) 并优先尝试 HEAD 方法

感谢 野比佬 @nubida 的建议

🟢🎈 Loon 插件支持修改响应头缓存有效期

🟢VLESS URI 输入兼容 🚀 Shadowrocket 导出格式

感谢群友 @zdz0510 的反馈
Please open Telegram to view this post
VIEW IN TELEGRAM
2👍2
🔗 Sub-Store

🆕 前端 2.14.57, 后端 2.14.169

🟢📦 修复 sing-box wireguard 输出

🟢 订阅链接 增加参数 #noFlow 不查询订阅流量信息

用例: 可使用标准参数格式 #noCache&noFlow

🟢 取消 GitHub 用户名绑定关系

现在用户名错误只影响头像

Gist 同步只跟 token 有关

🟢 增加 gist 链接和最近一次检查状态的说明

如截图所示 方便排查问题

🎲 Sub-Store 代理 App 版安装下载

🛠 Sub-Store 服务器/云平台/Docker/Android 版的相关教程
Please open Telegram to view this post
VIEW IN TELEGRAM
6
🔗 Sub-Store

🆕 后端 2.14.171 前端 2.14.62

🟢支持从 gist 获取不在同步配置中的 gist 文件

只是帮你拉取并创建同步配置项目

仍需要你手动设置来源 以进行后续的上传

🟢修复无法删除已同步过的 gist 文件的问题


🎲 Sub-Store 代理 App 版安装下载

🛠 Sub-Store 服务器/云平台/Docker/Android 版的相关教程
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
1
🔗 Sub-Store

🆕 后端 2.14.172 前端 2.14.65

🟢📈 SurgeMac 支持 external (External Proxy Program)

根据 User-Agent 自动识别 或 手动指定 target=SurgeMac

⚠️ 根据 https://manual.nssurge.com/policy/external-proxy.html addresses 参数要求为 IP, 可先进行 节点操作 中的 域名解析

🟢节点操作类型过滤 支持 external

🟢补充了一些说明

1. SurgeMac 支持 SSR

节点字段 execssr-local 路径, 默认 /usr/local/bin/ssr-local; 端口从 10000 开始递增(暂不支持配置)

2. 域名解析 目前仅支持 IPv4. 可由节点字段 no-resolve 控制

3. 订阅链接(多个订阅请换行) 支持参数: noFlow 不查询流量, noCache 不使用缓存. 例: http://a.com?token=1#noFlow&noCache

4. 脚本链接: 填入完整远程脚本链接 或 类似 /api/file/name 的内部文件调用路径. 除了脚本本身的参数外, 支持叠加参数: noCache 不使用缓存. 例: http://a.com#a=1&b=2#noCache

5. 其他外部链接(多个链接请换行) 支持参数: noCache 不使用缓存. 例: http://a.com#noCache

🎲 Sub-Store 代理 App 版安装下载

🛠 Sub-Store 服务器/云平台/Docker/Android 版的相关教程
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
2