Intramedial está en beta restringida. Al registrarte o iniciar sesión, debes indicar la contraseña de beta tester que recibiste o solicitar una en preview@intramedial.com. Gracias.
Cargando…
portmind.memoryMódulo 51
Módulo de la plataforma
Agent memory snapshots
Inspecciona lo que recuerda un agente y toma una instantánea firmada, con raíz Merkle, de su memoria, con un almacén versionado y acotado al workspace.
portmind.memory lee y escribe un almacén de memoria acotado al agente, y snapshot enraíza sus entradas en un árbol Merkle y firma la raíz como memory-attestation con la clave de paquetes de ledger de la región. La pasarela llega al almacén mediante un service binding en cada región.
Intralock · Leases · Parley · Fleet Map
Un producto Trustvice
Los agentes actúan cuando el plano dice sí, y el registro dice por qué.
Pasa por Intramedial acciones de agentes, hashes de contenido, pruebas de API, DNS, webhooks, llamadas LLM y commits. Obtén un recibo firmado que cualquiera verifica, sin fiarse de nadie.
La pasarela reenvía /api/v1/portmind/* al runtime de Portmind de cada región. La memoria se acota al workspace que llama y se guarda en la base de datos de workspace de esa región.
Registro
El registro
Qué se registra
agentRef
El agente al que pertenece la memoria de la entrada; obligatorio en toda lectura y escritura.
key
La clave propia de la entrada de memoria, distinta del agente al que pertenece.
entry
Una entrada de memoria, devuelta por la lectura de una sola clave.
Todas las entradas activas de un agente, devueltas por la lectura de lista sin clave.
version
Se incrementa en cada upsert de la misma clave, para que una escritura nunca pierda en silencio un valor anterior.
merkleRoot
La raíz que snapshot calcula sobre la memoria actual del agente en ese momento.
Mecanismo
Paso a paso
Cómo funciona
Se escribe una entrada
POST /api/v1/portmind/memory hace upsert de una entrada para un agentRef y una key, versionándola ante un conflicto en lugar de sobrescribirla en silencio.
Se lee una entrada por clave
GET /api/v1/portmind/memory/<key> con agentRef devuelve esa entrada como entry, o un resultado con marca de borrado si se eliminó.
Se lista toda la memoria
GET /api/v1/portmind/memory con agentRef y un limit opcional devuelve todas las entradas activas de ese agente como entries.
Una instantánea enraíza y firma la memoria
POST /api/v1/portmind/snapshot construye una raíz Merkle sobre las hojas {key, contentSha256} ordenadas de la memoria actual de un agente y la devuelve como un memory-attestation firmado.
Pruébalo
Demo en vivo
Ejecútalo desde esta página
GET/api/v1/portmind/memory/billing-agent
// Sin cuerpo: esto es un GET. Pulsa Ejecutar.
Las llamadas de este módulo cambian estado real o llegan a servicios externos, por lo que la demostración compartida no las ejecuta. Inicia sesión para ejecutarlo en tu propio workspace. Docs de portmind.memory
Respuestas
Las llamadas de este módulo cambian estado real o llegan a servicios externos, por lo que la demostración compartida no las ejecuta. Inicia sesión para ejecutarlo en tu propio workspace.
Código
Ejemplo en vivo
Una petición real
Una petición con la forma que acepta la API y una respuesta de ejemplo con la forma que devuelve el módulo.
GET/api/v1/portmind/memory/billing-agentAuthorization: Bearer av_workspace_••••→ 200 { entry: { agentRef, key, value, contentSha256, tags, version, createdAt, updatedAt } } for one key (add ?agentRef=); 404 if no live entry. The no-key list route returns { entries }
Una atestación de memoria firmada muestra exactamente qué contenía la memoria de un agente en ese momento, no lo que contiene ahora.
Corregir una entrada de memoria obsoleta
Un operador elimina o actualiza una clave de la memoria de un agente en lugar de borrar todo su almacén, ya que las entradas se direccionan y versionan individualmente.
Verificar una exportación de memoria sin red
La atestación se firma con la misma clave por región que los paquetes de ledger, así que intramedial-verify la comprueba contra /.well-known/ledger-bundles-keys.json sin volver a llamar a Intramedial.
El navegador del panel contra datos reales
La consola del navegador de memoria lee de este mismo cliente sin datos de demostración de respaldo, así que lo que muestra es lo que el almacén contiene realmente, sin nada preparado.
Cuándo usar otra cosa
Llamadas sin contexto de workspace. Toda ruta responde 401 salvo que la pasarela haya resuelto un workspace.
Guardar valores en la atestación. Lleva solo la clave y el hash de contenido de cada entrada; los valores se quedan en el almacén.
Tratar { entries } como la forma de una lectura de una sola clave. Esa lectura devuelve entry, en singular.
Evidencia
Garantías
Qué hace y qué no hace
Un módulo es una afirmación fuerte sobre algo acotado. Confía en él exactamente para lo que es.
Hace
El código del almacén, su lógica de upsert con versionado y su cálculo de instantánea Merkle son código real y probado, no solo un documento de diseño.
Una clave ausente es un 404 limpio y un campo ausente un 400 limpio, no un fallo silencioso.
La raíz Merkle de una instantánea se calcula sobre las entradas ordenadas del propio agente en ese momento, no sobre una copia en caché ni obsoleta.
No hace
Que exista una instantánea cuando no hay firma disponible. Sin clave de firma configurada en la región, snapshot responde 503 signing_unavailable y no devuelve nada sin firmar.
Que la memoria cruce regiones. El almacén de cada región es independiente.
Que un valor exportado sea el atestiguado. Vuelve a calcular el hash de cada valor y compáralo con su contentSha256 en la atestación.
Detalles
Notas de construcción
Antes de construir
Un worker dedicado
runtime/portmind es un Cloudflare Worker con su propio almacén, tests y cliente de panel, accesible solo mediante el service binding de la pasarela.
Sin integración con MCP ni con el despacho ACP
Portmind no forma parte del sistema de despacho /api/v1/acp/* y no tiene id de acción coordination.*; es un Worker independiente, accesible solo mediante el binding de la pasarela descrito arriba.
La clave no es el agente
El segmento de URL de la ruta de una sola clave nombra una clave de memoria, no un id de agente; el agente siempre se da aparte como agentRef.
Límites y medición
Las entradas de memoria tienen un tamaño máximo; un cuerpo demasiado grande da 413.
La lectura de una sola clave devuelve una entry; solo la lectura de lista sin clave devuelve entries.
No existe id de acción MCP ni de contrato para ninguna ruta de Portmind.
Acceso
API y MCP
REST y MCP
Autentícate con una clave de API del workspace como token Bearer. La URL base es https://api.intramedial.com.
Endpoints REST
GET/api/v1/portmind/memoryLista las entradas de memoria activas de un agente.
GET/api/v1/portmind/memory/:keyLee una entrada de memoria por clave.
POST/api/v1/portmind/memoryEscribe o versiona una entrada de memoria.
Acciones MCP
Este módulo no tiene acción MCP. Llámalo por REST desde cualquier agente o programa.
Planifica dónde deben vivir los registros de coordinación de este workspace, ve exactamente qué se movería y llévalo a otra región cuando tú lo decidas.