Todas las páginas
En esta página

Herramientas de agente

Cada agente de programación trae sus propias herramientas: leer archivos, ejecutar comandos, editar código. OAR añade un pequeño conjunto encima, para que un agente pueda hacer cosas que solo puede hacer el relay: trabajar con otras sesiones, publicar una vista previa web y hacerte una pregunta que puedes responder con un toque.

Nunca llamas tú a estas herramientas. Pides lo que quieres con palabras normales y el agente elige la herramienta. Esta sección sirve para saber qué puede hacer un agente, para qué necesita tu aprobación y qué envía y recibe exactamente.

Las herramientas #

Herramienta Qué hace un agente con ella Página
relay_tool Lista, lee, envía prompts, inicia, detiene y vigila otras sesiones, en este relay o en uno emparejado. Una herramienta, 23 acciones. relay_tool
preview Publica un servidor de desarrollo local o una carpeta en un enlace público, lista las vistas previas de su conversación y las cierra. preview
ask_user Te hace una pregunta con una tarjeta con botones y espera la respuesta. ask_user

Lo que puedes pedir #

Algunas peticiones y la herramienta que usaría un agente:

Escribes El agente usa
«Inicia tres sesiones que revisen cada una una de estas carpetas y luego resume lo que encontraron.» relay_tool: create_session, wait, read_session
«Pregunta a la sesión de @build-box si el despliegue salió bien.» relay_tool: list_sessions, send
«Vigila esas sesiones y avísame cuando una haga una pregunta o falle.» relay_tool: subscribe
«¿Cuánto me queda del plan de Claude en este relay?» relay_tool: usage
«Arranca el servidor de desarrollo y dame un enlace que pueda abrir en el teléfono.» preview: create
«Antes de cambiar el esquema, consúltame.» ask_user

Por proveedor #

Lo que hace una herramienta es igual en todos los proveedores. Lo que cambia es si los agentes de un proveedor reciben la herramienta y el nombre con el que la ven.

Proveedor relay_tool preview Tarjetas de pregunta
Claude sí, como mcp__relay__relay_tool sí, como mcp__relay__preview AskUserQuestion, la propia de Claude, que OAR muestra como tarjeta
Claude API Nuevo en 0.9.18 sí, como mcp__relay__relay_tool sí, como mcp__relay__preview AskUserQuestion, la propia de Claude, que OAR muestra como tarjeta
DeepSeek Nuevo en 0.9.17 sí, como mcp__relay__relay_tool sí, como mcp__relay__preview AskUserQuestion de Claude Code, que OAR muestra como tarjeta
GitHub Copilot y OpenAI, motor SDK sí, como relay_tool no hay herramienta: en su lugar, al agente se le explica cómo llamar a la API de vistas previas del relay ask_user de OAR
GitHub Copilot y OpenAI, motor de extensión sí, mediante el servidor MCP de OAR (oar) sí, mediante el servidor MCP de OAR (oar) ask_user, la propia de Copilot, que OAR muestra como tarjeta
Cursor sí, como relay_tool sí, como preview ask_user de OAR
Grok sí, mediante el servidor MCP de OAR (oar) sí, mediante el servidor MCP de OAR (oar) ninguna
Claude Cloud no no AskUserQuestion, la propia de Claude, que OAR muestra como tarjeta

Por qué cambian los nombres

Los proveedores que reciben herramientas mediante el Model Context Protocol (MCP) anteponen el nombre del servidor al de la herramienta. Los agentes de Claude, de Claude API y de DeepSeek reciben las herramientas de OAR de un servidor llamado relay, así que preview aparece como mcp__relay__preview. Grok y el motor de extensión de Copilot las reciben de un servidor llamado oar, y cada uno antepone el nombre a su manera. En todos los casos es la misma herramienta.

Los chats de Claude API y DeepSeek ejecutan Claude Code en el host del relay, así que sus agentes reciben las herramientas exactamente igual que los de un chat de Claude. Consulta Claude API y DeepSeek.

Las sesiones de Claude Cloud se ejecutan en un sandbox de Anthropic, no en tu máquina. Las herramientas del relay no llegan hasta allí: una sesión en la nube no tiene relay_tool ni preview. Los agentes de otras sesiones sí pueden iniciar, leer, enviar prompts a y detener una sesión en la nube con relay_tool.

Grok y el motor de extensión de Copilot reciben las herramientas de un pequeño servidor MCP que OAR conecta al agente. Fijar la variable de entorno OAR_MCP_SERVER=0 para el relay desactiva ese servidor; esos agentes se quedan entonces sin relay_tool, y en lugar de tener una herramienta preview se les explica cómo llamar a la API de vistas previas.

Cuándo está disponible una herramienta #

Herramienta Los agentes la tienen cuando
relay_tool hay al menos un relay emparejado, o Settings → Relays → Agent sessions → Agents may start and use sessions on this relay (Ajustes → Relays → Sesiones de agentes → Los agentes pueden iniciar y usar sesiones en este relay) está activado. Sin ninguna de las dos cosas, la herramienta no se ofrece en absoluto.
preview siempre, en los proveedores que la tienen. Que pueda publicar depende de la preview lane, que está desactivada hasta que la configuras; con la lane desactivada, la herramienta responde con el motivo.
ask_user siempre, en los proveedores que la tienen.

Una sesión sabe si recibe relay_tool cuando arranca su proceso de agente. Después de emparejar el primer relay o de activar las sesiones de agentes, una conversación que ya estaba en marcha puede no tener la herramienta hasta que su agente se haya iniciado de nuevo. Nuevo en 0.9.18 Lo mismo vale para el nuevo nombre de la herramienta: una sesión que estaba en marcha cuando actualizaste a 0.9.18 puede tenerla todavía como remote_relay; consulta El nombre.

Lo que sigues controlando tú #

  • Nada que vaya más allá de la conversación está activado de forma predeterminada. Las sesiones de agentes están desactivadas hasta que las activas, un relay emparejado está bloqueado en cada conversación hasta que lo mencionas, y la preview lane está desactivada hasta que la configuras.
  • Tarjetas de aprobación. La primera sesión que un agente inicia en una conversación, la primera vez que vigila sesiones en un relay y cada acción de escritura en los modos del relay ask y plan te preguntan primero, con una tarjeta de pregunta.
  • Las herramientas nunca le dan un token a un agente. Las llamadas a otro relay pasan por tu propio relay, que guarda el token de ese relay. Esto no es un sandbox: un agente se ejecuta como el usuario del relay y podría leer del disco el archivo de configuración y la base de datos. Consulta Qué expone OAR.
  • Los enlaces de vista previa son públicos. Cualquiera que tenga un enlace de vista previa puede abrirlo sin iniciar sesión. Al agente se le dice que lo advierta cuando te dé uno. Un agente solo lista y cierra las vistas previas de su propia conversación Nuevo en 0.9.14; Settings → Previews (Ajustes → Vistas previas) las muestra y cierra todas.

Los detalles están en la página de cada herramienta: relay_tool → Permisos y aprobaciones y preview → Límites.

Lo que no son herramientas #

Algunas cosas que hacen los agentes en OAR funcionan sin ninguna herramienta de OAR:

  • Imágenes, vídeo y audio en una respuesta. A los agentes se les dice que pueden insertar un archivo multimedia por su ruta absoluta; el relay lo muestra integrado. Es una instrucción en el prompt, no una herramienta. Los agentes del motor de extensión de Copilot y de Claude Cloud no la reciben.
  • /preview en el área de redacción. Puedes publicar, listar y cerrar vistas previas tú mismo escribiendo /preview (área de redacción). No cuesta ningún turn de agente y funciona con todos los proveedores.
  • El tablero del plan. Cuando un agente termina de planificar, OAR muestra un tablero Plan ready (Plan listo). En Claude y DeepSeek procede de la herramienta de plan propia de Claude Code, que OAR recoge.
En el código fuente

Para colaboradores y curiosos: dónde viven estas herramientas en el repositorio de OAR. Cada herramienta se define una sola vez, sin depender de un proveedor, en shared/, y un pequeño adaptador la conecta a cada proveedor.

Archivo Qué contiene
shared/remote-relay-contract.mjs relay_tool: descripción, parámetros, acciones, permisos, límites, códigos de error, comprobación de la entrada
shared/remote-relay-tool-core.mjs relay_tool: la llamada que hace el adaptador de cada proveedor, y cuándo se ofrece la herramienta
server/services/remote-relay-dispatcher.mjs relay_tool: qué hace cada acción, las comprobaciones previas, la espera de una respuesta
shared/relay-events.mjs Suscripciones a eventos: tipos de evento, límites, el texto de un mensaje de evento
server/services/relay-event-service.mjs Suscripciones a eventos: su almacenamiento y la entrega de eventos
shared/preview-tool-core.mjs preview: descripción, parámetros, comprobación de la entrada, la llamada
server/services/preview-registry-service.mjs preview: las vistas previas en sí y sus límites
shared/ask-user-bridge.mjs Tarjetas de pregunta: de la pregunta del agente a la tarjeta y vuelta
server/claude-worker/claude-sdk-adapter.mjs Claude, Claude API y DeepSeek: el servidor MCP relay y el puente de AskUserQuestion
server/cursor-worker/cursor-turn-runner.mjs Cursor: relay_tool, preview y ask_user como herramientas personalizadas
server/copilot-worker/copilot-sdk-session-process.mjs Motor SDK de Copilot: relay_tool y ask_user como herramientas de sesión
server/mcp/oar-mcp-server.mjs El servidor MCP oar para Grok y el motor de extensión de Copilot
server/relay-tools.md Las instrucciones permanentes que reciben los motores de Copilot sobre estas herramientas