Skip to main content
An Agent is a configurable AI agent definition in MemoryLake. Each agent has a model, system prompt, capabilities, and execution policies. When you create an agent, MemoryLake automatically generates an Actor identity for it — because actors are the subject of memory, and agents need to accumulate knowledge just like human users do.

Key Concepts

Versioning

Agent configuration is versioned. When you change the model, system prompt, or policies, you create a new version rather than modifying the existing one. This gives you a history of configurations and the ability to roll back. Identity fields (name, description, metadata) are updated in place via Update Agent — they don’t create a new version.

Workspace Binding

Agents are created globally, then bound to specific workspaces. An agent can only operate within workspaces it is bound to.

Agent Memory

An agent accumulates facts of its own — what it has learned, and how it is meant to behave. They live on the agent, read by its agent id within a workspace:
You can list, read, add, update and forget them, read their change history, and review and resolve conflicts between them — see Agent Facts and Agent Memory Conflicts. Address them by agent id: the actor endpoints do not accept an agent. For how agent facts sit alongside the other scopes, see Memories.

Forking

Fork an agent to copy its latest version into a new, independent agent with its own actor. The copy starts at version 1 and does not take the source agent’s version history, metadata, workspace bindings or memory.

A2A Protocol

MemoryLake agents are accessible via the standard A2A (Agent-to-Agent) protocol. Use any A2A-compatible client to send messages to an agent, with MemoryLake’s metadata.memorylake extension providing memory context (actor identity, project bindings, model overrides).

Endpoints