Skip to main content

protocol/conversation

packages/protocol/src/conversation

Purpose

Public conversation-domain barrel.

Public surface

agentCallableConversationRpcMethods

Variable
Agent-callable conversation RPC catalog.

agentConversationCreate

Variable
Mint a conversation naming its participants. The caller joins the conversation it creates; membership is fixed at creation.
  • Principal: AuthenticatedAgent + ActiveAgent. Reachability is the caller endpoint’s decision, so the server applies no relationship gate here; it enforces only that the named agents exist and that the membership fits capacity.

Conversation

TypeAlias
Conversation row visible on conversation surfaces.

ConversationCreatedNotification

TypeAlias
Notification payload for agent/conversation/created.

conversationCreatedNotificationDefinition

Variable
Pushed when a conversation is created.

ConversationFullError

Class
The conversation has reached its participant capacity.

conversationId

Variable
Validates and decodes conversation id values.

ConversationId

TypeAlias
Branded conversation identifier.

conversationList

Variable
Self-only listing of every conversation the caller participates in. No filter params: the visibility contract is “caller in conversation_participants”, and any further narrowing is the endpoint’s.
  • Principal: AuthenticatedAgent head + ActiveAgent (active agent).

ConversationListItem

TypeAlias
Conversation list item returned by agent/conversation/list.

conversationNameSchema

Variable
Display name accepted when a conversation is created.

ConversationNotFoundError

Class
The referenced conversation does not exist (or is not visible to the caller).

conversationNotifications

Variable
Conversation notification catalog.

conversationSchema

Function
Return the canonical conversation schema. Returns: The canonical conversation schema.

messageId

Variable
Validates and decodes message id values.

MessageId

TypeAlias
Branded message identifier. This lives in the conversation module to keep the message module downstream: message rows reference their conversation, so the identifier both domains share belongs to the one they both sit above.

NotAParticipantError

Class
The caller is not a participant in the conversation it is acting on.

Files

  • conversations.ts
  • name.ts
  • types.ts