Command Hermes — pune Hermes la treabă ca executorul lui Wednesday

Category: skill (hermes-command) Where it works: Claude Code (preferat, tool-uri MCP hermes_*) · oricând prin Bash Source: _infra/core/wednesday/skills/command_hermes.md (sk-265) · _infra/scripts/hermes_run_dispatch.py · _infra/mcp/servers/hermes/server.py

What it is

Wednesday e creierul-orchestrator; Hermes e unul din corpurile ei — executorul pe modelul configurat în Hermes care ține canalele de chat și are propriul toolset complet (web/X search, browser, terminal, generare imagine/video, computer-use, MCP-urile, skill-urile wednesday-*). Skill-ul ăsta e felul în care Wednesday cheamă Hermes, îi dă o sarcină și citește înapoi exact ce a făcut (tool-call-uri structurate, nu un blob opac). Hermes nu e un rival sau un peer mai capabil — e brațul cu care ajunge Wednesday.

How to trigger it

  • Natural language: “trimite asta pe Hermes”, “rulează off my desktop”, “fă research-ul ăsta în background”, “notifică-mă pe Telegram când e gata”.
  • Auto-fires? Da — Wednesday auto-rutează când o sarcină vrea o unealtă care trăiește doar în corpul Hermes (computer-use, MCP-uri Hermes-side) sau când vrea execuție mărginită ca să-și țină contextul curat.
  • Pur raționament sau o unealtă pe care Claude Code o are deja → Wednesday o face singură (nu pasează muncă trivială prin Hermes).

How to use it

Preferat — tool-uri MCP hermes_* (apar după restart de sesiune, din serverul MCP hermes, Claude-Code-only):

  • hermes_run(task, skill?, profile?) → agent cu toolset complet; întoarce {result, tool_calls, status, usage, run_id}. Citește tool_calls ca să vezi ce a invocat efectiv Hermes — ăsta e tot rostul “posesiei”. Momentan omite profile: gateway-ul instalat nu expune rutele structurate prefixate pe profil.
  • hermes_skill_invoke(skill, args?) → rulează un skill Hermes (search, briefing, ingest…).
  • hermes_mcp_call(server, tool, args_json?) → pune Hermes să apeleze UNA din uneltele lui MCP și întoarce rezultatul brut (util pentru cele 14 MCP-uri Claude-Code-only nemutate pe Hermes).
  • hermes_send(channel, message) → vorbește CA Wednesday pe telegram.
  • hermes_status() → sănătatea stack-ului Hermes.

Fallback — Bash (mereu disponibil, fără restart):

python3 _infra/scripts/hermes_run_dispatch.py --task "<task>" [--skill search] --json

Întoarce același dict structurat. thing.py / hermes_dispatch.py = doar pentru calea text rapidă, nestructurată (când nu-ți trebuie vizibilitatea tool-call-urilor).

Starea rutării structurate pe profil

Directoarele researcher, coder și batch pot exista, dar gateway-ul instalat răspunde cu HTTP 404 la /p/<profile>/v1/runs. profile= și --profile eșuează închis și nu cad niciodată pe modelul implicit. Pentru Hermes folosește ruta structurată implicită, fără prefix; pentru izolare pe rol în muncă foreground folosește agentul nativ al runtime-ului activ.

Practical examples

  1. Research off-desktop — tu: “caută pe vault + web ce-am decis despre DNS și rezumă”hermes_run("…") rulează pe lanțul configurat în Hermes → primești rezumatul + tool_calls (ce a căutat) fără să-ți umpli contextul Claude.
  2. Notificare — tu: “anunță-mă pe Telegram când termină backup-ul”hermes_send("telegram", "backup gata") → primești pingul ca de la Wednesday.
  3. Unealtă Hermes-only — tu: “rulează tool-ul ăla de pe corpul Hermes”hermes_mcp_call(...) apelează un MCP Hermes-side care nu există pe Claude Code.
  4. Background — orice batch/recurent → ruta Hermes implicită, fără profile= și fără model/provider pin (NICIODATĂ Claude pentru background).

Notes / limits

  • După hermes_run, inspectează tool_calls + status înainte să crezi result. status != "completed" → raportează, nu inventa.
  • No-background-Claude rămâne în picioare: muncă programată/batch → ruta Hermes implicită, niciodată un profil ieftin fictiv și niciodată Claude.
  • Hermes rulează ca Wednesday (același SOUL) — output-ul e al lui Wednesday, sub framing-ul [Hermes]-ca-corp, nu o persona separată.
  • Hermes MCP set e trimuit la honcho + obsidian (plafonul de 200 tool-uri). Restul MCP-urilor Hermes-side se ating prin hermes_mcp_call.
  • Serverul MCP hermes e Claude-Code-only (circular dacă l-ai adăuga în Hermes).