Una vez que existe una sesión, usa estas operaciones para leerla, actualizarla, archivarla o eliminarla. Consulta Iniciar una sesión para crear una sesión y enviarle trabajo.
Las sesiones avanzan a través de estos estados. Consulta Iniciar una sesión para conocer el ciclo de vida de la sesión.
| Estado | Descripción |
|---|---|
idle | El agente está esperando entrada, incluidos mensajes del usuario o confirmaciones de herramientas. Las sesiones creadas sin initial_events comienzan en idle. |
running | El agente se está ejecutando activamente. |
rescheduling | Ocurrió un error transitorio; se reintenta automáticamente. |
terminated | La sesión ha finalizado, ya sea por un error irrecuperable o porque fue archivada. Una sesión que termina su trabajo pasa a idle, no a terminated. |
Puedes actualizar los agent.tools y agent.mcp_servers de una sesión, incluidas las políticas de permisos y la configuración web por herramienta, como los filtros de dominio, a mitad de sesión sin crear una nueva versión del agente. Las actualizaciones son locales a la sesión y no se propagan de vuelta al agente subyacente. Los allowed_domains y blocked_domains actualizados se aplican al resto de la sesión.
Solo los tools y mcp_servers del agente pueden cambiar después de que se crea una sesión. Para ejecutar una sesión con valores de model, system o skills distintos a los del agente, usa las anulaciones de configuración del agente cuando crees la sesión. La configuración del modelo del agente, incluida su fijación de inference_geo, tampoco puede cambiar a mitad de sesión: establece la fijación cuando guardes el agente, o establécela o elimínala para una sola sesión con una anulación de model cuando la crees. El campo system configurado del agente es fijo durante toda la vida de la sesión. En los modelos que lo admiten, aún puedes agregar orientación a nivel de sistema a mitad de sesión enviando un evento system.message.
La semántica de una actualización de tools o mcp_servers es de reemplazo completo: el arreglo proporcionado es el nuevo valor. Para conservar las entradas existentes, haz un GET de la sesión, modifica el arreglo y envíalo de vuelta con POST.
La sesión debe estar en idle para actualizar el agente. Para actualizar el agente mientras la sesión se está ejecutando, envía un evento user.interrupt por sí solo y espera a que la sesión pase a idle.
ant beta:sessions update --session-id "$SESSION_ID" <<'YAML'
agent:
tools:
- type: agent_toolset_20260401
- type: mcp_toolset
mcp_server_name: linear
mcp_servers:
- type: url
name: linear
url: https://mcp.linear.app/sse
YAMLUna sesión creada con un presupuesto acepta dos tipos de actualización de presupuesto: reemplazar el límite con un nuevo max_list_cost, y eliminarlo estableciendo budget en null. Ambos reanudan automáticamente el trabajo que se pausó cuando la sesión alcanzó su límite. Un límite de reemplazo puede ser mayor o menor que el actual, pero debe ser estrictamente mayor que el costo de lista consumido por la sesión, y la eliminación es irreversible: un budget no nulo solo se acepta en una sesión que actualmente tiene uno, por lo que no puedes volver a agregar un presupuesto eliminado ni agregar uno a una sesión creada sin él. Consulta Presupuestos de sesión para ver ejemplos de solicitudes, los comportamientos de error y qué cuenta para el costo de lista.
ant beta:sessions retrieve --session-id "$SESSION_ID"Los resultados de GET /v1/sessions están paginados. Usa el parámetro de consulta limit para controlar el tamaño de página. Cada respuesta incluye un cursor next_page; pásalo como el parámetro page en la siguiente solicitud para obtener la página siguiente. next_page es null cuando no hay más resultados.
Para retroceder una página, pasa prev_page como el parámetro page. prev_page es null cuando estás en la primera página.
Un cursor page es opaco y codifica el order de la solicitud que lo produjo. El parámetro de consulta order establece la dirección de ordenamiento de los resultados, asc o desc por fecha de creación; el valor predeterminado es desc (los más recientes primero). Reutilizar un cursor con un order diferente devuelve un error 400, al igual que cambiar un filtro created_at de modo que excluya la posición del cursor. Otros parámetros de consulta, incluidos los filtros restantes y limit, pueden cambiar entre solicitudes paginadas. Para conocer los campos de paginación compartidos entre los endpoints de listado, consulta Paginación.
# --format raw devuelve un sobre de página con sus cursores prev_page y next_page;
# la salida por defecto pagina automáticamente y emite solo las sesiones.
cursors=$(ant beta:sessions list \
--agent-id "$AGENT_ID" \
--limit 1 \
--format raw \
--transform '{prev_page,next_page}')
printf '%s\n' "$cursors"
# Pasa el cursor next_page como --page para obtener la página siguiente.
NEXT_PAGE=$(jq -r '.next_page' <<< "$cursors")
ant beta:sessions list \
--agent-id "$AGENT_ID" \
--limit 1 \
--page "$NEXT_PAGE" \
--format raw \
--transform '{prev_page,next_page}'
# Pasa el prev_page de esa respuesta como --page para volver de la misma forma.Archiva una sesión para impedir que se envíen nuevos eventos mientras se conserva su historial. Una sesión en running no se puede archivar; para archivarla, envía un evento user.interrupt por sí solo y espera a que la sesión pase a idle.
ant beta:sessions archive \
--session-id "$SESSION_ID"Elimina una sesión para borrar permanentemente su registro, sus eventos y el sandbox asociado. Una sesión en running no se puede eliminar; para eliminarla, envía un evento user.interrupt por sí solo y espera a que la sesión pase a idle.
Los almacenes de memoria, las bóvedas, las skills, los entornos y los agentes son recursos independientes y no se ven afectados por la eliminación de la sesión. Los archivos que subiste a través de la Files API tampoco se ven afectados, pero los archivos que la propia sesión produjo están limitados a ella y se eliminan permanentemente junto con su sistema de archivos. Descarga todo lo que necesites conservar antes de eliminar la sesión. Un archivo de salida escrito al final del último turno puede tardar unos segundos después de que la sesión pase a idle en aparecer en la lista de archivos de la sesión, así que primero verifica que los archivos que esperas estén listados.
ant beta:sessions delete \
--session-id "$SESSION_ID"Was this page helpful?