fix: unify tool naming (ddgs_tool, rss_tool, ssh_tool, cron_tool)

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
This commit is contained in:
mirivlad 2026-02-25 12:13:38 +08:00
parent 1dc40507c6
commit 09867ef558
7 changed files with 23 additions and 23 deletions

View File

@ -89,10 +89,10 @@
| Инструмент | Назначение | Триггеры |
|------------|------------|----------|
| `ddgs_search` | Поиск в интернете | "найди", "поиск", "узнай", "как сделать" |
| `rss_reader` | Чтение RSS лент | "новости", "почитай", "лента", "IT новости" |
| `ssh_executor` | SSH-команды | "проверь сервер", "выполни команду", "uptime" |
| `cron_manager` | Задачи по расписанию | "напомни", "запланируй", "каждый день" |
| `ddgs_tool` | Поиск в интернете | "найди", "поиск", "узнай", "как сделать" |
| `rss_tool` | Чтение RSS лент | "новости", "почитай", "лента", "IT новости" |
| `ssh_tool` | SSH-команды | "проверь сервер", "выполни команду", "uptime" |
| `cron_tool` | Задачи по расписанию | "напомни", "запланируй", "каждый день" |
---

View File

@ -25,10 +25,10 @@ bot/
from bot.tools import tools_registry
# Получить инструмент
tool = tools_registry.get('ddgs_search')
tool = tools_registry.get('ddgs_tool')
# Выполнить инструмент
result = await tools_registry.execute_tool('ddgs_search', query='python tutorial', max_results=5)
result = await tools_registry.execute_tool('ddgs_tool', query='python tutorial', max_results=5)
```
### 2. AI Агент
@ -56,14 +56,14 @@ if decision.should_use_tool:
## 📦 Доступные инструменты
### 🔍 DDGS Search (`ddgs_search`)
### 🔍 DDGS Search (`ddgs_tool`)
Поиск информации в интернете через DuckDuckGo.
**Использование:**
```python
result = await tools_registry.execute_tool(
'ddgs_search',
'ddgs_tool',
query='python async await',
max_results=10
)
@ -84,7 +84,7 @@ result = await tools_registry.execute_tool(
Rust is a programming language ...
```
### 📰 RSS Reader (`rss_reader`)
### 📰 RSS Reader (`rss_tool`)
Чтение RSS/Atom новостных лент.
@ -102,7 +102,7 @@ result = await tools_registry.execute_tool(
```python
# Получить новости
result = await tools_registry.execute_tool(
'rss_reader',
'rss_tool',
action='list',
limit=10,
undigested_only=True
@ -110,7 +110,7 @@ result = await tools_registry.execute_tool(
# Добавить ленту
result = await tools_registry.execute_tool(
'rss_reader',
'rss_tool',
action='add_feed',
url='https://lwn.net/headlines/newrss',
title='LWN.net'
@ -132,14 +132,14 @@ result = await tools_registry.execute_tool(
🔗 https://...
```
### 🖥️ SSH Executor (`ssh_executor`)
### 🖥️ SSH Executor (`ssh_tool`)
Выполнение команд на удалённых серверах по SSH.
**Использование:**
```python
result = await tools_registry.execute_tool(
'ssh_executor',
'ssh_tool',
command='uptime',
server='home',
timeout=30
@ -179,7 +179,7 @@ servers = {
**Успешно**
```
### ⏰ Cron Manager (`cron_manager`)
### ⏰ Cron Manager (`cron_tool`)
Управление периодическими задачами пользователя.
@ -203,7 +203,7 @@ servers = {
```python
# Добавить задачу
result = await tools_registry.execute_tool(
'cron_manager',
'cron_tool',
action='add',
name='Daily Backup',
command='/home/user/backup.sh',

View File

@ -197,7 +197,7 @@ class AIAgent:
if should_ssh and ssh_conf > 0.75:
return AgentDecision(
should_use_tool=True,
tool_name='ssh_executor',
tool_name='ssh_tool',
tool_args={'command': self._extract_ssh_command(message)},
confidence=ssh_conf,
reasoning='Пользователю нужно выполнить команду на сервере'
@ -208,7 +208,7 @@ class AIAgent:
if should_cron and cron_conf > 0.75:
return AgentDecision(
should_use_tool=True,
tool_name='cron_manager',
tool_name='cron_tool',
tool_args={'action': 'list'}, # Показываем список задач
confidence=cron_conf,
reasoning='Пользователь хочет создать или управлять задачей'
@ -220,7 +220,7 @@ class AIAgent:
query = self._extract_search_query(message)
return AgentDecision(
should_use_tool=True,
tool_name='ddgs_search',
tool_name='ddgs_tool',
tool_args={'query': query, 'max_results': 5},
confidence=search_conf,
reasoning='Пользователю нужна информация из интернета'
@ -231,7 +231,7 @@ class AIAgent:
if should_rss and rss_conf > 0.7:
return AgentDecision(
should_use_tool=True,
tool_name='rss_reader',
tool_name='rss_tool',
tool_args={'action': 'list', 'limit': 10, 'undigested_only': True},
confidence=rss_conf,
reasoning='Пользователь хочет прочитать новости из лент'

View File

@ -34,7 +34,7 @@ class CronJob:
class CronTool(BaseTool):
"""Инструмент для управления задачами пользователя."""
name = "cron_manager"
name = "cron_tool"
description = "Управление периодическими задачами пользователя. Создание, планирование и выполнение задач по расписанию."
category = "automation"

View File

@ -20,7 +20,7 @@ logger = logging.getLogger(__name__)
class DDGSTool(BaseTool):
"""Инструмент поиска через DuckDuckGo."""
name = "ddgs_search"
name = "ddgs_tool"
description = "Поиск информации в интернете через DuckDuckGo. Используется когда нужны свежие данные, новости, факты."
category = "search"

View File

@ -26,7 +26,7 @@ logger = logging.getLogger(__name__)
class RSSTool(BaseTool):
"""Инструмент для работы с RSS лентами."""
name = "rss_reader"
name = "rss_tool"
description = "Чтение RSS/Atom новостных лент. Управление подписками, получение новостей, дайджесты."
category = "news"

View File

@ -32,7 +32,7 @@ class ServerConfig:
class SSHExecutorTool(BaseTool):
"""Инструмент для выполнения SSH-команд."""
name = "ssh_executor"
name = "ssh_tool"
description = "Выполнение команд на удалённых серверах по SSH. Используется для системных задач: мониторинг, управление сервисами, просмотр логов."
category = "system"