Documentation
Capsule Export Format
Exporting a capsule produces a single JSON file with a stable, versioned schema. It's designed to be inspected by hand, kept in source control, and re-imported into agimem in the future.
How to Export
Open any capsule from your dashboard and click the Export button in the top right. The file is named <capsule-name>-YYYY-MM-DD.json.
Full Schema (v1)
capsule-export.json
{
"type": "agimem.capsule",
"version": 1,
"capsule": {
"name": "my-capsule",
"description": "Notes from Q2 planning"
},
"tags": ["planning", "q2", "stale"],
"memories": [
{
"key": "project-goals",
"value": "Ship export feature by EOQ…",
"tags": ["planning", "q2"],
"expiresAt": "2026-07-01T00:00:00.000Z",
"createdAt": "2026-05-15T10:00:00.000Z",
"updatedAt": "2026-05-20T14:30:00.000Z"
}
]
}Field Reference
| Field | Type | Notes |
|---|---|---|
| type | string | Always "agimem.capsule". |
| version | number | Currently 1. |
| capsule.name | string | Capsule name at export time. |
| capsule.description | string | null | May be null if no description was set. |
| tags | string[] | All capsule-scoped tags, sorted alphabetically. Includes unused tags. |
| memories[].key | string | Unique within the capsule. |
| memories[].value | string | The full stored value, not truncated. |
| memories[].tags | string[] | Names only; all appear in the top-level tags array. |
| memories[].expiresAt | ISO 8601 | null | null means the memory never expires. |
| memories[].createdAt | ISO 8601 | Informational; importers should generate fresh timestamps. |
| memories[].updatedAt | ISO 8601 | Informational; importers should generate fresh timestamps. |
What's Not Included
The following are deliberately excluded so an export is safe to share and portable between accounts:
- API keys (any field)
- Capsule and user IDs
- Expired memories
- Audit log entries
Ordering Guarantees
Output is deterministic across runs so exports diff cleanly in version control:
tagsis sorted alphabetically.memoriesis sorted bykey.- Each memory's
tagsarray is sorted alphabetically.
Versioning
Additive changes (new optional fields) keep the same version. Breaking changes bump it. Older versions continue to be supported when an import feature is added.