Documentation menu
Start here
IntroductionGetting startedWrite an agentProject anatomyUnderstand Ayjnt
Harness engineeringTwo runtimesHuman interfacesHow agents workHost bridgeAgent capabilities
Callable methodsState & SQLiteSessions & memorySchedulingWorkflowsDurable executionInter-agent RPCSub-agentsToolsInterfaces & integrations
Browser clientRouting & middlewareVoiceBrowser toolsMCPEmailObservabilityCLI
Command overviewnewdevrunbuildcompilemigratedeployAPI reference
AgentAgentClientWorkflow classesLocal & cloudMigrationsExamplesDurable Object migrations
Keep storage identity stable while the file tree and class names evolve.
The lockfile is production history
.ayjnt/migrations.json is generated but committed. It records append-only Durable Object migrations so every developer and deployment agrees on what already exists.
Run ayjnt migrate to preview, then ayjnt build to stage an intentional change.
Renames and deletion
Give long-lived agents a stable exported agentId before renaming their folder or class. Ayjnt can then preserve storage identity across the rename.
Removing an identity can produce a destructive class deletion. Treat migration diffs like database schema changes and review them before deploy.