docs: overhaul README.md and README.en.md with comprehensive 2026 feature list, AI stack, Watchdog architecture, Telegram bot commands, and CLI reference

This commit is contained in:
Dushnilin
2026-08-11 16:12:14 +03:00
parent be5f41a52e
commit e93928cba2
2 changed files with 130 additions and 146 deletions
+67 -75
View File
@@ -15,120 +15,112 @@
## ⚡ О проекте
**Tachyon** — это прямой форк проекта **[Forkop от @ushan0v](https://github.com/ushan0v/forkop)** (ранее известного как **Podkop Plus**). Проект переименован и развивается как независимое, продвинутое и современное решение для роутеров под управлением **OpenWrt** (полная поддержка всех версий **OpenWrt 23.05, 24.10, 25.x и SNAPSHOT**).
**Tachyon** — это продвинутое, автономное и современное решение для оркестрации сетевого трафика, проксирования и обхода цензуры на роутерах под управлением **OpenWrt** (полная поддержка всех версий **OpenWrt 23.05, 24.10, 25.x и SNAPSHOT**). Прямой форк проекта **[Forkop от @ushan0v](https://github.com/ushan0v/forkop)** (ранее **Podkop Plus**).
Я сохранил лучшие инженерные идеи оригинального проекта [Podkop от @itdoginfo](https://github.com/itdoginfo/podkop) и его эволюции в лице [Forkop от @ushan0v](https://github.com/ushan0v/forkop), существенно расширил архитектурный фундамент и превратил его в универсальный высокопроизводительный комбайн для управления сетевым трафиком, проксирования и обхода блокировок.
Проект объединяет в себе мощь **sing-box**, локальные средства обхода DPI (**Zapret v1 / Zapret v2 / ByeDPI**), интерактивного **Telegram-бота**, а также инновационный **2026 AI Stack** (автономный **AI Doctor** и **HTTP REST Agent API / OpenAPI 3.0**).
Вся бэкенд-логика Tachyon написана на скриптовом языке **ucode** — нативном, сверхбыстром и экономичном движке OpenWrt, что обеспечивает минимальное потребление оперативной памяти и ресурсов процессора на любых роутерах.
Вся бэкенд-логика написана на скриптовом языке **ucode** — нативном движке OpenWrt, что гарантирует мгновенный отклик и минимальное потребление RAM (от 128 МБ ОЗУ).
---
## 🔥 Ключевые возможности
## 🔥 Главные возможности и архитектура
### 🛡️ Мультипротокольное проксирование и локальный обход DPI
* **sing-box Engine**: Полная поддержка современных защищенных протоколов — **VLESS**, **VMess**, **Shadowsocks**, **Trojan**, **WireGuard**.
* **Локальный обход DPI (Zapret v1 / Zapret v2 / ByeDPI)**:
* Встроенная интеграция с движками **Zapret v1 (`nfqws`)**, **Zapret v2 (`nfqws2`)** и **ByeDPI** (`ciadpi`) для локального обхода глубокого анализа пакетов (DPI) непосредственно на роутере без использования внешних прокси-серверов.
### 🛡️ 1. Мультипротокольное проксирование и локальный обход DPI
* **Ядро sing-box Engine**: Нативная поддержка современных защищённых протоколов — **VLESS (Reality / gRPC / WS)**, **VMess**, **Shadowsocks**, **Trojan**, **WireGuard**.
* **Локальный обход DPI без внешних VPS**:
* Встроенная интеграция с движками **Zapret v1 (`nfqws`)**, **Zapret v2 (`nfqws2`)** и **ByeDPI (`ciadpi`)** для локальной десинхронизации пакетов на роутере.
* **Многомерная селективная маршрутизация**:
* **По доменам, IP-сетям и портам**: Направляйте через прокси или средства обхода только выбранный целевой трафик.
* **По клиентским устройствам (MAC / IP)**: Настройка правил маршрутизации отдельно для конкретных устройств домашней сети (телевизоры, смартфоны, ПК).
* **По GeoIP и странам**: Фильтрация и маршрутизация по странам назначения (GeoIP / GeoSite) с поддержкой списков исключения/включения.
* **Автоматические подписки**: Синхронизация и фоновое обновление прокси-серверов по вашим подписочным ссылкам.
* **По доменам и IP-сетям**: Направляйте через прокси или десинк только целевой трафик.
* **По клиентским устройствам (MAC / IP)**: Раздельные правила для Smart TV, смартфонов, ПК и консолей.
* **По GeoIP и странам**: Гибкие списки включения/исключения по странам назначения.
* **Автоматические подписки**: Фоновая загрузка, распарсинг и обновление прокси-нод по подписочным URL.
### 🤖 Интерактивный Telegram-бот управления
Полноценный пульт дистанционного управления роутером прямо из мессенджера:
* **Управление правилами «на лету»**: Просмотр списков обхода и моментальное добавление новых доменов или IP-сетей (включая пакетное добавление).
* **Мгновенный контроль секций**: Включение и отключение любых маршрутов одной кнопкой.
* **Выбор серверов и задержки**: Переключение активных прокси-нод с автоматическим замером задержки (ping/RTT).
* **Управление устройствами LAN**: Просмотр активных DHCP-клиентов и блокировка/разблокировка доступа в интернет по MAC-адресам.
* **Диагностика сети**: Запуск тестов доступности прямо из чата.
---
### 🤖 ИИ-Доктор и HTTP REST Agent API (2026 AI Stack)
* **Tachyon AI Doctor (v2)**: Интеллектуальный диагностический модуль с поддержкой современных LLM (**OpenAI**, **Anthropic Claude**, **DeepSeek** и пользовательских OpenAI-совместимых серверов/OpenRouter/Ollama).
* **Контекстный анализ**: Передаёт в модель не только снимки служб, но и события Watchdog (OOM, серии ошибок) и последние сжатые логи роутера.
* **Многокомпонентные цепочки фиксов (Multi-Fix)**: Возвращает цепочку автоматических исправлений с возможностью выбора конкретного фикса или одной кнопкой «Исправить всё».
* **13 встроенных Quick Fix кодов**: Автоматический ремонт sing-box, nftables, dnsmasq, resolv.conf, очистка кэша DNS, обновление подписок и перезапуск сетевых служб.
* **Языковые режимы**: Динамический выбор языка вердикта (`ru` / `en`).
* **🤖 Управление через Telegram-бот (`/ai_doctor` & `/fix`)**:
* Запуск AI-диагностики прямо из мессенджера одной командой `/ai_doctor` с выведением интерактивных Inline-кнопок для моментального применения авто-исправлений.
### 🤖 2. ИИ-Доктор и HTTP REST Agent API (2026 AI Stack)
* **Tachyon AI Doctor (v2)**: Умная диагностика роутера с использованием LLM (**OpenAI**, **Anthropic Claude**, **DeepSeek** или локальных моделей через OpenRouter / Ollama).
* **Глубокий контекст**: Передаёт в модель не только текущие проверки, но и метрики Watchdog (OOM, серии сбоев) и последние сжатые логи роутера.
* **Многокомпонентные цепочки фиксов (Multi-Fix)**: Возвращает цепочку автоматических исправлений с кнопками для каждого фикса и кнопкой «Исправить всё».
* **13 встроенных Quick Fix кодов**: Авто-ремонт sing-box, nftables, dnsmasq, resolv.conf, очистка кэша DNS, обновление подписок и перезапуск сетевого стека.
* **Языковые режимы**: Выбор языка вердикта (`ru` / `en`).
* **🤖 Вызов из Telegram-бота (`/ai_doctor` & `/fix`)**:
* Запуск ИИ-диагностики прямо из мессенджера одной командой `/ai_doctor` с выведением кнопок моментального исправления.
* **🌐 HTTP REST Agent API & OpenAPI 3.0 (Swagger)**:
* Полноценный API по адресу `/cgi-bin/tachyon-agent/` с разделением READ/WRITE эндпоинтов и защиты Bearer-токеном (`agent_api_token`).
* Спецификация **OpenAPI 3.0.3** (`GET /cgi-bin/tachyon-agent/openapi.json`) и схема инструментов (`GET /tools`) для подсоединения к **ChatGPT Custom GPTs**, N8N, Dify, Flowise и автономным ИИ-агентам (Cursor, AutoGPT, Claude Code).
* Безопасный REST API по адресу `/cgi-bin/tachyon-agent/` с авторизацией Bearer-токеном (`agent_api_token`).
* Спецификация **OpenAPI 3.0.3** (`GET /cgi-bin/tachyon-agent/openapi.json`) для мгновенного подключения к **ChatGPT Custom GPTs**, N8N, Dify, Flowise и автономным ИИ-агентам (Cursor, AutoGPT, Claude Code).
### 🩺 Системный авторемонт — Tachyon Doctor
Встроенный модуль локальной диагностики и самовосстановления (`tachyon doctor` или из WebUI):
* Сканирование состояния всех ключевых служб (`sing-box`, `zapret`, `zapret2`, `byedpi`, `dnsmasq`, `watchdog`).
* Валидация правил файрвола `nftables` и проверка резолвинга DNS через `localhost`.
* **Автоматическое исправление**: Самостоятельно устраняет сбои (пересоздает цепочки `nftables`, перезапускает упавшие сервисы) без полной перезагрузки устройства.
---
### ⚡ Надежность, Hot-reload & Watchdog
* **Совместимость с OpenWrt 25+**: Полная интеграция с новыми релизовыми ветками и новейшими компонентами OpenWrt.
* **Мягкая перезагрузка (Hot-Reload)**: Обновление правил и переключение серверов происходят без обрыва активных соединений (ваши звонки в Discord, Telegram или загрузки файлов не прервутся).
* **OOM Watchdog & Оптимизация памяти**: Непрерывный мониторинг использования RAM. При нехватке памяти система автоматически регулирует лимиты (`GOMEMLIMIT`) и отправляет уведомление в Telegram.
* **MSS Clamping (MTU Fix)**: Автоматическое решение проблем с "зависанием" TCP-пакетов и веб-страниц на туннельных интерфейсах.
### 📱 3. Интерактивный Telegram-бот управления
Полноценный пульт управления роутером из мессенджера:
* **Управление правилами «на лету»**: Просмотр списков обхода и добавление новых доменов или IP-сетей.
* **Мгновенный контроль секций**: Включение и отключение маршрутов одной кнопкой.
* **Переключение серверов**: Выбор активных прокси-нод с автоматическим замером задержки (RTT ping).
* **Управление устройствами LAN**: Просмотр активных клиентов и блокировка/разблокировка доступа по MAC-адресам.
* **Диагностика и Команды**: `/doctor`, `/ai_doctor`, `/fix <код>`, `/restart`, `/backup`.
#### 🛡️ Watchdog — Система защиты и самовосстановления
---
Watchdog — это сердце стабильности Tachyon. Он непрерывно контролирует состояние всех ключевых сервисов и автоматически устраняет сбои без перезагрузки роутера. В версии 1.2.57 проведена масштабная переработка системы защиты:
### 🛡️ 4. Watchdog — Защита и Самовосстановление
Watchdog — сердце стабильности Tachyon. Работает каждые 5–15 секунд без внешних зависимостей:
* **Атомарные записи и UCI-бэкапы**: Запись конфигураций через `tmp` + `mv` предотвращает повреждение файлов при аварийном выключении питания.
* **Защита от зацикливания перезапусков (Restart-Loop Prevention)**: Лимит не более 3 перезапусков за 10 минут (`safe_proxy_restart()`), мьютекс `PROXY_RESTART_LOCK` и кулдаун DNS-петель.
* **Оптимизация памяти (OOM Watchdog)**: Динамическая регулировка `GOMEMLIMIT` при нехватке ОЗУ с отправкой уведомлений в Telegram.
* **Мягкая перезагрузка (Hot-Reload)**: Смена серверов и правил без разрыва активных TCP-соединений (Discord, онлайн-игры и стримы не прерываются).
* **Восстановление WAN и шлюзов**: Мониторинг сетевых интерфейсов и авто-поднятие при сбоях провайдера.
**Atomic-операции и целостность данных:**
* **Атомарное восстановление UCI**: Все изменения конфигурации записываются через промежуточный бэкап — при сбое во время записи система восстанавливает предыдущее рабочее состояние.
* **Валидация бэкапов**: Перед восстановлением конфигурации бэкап проверяется на целостность и валидность — повреждённые бэкапы отбрасываются.
* **Атомарная запись JSON**: Генератор sing-box, кэш подписок, diagnostics и runtime пишут конфиги через `tmp` + `mv`, исключая повреждение при аварийном завершении.
---
**Защита от restart-loop:**
* **Cooldown прокси**: Максимум 3 перезапуска прокси за 10 минут (`safe_proxy_restart()`). При превышении лимита перезапуски приостанавливаются и отправляется уведомление.
* **Lock перезапуска**: Мьютекс `PROXY_RESTART_LOCK` предотвращает параллельные перезапуски sing-box из разных потоков.
* **Cooldown DNS-петли**: При зацикливании DNS-запросов автоматическое переключение приостанавливается на 5 минут для стабилизации.
### 🖥️ 5. Современный Web-интерфейс LuCI (TypeScript)
* Полная интеграция в штатный Web-интерфейс OpenWrt.
* **Интерактивный дашборд**: Графика задержек, управление подписками, правилами и компонентами в несколько кликов.
* **Динамические ссылки на репозитории**: Карточки компонентов ведут прямо на GitHub установленного варианта (extended, lx, stable).
* **Commit-level отслеживание обновлений**: Оповещения о свежих коммитах в рамках текущего релиза.
**Корректность данных:**
* **Валидация пустых секций**: Проверяется наличие реальных данных в секциях `domain`, `domain_suffix`, `ip_cidr` — пустые секции не записываются в конфиг.
* **Правильное чтение конфига**: Исправлена ошибка чтения секции `"network"` вместо `CONFIG_NAME`.
* **Исправление nslookup**: Совместимость с BusyBox — корректная работа `nslookup -type=A` и `-port=53`.
---
**Telegram-бот и уведомления:**
* **Rate limit уведомлений**: Максимум 10 Telegram-уведомлений за 5 минут, предотвращение спама при массовых сбоях.
* **Атомарное восстановление конфига Telegram**: Конфиг бота восстанавливается через `cp` в tmp, затем `mv` — исключая повреждение при сбое.
* **Персистентные пути**: Бэкапы и staging-файлы хранятся в `/etc/.tachyon/` — сохраняются между перезагрузками.
## 🛠️ Справочник консоли (CLI & API Quick Reference)
**Firewall и nftables:**
* **Фоновый reload**: Перезагрузка файрвола выполняется в фоновом режиме (`reload_firewall &`), не блокируя основной поток watchdog.
* **Проверка таблиц nftables**: Операции с nftables выполняются только после подтверждения существования таблицы.
* **Дедупликация reload**: Исключены повторные вызовы `reload_firewall` из разных модулей.
```bash
# === Системная диагностика ===
tachyon doctor # Запуск локальной диагностики без LLM
tachyon ai_doctor # Запуск анализа AI Doctor (с LLM)
tachyon ai_doctor_last # Просмотр последнего сохранённого отчёта ИИ
tachyon apply_quick_fix clear_dns_cache # Применение выбранного кода исправления
tachyon diagnose_json # Вывод полного снимка в формате JSON
**Wan-monitor и маршрутизация:**
* **Rate limit уведомлений wan-monitor**: cooldown 60 секунд между уведомлениями о проблемах с WAN.
* **Объединённое восстановление**: Единая функция для восстановления и WAN, и шлюзовых маршрутов — исключает гонки при параллельном восстановлении.
* **Очистка orphan-конфигов**: Автоматическое удаление временных конфигов, оставшихся от прерванных запусков.
# === Управление службами и Watchdog ===
tachyon ai_heal # Принудительный цикл самовосстановления
tachyon ai_status # Краткий статус Watchdog
tachyon ai_status_full # Расширенные метрики Watchdog
### 🖥️ Современный Web-интерфейс (LuCI)
* Полная интеграция в стандартную панель управления OpenWrt.
* Наглядный дашборд: мониторинг задержек, управление подписками, списками правил и компонентами в несколько кликов.
* **Динамические ссылки на репозитории**: Глобус в карточке компонента ведёт на репозиторий установленного варианта (extended → `shtorm-7/sing-box-extended`, lx → `Leadaxe/sing-box-lx`, стабильный → `SagerNet/sing-box`).
* **Commit-level отслеживание обновлений**: Интерфейс обновлений показывает «Доступно обновление текущего релиза» когда в рамках того же тега (например, 1.2.57) доступен более свежий коммит.
# === Проверка HTTP REST API ===
curl http://192.168.1.1/cgi-bin/tachyon-agent/health
curl http://192.168.1.1/cgi-bin/tachyon-agent/openapi.json
```
---
## 💻 Установка
Для установки Tachyon выполните следующую команду в консоли (SSH) вашего роутера:
Для установки Tachyon выполните следующую команду в SSH-консоли вашего роутера:
```bash
sh <(wget -O - https://raw.githubusercontent.com/Dushnilin/tachyon/main/install.sh)
```
> [!NOTE]
> **Автоматическая миграция:** Конфигурации от **Forkop**, **Podkop Plus** и оригинального **Podkop** полностью совместимы. Скрипт установки автоматически перенесет ваши правила и настройки в `/etc/config/tachyon` без потери данных.
> **Автоматическая миграция:** Конфигурации от **Forkop**, **Podkop Plus** и оригинального **Podkop** полностью совместимы. Инсталлятор автоматически перенесет ваши правила в `/etc/config/tachyon` без потери данных.
---
## 🤝 Оригинальные проекты и благодарности
Tachyon развивается благодаря сообществу и опирается на фундаментальные разработки:
Tachyon опирается на фундаментальные разработки открытого сообщества:
* 🍴 **[Forkop (ushan0v)](https://github.com/ushan0v/forkop)** — прямой родительский проект (ранее Podkop Plus).
* 🐕 **[Podkop (itdoginfo)](https://github.com/itdoginfo/podkop)** — оригинальный проект, заложивший основу архитектуры.
* 📦 **[sing-box](https://github.com/SagerNet/sing-box)** — универсальный прокси-платформа.
* 📦 **[sing-box](https://github.com/SagerNet/sing-box)** — универсальная прокси-платформа.
* 🚀 **[zapret (bol-van)](https://github.com/bol-van/zapret2)** — средства локального обхода DPI (`nfqws` / `nfqws2`).
* 🌐 **[ByeDPI](https://github.com/hrbrmstr/byedpi)** — локальный SOCKS-прокси для десинка пакетов.
@@ -136,7 +128,7 @@ Tachyon развивается благодаря сообществу и опи
## 💖 Поддержать разработку
Если Tachyon помогает вам и делает работу в сети комфортной, вы можете поддержать проект и автора — на кофе, серверы и вдохновение! ☕ 🧀 🌭
Если Tachyon помогает вам и делает работу в сети комфортной, вы можете поддержать проект и автора! ☕ 🧀 🌭
💳 **Карты РФ / СБП / Tinkoff Pay:**
👉 [**Поддержать проект на CloudTips**](https://pay.cloudtips.ru/p/48c57581)