13 Commits
Author SHA1 Message Date
kazeyukiro 8af3d34589 docs: fix website URLs (/guide not /docs/guide) 2026-10-03 05:57:05 +00:00
kazeyukiro 7bdf35ba5b docs: point technical guides at 3m-ui.top; keep docs/readme/
Full documentation lives on the VitePress site (zh + en). Repository
docs/*.md are short stubs with links. Multilingual README files remain
under docs/readme/. Offline AI install prompts (.txt) are retained.
2026-10-03 05:52:05 +00:00
kazeyukiro 44ac4c9070 ui+docs: float page content on layout gray; document dashboard search
Drop the desktop full-width white content panel so Overview cards sit on
the layout background like 3X-UI. Docs: pin bundled Mihomo example to
v1.19.32 and note feature search / dashboard behavior.
2026-10-01 05:19:36 +00:00
kazeyukiro bcee7502ff docs: align panel SSL with DNS-01 wildcards
Add panel-ssl.md; update README, installation, batch-certificate, and
OpenAPI /system/ssl for challenge, Cloudflare token, and recovery notes.
docs: align panel SSL with DNS-01 wildcards
Add panel-ssl.md; update README, installation, batch-certificate, and
OpenAPI /system/ssl for challenge, Cloudflare token, and recovery notes.
docs: align panel SSL with DNS-01 wildcards
Add panel-ssl.md; update README, installation, batch-certificate, and
OpenAPI /system/ssl for challenge, Cloudflare token, and recovery notes.
docs: align panel SSL with DNS-01 wildcards
Add panel-ssl.md; update README, installation, batch-certificate, and
OpenAPI /system/ssl for challenge, Cloudflare token, and recovery notes.
docs: align panel SSL with DNS-01 wildcards
Add panel-ssl.md; update README, installation, batch-certificate, and
OpenAPI /system/ssl for challenge, Cloudflare token, and recovery notes.
docs: align panel SSL with DNS-01 wildcards
Add panel-ssl.md; update README, installation, batch-certificate, and
OpenAPI /system/ssl for challenge, Cloudflare token, and recovery notes.
docs: align panel SSL with DNS-01 wildcards
Add panel-ssl.md; update README, installation, batch-certificate, and
OpenAPI /system/ssl for challenge, Cloudflare token, and recovery notes.
docs: align panel SSL with DNS-01 wildcards
Add panel-ssl.md; update README, installation, batch-certificate, and
OpenAPI /system/ssl for challenge, Cloudflare token, and recovery notes.
docs: align panel SSL with DNS-01 wildcards
Add panel-ssl.md; update README, installation, batch-certificate, and
OpenAPI /system/ssl for challenge, Cloudflare token, and recovery notes.
docs: align panel SSL with DNS-01 wildcards
Add panel-ssl.md; update README, installation, batch-certificate, and
OpenAPI /system/ssl for challenge, Cloudflare token, and recovery notes.
docs: align panel SSL with DNS-01 wildcards
Add panel-ssl.md; update README, installation, batch-certificate, and
OpenAPI /system/ssl for challenge, Cloudflare token, and recovery notes.
docs: align panel SSL with DNS-01 wildcards
Add panel-ssl.md; update README, installation, batch-certificate, and
OpenAPI /system/ssl for challenge, Cloudflare token, and recovery notes.
2026-09-27 02:49:50 +00:00
kazeyukiro 8bfa8b7034 feat(ssl): Let's Encrypt IP address certificates (shortlived)
When panel SSL domain is a public IP, obtain LE shortlived (~6 day) certs
via ACME profile=shortlived + HTTP-01, with automatic renewal under 48h.
Domain hostnames still use autocert as before.
feat(ssl): Let's Encrypt IP address certificates (shortlived)
When panel SSL domain is a public IP, obtain LE shortlived (~6 day) certs
via ACME profile=shortlived + HTTP-01, with automatic renewal under 48h.
Domain hostnames still use autocert as before.
feat(ssl): Let's Encrypt IP address certificates (shortlived)
When panel SSL domain is a public IP, obtain LE shortlived (~6 day) certs
via ACME profile=shortlived + HTTP-01, with automatic renewal under 48h.
Domain hostnames still use autocert as before.
feat(ssl): Let's Encrypt IP address certificates (shortlived)
When panel SSL domain is a public IP, obtain LE shortlived (~6 day) certs
via ACME profile=shortlived + HTTP-01, with automatic renewal under 48h.
Domain hostnames still use autocert as before.
feat(ssl): Let's Encrypt IP address certificates (shortlived)
When panel SSL domain is a public IP, obtain LE shortlived (~6 day) certs
via ACME profile=shortlived + HTTP-01, with automatic renewal under 48h.
Domain hostnames still use autocert as before.
feat(ssl): Let's Encrypt IP address certificates (shortlived)
When panel SSL domain is a public IP, obtain LE shortlived (~6 day) certs
via ACME profile=shortlived + HTTP-01, with automatic renewal under 48h.
Domain hostnames still use autocert as before.
feat(ssl): Let's Encrypt IP address certificates (shortlived)
When panel SSL domain is a public IP, obtain LE shortlived (~6 day) certs
via ACME profile=shortlived + HTTP-01, with automatic renewal under 48h.
Domain hostnames still use autocert as before.
feat(ssl): Let's Encrypt IP address certificates (shortlived)
When panel SSL domain is a public IP, obtain LE shortlived (~6 day) certs
via ACME profile=shortlived + HTTP-01, with automatic renewal under 48h.
Domain hostnames still use autocert as before.
feat(ssl): Let's Encrypt IP address certificates (shortlived)
When panel SSL domain is a public IP, obtain LE shortlived (~6 day) certs
via ACME profile=shortlived + HTTP-01, with automatic renewal under 48h.
Domain hostnames still use autocert as before.
feat(ssl): Let's Encrypt IP address certificates (shortlived)
When panel SSL domain is a public IP, obtain LE shortlived (~6 day) certs
via ACME profile=shortlived + HTTP-01, with automatic renewal under 48h.
Domain hostnames still use autocert as before.
feat(ssl): Let's Encrypt IP address certificates (shortlived)
When panel SSL domain is a public IP, obtain LE shortlived (~6 day) certs
via ACME profile=shortlived + HTTP-01, with automatic renewal under 48h.
Domain hostnames still use autocert as before.
feat(ssl): Let's Encrypt IP address certificates (shortlived)
When panel SSL domain is a public IP, obtain LE shortlived (~6 day) certs
via ACME profile=shortlived + HTTP-01, with automatic renewal under 48h.
Domain hostnames still use autocert as before.
2026-09-24 15:28:25 +00:00
kazeyukiro f2c86450c8 fix(ci): sync package-lock for lucide-react; document Lucide + cluster push
- Regenerate frontend/package-lock.json (fixes npm ci Missing lucide-react)
- CI: fall back to npm install if lock drifts
- README(s): Ant Design + Lucide; cluster push by name
- docs/cluster.md: multi-node push UX and API
- docs/installation.md: frontend stack note
fix(ci): sync package-lock for lucide-react; document Lucide + cluster push
- Regenerate frontend/package-lock.json (fixes npm ci Missing lucide-react)
- CI: fall back to npm install if lock drifts
- README(s): Ant Design + Lucide; cluster push by name
- docs/cluster.md: multi-node push UX and API
- docs/installation.md: frontend stack note
fix(ci): sync package-lock for lucide-react; document Lucide + cluster push
- Regenerate frontend/package-lock.json (fixes npm ci Missing lucide-react)
- CI: fall back to npm install if lock drifts
- README(s): Ant Design + Lucide; cluster push by name
- docs/cluster.md: multi-node push UX and API
- docs/installation.md: frontend stack note
fix(ci): sync package-lock for lucide-react; document Lucide + cluster push
- Regenerate frontend/package-lock.json (fixes npm ci Missing lucide-react)
- CI: fall back to npm install if lock drifts
- README(s): Ant Design + Lucide; cluster push by name
- docs/cluster.md: multi-node push UX and API
- docs/installation.md: frontend stack note
fix(ci): sync package-lock for lucide-react; document Lucide + cluster push
- Regenerate frontend/package-lock.json (fixes npm ci Missing lucide-react)
- CI: fall back to npm install if lock drifts
- README(s): Ant Design + Lucide; cluster push by name
- docs/cluster.md: multi-node push UX and API
- docs/installation.md: frontend stack note
fix(ci): sync package-lock for lucide-react; document Lucide + cluster push
- Regenerate frontend/package-lock.json (fixes npm ci Missing lucide-react)
- CI: fall back to npm install if lock drifts
- README(s): Ant Design + Lucide; cluster push by name
- docs/cluster.md: multi-node push UX and API
- docs/installation.md: frontend stack note
fix(ci): sync package-lock for lucide-react; document Lucide + cluster push
- Regenerate frontend/package-lock.json (fixes npm ci Missing lucide-react)
- CI: fall back to npm install if lock drifts
- README(s): Ant Design + Lucide; cluster push by name
- docs/cluster.md: multi-node push UX and API
- docs/installation.md: frontend stack note
fix(ci): sync package-lock for lucide-react; document Lucide + cluster push
- Regenerate frontend/package-lock.json (fixes npm ci Missing lucide-react)
- CI: fall back to npm install if lock drifts
- README(s): Ant Design + Lucide; cluster push by name
- docs/cluster.md: multi-node push UX and API
- docs/installation.md: frontend stack note
fix(ci): sync package-lock for lucide-react; document Lucide + cluster push
- Regenerate frontend/package-lock.json (fixes npm ci Missing lucide-react)
- CI: fall back to npm install if lock drifts
- README(s): Ant Design + Lucide; cluster push by name
- docs/cluster.md: multi-node push UX and API
- docs/installation.md: frontend stack note
fix(ci): sync package-lock for lucide-react; document Lucide + cluster push
- Regenerate frontend/package-lock.json (fixes npm ci Missing lucide-react)
- CI: fall back to npm install if lock drifts
- README(s): Ant Design + Lucide; cluster push by name
- docs/cluster.md: multi-node push UX and API
- docs/installation.md: frontend stack note
fix(ci): sync package-lock for lucide-react; document Lucide + cluster push
- Regenerate frontend/package-lock.json (fixes npm ci Missing lucide-react)
- CI: fall back to npm install if lock drifts
- README(s): Ant Design + Lucide; cluster push by name
- docs/cluster.md: multi-node push UX and API
- docs/installation.md: frontend stack note
fix(ci): sync package-lock for lucide-react; document Lucide + cluster push
- Regenerate frontend/package-lock.json (fixes npm ci Missing lucide-react)
- CI: fall back to npm install if lock drifts
- README(s): Ant Design + Lucide; cluster push by name
- docs/cluster.md: multi-node push UX and API
- docs/installation.md: frontend stack note
2026-09-22 16:19:48 +00:00
kazeyukiro e89750f9d0 docs: align README/OpenAPI with per-node traffic, limits, backups
- docs/node-traffic.md; feature tables; installation backup cleanup note
- OpenAPI: traffic_multiplier, GET /users/{id}/node-traffic
docs: align README/OpenAPI with per-node traffic, limits, backups
- docs/node-traffic.md; feature tables; installation backup cleanup note
- OpenAPI: traffic_multiplier, GET /users/{id}/node-traffic
docs: align README/OpenAPI with per-node traffic, limits, backups
- docs/node-traffic.md; feature tables; installation backup cleanup note
- OpenAPI: traffic_multiplier, GET /users/{id}/node-traffic
docs: align README/OpenAPI with per-node traffic, limits, backups
- docs/node-traffic.md; feature tables; installation backup cleanup note
- OpenAPI: traffic_multiplier, GET /users/{id}/node-traffic
docs: align README/OpenAPI with per-node traffic, limits, backups
- docs/node-traffic.md; feature tables; installation backup cleanup note
- OpenAPI: traffic_multiplier, GET /users/{id}/node-traffic
docs: align README/OpenAPI with per-node traffic, limits, backups
- docs/node-traffic.md; feature tables; installation backup cleanup note
- OpenAPI: traffic_multiplier, GET /users/{id}/node-traffic
docs: align README/OpenAPI with per-node traffic, limits, backups
- docs/node-traffic.md; feature tables; installation backup cleanup note
- OpenAPI: traffic_multiplier, GET /users/{id}/node-traffic
docs: align README/OpenAPI with per-node traffic, limits, backups
- docs/node-traffic.md; feature tables; installation backup cleanup note
- OpenAPI: traffic_multiplier, GET /users/{id}/node-traffic
docs: align README/OpenAPI with per-node traffic, limits, backups
- docs/node-traffic.md; feature tables; installation backup cleanup note
- OpenAPI: traffic_multiplier, GET /users/{id}/node-traffic
docs: align README/OpenAPI with per-node traffic, limits, backups
- docs/node-traffic.md; feature tables; installation backup cleanup note
- OpenAPI: traffic_multiplier, GET /users/{id}/node-traffic
docs: align README/OpenAPI with per-node traffic, limits, backups
- docs/node-traffic.md; feature tables; installation backup cleanup note
- OpenAPI: traffic_multiplier, GET /users/{id}/node-traffic
docs: align README/OpenAPI with per-node traffic, limits, backups
- docs/node-traffic.md; feature tables; installation backup cleanup note
- OpenAPI: traffic_multiplier, GET /users/{id}/node-traffic
2026-09-20 23:55:00 +08:00
kazeyukiro e48fb1008d docs(ai-prompt): centralize install prompt and add curl-to-clipboard
Move the AI assistant install prompt into a single source of truth
(docs/ai-install-prompt.{md,zh.txt,en.txt}) so it no longer diverges
across README.md, README.en.md, README.zh-CN.md and docs/installation.md.
Add a one-liner that fetches the plain-text prompt straight to the
clipboard (pbcopy / xclip / wl-copy / Set-Clipboard), removing manual
copy-paste of a large block from rendered READMEs. The prompt content
itself is unchanged in spirit and still only runs the official
install.sh, with downloads verifying SHA256SUMS.
Prompt refinements (faithful to official script behavior):
- note CPU arch (amd64/arm64) and init system (systemd/OpenRC) checks
- mention sudo 3m-ui reset-admin for a lost one-time password
- explicitly forbid swapping third-party mirrors
docs(ai-prompt): centralize install prompt and add curl-to-clipboard
Move the AI assistant install prompt into a single source of truth
(docs/ai-install-prompt.{md,zh.txt,en.txt}) so it no longer diverges
across README.md, README.en.md, README.zh-CN.md and docs/installation.md.
Add a one-liner that fetches the plain-text prompt straight to the
clipboard (pbcopy / xclip / wl-copy / Set-Clipboard), removing manual
copy-paste of a large block from rendered READMEs. The prompt content
itself is unchanged in spirit and still only runs the official
install.sh, with downloads verifying SHA256SUMS.
Prompt refinements (faithful to official script behavior):
- note CPU arch (amd64/arm64) and init system (systemd/OpenRC) checks
- mention sudo 3m-ui reset-admin for a lost one-time password
- explicitly forbid swapping third-party mirrors
docs(ai-prompt): centralize install prompt and add curl-to-clipboard
Move the AI assistant install prompt into a single source of truth
(docs/ai-install-prompt.{md,zh.txt,en.txt}) so it no longer diverges
across README.md, README.en.md, README.zh-CN.md and docs/installation.md.
Add a one-liner that fetches the plain-text prompt straight to the
clipboard (pbcopy / xclip / wl-copy / Set-Clipboard), removing manual
copy-paste of a large block from rendered READMEs. The prompt content
itself is unchanged in spirit and still only runs the official
install.sh, with downloads verifying SHA256SUMS.
Prompt refinements (faithful to official script behavior):
- note CPU arch (amd64/arm64) and init system (systemd/OpenRC) checks
- mention sudo 3m-ui reset-admin for a lost one-time password
- explicitly forbid swapping third-party mirrors
docs(ai-prompt): centralize install prompt and add curl-to-clipboard
Move the AI assistant install prompt into a single source of truth
(docs/ai-install-prompt.{md,zh.txt,en.txt}) so it no longer diverges
across README.md, README.en.md, README.zh-CN.md and docs/installation.md.
Add a one-liner that fetches the plain-text prompt straight to the
clipboard (pbcopy / xclip / wl-copy / Set-Clipboard), removing manual
copy-paste of a large block from rendered READMEs. The prompt content
itself is unchanged in spirit and still only runs the official
install.sh, with downloads verifying SHA256SUMS.
Prompt refinements (faithful to official script behavior):
- note CPU arch (amd64/arm64) and init system (systemd/OpenRC) checks
- mention sudo 3m-ui reset-admin for a lost one-time password
- explicitly forbid swapping third-party mirrors
docs(ai-prompt): centralize install prompt and add curl-to-clipboard
Move the AI assistant install prompt into a single source of truth
(docs/ai-install-prompt.{md,zh.txt,en.txt}) so it no longer diverges
across README.md, README.en.md, README.zh-CN.md and docs/installation.md.
Add a one-liner that fetches the plain-text prompt straight to the
clipboard (pbcopy / xclip / wl-copy / Set-Clipboard), removing manual
copy-paste of a large block from rendered READMEs. The prompt content
itself is unchanged in spirit and still only runs the official
install.sh, with downloads verifying SHA256SUMS.
Prompt refinements (faithful to official script behavior):
- note CPU arch (amd64/arm64) and init system (systemd/OpenRC) checks
- mention sudo 3m-ui reset-admin for a lost one-time password
- explicitly forbid swapping third-party mirrors
docs(ai-prompt): centralize install prompt and add curl-to-clipboard
Move the AI assistant install prompt into a single source of truth
(docs/ai-install-prompt.{md,zh.txt,en.txt}) so it no longer diverges
across README.md, README.en.md, README.zh-CN.md and docs/installation.md.
Add a one-liner that fetches the plain-text prompt straight to the
clipboard (pbcopy / xclip / wl-copy / Set-Clipboard), removing manual
copy-paste of a large block from rendered READMEs. The prompt content
itself is unchanged in spirit and still only runs the official
install.sh, with downloads verifying SHA256SUMS.
Prompt refinements (faithful to official script behavior):
- note CPU arch (amd64/arm64) and init system (systemd/OpenRC) checks
- mention sudo 3m-ui reset-admin for a lost one-time password
- explicitly forbid swapping third-party mirrors
docs(ai-prompt): centralize install prompt and add curl-to-clipboard
Move the AI assistant install prompt into a single source of truth
(docs/ai-install-prompt.{md,zh.txt,en.txt}) so it no longer diverges
across README.md, README.en.md, README.zh-CN.md and docs/installation.md.
Add a one-liner that fetches the plain-text prompt straight to the
clipboard (pbcopy / xclip / wl-copy / Set-Clipboard), removing manual
copy-paste of a large block from rendered READMEs. The prompt content
itself is unchanged in spirit and still only runs the official
install.sh, with downloads verifying SHA256SUMS.
Prompt refinements (faithful to official script behavior):
- note CPU arch (amd64/arm64) and init system (systemd/OpenRC) checks
- mention sudo 3m-ui reset-admin for a lost one-time password
- explicitly forbid swapping third-party mirrors
docs(ai-prompt): centralize install prompt and add curl-to-clipboard
Move the AI assistant install prompt into a single source of truth
(docs/ai-install-prompt.{md,zh.txt,en.txt}) so it no longer diverges
across README.md, README.en.md, README.zh-CN.md and docs/installation.md.
Add a one-liner that fetches the plain-text prompt straight to the
clipboard (pbcopy / xclip / wl-copy / Set-Clipboard), removing manual
copy-paste of a large block from rendered READMEs. The prompt content
itself is unchanged in spirit and still only runs the official
install.sh, with downloads verifying SHA256SUMS.
Prompt refinements (faithful to official script behavior):
- note CPU arch (amd64/arm64) and init system (systemd/OpenRC) checks
- mention sudo 3m-ui reset-admin for a lost one-time password
- explicitly forbid swapping third-party mirrors
docs(ai-prompt): centralize install prompt and add curl-to-clipboard
Move the AI assistant install prompt into a single source of truth
(docs/ai-install-prompt.{md,zh.txt,en.txt}) so it no longer diverges
across README.md, README.en.md, README.zh-CN.md and docs/installation.md.
Add a one-liner that fetches the plain-text prompt straight to the
clipboard (pbcopy / xclip / wl-copy / Set-Clipboard), removing manual
copy-paste of a large block from rendered READMEs. The prompt content
itself is unchanged in spirit and still only runs the official
install.sh, with downloads verifying SHA256SUMS.
Prompt refinements (faithful to official script behavior):
- note CPU arch (amd64/arm64) and init system (systemd/OpenRC) checks
- mention sudo 3m-ui reset-admin for a lost one-time password
- explicitly forbid swapping third-party mirrors
docs(ai-prompt): centralize install prompt and add curl-to-clipboard
Move the AI assistant install prompt into a single source of truth
(docs/ai-install-prompt.{md,zh.txt,en.txt}) so it no longer diverges
across README.md, README.en.md, README.zh-CN.md and docs/installation.md.
Add a one-liner that fetches the plain-text prompt straight to the
clipboard (pbcopy / xclip / wl-copy / Set-Clipboard), removing manual
copy-paste of a large block from rendered READMEs. The prompt content
itself is unchanged in spirit and still only runs the official
install.sh, with downloads verifying SHA256SUMS.
Prompt refinements (faithful to official script behavior):
- note CPU arch (amd64/arm64) and init system (systemd/OpenRC) checks
- mention sudo 3m-ui reset-admin for a lost one-time password
- explicitly forbid swapping third-party mirrors
docs(ai-prompt): centralize install prompt and add curl-to-clipboard
Move the AI assistant install prompt into a single source of truth
(docs/ai-install-prompt.{md,zh.txt,en.txt}) so it no longer diverges
across README.md, README.en.md, README.zh-CN.md and docs/installation.md.
Add a one-liner that fetches the plain-text prompt straight to the
clipboard (pbcopy / xclip / wl-copy / Set-Clipboard), removing manual
copy-paste of a large block from rendered READMEs. The prompt content
itself is unchanged in spirit and still only runs the official
install.sh, with downloads verifying SHA256SUMS.
Prompt refinements (faithful to official script behavior):
- note CPU arch (amd64/arm64) and init system (systemd/OpenRC) checks
- mention sudo 3m-ui reset-admin for a lost one-time password
- explicitly forbid swapping third-party mirrors
docs(ai-prompt): centralize install prompt and add curl-to-clipboard
Move the AI assistant install prompt into a single source of truth
(docs/ai-install-prompt.{md,zh.txt,en.txt}) so it no longer diverges
across README.md, README.en.md, README.zh-CN.md and docs/installation.md.
Add a one-liner that fetches the plain-text prompt straight to the
clipboard (pbcopy / xclip / wl-copy / Set-Clipboard), removing manual
copy-paste of a large block from rendered READMEs. The prompt content
itself is unchanged in spirit and still only runs the official
install.sh, with downloads verifying SHA256SUMS.
Prompt refinements (faithful to official script behavior):
- note CPU arch (amd64/arm64) and init system (systemd/OpenRC) checks
- mention sudo 3m-ui reset-admin for a lost one-time password
- explicitly forbid swapping third-party mirrors
2026-09-12 23:07:00 +08:00
Z User 715cec2ecd docs: add AI assistant install prompt (official script only)
Copy-paste prompts for ChatGPT/Claude/Cursor in README (zh/en),
zh-CN README, and installation.md. Instruct assistants to use only the
official curl | sudo sh installer and not invent third-party sources.
docs: add AI assistant install prompt (official script only)
Copy-paste prompts for ChatGPT/Claude/Cursor in README (zh/en),
zh-CN README, and installation.md. Instruct assistants to use only the
official curl | sudo sh installer and not invent third-party sources.
docs: add AI assistant install prompt (official script only)
Copy-paste prompts for ChatGPT/Claude/Cursor in README (zh/en),
zh-CN README, and installation.md. Instruct assistants to use only the
official curl | sudo sh installer and not invent third-party sources.
docs: add AI assistant install prompt (official script only)
Copy-paste prompts for ChatGPT/Claude/Cursor in README (zh/en),
zh-CN README, and installation.md. Instruct assistants to use only the
official curl | sudo sh installer and not invent third-party sources.
docs: add AI assistant install prompt (official script only)
Copy-paste prompts for ChatGPT/Claude/Cursor in README (zh/en),
zh-CN README, and installation.md. Instruct assistants to use only the
official curl | sudo sh installer and not invent third-party sources.
docs: add AI assistant install prompt (official script only)
Copy-paste prompts for ChatGPT/Claude/Cursor in README (zh/en),
zh-CN README, and installation.md. Instruct assistants to use only the
official curl | sudo sh installer and not invent third-party sources.
docs: add AI assistant install prompt (official script only)
Copy-paste prompts for ChatGPT/Claude/Cursor in README (zh/en),
zh-CN README, and installation.md. Instruct assistants to use only the
official curl | sudo sh installer and not invent third-party sources.
docs: add AI assistant install prompt (official script only)
Copy-paste prompts for ChatGPT/Claude/Cursor in README (zh/en),
zh-CN README, and installation.md. Instruct assistants to use only the
official curl | sudo sh installer and not invent third-party sources.
docs: add AI assistant install prompt (official script only)
Copy-paste prompts for ChatGPT/Claude/Cursor in README (zh/en),
zh-CN README, and installation.md. Instruct assistants to use only the
official curl | sudo sh installer and not invent third-party sources.
docs: add AI assistant install prompt (official script only)
Copy-paste prompts for ChatGPT/Claude/Cursor in README (zh/en),
zh-CN README, and installation.md. Instruct assistants to use only the
official curl | sudo sh installer and not invent third-party sources.
docs: add AI assistant install prompt (official script only)
Copy-paste prompts for ChatGPT/Claude/Cursor in README (zh/en),
zh-CN README, and installation.md. Instruct assistants to use only the
official curl | sudo sh installer and not invent third-party sources.
docs: add AI assistant install prompt (official script only)
Copy-paste prompts for ChatGPT/Claude/Cursor in README (zh/en),
zh-CN README, and installation.md. Instruct assistants to use only the
official curl | sudo sh installer and not invent third-party sources.
2026-09-12 14:59:48 +00:00
freephilx 9471368afd perf: compress and cache embedded frontend assets (#54)
perf: compress and cache embedded frontend assets (#54)
perf: compress and cache embedded frontend assets (#54)
perf: compress and cache embedded frontend assets (#54)
perf: compress and cache embedded frontend assets (#54)
perf: compress and cache embedded frontend assets (#54)
perf: compress and cache embedded frontend assets (#54)
perf: compress and cache embedded frontend assets (#54)
perf: compress and cache embedded frontend assets (#54)
perf: compress and cache embedded frontend assets (#54)
perf: compress and cache embedded frontend assets (#54)
perf: compress and cache embedded frontend assets (#54)
2026-09-11 23:11:20 +08:00
freephilx 3ec69d55de feat(mihomo): persistent core updates with rollback (#53) 2026-09-11 22:44:52 +08:00
Z User 3a5b0d7e66 feat: sub path/port, user groups/tags/cycle renew, export links, WARP register
- server.sub_path / sub_port / env overrides; custom /sub/:token + optional second listener
- subscription URLs use configured path; legacy API path kept
- proxy users: group, tags, traffic_reset_days, expire_renew_days + background cycle job
- GET /users/export-links for one-click subscription link export
- POST /system/templates/warp/register (Cloudflare WARP one-click) + Settings UI
- Share page export-all; Users form fields for group/tags/cycles
feat: sub path/port, user groups/tags/cycle renew, export links, WARP register
- server.sub_path / sub_port / env overrides; custom /sub/:token + optional second listener
- subscription URLs use configured path; legacy API path kept
- proxy users: group, tags, traffic_reset_days, expire_renew_days + background cycle job
- GET /users/export-links for one-click subscription link export
- POST /system/templates/warp/register (Cloudflare WARP one-click) + Settings UI
- Share page export-all; Users form fields for group/tags/cycles
feat: sub path/port, user groups/tags/cycle renew, export links, WARP register
- server.sub_path / sub_port / env overrides; custom /sub/:token + optional second listener
- subscription URLs use configured path; legacy API path kept
- proxy users: group, tags, traffic_reset_days, expire_renew_days + background cycle job
- GET /users/export-links for one-click subscription link export
- POST /system/templates/warp/register (Cloudflare WARP one-click) + Settings UI
- Share page export-all; Users form fields for group/tags/cycles
feat: sub path/port, user groups/tags/cycle renew, export links, WARP register
- server.sub_path / sub_port / env overrides; custom /sub/:token + optional second listener
- subscription URLs use configured path; legacy API path kept
- proxy users: group, tags, traffic_reset_days, expire_renew_days + background cycle job
- GET /users/export-links for one-click subscription link export
- POST /system/templates/warp/register (Cloudflare WARP one-click) + Settings UI
- Share page export-all; Users form fields for group/tags/cycles
feat: sub path/port, user groups/tags/cycle renew, export links, WARP register
- server.sub_path / sub_port / env overrides; custom /sub/:token + optional second listener
- subscription URLs use configured path; legacy API path kept
- proxy users: group, tags, traffic_reset_days, expire_renew_days + background cycle job
- GET /users/export-links for one-click subscription link export
- POST /system/templates/warp/register (Cloudflare WARP one-click) + Settings UI
- Share page export-all; Users form fields for group/tags/cycles
feat: sub path/port, user groups/tags/cycle renew, export links, WARP register
- server.sub_path / sub_port / env overrides; custom /sub/:token + optional second listener
- subscription URLs use configured path; legacy API path kept
- proxy users: group, tags, traffic_reset_days, expire_renew_days + background cycle job
- GET /users/export-links for one-click subscription link export
- POST /system/templates/warp/register (Cloudflare WARP one-click) + Settings UI
- Share page export-all; Users form fields for group/tags/cycles
feat: sub path/port, user groups/tags/cycle renew, export links, WARP register
- server.sub_path / sub_port / env overrides; custom /sub/:token + optional second listener
- subscription URLs use configured path; legacy API path kept
- proxy users: group, tags, traffic_reset_days, expire_renew_days + background cycle job
- GET /users/export-links for one-click subscription link export
- POST /system/templates/warp/register (Cloudflare WARP one-click) + Settings UI
- Share page export-all; Users form fields for group/tags/cycles
feat: sub path/port, user groups/tags/cycle renew, export links, WARP register
- server.sub_path / sub_port / env overrides; custom /sub/:token + optional second listener
- subscription URLs use configured path; legacy API path kept
- proxy users: group, tags, traffic_reset_days, expire_renew_days + background cycle job
- GET /users/export-links for one-click subscription link export
- POST /system/templates/warp/register (Cloudflare WARP one-click) + Settings UI
- Share page export-all; Users form fields for group/tags/cycles
feat: sub path/port, user groups/tags/cycle renew, export links, WARP register
- server.sub_path / sub_port / env overrides; custom /sub/:token + optional second listener
- subscription URLs use configured path; legacy API path kept
- proxy users: group, tags, traffic_reset_days, expire_renew_days + background cycle job
- GET /users/export-links for one-click subscription link export
- POST /system/templates/warp/register (Cloudflare WARP one-click) + Settings UI
- Share page export-all; Users form fields for group/tags/cycles
feat: sub path/port, user groups/tags/cycle renew, export links, WARP register
- server.sub_path / sub_port / env overrides; custom /sub/:token + optional second listener
- subscription URLs use configured path; legacy API path kept
- proxy users: group, tags, traffic_reset_days, expire_renew_days + background cycle job
- GET /users/export-links for one-click subscription link export
- POST /system/templates/warp/register (Cloudflare WARP one-click) + Settings UI
- Share page export-all; Users form fields for group/tags/cycles
feat: sub path/port, user groups/tags/cycle renew, export links, WARP register
- server.sub_path / sub_port / env overrides; custom /sub/:token + optional second listener
- subscription URLs use configured path; legacy API path kept
- proxy users: group, tags, traffic_reset_days, expire_renew_days + background cycle job
- GET /users/export-links for one-click subscription link export
- POST /system/templates/warp/register (Cloudflare WARP one-click) + Settings UI
- Share page export-all; Users form fields for group/tags/cycles
feat: sub path/port, user groups/tags/cycle renew, export links, WARP register
- server.sub_path / sub_port / env overrides; custom /sub/:token + optional second listener
- subscription URLs use configured path; legacy API path kept
- proxy users: group, tags, traffic_reset_days, expire_renew_days + background cycle job
- GET /users/export-links for one-click subscription link export
- POST /system/templates/warp/register (Cloudflare WARP one-click) + Settings UI
- Share page export-all; Users form fields for group/tags/cycles
2026-09-10 16:45:18 +00:00
freephilx 2e6256fb6a feat(distribution): add complete installation and recovery workflows
Ship stable-only Linux bundles and multiarch Docker images with a pinned Mihomo core. Share secure first-run initialization across native and container installs.
Validate downloads before downtime, snapshot persistent state before updates, and restore the previous installation after a failed upgrade. Add backup, restore, healthcheck, and randomized administrator reset commands.
Add release verification, lifecycle regression tests, and installation documentation.
feat(distribution): add complete installation and recovery workflows
Ship stable-only Linux bundles and multiarch Docker images with a pinned Mihomo core. Share secure first-run initialization across native and container installs.
Validate downloads before downtime, snapshot persistent state before updates, and restore the previous installation after a failed upgrade. Add backup, restore, healthcheck, and randomized administrator reset commands.
Add release verification, lifecycle regression tests, and installation documentation.
feat(distribution): add complete installation and recovery workflows
Ship stable-only Linux bundles and multiarch Docker images with a pinned Mihomo core. Share secure first-run initialization across native and container installs.
Validate downloads before downtime, snapshot persistent state before updates, and restore the previous installation after a failed upgrade. Add backup, restore, healthcheck, and randomized administrator reset commands.
Add release verification, lifecycle regression tests, and installation documentation.
feat(distribution): add complete installation and recovery workflows
Ship stable-only Linux bundles and multiarch Docker images with a pinned Mihomo core. Share secure first-run initialization across native and container installs.
Validate downloads before downtime, snapshot persistent state before updates, and restore the previous installation after a failed upgrade. Add backup, restore, healthcheck, and randomized administrator reset commands.
Add release verification, lifecycle regression tests, and installation documentation.
feat(distribution): add complete installation and recovery workflows
Ship stable-only Linux bundles and multiarch Docker images with a pinned Mihomo core. Share secure first-run initialization across native and container installs.
Validate downloads before downtime, snapshot persistent state before updates, and restore the previous installation after a failed upgrade. Add backup, restore, healthcheck, and randomized administrator reset commands.
Add release verification, lifecycle regression tests, and installation documentation.
feat(distribution): add complete installation and recovery workflows
Ship stable-only Linux bundles and multiarch Docker images with a pinned Mihomo core. Share secure first-run initialization across native and container installs.
Validate downloads before downtime, snapshot persistent state before updates, and restore the previous installation after a failed upgrade. Add backup, restore, healthcheck, and randomized administrator reset commands.
Add release verification, lifecycle regression tests, and installation documentation.
feat(distribution): add complete installation and recovery workflows
Ship stable-only Linux bundles and multiarch Docker images with a pinned Mihomo core. Share secure first-run initialization across native and container installs.
Validate downloads before downtime, snapshot persistent state before updates, and restore the previous installation after a failed upgrade. Add backup, restore, healthcheck, and randomized administrator reset commands.
Add release verification, lifecycle regression tests, and installation documentation.
feat(distribution): add complete installation and recovery workflows
Ship stable-only Linux bundles and multiarch Docker images with a pinned Mihomo core. Share secure first-run initialization across native and container installs.
Validate downloads before downtime, snapshot persistent state before updates, and restore the previous installation after a failed upgrade. Add backup, restore, healthcheck, and randomized administrator reset commands.
Add release verification, lifecycle regression tests, and installation documentation.
feat(distribution): add complete installation and recovery workflows
Ship stable-only Linux bundles and multiarch Docker images with a pinned Mihomo core. Share secure first-run initialization across native and container installs.
Validate downloads before downtime, snapshot persistent state before updates, and restore the previous installation after a failed upgrade. Add backup, restore, healthcheck, and randomized administrator reset commands.
Add release verification, lifecycle regression tests, and installation documentation.
feat(distribution): add complete installation and recovery workflows
Ship stable-only Linux bundles and multiarch Docker images with a pinned Mihomo core. Share secure first-run initialization across native and container installs.
Validate downloads before downtime, snapshot persistent state before updates, and restore the previous installation after a failed upgrade. Add backup, restore, healthcheck, and randomized administrator reset commands.
Add release verification, lifecycle regression tests, and installation documentation.
feat(distribution): add complete installation and recovery workflows
Ship stable-only Linux bundles and multiarch Docker images with a pinned Mihomo core. Share secure first-run initialization across native and container installs.
Validate downloads before downtime, snapshot persistent state before updates, and restore the previous installation after a failed upgrade. Add backup, restore, healthcheck, and randomized administrator reset commands.
Add release verification, lifecycle regression tests, and installation documentation.
feat(distribution): add complete installation and recovery workflows
Ship stable-only Linux bundles and multiarch Docker images with a pinned Mihomo core. Share secure first-run initialization across native and container installs.
Validate downloads before downtime, snapshot persistent state before updates, and restore the previous installation after a failed upgrade. Add backup, restore, healthcheck, and randomized administrator reset commands.
Add release verification, lifecycle regression tests, and installation documentation.
2026-09-08 22:47:35 +08:00