Автономный Telegram бот для поиска заказов, написания кода и личного общения.
- MainAgent (UserBot): Личность бота, имитирующая человеческое поведение в Telegram
- TelegramBotAgent (Official Bot): Публичный бот с командами и inline кнопками
- HustlerAgent: Автоматический поиск и отклик на заказы
- CoderAgent: Написание и рефакторинг кода
- Hot-Swap Engine: Горячая перезагрузка модулей без разрыва сессии
- ValidatorLLM: Валидация команд для безопасности
- Vector Memory: Хранение успешных решений для RAG
- Работает от имени вашего аккаунта
- Мониторинг чатов для поиска заказов
- Имитация человеческого поведения
- Требует api_id и api_hash
- Публичный бот через @BotFather
- Команды: /start, /help, /code, /status, /stats
- Inline кнопки и FSM
- Интеграция с CoderAgent
Можно использовать оба одновременно или по отдельности.
- Установите зависимости:
pip install -r requirements.txt- Установите Playwright (для BrowserTool):
playwright install chromium- Настройте конфигурацию:
# Отредактируйте config/config.yaml
nano config/config.yaml- Получите API credentials:
- Для UserBot: https://my.telegram.org (api_id и api_hash)
- Для Official Bot: @BotFather (bot token)
- Подробнее в
BOT_SETUP.md
Основная конфигурация в config/config.yaml:
telegram.userbot: Настройки UserBot (Pyrogram)telegram.bot: Настройки Official Bot (aiogram)llm: Настройки основной LLM моделиvalidator_llm: Настройки LLM для валидации командhustler: Настройки мониторинга заказовcoder: Настройки рабочего пространстваvalidator: Настройки безопасностиbehavior: Параметры имитации человеческого поведения
python3 main.py# Скопируйте service файл
sudo cp voidagent.service /etc/systemd/system/
# Перезагрузите systemd
sudo systemctl daemon-reload
# Включите автозапуск
sudo systemctl enable voidagent
# Запустите сервис
sudo systemctl start voidagent
# Проверьте статус
sudo systemctl status voidagent
# Просмотр логов
sudo journalctl -u voidagent -fVoidAgent/
├── main.py # Точка входа
├── config/
│ ├── config.yaml # Основная конфигурация
│ └── .env.example # Пример переменных окружения
├── src/
│ ├── agents/ # Агенты системы
│ │ ├── base_agent.py
│ │ ├── main_agent.py # UserBot
│ │ ├── telegram_bot_agent.py # Official Bot
│ │ ├── hustler_agent.py
│ │ └── coder_agent.py
│ ├── core/ # Ядро системы
│ │ ├── hotswap.py
│ │ └── llm_provider.py
│ ├── tools/ # Инструменты
│ │ ├── helpers.py
│ │ └── validator.py
│ └── memory/ # Система памяти
│ ├── state_manager.py
│ └── vector_memory.py
├── prompts/ # Промпты для агентов
│ ├── PERSONA.md
│ └── RULES.md
├── data/ # Данные (создается автоматически)
├── logs/ # Логи (создается автоматически)
├── BOT_SETUP.md # Инструкция по настройке ботов
├── SETUP.md # Детальная инструкция по установке
└── requirements.txt
Система поддерживает горячую перезагрузку модулей:
- Отредактируйте любой файл в
src/илиprompts/ - Сохраните файл
- Модуль автоматически перезагрузится без разрыва Telegram сессии
- Состояние агентов сохраняется и восстанавливается
- Все shell команды проходят через ValidatorLLM
- Опасные команды блокируются автоматически
- Все действия логируются в БД и файл
- Файловые операции ограничены workspace
- Создайте класс, наследующий
BaseAgent - Реализуйте методы:
initialize(),process(),shutdown() - Зарегистрируйте агента в
main.py
- Создайте класс в
src/tools/ - Добавьте валидацию через ValidatorLLM (если нужно)
- Используйте в агентах
MIT