Chatear con un agente
Esta guía muestra cómo trabajar con un agente en un espacio.
Crear un espacio
Sección titulada «Crear un espacio»- Ve a Espacios en la barra lateral
- Haz clic en el botón + junto al encabezado Espacios
- Escribe un nombre: es obligatorio. Un nombre vacío se rechaza; el diálogo permanece abierto
- Opcionalmente, añade agentes del espacio de trabajo
- Si el espacio de trabajo tiene algún repo, aparece un selector de repos. Empieza con todos los repos seleccionados; redúcelo (incluida la deselección de un solo repo) a los repos para los que este espacio debe aprovisionar worktrees
- Confirma
Control Center abre el espacio y empieza a aprovisionar en segundo plano un worktree copy-on-write por cada repo seleccionado.
Enviar el primer mensaje
Sección titulada «Enviar el primer mensaje»Escribe tu mensaje en el compositor y pulsa Intro. El agente se despacha y empieza a emitir su respuesta en streaming.
Si el espacio aún se está aprovisionando, tu mensaje queda en espera en lugar de perderse: el compositor lo retiene y lo envía automáticamente en cuanto los worktrees estén listos.
Mientras el agente trabaja, ves cómo se emite su turno: segmentos de razonamiento, llamadas a herramientas (lecturas y escrituras de archivos, comandos de shell) y texto de respuesta, todo dentro de un único mensaje de turno de agente.
Orientar a un agente en ejecución
Sección titulada «Orientar a un agente en ejecución»Mientras un agente trabaja, el texto conversacional normal no encola un turno nuevo. Se convierte en una tarjeta de orientación en cola dentro de la franja situada sobre el compositor y se inyecta en la ejecución activa en el siguiente límite de turno. No hay ningún aviso emergente: la propia tarjeta es la respuesta.
Tres cosas cambian ese comportamiento:
- Un mensaje que contiene una @mención siempre se envía como mensaje, nunca como orientación
- Un mensaje que empieza por un comando slash siempre se trata como ese comando
- Un mensaje con un adjunto siempre se envía como mensaje: la cola de orientación es solo de texto
- Si todas las ejecuciones activas ya han terminado, el texto se cuela y se envía como un mensaje normal
Aprobar una acción bloqueada
Sección titulada «Aprobar una acción bloqueada»Cuando un agente se topa con una acción que sus barandillas someten a control
—un comando destructivo, una herramienta privilegiada—, el servidor bloquea
la ejecución y publica una solicitud de aprobación a todos los clientes
conectados. Si tienes esa conversación abierta, la solicitud aparece en el
chat, encima del compositor, como la misma tarjeta de opciones numeradas que
se usa para ask_user (denegar, aprobar y, opcionalmente, aprobar durante ocho
horas). No hay opción de omitir: un agente bloqueado está esperando una
decisión.
Si estás en otra parte de la aplicación, un panel siempre en primer plano sigue mostrando lo que está en espera, para que puedas desbloquear al agente sin tener que buscar el espacio. La superposición oculta una solicitud en cuanto la conversación de ese espacio aparece en pantalla, así que nunca respondes dos veces a la misma petición.
No hay tiempo de espera: un agente bloqueado espera hasta que alguien decide. La misma solicitud también aparece en la franja de atención de la bandeja de entrada y en el cliente móvil.
Responder a la pregunta de un agente
Sección titulada «Responder a la pregunta de un agente»Un agente que necesita una preferencia, un requisito que falta o una bifurcación
real debe llamar a ask_user. Escribir la pregunta como mensaje de chat
termina el turno y tienes que volver a pedírselo. La herramienta muestra una
tarjeta numerada en la conversación —opciones, texto libre opcional o ambos— y la
ejecución espera tu respuesta.
Toca una sola opción para enviarla (el número final se convierte en una flecha al
pasar el cursor por encima). La selección múltiple y las respuestas escritas usan
Continuar (⌘↵ / Ctrl↵). Omitir le dice al agente que elija un valor
predeterminado razonable y no vuelva a preguntar.
Es un mecanismo distinto de la tarjeta de aprobación anterior: una aprobación es «¿puedo hacer esto?» y una pregunta es «¿cuál de estas querías decir?». Preguntar está disponible en el arnés integrado en todos los modos, incluidos los de solo lectura (no modifica nada), y a propósito no se envuelve en una solicitud de aprobación: un diálogo delante de otro diálogo acabaría denegando por defecto si no hay ningún aprobador conectado. Una ejecución que no tiene ninguna conversación en la que mostrarse simplemente no recibe la herramienta.
Detener un agente
Sección titulada «Detener un agente»Mientras hay ejecuciones activas, el botón de enviar del compositor pasa a ser un botón de Detener. Vacía el compositor y púlsalo: detiene a todos los agentes que se están ejecutando en esa conversación.
No hay ningún control de detención en la cabecera del espacio ni ningún atajo de teclado para ello. Para detener solo una ejecución cuando hay varias activas, abre la pestaña de actividad de esa ejecución: su cabecera incluye una pausa, una reanudación y una detención con alcance de ejecución (la detención te pide confirmación). Observabilidad → En vivo enumera todos los agentes en ejecución del espacio de trabajo con el mismo control.
Una ejecución detenida se marca como detenida. Envía un mensaje nuevo para despachar de nuevo.
Usar comandos slash
Sección titulada «Usar comandos slash»Escribe / en el compositor para ver la lista de comandos. Estos son los que
cambian cómo se comporta la conversación:
| Comando | Qué hace |
|---|---|
/plan |
Cambia el espacio al modo plan. Un /plan a secas solo arma el modo; /plan <request> lo arma y envía el resto como tu mensaje |
/goal <text> |
Registra el objetivo de trabajo de la conversación |
/loop <text> |
Itera sobre una tarea hasta que esté completa |
/compact |
Pliega el historial más antiguo en un resumen anclado y continúa sobre el contexto compactado |
/todo … |
Consulta y edita la lista de tareas persistida de esta conversación |
Las skills aparecen en la misma lista bajo su propio espacio de nombres skill:,
así que nunca chocan con los comandos anteriores: una skill llamada plan o
compact sigue siendo accesible:
| Comando | Qué ejecuta |
|---|---|
/skill:<name> |
Una skill instalada en el espacio de trabajo o asociada al agente |
/skill:<repo>:<name> |
Una skill que aporta uno de los repos clonados en este espacio |
Las skills de repo llevan la insignia del repo del que proceden, porque un nombre
por sí solo no dice las convenciones de qué servicio codifica, y dos repos pueden
aportar cada uno una testing. No hace falta escribir el prefijo para encontrar
una: escribir solo el nombre de la skill también coincide con las entradas con
espacio de nombres.
Un agente solo lleva las skills del repo en el que está trabajando en ese momento; consulta Skills con alcance de repo. El compositor no tiene ese alcance: puedes invocar la skill de cualquier repo nombrándola.
El cliente intercepta /compact y /todo, y nunca se persisten como mensajes:
una línea /compact en la transcripción retrasaría un turno el corte de la
siguiente compactación. /plan cambia el modo almacenado del espacio en lugar de
viajar como texto. Así que ninguno de los tres es «un mensaje que le envías al
agente»; no esperes verlos en el historial.
Pedir primero un plan
Sección titulada «Pedir primero un plan»Antes de un cambio complejo, cambia el espacio al modo plan con /plan, el
desplegable de modo de la barra de herramientas del compositor o Mayús+Tabulador.
El agente investiga entonces en solo lectura y entrega un plan tipado que
apruebas antes de que empiece ningún trabajo. Consulta
Usar el modo plan.
Llegar a un agente sin un espacio dedicado
Sección titulada «Llegar a un agente sin un espacio dedicado»No necesitas un espacio por agente. En cualquier espacio:
@alice can you look at the failing tests in src/auth_test.dart?El agente mencionado se añade al espacio y se despacha con el contexto de ese espacio. Consulta Mencionar agentes con @ para saber cómo se emparejan los nombres.
Guías relacionadas
Sección titulada «Guías relacionadas»- Usar espacios
- Mencionar agentes con @
- Usar el modo plan
- Configurar la integración con Slack para hacer lo mismo desde Slack