Commit Graph

  • 30b611614b feat: import SQLite migration dumps through the PostgreSQL panel restore MHSanaei 2026-07-12 18:04:38 +02:00
  • 44f2f426d8 feat(frontend): split wireguard inbound export into config and links tabs MHSanaei 2026-07-12 15:39:00 +02:00
  • c4a1139d3f feat(frontend): treat wireguard inbounds as multi-user in client actions MHSanaei 2026-07-12 15:31:27 +02:00
  • 476bec451d fix(frontend): show zero client count for mtproto and wireguard inbounds MHSanaei 2026-07-12 15:27:28 +02:00
  • f905c2dcec chore(frontend): bump version and deps MHSanaei 2026-07-12 15:10:27 +02:00
  • 30f6bc1833 feat: Add outbound egress metadata (IP + country) (#5886) isultanov99 2026-07-12 15:09:52 +02:00
  • 2c95e29297 fix(api): preserve 64-bit integer schema formats (#5908) Sangeeth Thilakarathna 2026-07-12 14:28:02 +05:30
  • 814cda3fb4 feat(xray): update xray-core to v26.7.11 and adapt panel MHSanaei 2026-07-12 00:30:47 +02:00
  • affcf6c422 fix(link): strip query and trailing slash when parsing ss:// port (#5895) Dmitrii Ignatov 2026-07-12 00:34:09 +03:00
  • cbd2940a63 fix(node): adopt a node inbound's host overrides into the master MHSanaei 2026-07-11 23:17:57 +02:00
  • e6bef229ae fix(web): opt panel pages out of Cloudflare Rocket Loader MHSanaei 2026-07-11 21:58:23 +02:00
  • 975b1f1acc fix(iplimit): ban a dead connection once instead of every scan MHSanaei 2026-07-11 21:52:35 +02:00
  • 6aa87f4e57 fix(clients): finish deleting from every inbound when one fails MHSanaei 2026-07-11 21:37:45 +02:00
  • 200ea09157 fix(node): never sweep a node's inbounds before their first adoption MHSanaei 2026-07-11 21:30:21 +02:00
  • fc625d8f66 fix(database): drop the legacy UNIQUE constraint on inbounds.port MHSanaei 2026-07-11 21:21:48 +02:00
  • c4448f4ea8 fix(clients): rename client record atomically with inbound settings MHSanaei 2026-07-11 21:13:20 +02:00
  • 3b731cd657 fix(clients): reuse stored credentials when re-adding an existing identity MHSanaei 2026-07-11 21:05:58 +02:00
  • 1c789c3e4d fix(script): confirm auto-detected public IPv4 before issuing IP certificate MHSanaei 2026-07-11 22:35:31 +02:00
  • 201d4731de fix(xhttp): stop XMUX maxConcurrency from reverting on save MHSanaei 2026-07-11 20:43:47 +02:00
  • ed9686bf29 fix(clients): include Telegram ID in client list search (#5888) mrnickson-hue 2026-07-10 13:20:35 +03:00
  • c62e8c6bbe ci(claude-bot): structure PR review and issue triage prompts MHSanaei 2026-07-09 15:45:07 +02:00
  • d33b6865a9 ci(claude-bot): auto-open the PR after an owner @claude fix on an issue MHSanaei 2026-07-09 12:06:20 +02:00
  • 3d513b5084 chore(deps): bump golang.org/x/text from 0.38.0 to 0.40.0 (#5872) dependabot[bot] 2026-07-09 11:20:22 +02:00
  • f79931eacf chore(deps-dev): bump vite from 8.1.3 to 8.1.4 in /frontend (#5877) dependabot[bot] 2026-07-09 11:19:27 +02:00
  • de5b130095 ci(claude-bot): gate write capability to trusted actors MHSanaei 2026-07-09 02:18:43 +02:00
  • f3e99058f9 fix(sub): apply host Allow Insecure to Hysteria2 subscription links (#5866) Sanaei 2026-07-09 02:03:05 +02:00
  • 142dab9ee8 feat(balancer): add balancer-to-balancer fallback support (#5586) Sentiago 2026-07-09 02:59:51 +03:00
  • ea24ef0a69 feat(xray): default outbound in basic routing (#5815) Rouzbeh† 2026-07-09 03:25:47 +03:30
  • 2c28fa5f48 fix(inbound): scope port-conflict check to the stored node on update (#5833) Yuri Khachaturyan 2026-07-09 02:18:30 +03:00
  • f9cd7ac906 Add column sorting to inbounds table (#5661) isultanov99 2026-07-09 00:54:54 +02:00
  • d2efe9b022 fix(sub): include native WireGuard clients in Clash and JSON subscriptions (#5676) Grigoriy 2026-07-09 01:52:46 +03:00
  • cb5b3a803a fix(wireguard): build peers in GenXrayInboundConfig so node reconcile keeps clients (#5684) Grigoriy 2026-07-09 01:52:03 +03:00
  • b8a654967f Add encrypted DNS presets (#5837) Rouzbeh† 2026-07-09 02:15:35 +03:30
  • 7780ab0e23 ci(claude-bot): auto-fix trusted PRs and easy issue bugs MHSanaei 2026-07-09 00:31:00 +02:00
  • 42690e1b8c feat(hosts): bulk-add multiple hosts to multiple inbounds (#5677) AmirRnz 2026-07-09 01:05:20 +03:30
  • f431e9cc03 fix(inbounds): apply runtime changes after the DB commit (#5768) n0ctal 2026-07-09 01:12:28 +05:00
  • f4199353da chore(frontend): bump dependencies MHSanaei 2026-07-08 22:11:37 +02:00
  • 5c5a509605 chore: add golangci-lint tasks and force LF on Go files MHSanaei 2026-07-08 22:11:28 +02:00
  • a067f817ae refactor: modernize Go with strings.SplitSeq and maps.Copy MHSanaei 2026-07-08 22:10:54 +02:00
  • 7c183dbd97 fix(clients): surface bulk-reset auto-enable failures (#5763) n0ctal 2026-07-08 23:53:42 +05:00
  • 567a4ac4fe fix(clients): parse only settings.clients across protocols (#5855) n0ctal 2026-07-08 23:31:00 +05:00
  • 7db92d6318 fix(inbound): reject finalmask + REALITY combo (crashes Xray-core) (#5861) mrnickson-hue 2026-07-08 21:29:51 +03:00
  • e424cc0f4d fix(routing): allow dns.servers on private IPs past the geoip:private block rule (#5774) Volov Vyacheslav 2026-07-08 21:28:11 +03:00
  • 57300f44bd fix(ldap): convert default total GB to bytes when auto-creating clients (#5854) mrnickson-hue 2026-07-08 21:24:21 +03:00
  • 328d920e98 feat(mtproto): enforce per-client quota & expiry via mtg-multi limits MHSanaei 2026-07-08 15:30:56 +02:00
  • 61e12e4c29 Frontend dev tooling (Husky, lint-staged, MSW, Storybook) + full React Hook Form migration (#5859) Sanaei 2026-07-08 13:28:37 +02:00
  • 8ee79cf447 refactor(frontend): replace recharts with uPlot for charts MHSanaei 2026-07-08 02:20:30 +02:00
  • bc309ed9f8 refactor(frontend): replace axios with the native Fetch API MHSanaei 2026-07-08 01:09:18 +02:00
  • 15faec6258 fix(logs): limit Xray log growth (#5840) Rouzbeh† 2026-07-08 01:03:34 +03:30
  • 9b91f0f42e docs: vendor the documentation site into the monorepo MHSanaei 2026-07-07 23:07:14 +02:00
  • 2c49dbf54e fix(node): start a fresh quota window when a node auto-renews a client MHSanaei 2026-07-07 12:51:04 +02:00
  • cc3303dd8c fix(sub): carry a host's Final Mask into raw share links MHSanaei 2026-07-07 12:44:18 +02:00
  • 52d4af71bc fix(ldap): attach auto-created clients to every configured inbound tag MHSanaei 2026-07-07 12:39:00 +02:00
  • 7cb2adf429 fix(client): clean node_client_traffics rows when deleting a client MHSanaei 2026-07-07 12:35:27 +02:00
  • 6e75938c61 [Feature]: Add a tooltip/hint to the "Password" field in the client form clarifying which protocols use it (#5809) ecgang 2026-07-07 05:43:09 -07:00
  • ad7a0f8164 refactor(mtproto): manage ad-tags per client only MHSanaei 2026-07-07 12:19:26 +02:00
  • 406ce54fb2 chore(mtproto): bump the mtg-multi binary pin to v1.14.0 MHSanaei 2026-07-07 12:01:01 +02:00
  • 43500a5470 feat(mtproto): per-client ad-tags, management-API auth, and record secret sync MHSanaei 2026-07-07 12:00:43 +02:00
  • 659f0f404c fix(ci): stop executing tag-checkout code in the release smoke test MHSanaei 2026-07-07 01:23:10 +02:00
  • 6214ff4edc fix(mtproto): stop dropping connections on client/inbound edits; add live updates + ad-tag (#5838) Sanaei 2026-07-07 01:13:24 +02:00
  • 84b6423020 fix(mtproto): stop persisting a vestigial inbound-level secret MHSanaei 2026-07-06 17:55:57 +02:00
  • 27fd19895a fix(mtproto): drop the remark fragment from tg proxy deep links MHSanaei 2026-07-06 17:55:35 +02:00
  • a1ca43d869 chore(gen): refresh generated schemas after Client.Secret comment drop MHSanaei 2026-07-06 17:55:15 +02:00
  • 977fe4b4ea fix(ci): install mtg-multi without GOBIN for cross-compiled release builds MHSanaei 2026-07-06 16:16:44 +02:00
  • d8b9f535ff style(model): drop trailing comment on Client.Secret to satisfy gofumpt MHSanaei 2026-07-06 16:16:31 +02:00
  • d97bd8643e feat(mtproto): adopt dolonet/mtg-multi and make MTProto inbounds multi-client MHSanaei 2026-07-06 16:04:32 +02:00
  • 5e9606aa4d fix(script): stop logging an error when Enter accepts the default ACME port MHSanaei 2026-07-06 12:44:37 +02:00
  • f36f481e02 feat(db): add pgclient command to install or upgrade PostgreSQL client tools MHSanaei 2026-07-06 09:24:18 +02:00
  • de70ecb026 fix(db): probe dump readability before PostgreSQL import MHSanaei 2026-07-06 09:01:19 +02:00
  • ed66209e38 feat(outbound): add real-delay connection test mode MHSanaei 2026-07-06 08:35:48 +02:00
  • 5a7b3b7370 fix(client): stop duplicate client entries accumulating in inbound settings MHSanaei 2026-07-05 21:17:25 +02:00
  • 9d1a21b484 fix(ui): keep an explicit zero happy-eyeballs delay across the round trip MHSanaei 2026-07-05 21:17:12 +02:00
  • 0753f5ee83 fix(link): reject non-finite and clamp out-of-range quicParams from fm= MHSanaei 2026-07-05 21:16:56 +02:00
  • 837cf5f24e fix(db): clamp traffic counters below int64 max and repair overflowed rows MHSanaei 2026-07-05 20:33:09 +02:00
  • b1fa76f9b6 fix(node): fully delete clients on nodes instead of only detaching them MHSanaei 2026-07-05 20:28:26 +02:00
  • b6873c7a73 fix(outbound): measure HTTP test delay on a warm connection MHSanaei 2026-07-05 20:19:25 +02:00
  • b6183271da fix(tgbot): find clients by tgId regardless of settings JSON formatting MHSanaei 2026-07-05 20:18:59 +02:00
  • 11e45e81b6 fix(link): sanitize numeric quicParams taken from a share link's fm= param MHSanaei 2026-07-05 20:16:57 +02:00
  • 579a9daaa0 fix(ui): make the Happy Eyeballs toggle produce a config xray actually enables MHSanaei 2026-07-05 20:12:34 +02:00
  • 0add63984f fix(ui): align the subUpdates limit with the backend and show the range MHSanaei 2026-07-05 20:12:21 +02:00
  • b6d1caf95d fix(script): rename the Xray binary to xray-linux-arm32 on 32-bit ARM MHSanaei 2026-07-05 20:08:10 +02:00
  • 1bf9e5d544 fix(script): make local PostgreSQL and fail2ban setup work on RHEL-family distros MHSanaei 2026-07-05 20:06:08 +02:00
  • 26e88c7b10 fix(script): stop running full system upgrades via pacman -Syu on Arch MHSanaei 2026-07-05 20:03:11 +02:00
  • a0989e0f4d fix(node): stop client edits from tearing down node inbounds and harden reconcile fingerprints MHSanaei 2026-07-05 02:06:58 +02:00
  • 07d66aa6dc refactor: use the built-in max/min to simplify the code (#5751) alaningtrump 2026-07-05 06:58:18 +08:00
  • b177e30714 feat(ui): client-realtime-speed (#5687) Nikan Zeyaei 2026-07-05 02:27:03 +03:30
  • e11e587c60 fix(script): correct hardcoded menu option numbers in x-ui.sh (#5787) lxk955 2026-07-05 05:09:56 +08:00
  • 5c725df702 fix(ci): pin the tag smoke test to the release under test MHSanaei 2026-07-03 10:21:46 +02:00
  • d105b2741c fix(node): stop one rejected inbound from starving a node's traffic sync MHSanaei 2026-07-03 09:47:30 +02:00
  • 05cb70d8a8 feat(frontend): add text search to the inbound list MHSanaei 2026-07-03 09:40:04 +02:00
  • 323cf09d10 feat(sub): show the announcement on the subscription info page MHSanaei 2026-07-03 09:38:37 +02:00
  • 1f04912b6f feat(tgbot): register usage, inbound, restart and clearall in the bot command menu MHSanaei 2026-07-03 09:36:53 +02:00
  • 220dcb1579 feat(tgbot): show inbound remark alongside email in the online clients list MHSanaei 2026-07-03 09:33:29 +02:00
  • a13a79b230 fix(docker): start crond and persist acme.sh state so cert renewal works MHSanaei 2026-07-03 09:32:28 +02:00
  • ff3bd63656 feat(sub): serve the HTML info page for browser requests on JSON and Clash URLs MHSanaei 2026-07-03 09:31:00 +02:00
  • 052dd85ad3 feat(clients): hide disabled inbounds in the client form selector MHSanaei 2026-07-03 09:26:06 +02:00
  • b2ceb854f5 feat(tgbot): include hostname in backup and ban-log messages MHSanaei 2026-07-03 09:23:07 +02:00
  • dd4f55f690 feat(frontend): add text search to node select components MHSanaei 2026-07-03 09:14:40 +02:00
  • f90e4a6962 fix(panel): use the hosting node address for WireGuard client configs (#5679) Grigoriy 2026-07-03 02:12:32 +03:00
  • dbdecda03f Env vars example file update (#5678) Nebulosa 2026-07-03 01:28:13 +03:00