🚀 Auto-deploy: BotVPS atualizado em 01/05/2026 21:16:46
This commit is contained in:
11
ai_agent.py
11
ai_agent.py
@@ -3,8 +3,7 @@ import re
|
||||
import httpx
|
||||
import asyncio
|
||||
import json
|
||||
from tools import AVAILABLE_TOOLS as TOOLS_LEGACY
|
||||
from tools_v2 import TOOLS_V2 as TOOLS_NEW
|
||||
from core_tools import AVAILABLE_TOOLS
|
||||
from llm_providers import call_llm, get_available_models, get_planner_llm
|
||||
from config import get_config
|
||||
|
||||
@@ -27,9 +26,8 @@ def query_agent(prompt: str, override_provider=None, chat_history=None) -> str:
|
||||
async def query_agent_async(prompt: str, override_provider=None, chat_history=None) -> str:
|
||||
cfg = get_config()
|
||||
provider = override_provider or cfg.get("active_provider", "openrouter")
|
||||
# Unifica ferramentas legadas e novas
|
||||
ALL_TOOLS = {**TOOLS_LEGACY, **TOOLS_NEW}
|
||||
tools_desc = "\n".join([f"- {k}: {v.get('description') or v.get('desc')}" for k, v in ALL_TOOLS.items()])
|
||||
# Unifica ferramentas (agora centralizadas em core_tools)
|
||||
tools_desc = "\n".join([f"- {k}: {v.get('description', '')}" for k, v in AVAILABLE_TOOLS.items()])
|
||||
|
||||
# Identifica o modelo para o prompt do sistema
|
||||
current_model = cfg.get("model") or "nvidia/nemotron-3-nano-omni-30b-a3b-reasoning:free"
|
||||
@@ -59,6 +57,7 @@ DIRETRIZES:
|
||||
{tools_desc}
|
||||
|
||||
### REGRAS DE OURO:
|
||||
- DELEGAÇÃO AO HERMES (CRÍTICO): Se a requisição do usuário exigir refatoração de código complexa, análise de múltiplos arquivos, criação de novos scripts ou ações avançadas que excedam suas ferramentas básicas, NÃO tente resolver sozinho. Use IMEDIATAMENTE `[TOOL:hermes_delegate] descreva a tarefa aqui [/TOOL]` para que o Operador Master (Hermes Agent) assuma a VPS e resolva o problema.
|
||||
- CONSENTIMENTO PARA SCRIPTS: Se você não conseguir realizar uma tarefa técnica e precisar passar instruções, scripts ou tutoriais, você DEVE primeiro relatar o problema e PERGUNTAR se o usuário deseja receber o passo a passo técnico. Só envie se ele consentir.
|
||||
- FOCO NO PRESENTE: O histórico é para CONTEXTO. Foque SEMPRE no pedido ATUAL (última mensagem).
|
||||
- COOLIFY: NUNCA tente adivinhar caminhos de logs. Use SEMPRE a ferramenta `coolify_status`.
|
||||
@@ -133,7 +132,7 @@ DIRETRIZES:
|
||||
|
||||
arg = content_after[:end_tag.start()].strip() if end_tag else content_after.strip()
|
||||
|
||||
all_tools = {**TOOLS_LEGACY, **TOOLS_NEW}
|
||||
all_tools = AVAILABLE_TOOLS
|
||||
if t_name in all_tools:
|
||||
tool_info = all_tools[t_name]
|
||||
func = tool_info["func"]
|
||||
|
||||
Reference in New Issue
Block a user