Skip to content

asckaya/edge

Repository files navigation

Edge Engine — Advanced Proxy Subscription Orchestrator

基于 Cloudflare Pages 的分布式订阅转换引擎,支持 Mihomo (Clash Meta)、Stash iOS 与 sing-box。通过自建节点注入与多机场合并,生成极致优化的分流配置。

🌟 核心特性

  • 十二种编排模式:Mihomo / Stash / sing-box,每种内核均支持 Full (完整)Dual (双模)White (白名单)Black (黑名单) 四种规则深度。
  • 单订阅分组优化:检测到单订阅时自动隐藏冗余分组,将节点直接注入核心选择器,提供极简 UI 体验。
  • Native GeoX 优先:弃用传统的外部 rule-provider YAML,完全基于 GEOSITEGEOIP 匹配,大幅降低内存占用,启动速度提升 80%。
  • 极致内存优化:针对 iOS Stash 的 50MB 内存限制,提供 Minimal 版本,防止 Network Extension 崩溃。
  • 节点自动重命名:订阅节点自动按国家/地区图标 + 机场名 + 序号进行重命名,确保 UI 整洁。
  • Web UI & API 一体化:部署在根路径的 Next.js 图形界面,支持可视化节点构建与订阅生成。

🚀 快速开始

1. 部署到 Cloudflare Pages

  1. Fork 本仓库。
  2. 在 Cloudflare Dashboard 中创建 Pages 项目。
  3. 选择关联 GitHub 仓库,构建设置:
    • Framework preset: Next.js
    • Build command: pnpm build
    • Output directory: out
  4. 部署完成后,直接访问你的域名即可打开可视化 UI。

2. 使用 API 生成订阅

直接通过 URL 参数调用:

参数 必填 说明
type 见下表 配置模式对比 (默认 mihomo)
secret 控制面板/API 访问密码 (默认 edge-default)
proxies 自建节点 URI (支持 vless/vmess/ss/trojan/wireguard/hysteria2/tuic)
gh_proxy GitHub 规则源加速前缀 (例如 https://mirror.ghproxy.com/)
[SubName] 至少一个 机场订阅,例如 Airport1=https://sub.url

示例 API:

https://your-edge.pages.dev/?type=mihomo-dual&secret=xxx&MySub=https://机场链接

📊 配置模式对比

模式 路由逻辑 适用场景
*-full 精细化分流 全量 20+ 规则组,覆盖 AI/媒体/开发/金融等细分领域。
*-dual 双模分流 (推荐) 全量规则,合并国外场景为统一"节点选择",BT/PT 强制直连防封号。
*-white 白名单 (直连优先) 仅代理明确定义的国外规则,其余兜底 DIRECT。适合省流或国内服务优先。
*-black 黑名单 (代理优先) 仅直连明确定义的国内规则,其余兜底代理。适合追求极致代理覆盖。

支持内核:

  • mihomo, mihomo-dual, mihomo-white, mihomo-black
  • stash, stash-dual, stash-white, stash-black
  • sing-box, sing-box-dual, sing-box-white, sing-box-black

🛠️ 项目结构

.
├── functions/
│   ├── [[path]].ts          # Cloudflare Pages API 主路由
│   ├── _src/                # 核心逻辑 (解析器、构建器)
│   └── _templates/          # 配置模板
│       ├── mihomo/          # Mihomo/Stash 核心模板
│       │   ├── full/        # 完整版规则与分组
│       │   └── minimal/     # 极简版规则与分组
│       ├── stash/           # Stash 特化模板
│       └── shared/          # 跨内核共用资源 (GeoX 注册中心)
├── src/
│   ├── app/                 # Next.js Web UI 页面
│   └── components/          # UI 组件 (NodeBuilder, SubscriptionPanel)
├── tests/                   # 自动化集成测试 (Vitest)
│   ├── mihomo/              # Mihomo 内核各版本测试
│   ├── stash/               # Stash 内核各版本测试
│   ├── sing-box/            # Sing-box 内核各版本测试
│   └── common/              # 通用逻辑测试 (Parser, Builder, URI)
└── gen-url.ts               # 本地调试工具

💻 本地开发

pnpm install
pnpm dev:local      # 启动本地 Next.js 开发服务器
pnpm dev            # 使用 Wrangler 模拟 Cloudflare Pages 环境
pnpm test           # 运行全量集成测试

Edge EngineRefined, Efficient, and Deterministic.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors