Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
ShunyaNet-Sentinel — ShunyaNet Sentinel — это легковесная программа, которая отслеживает RSS-ленты, отправляет их в LLM для анализа и доставляет сводки или оповещения непосредственно в GUI и Slack. | Kitploit
Инструменты/GitHubGitHub/everythingscomputer/shunyanet-sentinel
OSINT (Разведка открытых источников)Сбор информацииУтилиты и фреймворкиРазведка угрозОбучение и Образование
GitHubeverythingscomputer/shunyanet-sentinel

ShunyaNet-Sentinel

ShunyaNet Sentinel — это легковесная программа, которая отслеживает RSS-ленты, отправляет их в LLM для анализа и доставляет сводки или оповещения непосредственно в GUI и Slack.

Репозиторий

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться
4045 месяцев назадПроверено Kitploit
ShunyaNetSentinelAppGraphicV1

ShunyaNet Sentinel (ОБНОВЛЕНО: 03/02/2026)

ShunyaNet Sentinel — это легковесная программа в киберпанк-стиле, которая загружает RSS-ленты (например, новости, социальные сети), отправляет их в LLM для анализа и доставляет оповещения и сводные отчёты непосредственно в GUI и Slack через заданные интервалы.

Проект создан для использования LLM, размещённой локально на той же машине или в сети (например, через Tailscale) с помощью LMStudio или Ollama (02/23 Обновление). Он также будет работать с ключом API OpenAI (02/23 Обновление).

Для оповещений программа использует вебхуки Slack, что позволяет отправлять push-уведомления на мобильное устройство.

ShunyaNet Sentinel совместим с последними версиями Linux, macOS и Windows*

Качество отчётов и анализа зависит от промпта, размера контекста, RSS-лент и выбранной LLM. Рекомендуется отключать функции «размышления» (thinking). Модели, которые хорошо себя зарекомендовали и в целом следуют инструкциям, включают:

  • GPT OSS 20b (режим мышления установлен на LOW в LMStudio)
  • GPT OSS 120b (возможно, избыточно)
  • Hermes 4 70b (мой выбор по умолчанию)
  • Gemma 3 27b it abliterated (версия mlabonne)
  • Qwen3 32b и/или VL 30b (уже не помню, какая именно...)

*Настоятельно рекомендуется macOS или Linux. См. «Известные проблемы» ниже.

Важную информацию см. в разделе «Советы, хитрости и известные проблемы» в конце!


Высокоуровневый рабочий процесс

  1. Пользователь вводит интересующие темы
  2. Пользователь предоставляет список RSS-лент
  3. Sentinel загружает RSS-ленты с заданным пользователем интервалом времени
  4. Содержимое RSS отправляется на указанный пользователем сервер LLM
  5. LLM анализирует ленты и сообщает Sentinel о релевантных темах
  6. Если настроен вебхук Slack, оповещения пересылаются, и уведомления доступны на iOS/Android (часто с прямыми ссылками на упомянутый RSS-контент)
  7. Опциональный пакетный анализ выявляет тренды с течением времени

Основные возможности

Мониторинг RSS-лент

  • Периодический опрос RSS-лент
  • Дедупликация и отслеживание временных меток
  • Обработка медленных или некорректно сформированных лент (...ещё предстоит доработка)

Анализ на основе LLM (опционально)

  • Отправка элементов RSS-лент на локальную/внешнюю конечную точку LLM
  • Классификация, суммаризация и фильтрация на основе промпта
  • Работает с любым эндпоинтом /v1/chat/completions, совместимым с OpenAI; разработан для LMStudio

Оповещения / Генерация сигналов

  • Поддержка вебхуков Slack (информацию о настройке вебхука см. здесь: https://docs.slack.dev/messaging/sending-messages-using-incoming-webhooks/)
  • Структурированный вывод, подходящий для автоматизации
  • Предназначен для интеграции в более крупные рабочие процессы

Локальность и саморазмещение

  • За исключением опроса RSS-лент или отправки ответов в Slack (опционально), вся информация остаётся на контролируемом вами оборудовании

Требования

  • Python 3.10+
  • Зависимости перечислены в requirements.txt:
    • PySide6==6.10.0
    • feedparser==6.0.12
    • requests==2.31.0
    • python-dateutil==2.9.0.post0

LLM размещается через:

  • LM Studio (рекомендуется)
  • Ollama
  • Ключ API OpenAI
  • (вскоре появятся ещё несколько)

Установка

1. Клонировать репозиторий (...или скачать ZIP) и перейти в папку

root@kitploit:~
git clone https://github.com/EverythingsComputer/ShunyaNet-Sentinel.git
cd ShunyaNet-Sentinel

2. (Настоятельно рекомендуется) Создать виртуальное окружение

macOS / Linux:

root@kitploit:~
python3 -m venv venv
source venv/bin/activate

Windows (PowerShell):

root@kitploit:~
python -m venv venv
venv\Scripts\Activate.ps1

3. Установить зависимости

root@kitploit:~
pip install -r requirements.txt

4. Запустить

macOS / Linux:

root@kitploit:~
python3 ShunyaNet_Sentinel.py

Windows:

root@kitploit:~
python ShunyaNet_Sentinel.py

Быстрый старт (с LMStudio) (ОБНОВЛЕНО 02/23)

  1. Нажмите "Load Prompt File" и загрузите default_prompt.txt
  2. Нажмите "Load Data Source File" и загрузите список RSS Default_test
  3. Откройте "Additional Settings" и введите:
    • LM_PROVIDER = lmstudio
    • LLM_BASE_URL = <IP-АДРЕС ВАШЕГО СЕРВЕРА LMSTUDIO, например: http://x.x.x.x:port/v1>
    • LLM_MODEL = <рекомендую оставить пустым. Просто выполните шаг 4>
    • API_KEY = <оставьте пустым, если не задали ключ для сервера>
  4. Загрузите модель в LM Studio. Включите "Serve on Local Network" в настройках сервера. Советы:
    • В окне "Load Model"/выбора модели включите "Manually choose model load parameters"
    • В окне параметров загрузки модели установите Max Concurrent Predictions в 1 (пока что)
    • На вкладке вывода отключите или минимизируйте "thinking", если доступно.
    • Модель среднего размера, которая хорошо работает: gpt-oss-20b. Режим мышления установлен на "low".
  5. Нажмите на кота! (...или просто нажмите Fetch / Send)

Полная инструкция и конфигурация (ОБНОВЛЕНО 03/02/2026)

  1. Введите интересующие темы или загрузите один из предоставленных списков по умолчанию. В каждый список можно добавить до 10 тем.

  2. Нажмите "Load Prompt File", чтобы загрузить файл промпта. Предоставляется промпт по умолчанию (default_prompt.txt).

    1. Рекомендуется настраивать и дорабатывать этот промпт — это может значительно улучшить качество отчётов и способность LLM выделять сигнал из шума. Здесь огромный простор для кастомизации.
    2. В папке experimental есть файл 'default_prompt-always-reply.txt'. Он устарел, но его можно использовать для отладки/тестирования анализа LLM и проверки того, что она возвращает данные в правильном формате.
    3. ОБНОВЛЕНО 03/02/2026 Также предоставляется промпт 'default_Summary-Report-Only_prompt.txt'. Эта версия не пытается выделить сигнал из шума, а предназначена для суммаризации большего объёма релевантных лент, когда информационное пространство насыщено данными по теме. Таким образом, она более полезна после того, как «событие» уже произошло. Её лучше использовать реже (например, каждые полчаса для быстро меняющегося и широко освещаемого события или каждые несколько часов для события с меньшим объёмом данных) и с большим лимитом токенов для промпта и ответа.
  3. Нажмите "Load Data Source File", чтобы загрузить список RSS. Предоставляются два списка по умолчанию: короткий список "Default_test" и более длинный "Default_long", ориентированный на мировые новости и срочные новости.

    1. Настройка собственных списков под ваш регион или темы интересов существенно повлияет на выходную информацию. Пример списка, ориентированного на регион, который я использовал в недавней поездке, предоставлен ('India_regional_example-v1.txt'). Также включён пример списка по конфликту в Иране.
    2. Reddit и BlueSky легко конвертируются в RSS-ленты. Программы, такие как RSSBridge, также могут генерировать RSS-ленты для сайтов и соцсетей (например, Telegram), у которых их нет.
    3. Список "Default_test" — это короткий список различных RSS-лент. Цель — сделать первый сбор RSS быстрым и коротким, чтобы вы могли диагностировать, все ли компоненты работают правильно.
  4. В "Additional Settings" задайте следующие поля. Они сохранятся и будут действовать после перезапуска программы. Настройки по умолчанию подходят для большинства конфигураций — но вы всё равно должны ввести поле №1 самостоятельно:

  1. Загрузите модель (например, в LMStudio, Ollama) или получите ключ API (например, для OpenAI) по вашему выбору и убедитесь, что её контекстное окно с комфортом превышает значение, которое вы вводите в полях TOKENS_INPUT в ShunyaNet Sentinel. Программа в настоящее время совместима с LMStudio, Ollama и OpenAI (через ключ API). Затем перейдите в "Additional Settings" в ShunyaNet Sentinel и заполните следующие поля соответствующим образом для вашего решения LLM:
LMSTUDIO
  • LLM_PROVIDER = lmstudio
  • LLM_BASE_URL = <URL вашего сервера LMStudio, например: http://localhost:1234/v1>
  • LLM_MODEL = <ОПЦИОНАЛЬНО. Рекомендую оставить пустым и загружать модель непосредственно в LMStudio. Если необходимо, то формат такой: lmstudio-community/mistral-7b-instruct>
  • LLM_API_KEY = <Оставьте пустым, если не используете ключ аутентификации>
OLLAMA
  • LLM_PROVIDER = ollama
  • LLM_BASE_URL = <URL вашего сервера LMStudio, например: http://localhost:11434/v1>
  • LLM_MODEL = llama3
  • LLM_API_KEY = <оставьте пустым>
OPENAI (через КЛЮЧ API)
  • LLM_PROVIDER = openai
  • LLM_BASE_URL = (не важно: это поле игнорируется)
  • LLM_MODEL = gpt-4o-mini
  • LLM_API_KEY = sk-xxxx
  1. Готово! — Теперь нажмите на кота! (...или нажмите "Fetch / Send", или просто подождите количество секунд, которое вы задали в FETCH_INTERVAL)

ПРИМЕЧАНИЕ: Рекомендую для первого запуска всё упростить. Используйте настройки по умолчанию и убедитесь, что всё работает. Затем настройте контекст и RSS-ленты. После этого скорректируйте промпт. Мне было бы интересно посмотреть на улучшенные промпты от пользователей….


Советы, хитрости и известные проблемы

Проблемы/Предупреждения:

  • Sentinel самопроизвольно завершает работу в Windows 11 через несколько часов. Причина неизвестна. Ошибки не выводятся. На Mac или Linux такой проблемы нет — возможно, ваша система будет работать иначе! Если вы столкнулись с этой проблемой и вам обязательно нужно использовать Windows, рекомендую настроить виртуальную машину с Linux/Ubuntu (или предложите лучшее решение, если у вас есть). Примечание: эта программа отлично работает на Raspberry Pi!
  • Неправильный выбор конфигурации может перегрузить вашу LLM или оборудование. Убедитесь, что ваша LLM может надёжно обрабатывать и отвечать быстрее, чем интервал сбора RSS.
  • LMStudio недавно реализовала возможность («parallel») для LLM принимать и обрабатывать более одного промпта одновременно. Отключите эту функцию, пока не протестируете её с этим приложением, иначе могут возникнуть ошибки тайм-аута и бесконечная очередь обработки промптов.
  • Иногда при закрытии приложения на macOS (возможно, и на Linux) выдаётся сообщение об ошибке. Это, по-видимому, не влияет на работу или стабильность программы. Я исправил это один раз, но проблема вернулась. Исправлю снова …когда-нибудь.
  • Медленный URL или URL с ошибкой 404 может замедлить сбор ленты, поэтому время от времени проверяйте логи, чтобы удалять такие ссылки. В списки RSS по умолчанию включены несколько таких, но это управляемо.

Советы:

  • Первый fetch/send — это стресс-тест: он извлекает максимальный объём лент для ваших настроек и, скорее всего, содержит устаревшую информацию. Тем не менее, это хороший способ проверить, всё ли работает, понять максимальное время обработки промпта и получить представление о том, как будут работать ваш промпт, список RSS и список тем.
  • Некоторые «думающие» модели выдают некорректные ответы или зацикливаются. Рекомендую сначала отключить «thinking». Режим "thinking set to low" отлично работает для GPT OSS.
  • Существуют различные уловки для трансляции лент, которые по умолчанию не имеют RSS (например, обратите внимание на RSSBridge). Кроме того, некоторые социальные сайты можно автоматически преобразовать в RSS-ленты (например, добавив .rss к URL Reddit или /RSS к URL профиля BlueSky).
  • Некоторые сайты, в частности Reddit, ограничивают частоту запросов к RSS. Чтобы минимизировать эту проблему, настоятельно рекомендую перемешать порядок вашего списка RSS URL, чтобы не обращаться к одному и тому же сайту слишком часто.

Статус

Альфа


Лицензия

Этот проект лицензирован по Apache 2.0.

Авторство: ShunyaNet / EverythingsComputer

Без гарантий: Программа предоставляется «как есть», без каких-либо гарантий, явных или подразумеваемых.

Зависимости

Этот проект использует следующие сторонние библиотеки. Пожалуйста, ознакомьтесь с их лицензиями при использовании, распространении и/или изменении этого проекта:

  • PySide6 — LGPL
  • feedparser — BSD
  • requests — Apache 2.0
  • python-dateutil — BSD

Происхождение названия

Мой кот.

Скачать инструмент
НастройкаОписаниеПо умолчаниюПример / Примечания
LLM_PROVIDERСМ. СЛЕДУЮЩИЙ ШАГ——
LLM_BASE_URLСМ. СЛЕДУЮЩИЙ ШАГ——
LLM_MODELСМ. СЛЕДУЮЩИЙ ШАГ——
LLM_API_KEYСМ. СЛЕДУЮЩИЙ ШАГ——
SLACK_WEBHOOK_URLОпциональный URL вебхука Slack для отправки оповещений.Опциональноhttps://hooks.slack.com/services/...
MAX_INPUT_TOKENSМаксимальное количество токенов, отправляемых в LLM за один сбор RSS. Эмпирическое правило: 1 токен ≈ 4 символа. Если превышает размер контекста модели, включите режим разбиения на части.4000Увеличивайте осторожно, в зависимости от контекстного окна вашей LLM.
MAX_OUTPUT_TOKENSМаксимальное количество токенов, которое LLM может вернуть в ответе. (примечание: это максимум/потолок, а не цель!)4000Рекомендую не менять. 4000, честно говоря, вероятно, избыточный запас.
MAX_INPUT_TOKENS_BULKМаксимальная длина токенов RSS-лент, отправляемых в LLM для пакетной обработки. Когда пакетная обработка включена, RSS-ленты сохраняются и отправляются вместе со специальным промптом для анализа трендов (пока что жёстко прописанным). Разбиение на части для этого не используется, поэтому не превышайте лимит контекста.4000Вероятно, потребуется увеличить для осмысленных пакетных отчётов. Может нагрузить VRAM и лимиты контекста. Рекомендуется сначала отключить пакетный режим.
MAX_OUTPUT_TOKENS_BULKМаксимальная длина токенов самого пакетного отчёта.4000Может потребоваться увеличить для осмысленных пакетных отчётов. Может нагрузить VRAM и лимиты контекста. Рекомендуется сначала отключить пакетный режим.
FETCH_INTERVALВремя в секундах между сбором RSS и анализом LLM.600 (сек., т.е. 10 мин)Не устанавливайте меньше общего времени обработки, иначе может возникнуть отставание.
ITEMS_PER_FEEDМаксимальное количество записей RSS, получаемых из одного канала за цикл. Ранее полученные элементы игнорируются.50Большие значения приводят к большему первому сбору. Большинство RSS-каналов выдают не более 20 новых элементов за 10 минут, некоторые — намного меньше.
USE_CHUNKED_MODEВключает автоматическое разбиение RSS-контента, если он превышает лимит токенов. 1 = Вкл, 0 = Выкл.1Предотвращает переполнение контекста, но может дублировать события между частями.
CHUNK_SIZEРазмер каждой части в символах (не токенах).8000Примерное преобразование: 4 символа ≈ 1 токен. ПОВТОРЯЮ: ЭТО В СИМВОЛАХ. Должно ли быть в токенах? Вероятно! Но пока так.
WRITE_TO_FILEОпционально. Записывает весь полученный RSS-контент в постоянно пополняемый файл для внешнего бенчмаркинга, тестирования промптов или сравнения моделей. Не влияет на основную функциональность Sentinel. 1 = Вкл, 0 = Выкл.0Полезно для автономного тестирования и оценки LLM.
ANALYSIS_WINDOWВременной интервал для каждого пакетного отчёта.3600 (сек., т.е. 1ч)Используется только при включённой пакетной обработке.
BULK_ANALYSISВключает периодические пакетные отчёты о трендах RSS. 1 = Вкл, 0 = Выкл. Очень экспериментально по сравнению с рутинными отчётами. Специальный промпт пока жёстко прописан.0Отправляет накопленные RSS-ленты в LLM для единого отчёта о трендах. Может значительно увеличить нагрузку на обработку.