Skip to content
This repository was archived by the owner on May 29, 2026. It is now read-only.

Latest commit

 

History

105 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ComfyBot

Telegram-бот для генерации изображений через ComfyUI.

Проект даёт удобный интерактивный редактор промптов, работу с пресетами, скачивание моделей из CivitAI/HuggingFace и Smart Prompt на базе TIPO.

Возможности

  • Интерактивный /generate с полным редактором параметров (checkpoint, LoRA, sampler/scheduler, seed, size, batch, denoise и т.д.).
  • Режимы интерфейса: простой и про.
  • Референс-картинки (IP-Adapter, если доступен, или fallback в img2img).
  • Улучшения пайплайна: Hi-res Fix, FreeU, PAG, Upscale.
  • Smart Prompt (TIPO) с преобразованием естественного языка в теговые Positive/Negative.
  • Обмен промптами между пользователями: экспорт/импорт полного набора параметров редактора (код обмена).
  • Пресеты пользователя: сохранить, загрузить, перезаписать, удалить.
  • Runtime-сессии между перезапусками бота (восстановление /repeat, активного редактора и режима UI).
  • Поиск и скачивание моделей прямо из бота (/download) с фильтрами и прогрессом.
  • Постраничный поиск моделей: 5/8/10 результатов на страницу, подгрузка и навигация по страницам.
  • Фильтры CivitAI: base model, автор(ы), профили поиска (популярные/новые/рейтинг/anime).
  • Мониторинг очереди ComfyUI (/queue) и обновление списка моделей (/models).
  • Интерактивные настройки сервиса: дефолты генерации и дефолтные фильтры поиска моделей.
  • Локализация интерфейса (RU/EN) с динамической загрузкой переводов из JSON + metadata.
  • Whitelist-доступ по Telegram ID.

Быстрый старт

  1. Поднимите ComfyUI и убедитесь, что API доступен.
  2. Установите Python 3.10+.
  3. Установите зависимости:
pip install -r requirements.txt
  1. Создайте .env из примера и заполните обязательные параметры:
cp .env.example .env

Windows PowerShell:

Copy-Item .env.example .env

Минимально нужно заполнить:

  • TELEGRAM_BOT_TOKEN
  • COMFYUI_URL
  • ALLOWED_USERS (рекомендуется для приватного доступа)
  1. Запустите бота:
python bot.py
  1. В Telegram напишите боту /start и используйте кнопочное меню.

Подробная установка: docs/SETUP.md

Проверки качества (для разработки)

pip install -r requirements-dev.txt
python -m ruff check .
python -m ruff format --check .
python -m pytest -q tests/test_ui_text_localization_bridge.py tests/test_handler_registry_bridge.py
python -m pytest -q tests/test_ui_text_guardrails.py
python tools/i18n/locale_maintenance.py --project-root . audit --strict
python -m mypy
python -m pytest -q

Навигация

Основной сценарий — кнопочный:

  • 🎨 Генерация → новая генерация, повтор, пресеты.
  • 📦 Модели → скачивание, обновление списка, удаление локальной модели.
  • ⚙️ Сервис → очередь, настройки, обучение.
  • 🛑 Отмена → остановка активной операции.

Команды (алиасы)

  • /start, /help — открыть главное меню.
  • /generate — новая генерация через редактор.
  • /repeat — повтор последней генерации (с новым случайным seed).
  • /presets — библиотека пресетов пользователя.
  • /download — поиск/скачивание моделей.
  • /models — обновить и показать модели, видимые ComfyUI.
  • /queue — статус очереди ComfyUI.
  • /settings — текущие дефолтные настройки.
  • /training — многостраничное обучение с простым и расширенным режимом.
  • /cancel — отменить текущую операцию (генерацию, скачивание, ввод).

Подробный гайд: docs/COMMANDS.md

Документация

  • docs/SETUP.md — установка и первый запуск.
  • docs/CONFIG.md — все переменные окружения и примеры.
  • docs/COMMANDS.md — сценарии работы в Telegram.
  • docs/TRAINING.md — обучение для начинающих: от первого запуска до стабильного результата.
  • docs/CHANGELOG.md — итоговый changelog крупных изменений.
  • docs/ARCHITECTURE.md — устройство проекта, поток данных, зоны ответственности.
  • docs/REFACTOR_GUARDRAILS.md — протокол безопасного поэтапного рефакторинга.
  • docs/LOCALIZATION.md — структура переводов и добавление новых языков без правки ядра.
  • docs/HANDLER_PLUGINS.md — контракт handler-плагинов и добавление новых handler-блоков без правки registry.
  • docs/PROVIDER_WORKFLOW_EXTENSIONS.md — расширение источников моделей и workflow-нод без модификации ядра.
  • docs/TROUBLESHOOTING.md — типовые проблемы и решения.
  • SECURITY.md — правила безопасной публикации и работы с секретами.
  • CONTRIBUTING.md — рекомендации по развитию проекта.

Структура проекта

bot.py                                # Точка входа
bot_core.py                           # Совместимый facade для core/*
bootstrap/
  app_context.py                      # Сборка зависимостей и lifecycle приложения
core/
  config.py                           # Конфиг из .env
  ...                                 # Shared runtime, UI, storage, helpers
application/
  model_downloader.py                 # Поиск/скачивание моделей и метаданные
  model_source_provider_loader.py     # Dynamic loader для источников моделей
  model_source_providers.py           # Контракты/registry провайдеров источников
  model_source_plugins/               # Built-in source provider plugins
  smart_prompt_service.py             # Локальная интеграция TIPO для Smart Prompt
infrastructure/
  comfyui_client.py                   # Клиент ComfyUI API и сборка workflow
handlers/
  registry.py            # Plugin-first регистрация обработчиков
  plugins/               # Встроенные handler plugins (builtin)
  common.py              # /start, /help, /models, /queue, /settings, /cancel
  prompt_editor.py       # Оркестрация редактора генерации
  prompt_editor_ui.py    # Клавиатуры/базовые UI-блоки редактора
  prompt_editor_smart.py # Smart Prompt helper-функции
  prompt_editor_lora.py  # LoRA helper-функции и меню
  prompt_editor_references.py # Работа с референсами и меню
  prompt_editor_send.py  # Отправка результатов генерации
  presets.py             # Пресеты пользователя
  download.py            # Диалог скачивания моделей
plugins/                              # Plugin kernel (contracts/loader)
tools/
  i18n/                  # Служебные i18n-утилиты
  manual/                # Ручные скрипты и проверки
presets/                 # Локальные пресеты пользователей (runtime)
sessions/                # Снимок runtime-сессий между перезапусками

Безопасность и публикация

  • Файл .env и пользовательские runtime-данные исключены через .gitignore.
  • Не публикуйте токены Telegram/CivitAI/HuggingFace.
  • Перед публичным релизом рекомендуется сделать ротацию ключей.

Подробно: SECURITY.md

Лицензия

Лицензия в репозиторий пока не добавлена. Перед публичной публикацией выберите и добавьте подходящий файл LICENSE.

About

Telegram-бот для ComfyUI: генерация изображений, Smart Prompt, пресеты и скачивание моделей.

Resources

Contributing

Security policy

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages