Поддерживается совместимый WARP YAML; источник не важен.
🔑 Параметры
Поля заполняются кнопкой «🔍 Распарсить» из YAML WARP-бота. Меняйте вручную только осознанно: ключи, IP, SNI и DNS входят в генерируемые ссылки masque://.
🎲 Стратегия генерации
Исключает VPN-порты (500, 1701, 4500), которые могут вызывать семантический конфликт у DPI.
ℹ️ H3 / QUIC — MASQUE over HTTP/3/QUIC: Фиксированный пул (198.2, 198.1, 199.2) :443
ℹ️ H2 / TCP — MASQUE over HTTP/2/TCP: Взвешенный рандом портов (443≈70%, 8443≈20%, остальные≈10%)
ℹ️ Анти-корреляция: При совпадении портов H2/TCP IP ≠ H3/QUIC IP
Приоритет на транспорт: точный endpoint (импорт WARPSCOUT/Mihomo MASQUE type: masque или вручную) → свой список портов → встроенная стратегия. Точный endpoint авторитетен и не переписывается анти-корреляцией (она применяется только к сгенерированным endpoint'ам). Свой список портов полностью заменяет встроенный выбор портов — без скрытого смешивания. Порты — целые 1..65535 (trim + дедупликация; «443abc» — ошибка, а не 443). Endpoint — IPv4:port или hostname:port; IPv6 endpoint отвергается явно (контракт MASQUE не доказан). Поля живут только в памяти страницы — ни localStorage, ни sessionStorage, ни URL.
📤 Результат (masque://)
Нажмите «Сгенерировать»
📖 Короткая инструкция · WARP создаёт ссылки, Builder собирает конфигурацию, Config Studio анализирует готовый YAML.
1. Выберите платформу. 2. Выберите режим маршрутизации. 3. Добавьте серверы и соберите YAML. Инженерные настройки доступны в отдельных разделах ниже.
🎯 Где будет работать Mihomo?
⚠️ 0.0.0.0:53 — публичный DNS-резолвер на VPS. Его нельзя бездумно оставлять доступным из интернета: ограничение доступа обеспечивается firewall/сетевым уровнем VPS и находится вне scope генератора.
⚠️ Для Mihomo 1.19.31 top-level tun.inet4-address не управляет адресом TUN: IPv4-префикс вычисляется из dns.fake-ip-range и приводится к /30. Поэтому VPS-профиль задаёт device + fake-ip-range, но не обещает отдельный inet4-address. Linux-часть (policy routing, iptables, Docker, AWG) генератором не создаётся. auto-route всегда false.
Профиль задаёт только сценарий развёртывания: вход (TUN/SOCKS), базовые переключатели и gateway-настройки. Прокси, подписки, WireGuard, фильтры и остальные данные не затрагиваются. Подробно: подробная инструкция, VPS Gateway.
🛡️ 2. Режим маршрутизации
Автоматический режим белых списков доступен только для профиля «Роутер / обычный TUN».
📋 3. Основные серверы и подписки
Обычные proxy-ссылки и HTTP(S) URL-подписки можно смешивать в обоих режимах настройки «Использовать URL-подписки». WG/AWG добавляются отдельно файлами в разделе ниже. Перейти к настройке URL-подписок ↓ Включено — подписки обновляет Mihomo; выключено — при Build браузер читает их один раз и встраивает узлы.
Верхний набор — основной, этот — резерв. GLOBAL сначала использует обычные выходы, затем БС. Обе стороны обязательны. Ссылки можно смешивать с подписками при включённом режиме «URL-подписки». Плановая проверка доступности — каждые 300 секунд; при неудачных подключениях (2 за 60 секунд) проверка запускается сразу. Переключение и возврат на основной — не мгновенные. WG-файлы входят в основной набор.
Обычные proxy-ссылки (vless://, trojan://, ss:// и т.п.) можно вставлять напрямую. Для HTTP(S) подписки режим ниже определяет результат: включён — динамический proxy-provider; выключен — подписка один раз читается браузером и её текущие узлы встраиваются как обычные proxies:.
Понятное имя/модель устройства, которое панель подписки увидит как заголовок x-device-model в запросах списка серверов — например: Keenetic Giga KN-1012, Home-Router, Windows-PC, Android-Phone. Если пусто, в таких запросах используется служебное Saymer Link Generators Preview. На идентификатор устройства (HWID) не влияет и нигде не сохраняется.
🔑 Идентичность подписки: Устройство 1
Обычно ничего менять не нужно. Один логический роутер/конфиг получает один стабильный HWID: preview и все proxy-providers используют его повторно при каждой пересборке.
Дополнительный ID нужен только если из этого браузера создаются конфиги для нескольких разных роутеров/устройств. Для обычной пересборки текущего устройства новый ID создавать не нужно.
Локальное имя нужно только для удобства и не меняет x-device-model. «Сменить ID» создаёт новый случайный HWID только по явной команде и может быть воспринят сервисом подписки как новое устройство. Удаление удаляет запись только из этого браузера: уже созданные конфиги и записи на стороне сервиса не меняются. Сам HWID нигде не отображается и в диагностику не попадает.
Список серверов нужен только для просмотра узлов и удобного выбора исключений. По умолчанию подписка браузером не запрашивается.
Список ещё не получен.
Браузер запросит подписку напрямую; при CORS-блокировке — через проектный fallback-воркер (URL подписки при этом виден его инфраструктуре). Список, URL и содержимое не сохраняются; локально хранится только реестр идентичностей устройства.
📡 Импорт узлов из работающего Mihomo (runtime)
Работающий Mihomo знает фактический список узлов провайдеров — он может отличаться от browser-preview (#158). Импортер только читает GET /providers/proxies ради имён узлов для Exclude Filter: он не меняет running Mihomo, не делает API-мутаций и не перезаписывает YAML.
Если адрес не указан, используется 192.168.1.1:9090. Запрос выполняется только по нажатию кнопки.
Выберите готовый адрес или введите свой: host:port либо http(s)://host:port[/prefix]. Выбор адреса не отправляет запрос. Отправку API secret на новый адрес нужно подтвердить отдельно.
Адрес и secret не сохраняются (только память вкладки, до перезагрузки страницы). Запрос идёт из браузера напрямую в контроллер — через проектный воркер он не передаётся никогда. Если браузер не пускает (CORS / разрешение локальной сети / listen-адрес) — используйте «Вставить JSON» или «Загрузить .json» ниже: откройте http://<контроллер>/providers/proxies в соседней вкладке и скопируйте ответ.
Почему прямой запрос может не пройти
Чтобы браузер смог обратиться к контроллеру напрямую: (1) external-controller Mihomo должен слушать адрес, доступный из вашей сети, а не только 127.0.0.1; (2) CORS-настройки контроллера должны разрешать origin генератора; (3) браузер может спросить разрешение на доступ к локальной сети (Private Network Access); (4) secret должен совпадать; (5) не выставляйте контроллер в WAN. Ошибку так же может дать обычная сетевая недоступность — в этом случае точную причину браузер не раскрывает.
Найденные имена узлов
Выбранные для исключения серверы продолжают действовать (объединяются с ручным фильтром через ИЛИ). Очистить — кнопкой «Снять все» в списке серверов.
Фильтр по фактическим именам узлов. При включённых URL-подписках передаётся Mihomo как exclude-filter; при выключенных применяется браузером к развёрнутым узлам до сборки YAML. Например, (?i)ru|russia|россия. Применяется ко всем подпискам. Пусто — фильтрации нет.
📂 WireGuard / AmneziaWG — при необходимости
Можно выбрать сразу несколько WG/AWG-конфигов — каждый файл станет отдельным профилем в списке ниже. Добавлять можно и по очереди, несколькими загрузками.
WG/AWG-конфиги хранятся только в памяти текущей страницы. После обновления или закрытия страницы их нужно загрузить заново. Приватные ключи в browser storage не сохраняются.
Общий DNS для ВСЕХ загруженных WG/AWG-профилей (добавляет dns/remote-dns-resolve в каждый wireguard-outbound). Пусто — DNS удаляется из профилей.
⚠️ Обнаружен нестабильный DNS Amnezia (100.64.0.1). Заменено на публичные.
Для NAT/LTE/домашних роутеров периодический keepalive помогает не терять UDP-состояние. Если профиль не задаёт совместимое значение, Mihomo получит 25 секунд. Существующее целое значение не меняется.
Если соединение AWG периодически обрывается, можно проверить влияние RandomTrailers. Опция изменяет конфигурацию; автоматический сетевой тест не выполняется.
Диагностика обрывов AmneziaWG 3.x
RandomTrailers добавляет случайные хвосты к сообщениям AWG 3.x и участвует в обфускации трафика. Переключатель ниже заменяет random-trailers: true на false только у импортированных AWG-профилей с активным флагом; ключи и MTU не меняются. Это может помочь сравнить влияние механизма при периодических обрывах. Сохраните исходный проект, сравните стабильность до и после на одинаковой сети и верните настройку, если улучшения нет. Изменение влияет на обфускацию; устранение обрывов не гарантируется.
⚠️ Диагностическая модификация AWG-профилей: RandomTrailers будет отключён в сборке (random-trailers: on → off). Это controlled experiment для теста обрывов, а НЕ доказанный universal fix; MTU/ключи и остальные поля не меняются.
⚙️ Основные настройки
Архив дашборда, который Mihomo скачает в каталог external-ui. MetaCubeXD — по умолчанию. Custom: абсолютный http/https URL архива (.zip/.tgz); URL только генерируется в конфиг, не проверяется из браузера.
⚠ MIPS требует Mihomo 1.19.31 или новее. На более старой версии выберите gVisor / отключите MIPS.
📦 Mihomo YAML
Предпросмотр только для чтения. Чтобы изменить YAML, поправьте входные данные или настройки выше и снова нажмите ⚡ Build Config.
🌐 Маршрутизация и DNS
Настройте состав выходов и правила. Все изменения применяются только при Build. DNS gateway остаётся рядом с выбором платформы.
🚦 Доменные политики и группы выхода
Доменные категории («AI», «YouTube»…) направляются в отдельные группы выхода через RULE-SET; состав подписки меняется — правила не пересобираются. Подробно — ❓ Быстрый старт.
Доменное правило → стабильная логическая группа → proxy-provider подписки → текущий живой узел. Правила ссылаются на группы, а не на серверы: состав подписки может меняться — правила не требуют пересборки. Порядок политик = порядок правил; завершающее MATCH,GLOBAL остаётся правилом по умолчанию. Требуется Mihomo ≥ 1.19.27 (empty-fallback), инлайн rule-провайдеры ≥ 1.19.1.
Локальный импорт JSON-экспорта MagiTrickle: файл читается в браузере и никуда не отправляется. Группы превращаются в политики, маршруты-интерфейсы маппятся на таргеты (mitun0 → GLOBAL, blackhole → REJECT, остальные — «Пропустить»); отключённые правила/группы, дубли и неизвестные типы пропускаются с честным итогом. Повторный импорт добавляется к текущим политикам.локальный импорт: файл читается в браузере, никуда не отправляется
Импорт MagiTrickle
Недоступно при включённых автоматических белых списках. Настройки групп сохранены.
Настройки групп приоритета
Приоритетные группы серверов проверяются по порядку; финальное правило MATCH направляет трафик в эти группы. Участники — из текущей сборки (прокси, WG/AWG-профили, провайдеры). Health-семантика и границы: docs/TIERED-FAILOVER.md (HTTP-пробы; UDP не заявлен).
Используется первая доступная группа. Если она становится недоступной, Mihomo переходит к следующей. После восстановления группы более высокого приоритета она снова становится предпочтительной по результатам проверок доступности. Переключение не мгновенное; сохранение действующих соединений не гарантируется.
Между группами — строгий порядок приоритетов. Внутри группы: «Самый быстрый (url-test)» выбирает по измеренной задержке; «По порядку (fallback)» предпочитает первого доступного участника. Это не физическая multi-hop цепочка VPS. Назовите группы по своему назначению, например «Личные VPS» или «Резервная подписка».
🔗 Общая группа промежуточного выхода (расширено)
▶ADVANCEDОбщая группа промежуточного выхода (расширено)
Обычно этот раздел не нужен. Для каждого WG/AWG используйте настройку «Через промежуточный proxy» в его карточке — генератор сам создаст безопасную группу (для подписки — provider-backed). Этот блок — ручной/Legacy путь: общая dialer-группа, которую несколько WG/AWG используют совместно, для особых схем.
Если имя не задано, используется SHARED-DIALER. Это внутреннее имя Mihomo proxy-group, а не имя сервера.
По одному уже существующему proxy в строке. Для обычного сценария ничего здесь не печатайте — выбирайте готовую цель прямо в карточке WG/AWG.
Legacy/advanced путь: URL должен совпадать с подпиской из основного поля. В обычном сценарии повторно копировать URL больше не нужно — включённые подписки автоматически появляются в «Промежуточный выход» как «ПОДПИСКА».
⚠️ Выбранный транспорт должен поддерживать UDP relay. Переключение узла группы не гарантирует мгновенную смену уже установленного WireGuard-пути; для немедленной смены может потребоваться reload/restart Mihomo.
🔍 Диагностика и визуализация
Здесь — статический результат последнего Build. Граф показывает зависимости, а не фактический путь пакетов. Список runtime-узлов — отдельное наблюдение контроллера, не доказательство маршрута.
🔎 Объяснение конфигурации
▶DIAGNOSTICSRouting Inspector / Diagnostics
Офлайн-анализатор итогового конфига (результат последнего Build). Точно анализируются DOMAIN, DOMAIN-SUFFIX, DOMAIN-KEYWORD и inline-провайдеры политик; GEOSITE/GEOIP/external-провайдеры/DNS-зависимые правила честно возвращают UNKNOWN. Инспектор не заменяет диагностику самого Mihomo и ничего не меняет в конфиге.
⚠ Настройки изменены после последнего Build. Диагностика ниже относится к предыдущей сборке — пересоберите конфиг, чтобы анализировать актуальную.
Routing order
▶Rule Provider Explorer
Инвентарь rule-providers итогового конфига (результат последнего Build), в порядке YAML. Inline-содержимое доступно локально; содержимое внешних провайдеров браузером не загружается (fetch/HEAD не выполняются), MRS не декодируется. Поиск — case-insensitive подстрока по уже доступному inline-payload, без сохранения. Только чтение — конфиг не меняется.
▶Domain Coverage Checker
Покрытие доменов итоговым конфигом (результат последнего Build): какое правило выигрывает первым, через inline-правило или провайдера, и статический путь до цели насколько это доказуемо. «Совпадает с правилом» ≠ «гарантированно идёт через конкретный прокси»: для select/url-test/fallback участник определяется Mihomo во время работы (помечается runtime-selected). GEOSITE/GEOIP/внешние провайдеры/DNS-зависимые правила честно возвращают UNKNOWN. По одному домену в строке; только чтение — конфиг не меняется.
▶ Visual Routing Graph
Граф зависимостей из последнего Build: правила → группы → провайдеры/прокси. Клик по узлу — фокус на его зависимостях. Только доказанные CDG-связи; динамические группы (select/url-test/fallback) показывают состав, не выбор участника. Не меняет конфигурацию.
▶ Текстовая альтернатива графу
🧪 Инженерная лаборатория
Экспериментальная модель маршрута между несколькими узлами. Не изменяет обычную конфигурацию Mihomo автоматически. Автоматический физический failover не реализован.
🧪 Модель, симуляция и наблюдения
▶PHYSICAL TOPOLOGY🌐 Межсерверная цепочка — экспериментальная лаборатория
Инструмент моделирует последовательный маршрут через несколько VPS, проверяет структуру цепочки и может подготовить конфигурации для поддерживаемых транспортов. Не подключается к серверам и не развёртывает Mihomo автоматически.
Загрузите демонстрационную цепочку.
Нажмите «Проанализировать».
Посмотрите предполагаемый маршрут.
Подготовьте артефакты узлов кнопкой ниже.
Проверьте список готовых файлов и ограничений ручной настройки.
Полная генерация — SS, SOCKS и HTTP в доказанных комбинациях. Остальные транспорты требуют external contract. Runtime Evidence не доказывает путь пакетов; what-if не меняет подключения. Автоматический physical failover и SSH deployment отсутствуют.
Модель физической цепочки, what-if, per-node артефакты и Runtime Evidence. Данные остаются в памяти вкладки. Intended topology и наблюдения Controller API не доказывают фактический packet path.
Границы лаборатории
Client → ENTRY → TRANSIT(0..N) → EXIT [→ FINAL OVERLAY] → Internet. Отдельная модель не меняет обычный Mihomo Build автоматически. Демо синтетическое. Local routing policy узла остаётся отдельным уровнем.
Экспертный редактор JSON
Configured (intended) physical path
Кнопки доступности — what-if (pure-симуляция на модели, без мутаций): недоступный узел разрывает цепочку; альтернативная физическая топология не подставляется никогда (automatic topology failover — not promised в v1.11).
🌐 Сеть: TCP / UDP · DNS · MTU
Генерация работает только для валидной цепочки; транспорты первого класса — ss/socks/http (полная пара outbound+listener в Mihomo, доказано по исходникам 1.19.32). Всё остальное — честный external contract без выдуманного серверного YAML. Значения секретов задаются в spec.credentials (память вкладки, в manifest не попадают); без них артефакты получают плейсхолдеры.
▶🔍 Runtime Evidence (эксперимент #188)
Свяжите каждый физический узел с его Mihomo-контроллером (например 127.0.0.1:19090 через ваш SSH local-forward — генератор туннели не создаёт). Секрет и адрес — только память вкладки, никакого auto-fetch: запрос идёт по кнопке «Проверить runtime». Наблюдения НЕ меняют топологию и не являются доказательством пути пакета: максимум — «наблюдаемое состояние контроллеров согласуется с intended-топологией». Недоступный контроллер ≠ узел выключен (причины: offline/CORS/mixed-content/нет SSH forward).
⚙️ Дополнительные параметры
Редкие параметры для конкретной среды. Не меняйте их без необходимости; скрытие панели не выключает выбранные настройки.
⚙️ Совместимость серверов
Совместимость серверов
Только для VLESS + REALITY с подтверждённой поддержкой X25519MLKEM768: для выбранных host/host:port задаётся reality-opts.support-x25519mlkem768: true (и chrome fingerprint, если он отсутствует) в YAML. Обычные VLESS/TLS и остальные серверы не затрагиваются. Не включайте без подтверждения сервера; версия Xray сама по себе не гарантирует поддержку.
По одному host или host:port в строке. Для указанных REALITY-узлов добавляется X25519MLKEM768 и client-fingerprint: chrome, если fingerprint не задан. Пусто — функция выключена и legacy-вывод не меняется.
🔧 Расширенные входы и TUN
▶ADVANCEDРасширенные настройки
⚙ Расширенный TUN stack
Environment-dependent значения Mihomo. Для обычного использования не требуются: достаточно MIPS (по умолчанию) или gVisor.
Пока system / mixed не выбран, продолжает действовать MIPS или gVisor по настройке выше. Включение расширенного выбора само по себе стек не меняет.
VPS Gateway: gVisor — рекомендуемый baseline; MIPS проверен на VPS, но в наших замерах был хуже по download. system/mixed оставлены для экспериментов и не рекомендуются для VPS; если выбраны, генератор сохраняет выбранный stack и не подменяет его молча.
MIPS — это TUN/IP stack, а не MIPS-архитектура процессора. По умолчанию выбран MIPS; при его отключении используется gVisor, если вручную не выбран system/mixed. MIPS влияет только на TUN-трафик (обычный TUN и «TUN на каждый прокси»); при выключенном TUN выбор MIPS не влияет на YAML. Требуется Mihomo >= 1.19.31.
🔀 Отдельный вход на каждый прокси
Недоступно при включённых автоматических белых списках.
Per-Proxy доступен только в профиле «Роутер / обычный TUN».
Создаёт отдельный TUN-интерфейс и/или SOCKS-порт для каждого proxy/provider. Для обычного использования не требуется. Дочерние параметры недоступны, пока этот режим выключен. Раскрытие секции само по себе ничего не включает и не сбрасывает.
TUN на каждый прокси доступен только при включённом TUN Interface; SOCKS-порт на каждый прокси — только при включённом Mixed Port. Выключение родительской опции сбрасывает зависимую.
Обычный TUN и MIPS включены по умолчанию и настроены выше. Экспериментальный TUN stack (system / mixed) и режимы отдельного входа на каждый прокси собраны внутри ADVANCED-секции.
🔎 Анализ готового Mihomo-конфига
Импорт уже работающего конфига (Mihomo/Clash Meta) для анализа: структура, граф зависимостей, маршрутизация, диагностики. Разбор и анализ — локально в браузере; конфиг никуда не отправляется и не сохраняется; подписки/провайдеры автоматически не скачиваются. Значения секретных полей (password/uuid/ключи) скрываются и в диагностики не попадают. Поддерживается YAML одного документа.
📊 Обзор
ДиагностикиГраф зависимостейМаршрутизация
Покрытие доменов импортированным конфигом: какое правило выигрывает и путь до цели (насколько это доказуемо статически). GEOSITE/GEOIP/external-провайдеры — честный UNKNOWN. По одному домену в строке.
Semantic Trace▶ Visual Routing Graph
Граф зависимостей импортированного конфига (после «Разобрать»). Не обновляется при правках редактора — повторно нажмите «Разобрать».
▶ Текстовая альтернативаDNS ↔ Routing
Согласованность dns:-секции и правил маршрутизации (статический аудит после «Разобрать»). CONFIRMED — структурная ошибка по исходникам Mihomo 1.19.31/1.19.32; INFERRED — возможное влияние, сеть не наблюдалась. DNS default false; HTTPS не означает прокси, #PROXY — явный селектор, не доказанный tunnel. GEOSITE/RULE-SET-содержимое — честный UNKNOWN. Не обновляется при правках редактора — повторно нажмите «Разобрать».
✏️ Редактор Mihomo-конфига
Как работать: 1 · Выберите объект → 2 · Измените нужные поля → 3 · «💾 Применить изменения» → 4 · Проверьте зависимости / diff → 5 · Экспортируйте YAML. Точечные правки поверх исходного текста (source-preserving): меняется только отредактированный диапазон YAML, комментарии/порядок/кавычки/неизвестные ключи остаются байт-в-байт. Правки живут только в памяти вкладки; экспорт никогда не перезаписывает загруженный файл и ничего не отправляет. Секретные поля маскируются — оставьте пустым, чтобы не менять.
1–2 · Выберите объект и измените поля
➕ Добавить новый прокси➕ Добавить подписку (proxy-provider)
Создаётся HTTP(S) provider без подключения к маршрутизации. Чтобы использовать его серверы, вручную добавьте имя в use: нужной группы. Подписка здесь не загружается. Пустой path — Mihomo выберет путь хранения.
🎯 Цель правила⚠ Переименование / удаление объекта
4 · Правки сессии и diff
5 · Экспорт
Runtime-валидация Mihomo (mihomo -t) в браузере не выполняется и не выдаётся за выполненную: проверьте экспорт на целевой версии.