Compact, not incomplete.
Keep the smallest recoverable version—not the smallest story about it. There is no universal AI language that guarantees lossless cross-model memory.
01 · Export the real state
Keep the native .af file, checkpoint or workflow export. Add code, dependency versions, model configuration, tool schemas and authorised memory. Do not replace an executable workflow with its description.
02 · Stage a reviewed copy
Work on a separate staging folder. Remove secrets and material you cannot transfer. Document every omission. Keep the untouched original privately. An exported SQLite database must be a consistent backup, not a casual copy of a running database.
03 · Compress losslessly
ZIP Deflate is a portable default. Zstandard is an optional choice when both ends support it. Already-compressed files may barely shrink. Summaries and embeddings are not lossless memory backups.
04 · Verify what survived
Record SHA-256 per file, compressed size and expanded size. Re-read the archive and compare bytes before reporting a successful pack. Matching hashes prove file integrity, not truth, safety or the persistence of a mind.
A simple package, with native files inside.
agent-staging/ manifest.json # ID, rights, model dependencies story.md # optional, no more than 800 characters runtime/ # code, workflow.json, dependency lockfile state/ # native export / consistent checkpoint evidence/ # allowed inputs, outputs, test records licenses/ # code, data and model permissions omissions.json # what is absent and why
API-backed agents cannot export the provider’s model weights. LoRA adapters require compatible base models and valid licences. A machine-readable manifest does not itself implement a recovery engine.
Local packing tools included.
The included Python tool creates a lossless ZIP and checks hashes without importing or running agent code. It refuses symlinks, several obvious secret patterns and packages above its configured limits. These checks are not a complete security audit, and ZIP output is not encrypted.
python pack_agent.py ./agent-staging --out ./agent-backup.zip # Preview only. After reviewing the staged files: python pack_agent.py ./agent-staging --out ./agent-backup.zip --write --ack-reviewed python verify_pack.py ./agent-backup.zip
Reuse before reinventing.
Letta’s Agent File already captures prompts, memory blocks, tool definitions and model configuration. Its documented gaps include archival passages, so declare missing state. We preserve native exports; a universal import adapter is not included in this release.