Add new file
This commit is contained in:
51
core/commands/info.py
Normal file
51
core/commands/info.py
Normal file
@@ -0,0 +1,51 @@
|
|||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
"""
|
||||||
|
Команда !info – показывает краткую справку по всем командам бота.
|
||||||
|
Не зависит от комнаты – всегда одна и та же.
|
||||||
|
"""
|
||||||
|
|
||||||
|
import logging
|
||||||
|
from core.commands.base import Command
|
||||||
|
|
||||||
|
logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
|
||||||
|
class InfoCommand(Command):
|
||||||
|
name = "!info"
|
||||||
|
aliases = ["/info", "!справка_краткая"]
|
||||||
|
|
||||||
|
async def execute(self, msg, args: str, user_jid: str, room_jid: str = None):
|
||||||
|
"""
|
||||||
|
Отправляет пользователю краткую справку.
|
||||||
|
Параметр room_jid игнорируется.
|
||||||
|
"""
|
||||||
|
help_text = (
|
||||||
|
"📚 **Управление знаниями:**\n"
|
||||||
|
"!learn [--global] [--title \"Название\"] – включить обучение (следующий файл/текст/ссылка добавятся в БЗ)\n"
|
||||||
|
"!stop_learn – выключить обучение\n"
|
||||||
|
"!clear – очистить ЛИЧНУЮ БЗ (в группе – БЗ комнаты)\n"
|
||||||
|
"!global_clear – очистить ГЛОБАЛЬНУЮ БЗ (админ)\n"
|
||||||
|
"!global_remove \"Название\" – удалить глобальный документ по названию (админ)\n"
|
||||||
|
"!kb – полный список документов в БЗ (личные и глобальные; в группе – документы комнаты)\n"
|
||||||
|
"!reset – сбросить историю диалога\n\n"
|
||||||
|
"💬 **Диалог:**\n"
|
||||||
|
"!stats – статистика работы бота (админ)\n"
|
||||||
|
"!status – статус сервисов (админ)\n"
|
||||||
|
"!clean – очистить временные файлы (админ)\n\n"
|
||||||
|
"🔬 **Экспертные команды:**\n"
|
||||||
|
"!summary – суммаризация последнего документа\n"
|
||||||
|
"!metrics – извлечь KPI из всей базы знаний (кэш 5 мин)\n\n"
|
||||||
|
"🌐 **Обучение по ссылкам (в режиме `!learn`):**\n"
|
||||||
|
"https://example.com [--recursive] [--depth N] [--max M] – рекурсивная загрузка сайта\n\n"
|
||||||
|
"❓ **Справка:**\n"
|
||||||
|
"!help – подробный список команд с синтаксисом\n"
|
||||||
|
"!help команда – справка по конкретной команде"
|
||||||
|
)
|
||||||
|
reply = msg.reply(help_text)
|
||||||
|
if reply:
|
||||||
|
reply.send() # <-- УБРАЛИ await
|
||||||
|
else:
|
||||||
|
logger.error("Не удалось отправить справку info")
|
||||||
|
|
||||||
|
def get_help(self) -> str:
|
||||||
|
return "Показывает краткую справку. Использование: `!info`"
|
||||||
Reference in New Issue
Block a user