# Reanudación y transferencia de agentes

Captura puntos de control de sesión explícitos, recupera el contexto del proyecto, realiza el seguimiento de decisiones y bloqueadores con fuentes, y transfiere el trabajo entre agentes sin desviaciones del alcance.

- Canonical: https://docs.xmemo.dev/es/docs/guides/resume-and-handoff
- Locale: es-ES
- Content-Locale: es-ES
- Canonical-Content-Digest: f7f1e02f35c3c797c1b7fcc4aee1048fa1f409ef7ed79ecaf362c4d2d5f7b15a
- Edition-Digest: 733251ec7a9b9068068535e34dc08fa110f3b3dd49331f464c9a431f837de2af
- Source-Revision: sha256:dacab21c9fc471e388ff6bbe4a84e7266ffca6eed88baebabcf7f68ee9957d6a

## Objetivo del usuario y límites del flujo de trabajo

Este flujo de trabajo práctico permite a desarrolladores y agentes de IA reanudar sesiones interrumpidas, recuperar el contexto activo tras reinicios de CLI/IDE y transferir el trabajo en curso entre diferentes agentes (como Claude Code, Codex, Cursor o Hermes) sin perder decisiones de arquitectura, bloqueadores activos ni continuidad en las tareas. El flujo de trabajo garantiza que las transferencias de contexto transmitan un estado estructurado y acotado, en lugar de volcar historiales conversacionales ilimitados o filtrar credenciales.

## Disponibilidad y requisitos previos

Las capacidades requeridas para la reanudación y transferencia se ofrecen a través de la Skill de XMemo independiente y los perfiles de cliente MCP nativos con límites explícitos de permisos:

- Skill independiente (Claude Code, Codex, OpenClaw): comandos textuales de la versión 1.1.35 servida de help.mjs: save-state y restore-state (líneas 88-95), restart-snapshot y restart-restore (líneas 104-111), recall-context (líneas 84-87), remember (líneas 72-75) y todo-add/list/done (líneas 112-123).
- Perfil MCP claude-plugin: incluye update_state, create_restart_snapshot, restore_restart_snapshot, record_event, recall_context, remember, recall, todo, create_pending_decision y resolve_decision.
- Perfiles MCP cursor-plugin y ordinary-full: incluyen update_state, create_restart_snapshot, restore_restart_snapshot, record_event, recall_context, remember, recall, update_project_decision, update_project_todo, list_memory_todos, complete_memory_todo y query_audit.
- Perfiles MCP generic-public, chatgpt-public y public-only: exponen proyecciones resumidas de solo lectura como get_project_summary(project_id, focus) y memory_overview; las herramientas de escritura requieren una sesión de plugin autenticada.
- Requisitos previos: token de autenticación activo (XMEMO_KEY o archivo local skill-credentials.json) con permiso memory:write para persistencia de puntos de control y memory:read para recuperación contextual.

## Una tarea completa: transferencia sintética multiagente

En este escenario sintético, el Agente Alfa (ejecutado en Claude Code CLI) trabaja en la refactorización del grupo de conexiones de base de datos en el proyecto proj_payments_v2, registra una decisión explícita y un bloqueador, sella una instantánea de reinicio (restart snapshot) y transfiere la ejecución al Agente Beta (ejecutado en Cursor IDE).

## Capturar el estado activo y el bloqueador

El Agente Alfa registra su tarea actual y el bloqueador activo antes de la transferencia utilizando save-state o update_state:

```bash
node scripts/xmemo-skill.mjs save-state --key active_task --content "Refactoring database connection pooling to asyncpg: blocked on internal CA bundle" --ttl_seconds 86400
```

## Crear instantánea de reinicio para continuidad

El Agente Alfa captura el paquete completo de continuidad de la sesión antes de la transferencia utilizando restart-snapshot o create_restart_snapshot:

```bash
node scripts/xmemo-skill.mjs restart-snapshot --state_key active_task --session_id sess_alpha_0928 --ttl_seconds 604800
```

## Reanudar y restaurar en la sesión del agente receptor

El Agente Beta se inicia en Cursor IDE, restaura la instantánea y recupera contexto de fondo acotado:

```bash
node scripts/xmemo-skill.mjs restart-restore --source_session_id sess_alpha_0928 --target_session_id sess_beta_0929
node scripts/xmemo-skill.mjs recall-context --query "internal CA bundle TLS root pin database pooling" --max_items 5 --max_tokens 2000
```

## Resultado observable

Una transferencia correcta produce una confirmación explícita y comprobable en la respuesta de la herramienta sin adornos conversacionales:

- Salida de creación de instantánea: create_restart_snapshot devuelve: "✅ Restart snapshot created. ID: snap_xxx Captured: state=1, events=1, reminders=0, decisions=1".
- Comprobante de restauración: restore_restart_snapshot restaura el espacio de estado activo, registra un evento de auditoría de restauración bajo target_session_id y devuelve el contenido exacto del estado restaurado y el motivo del bloqueador.
- Fundamentación contextual: recall_context devuelve elementos de memoria estructurados etiquetados con session_id de origen, agent_id y marcas de tiempo de creación exactas, lo que permite al Agente Beta verificar de inmediato el origen de la decisión.

## A qué pueden acceder los agentes

El acceso al contexto entre sesiones está estrictamente delimitado por permisos autorizados y procedencia:

- Contexto de memoria delimitado: los agentes que restauran reciben espacios de estado estructurados, hitos de la cronología y memorias explícitamente recuperadas que coinciden con la consulta; no reciben memorias de desarrollador irrelevantes ni proyectos no relacionados.
- Consistencia de lectura de escrituras propias (Read-Your-Writes): las actualizaciones de estado y las instantáneas de reinicio se escriben de inmediato en el almacén de metadatos transaccional, evitando condiciones de carrera de consistencia eventual entre los agentes involucrados.
- Procedencia del emisor: el contexto recuperado incluye la identidad del emisor (source_identity, agent_id y node_id) para que los agentes posteriores puedan distinguir las directrices de usuarios humanos de propuestas automatizadas de agentes homólogos.

## Límites de uso compartido y almacenamiento

Se aplican estrictas reglas de privacidad y aislamiento de seguridad a todas las operaciones de reanudación y transferencia:

- Sin volcados de transcripciones sin procesar: nunca almacene transcripciones completas de chat ni rastros de pensamientos del modelo en el estado o en la memoria. La transferencia transmite únicamente resúmenes de estado estructurados, eventos de decisión explícitos y hechos verificados.
- Cero filtración de credenciales: tokens, claves de API, contraseñas y encabezados de autorización nunca deben escribirse en state_key, content ni metadata_json.
- Límite de aislamiento de proyecto: las instantáneas vinculadas a project:proj_payments_v2 son estrictamente inaccesibles para sesiones autenticadas bajo un proyecto diferente o alcance personal sin permisos explícitos de equipo.

## Recuperación de fallos

Gestione errores comunes de reanudación y transferencia mediante estrategias de contingencia deterministas:

- Instantánea caducada o TTL superado: cuando una instantánea supera ttl_seconds (7 días de forma predeterminada para instantáneas, 24 horas para estado activo), restore_restart_snapshot informa que la instantánea ha caducado. Recurra a get_project_context(project_id="proj_payments_v2") o recall_context con una consulta delimitada al proyecto.
- Falta de ID de sesión: si source_session_id no está disponible o se pierde, recupere el registro de estado más reciente mediante node scripts/xmemo-skill.mjs restore-state --key active_task o consulte los TODOs activos mediante todo-list.
- Discrepancia de alcance o inquilino: si un agente intenta restaurar una instantánea en un inquilino no autorizado o en un alcance de proyecto discordante, el servidor rechaza la solicitud con HTTP 403 Forbidden. Verifique el ID de proyecto vinculado en la configuración de su cliente.

## Referencia relacionada

Para consultar conceptos de arquitectura conexos, definiciones de alcance y catálogos de herramientas, examine las siguientes guías:

- Flujo de trabajo entre agentes: /docs/operations/cross-agent-workflow para conceptos de orquestación.
- Alcances y aislamiento: /docs/concepts/scopes para la jerarquía de alcances ortogonales de 4 niveles.
- Espacios de trabajo de proyectos: /docs/concepts/projects para asociaciones de proyectos y aplicación de límites.
- Inicio rápido: /docs/quickstart para configuración de clientes y autenticación inicial.
- Referencia de herramientas MCP: /docs/tools/recall-context y /docs/tools/remember para parámetros de herramientas de bajo nivel.

## Usuario de ChatGPT

Dale a ChatGPT acceso duradero a tus preferencias de XMemo, datos de proyecto, decisiones y TODOs sin pegar fichas bearer en un chat.

Conecte el servidor XMemo MCP alojado a través de la aplicación ChatGPT/OpenAI OAuth flow, luego apruebe la subvención de memoria:read y memoria:write para su cuenta XMemo.

Guarde una nota de preferencia sintética o de proyecto, inicie un nuevo chat y luego pida a ChatGPT que la recuerde a través de XMemo antes de continuar el trabajo.

Si OAuth falla o las herramientas no aparecen, salir del servidor MCP en la aplicación host, volver a conectar la URL del servidor XMemo y volver a probar antes de crear tokens directos.

## Copiloto / Codex desarrollador

Lleve decisiones de repo, convenciones de codificación, notas de corrección de errores e historial de tareas entre los agentes IDE y CLI.

Use OAuth para VS Code / GitHub Copilot y Gemini CLI cuando esté disponible. Para Copilot CLI, Codex, Cursor u otros clientes MCP directos, mantenga XMEMO_KEY en el entorno local o en el almacén de secretos y establezca un XMEMO_AGENT_INSTANCE_ID estable.

Grabe una decisión de base de código o corrección de errores, y luego pida al siguiente agente IDE o CLI que recuerde el contexto XMemo relevante antes de editarlo.

Si las memorias están vacías, verifique la ruta de configuración MCP seleccionada, la variable de entorno XMEMO_KEY para clientes directos y cualquier credencial OAuth rancio en la aplicación host.

## Equipo / propietario del piloto de la empresa

Evalúe la memoria compartida con controles de cuenta, atribución de origen, flujos de trabajo export/delete y pruebas de configuración seguras para los revisores.

Cree o introduzca el espacio de trabajo protegido de XMemo, invite a usuarios aprobados, luego conecte a cada cliente a través de OAuth o una credencial directa con alcance de acuerdo con las insignias de preparación.

Haga que un miembro piloto guarde una memoria sintética del equipo, confirme la atribución de origen en XMemo, luego revise delete/export y las rutas de soporte.

Si un miembro no puede conectarse, compruebe los permisos de rol, la aprobación de OAuth, el estado de preparación del cliente y la orientación de soporte antes de emitir un nuevo token.

## Operador de agente autónomo

Deje que los agentes sin cabeza o programados registren el progreso, recuperen decisiones previas y mantengan una identidad estable de instancia no secreta.

Obtener /api/v1/mcp/config/autonomous-agent. Preferir auth_modes.oauth cuando el runner soporta OAuth + cabeceras personalizadas; utilice auth_modes.xmemo_key con XMEMO_KEY de una tienda secreta sólo para runners totalmente sin cabeza.

Ejecute una tarea sintética que escriba el progreso a XMemo, reinicie el runner y confirme que recuerda que el progreso usando el mismo XMEMO_AGENT_INSTANCE_ID.

Si la atribución cambia o recuerda dividida entre instancias, persistir XMEMO_AGENT_INSTANCE_ID fuera de git y verificar que el runner no lo esté regenerando en cada inicio.
