Skip to main content
OpenBunny maintains a contact system that links identities across messaging channels into unified profiles.

How it works

When the agent processes a conversation, it identifies the sender and either matches them to an existing contact or creates a new one. Contacts can have multiple identities across different channels.

Identities

Each contact can have identities from any channel:

Contact profiles

Contacts are stored with:
  • Name and slug (URL-friendly identifier)
  • Organization and role
  • Email and phone
  • Identity list (channel-specific IDs)
  • Profile notes (markdown, stored in data/contacts/)

Agent tools

The LLM agent can manage contacts during conversation processing:
  • lookup_contact — search by name or identity
  • upsert_contact — create or update a contact profile
  • link_contact_identity — add a new channel identity to an existing contact
  • merge_contacts — consolidate two duplicate contacts into one

API