Skip to content

About

Advanced Script Converter for QX, Loon, Surge, Stash, Egern, LanceX and Shadowrocket - 重写 & 规则集转换

Resources

Stars

3.8k stars

Watchers

19 watching

Forks

Latest commit

 

History

924 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


Script Hub

Script Hub

Advanced Script Converter for QX, Loon, Surge, Stash, Egern, LanceX and Shadowrocket

重写 & 规则集转换

社群

👏🏻 欢迎加入社群进行交流讨论

👥 群组 张佩服(群组) & 折腾啥(群组)

📢 频道 张佩服(频道) & 折腾啥(频道)

简介

• 支持将 QX 重写解析至 Surge Shadowrocket Loon Stash

• 支持将 Surge 模块解析至 Loon Stash

• 支持将 Loon 插件解析至 Surge Shadowrocket Stash

• Beta 支持将 Loon 3.5.1+ Script v2 转换为 Surge/Egern、Shadowrocket、Stash 或 Loon 插件

• 支持 QX & Surge & Loon & Shadowrocket & Clash 规则集解析,适用 app: Surge Shadowrocket Stash Loon

• 支持 将 QX 脚本转换成 Surge 脚本(兼容)

• 可以修改参数 argument

• 支持一键导入 Shadowrocket / Loon / Stash

• 高级功能 OR 修改任意文本

• 如果某些模块需要 加参数才能使用 但只想用远程链接,不想拉取到本地模块的情况 可以直接使用 纯文本 -> 高级操作、修改参数 功能修改远程链接 任意内容 或者 argument 参数, 不用再复制到本地模块

• 🆕 不需要代理 app 的全服务器部署版(测试中)

• 相关生态: Surge 模块工具 支持一键导入 Surge, 需要下载「Scriptable」app. 如果想把其他非 Script Hub 转换的 模块放在本地, 也可单独用此脚本

文档

安装体验请查看文档

Loon Script v2 跨端转换(Beta)

Beta 支持 Loon Script v2 的 request、response、cron、network-changed、generic 触发器,可转换为 Surge/Egern、Shadowrocket 和 Stash;转换为 Loon 时保留原生 v2 语法。

会保留可映射的 timeout、enable、requires_body、binary_body_mode 和脚本参数。binary_body_mode 不等同于 requires_body,需要完整响应体时请在源脚本显式设置 requires_body=true。WASM、加密逻辑和脚本内容不会被解密或改写,只转换宿主配置。

Surge/Shadowrocket 支持 Loon Rewrite Action 的 reject*、response.json.*、*.body.*、*.header.*、redirect、url.replace;JSON 映射为 Body Rewrite 的 jq,jq_file 由转换器服务端读取并内联。无法等价转换的条件或参数会提示,不会静默丢失。

不兼容项(如方法、响应状态码、Header 组合条件、debug)会进入提示。network-changed 映射为 Surge/Shadowrocket 的 event-name=network-changed,Stash 保留诊断;img_url 在 Loon 保留,Stash Generic 映射为 Tile icon,其他目标提示不支持。Shadowrocket 不支持 Generic/Tile Script;Stash 动态 enable 会转为注释。Loon 原生 v2 与旧式 Script 混排时保持源顺序。

Beta 模块使用官方 main 解析器,回归测试:

npm run test:loon-v2

参考:Loon Script v2 文档

鸣谢

Powered by @Chavy‘s Env.js
原脚本作者 @小白脸
脚本修改@chengkongyiban
大量借鉴@KOP-XIAO佬的resource-parser.js
感谢@xream 佬提供与 @keywos 修改 本项目 Script Hub 网页前端, replace-header.js,echo-response.js,script-converter.js
感谢@mieqq 佬提供的replace-body.js, 本项目中已进行修改
感谢@Maasea 佬的指导
项目 logo 感谢 @Toperlock
插件图标用的 @Keikinn 佬的 StickerOnScreen项目,以及 @Toperlock 佬的 QX 图标库项目,感谢

开发

pnpm preview html 内容的本地预览

赞助

支持我们的工作

Patreon

About

Advanced Script Converter for QX, Loon, Surge, Stash, Egern, LanceX and Shadowrocket - 重写 & 规则集转换

Resources

Stars

3.8k stars

Watchers

19 watching

Forks

Releases

Packages

Used by

Contributors

Languages