■ Persian Documentation
■ English Documentation
Click here to see details
Modular architecture: worker logic split into
src/core.js,src/network.js,src/routes.js, andsrc/clash.jsinstead of a single large file.Safer WASM startup: WASM is initialized once per isolate via a lazy singleton pattern, only when a WebSocket connection is opened.
Self-contained config panel:
index.htmlis bundled at build time, no runtime fetch to GitHub Pages.Faster proxy relay: TCP response path uses
Uint8Arrayinstead ofBlobfor header concatenation.Resilient ProxyIP fallback: multiple ProxyIP domains are tried in sequence if the primary one is unreachable.
Non-TLS configs for xray-enhanced: added TCP (non-TLS) variants alongside TLS ones, for clients that support them like PattNG.
Native Clash Meta subscription: added
/clash/<uuid>, generating a full Clash Meta (mihomo) config directly from the worker — no external subconverter api service required.
After forking this repository, you need to create a few GitHub repository secrets before running the workflow.
| Secret Name | Required | Default | Description |
|---|---|---|---|
CLOUDFLARE_API_TOKEN |
✔️Yes | - | Your Cloudflare Account API Token. It must have permission to Edit Workers. |
CLOUDFLARE_ACCOUNT_ID |
✔️Yes | - | Your Cloudflare Account ID. |
UUID |
Optional | be0ff9df-1468-41a0-8865-796d1c6800db |
Your own Version 4 UUID. If not provided, the workflow will automatically generate a random one. |
PROXYIP |
Optional | di.nscl.ir |
Optional proxy IP or hostname. If omitted, the default value will be used. ProxyIP tools |
The following two secrets are required and must be obtained from your own Cloudflare account
CLOUDFLARE_API_TOKENCLOUDFLARE_ACCOUNT_ID
The API Token must include permission to Edit Workers. Otherwise, the deployment workflow will fail.
Once these secrets have been added, the GitHub Actions workflow is ready to deploy.
