Agent Identity

Every agent in Coral is assigned a unique identity, which includes:

An Agent ID

Capability metadata

Tool declarations

Memory scope definitions

This identity allows agents to be registered, discovered, and called upon by other agents or users. Agent identity is foundational for determining permissions, enabling capability discovery, and maintaining accountability in task execution.

Agent Roles

Roles describe an agent’s function within a system. These can range from narrow task agents (e.g., summarisation, translation) to broader control agents that coordinate or delegate tasks across threads.

Roles are declared during agent registration and are critical for dynamic composition, secure team formation, and task routing. Role-based metadata is leveraged by the Coral Server and other agents to select appropriate collaborators for specific tasks.

Memory Scoping

Memory within Coral is explicitly scoped to preserve isolation, ensure context integrity, and support collaboration. There are three primary types:

  • Private Memory: Only accessible by the agent that owns it. Used for long-term state, learning, or caching.
  • Thread Memory: Shared among agents participating in a specific communication thread. Enables collaboration on shared tasks without exposing unrelated data.
  • Session Memory: Ephemeral memory scoped to the duration of a specific task or interaction. Useful for temporary state without persistence.

The memory model is enforced at the protocol level, and each message includes context about memory scope, access permissions, and participating entities.

Together, identity, roles, and memory scoping provide the foundation for secure, composable, and interpretable agent collaboration in the Coral Ecosystem.