bambouville

Centro de agentes

El centro de agentes reúne en una sola página tus sesiones de Claude Code y Codex de todas las conexiones — ventanas de tmux, paneles y sesiones simples — y te deja responder a sus preguntas sin buscar el panel correcto. Es experimental y está desactivado por omisión: actívalo en ajustes → experimental → centro de agentes. Desactivarlo más tarde no desinstala los hooks del host.

Ábrelo desde la entrada agentes de la barra lateral (en el iPhone, tras el selector de la pestaña de sesiones — la pestaña lleva un distintivo cuando los agentes te necesitan), con ⌘⇧A, o desde el botón de atención de la barra superior que aparece cuando hay agentes esperando. Cuando un agente espera en el panel enfocado, el panel de gestos también muestra sus opciones como pétalos.

La página de agentes

Las tarjetas se agrupan por estado — necesita entrada, recién terminado, trabajando, inactivo, estado no disponible — bajo una línea de resumen («N agentes · N sesiones · N hosts») y un aviso de «hay agentes que necesitan atención / todo al día».

Cada tarjeta muestra la pregunta actual del agente. Desde una tarjeta puedes:

  • pulsar para moverte entre tarjetas y 19 para elegir una opción numerada,
  • ⌘↩ abrir: saltar directamente a ese panel,
  • escribir en el campo de mensaje — «mensaje a <nombre>…» pone en cola, «preguntar a <nombre>…» envía de inmediato,
  • interrumpir al agente.

Las respuestas vuelven a comprobar el prompt en vivo antes de enviarse, y el envío verifica la entrega, así que nunca respondes a una pregunta que el agente ya dejó atrás. Mientras un agente emite salida en el terminal, el desplazamiento se bloquea un momento para que un roce no te arrastre hacia arriba a mitad de la ejecución — si prefieres desplazarte con libertad, ajustes → terminal → bloqueo de desplazamiento del agente desactiva el congelado por proveedor (claude code y codex, ambos activados por omisión). La detección, las tarjetas y los avisos no se ven afectados.

La página de agentes con tarjetas agrupadas bajo necesita entrada, recién terminado, trabajando e inactivo; cada tarjeta muestra el proveedor, la sesión, el host, la ventana y el panel, además de botones de respuesta en línea y un campo de pregunta.
Tarjetas agrupadas según lo que te necesita antes. Los agentes bloqueados muestran sus opciones como botones en línea.

Cómo funciona la detección

La detección básica es heurística: se lee del texto del terminal con las mismas gramáticas que los perfiles del panel de gestos (gramáticas integradas de Claude Code y Codex, más los perfiles personalizados que definas).

Para el estado preciso, Tessera ofrece un hook de estado del agente opcional y por host: un terminal expone los procesos y los píxeles, pero no si un agente está calculando, inactivo o bloqueado — los hooks de ciclo de vida de los propios agentes son la señal autorizada. Sin él, las tarjetas indican estado no disponible y el centro solo descubre agentes; nunca adivina su estado.

Instalar el hook (desde una tarjeta sin estado, o desde el aviso ámbar de la barra superior) siempre muestra antes exactamente qué va a cambiar: coloca archivos propios de Tessera en ~/.config/tessera en el servidor, fusiona únicamente los manejadores de Tessera con las configuraciones de usuario de Claude Code y Codex — sin reescribir nunca tus alias, funciones ni hooks ajenos — y añade una línea de carga protegida a .zshrc / .bashrc (marcada con # TESSERA-AGENT-LIFECYCLE). Lo que devuelve son solo metadatos de estado: proveedor, evento de ciclo de vida, estado, motivo, identificadores de sesión y de turno, tipo de notificación, modo de permisos, marca de tiempo e ID de proceso local — nunca preguntas, respuestas, código fuente ni credenciales.

Conviene saber, tras una instalación:

  • Un shell tiene que cargarlo: abre un shell o una ventana de tmux nuevos (Tessera se ofrece a hacerlo con un prompt vacío, y solo ahí).
  • Codex mantiene su propio límite de confianza para los hooks: el primer arranque integrado puede pedirte que revises el hook con /hooks.
  • La página sigue el estado del hook por host — no instalado, activo, inactivo aquí o desactualizado —, repara automáticamente una integración rota y ofrece actualizar el hook de estado cuando sale una versión más reciente. Sobre mosh a secas, comprobarlo puede requerir desbloquear una clave, así que Tessera espera a que toques comprobar ahora en lugar de sondear.

Avisos de atención

Con los avisos cuando un agente requiere atención activados, Tessera publica un aviso de iOS — «<host> · <ventana>», «Claude Code necesita entrada», «… acaba de terminar» — cuando un agente fuera de pantalla termina o te necesita mientras Tessera está en segundo plano. Al tocar el aviso llegas directamente al panel correcto.

  • Activarlo desactiva una vez los avisos en segundo plano de la campana del terminal; el canal de agentes es el más preciso.
  • iOS puede suspender las sesiones largas en segundo plano, así que en sesiones muy prolongadas la entrega se hace en la medida de lo posible.