- /rag/commands/expert.py - /core/services/__init__.py - /core/services/embedding_service.py - /core/services/file_service.py - /core/services/giga_client.py - /core/services/kb_service.py - /core/services/postgres_service.py - /core/services/qdrant_service.py - /core/services/reranker_service.py - /core/functions/__init__.py - /core/functions/check_consistency.py - /core/functions/check_spelling.py - /core/functions/critique_answer.py - /core/functions/expand_query.py - /core/functions/extract_metrics.py - /core/functions/file_processor.py - /core/functions/generate_document.py - /core/functions/intent_classify.py - /core/functions/rerank_context.py - /core/functions/summarize_document.py - /core/utils/__init__.py - /core/utils/arg_parser.py - /core/utils/config_loader.py - /core/utils/layout_converter.py - /core/utils/logger.py - /core/utils/text_utils.py - /core/utils/web_utils.py - /bots/commands/__init__.py - /bots/commands/base.py - /bots/commands/create.py - /core/commands/global_remove.py - /core/commands/help.py - /core/commands/info.py - /core/commands/kb.py - /core/commands/learn.py - /core/commands/other.py - /core/commands/registry.py - /core/commands/stats.py - /core/commands/template.py - /core/handlers/__init__.py - /core/handlers/message_handler.py - /core/workers/__init__.py - /core/workers/indexing_worker.py - /core/xmpp/__init__.py - /core/xmpp/client.py - /bots/commands/global_remove.py - /bots/commands/help.py - /bots/commands/info.py - /bots/commands/kb.py - /bots/commands/registry.py - /bots/commands/other.py - /bots/commands/template.py - /bots/commands/learn.py - /bots/commands/stats.py - /bots/handlers/message_handler.py - /bots/handlers/__init__.py - /bots/workers/__init__.py - /bots/workers/indexing_worker.py - /bots/xmpp/__init__.py - /bots/xmpp/client.py - /rag/services/qdrant_service.py - /rag/services/giga_client.py - /rag/services/embedding_service.py - /rag/services/reranker_service.py - /rag/services/__init__.py - /rag/services/file_service.py - /rag/services/postgres_service.py - /rag/services/kb_service.py - /rag/functions/check_spelling.py - /rag/functions/__init__.py - /rag/functions/extract_metrics.py - /rag/functions/generate_document.py - /rag/functions/expand_query.py - /rag/functions/critique_answer.py - /rag/functions/file_processor.py - /rag/functions/check_consistency.py - /rag/functions/summarize_document.py - /rag/functions/rerank_context.py - /rag/functions/intent_classify.py - /rag/utils/__init__.py - /rag/utils/layout_converter.py - /rag/utils/text_utils.py - /rag/utils/arg_parser.py - /rag/utils/config_loader.py - /rag/utils/logger.py - /rag/utils/web_utils.py
51 lines
2.9 KiB
Python
51 lines
2.9 KiB
Python
# -*- 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`" |