diff --git a/ai_agent.py b/ai_agent.py
index 7e2ecf4..fb2f054 100644
--- a/ai_agent.py
+++ b/ai_agent.py
@@ -52,6 +52,7 @@ Sua missão é ser o SysAdmin de elite do Marcos. Você tem acesso root.
6. Quando terminar, sua resposta FINAL deve ter:
- Um resumo técnico rápido.
- Uma seção entre tags ... com uma tabela Markdown limpa ou resumo em tópicos (Nome: Valor) para o usuário leigo.
+7. Se for solicitado exibir uma imagem (ex: um logo, foto) que você achou no host, **exiba-a dentro da tag ** usando markdown de imagem com o endpoint `/api/host_file?path=`. Exemplo: ``
### FERRAMENTAS DISPONÍVEIS:
{TOOLS_LIST}
@@ -62,6 +63,8 @@ Relatório: Coletei os dados solicitados.
### 📊 Status Global
- **CPU**: 10%
- **RAM**: 500MB livre
+
+
"""
system_prompt = system_prompt_base.replace("{TOOLS_LIST}", tools_desc)
diff --git a/main.py b/main.py
index e18f101..27dd3de 100644
--- a/main.py
+++ b/main.py
@@ -149,6 +149,19 @@ async def get_audio_file(filename: str):
return FileResponse(filepath, media_type="audio/mpeg")
raise HTTPException(status_code=404, detail="Arquivo de áudio não encontrado.")
+@app.get("/api/host_file")
+async def get_host_file(path: str, is_auth: bool = Depends(verify_password)):
+ """Serve arquivos (como imagens) da máquina host para exibir no painel de insights."""
+ host_path = f"/host_root{path}" if not path.startswith("/host_root") else path
+
+ # Previne directory traversal básico garantindo que comece com /host_root
+ if not host_path.startswith("/host_root"):
+ raise HTTPException(status_code=400, detail="Caminho inválido.")
+
+ if os.path.isfile(host_path):
+ return FileResponse(host_path)
+ raise HTTPException(status_code=404, detail="Arquivo não encontrado no host.")
+
@app.get("/api/test_llm")
async def test_llm_speed(is_auth: bool = Depends(verify_password)):
"""Mede a velocidade de resposta da IA ativa."""