Documentation

Contacts

A contact is a person your assistants can talk to outside the widget — someone you call, text, or email. Each contact holds their phone number and email, their per-channel consent, whatever the AI has learned about them, and the list of assistants they belong to.

Opening the page

Contacts is not in the sidebar. Reach it either way:

  • Press ⌘K (Ctrl-K on Windows) and search for contacts. The palette lists the Contacts page, and also matches individual contacts by name.
  • Go to /contacts directly.

The list

Contacts list showing name, channels, status, assistants, memory and last-seen columns

The table shows 50 contacts per page, newest first, with a pager at the bottom when there is more than one page.

Column What it shows
Name Name and company. Falls back to the email or phone number when there is no name.
Channels The phone number and email on file, each tagged No call, No SMS, or No email when that channel is opted out.
Status Active or Invalid.
Assistants How many assistants this contact is assigned to.
Memory A one-line preview of what the AI has recorded — line breaks are collapsed and long notes are truncated. An AI off tag means AI memory writes are turned off for this contact.
Last seen Time since the last interaction.

The search box matches name, phone, email, and company. The filter next to it narrows the list to All contacts, Active, Invalid, or Has opt-outs — the last one shows every contact with an opt-out on any channel.

Click a row to open the contact. Click the trash icon at the end of a row to delete it.

Adding a contact

Paid feature. Add credits to your account to unlock it. See Billing and credits.

Click Add contact and fill in the dialog:

Field Required Notes
Name Yes
Phone Yes Must be a valid number. You can type it any way — +1 415 555 0132, (415) 555-0132 and 4155550132 all work — and it is normalized and stored in E.164 form (+14155550132).
Email No
Company No

Click Create. If a contact with that phone number already exists, the dialog says so instead of creating a duplicate.

Contacts are also created for you: an inbound SMS from an unknown number creates one when the assistant receiving it is set to accept messages from anyone.

The contact detail

Clicking a row opens the contact in a modal. Its identifier is shown under the title. Edit anything you like, then click Save — nothing is written until you do. Cancel discards your edits.

Details

Name, Email, Phone (E.164), and Company. Changing the phone number to one already in use by another contact is rejected.

Three switches, one per channel: Do not call, Do not SMS, Do not email. Turning one on records the moment consent was withdrawn.

You can flip these by hand, and the assistant sets them on request: when a contact says "stop texting me" or "unsubscribe me" during an inbound SMS, email, or call, the assistant records the opt-out itself. That happens regardless of the memory setting below — a withdrawal of consent is always recorded.

Record state

Active or Invalid (bad number / bounced email). Mark a contact invalid when their phone number or email address is unreachable. This is not a consent setting — consent lives in the switches above.

Memory

Free-text notes about the contact: preferences, context, factual details worth remembering for next time.

Memory is written from real inbound interactions only — inbound SMS, inbound email, and completed phone calls. After one of those, the AI decides whether anything is worth keeping and appends a short note. Widget chat never writes memory.

Turn Allow AI to update memory off to stop the AI writing to this contact. The list then shows an AI off tag on the row. You can still edit the text yourself at any time; it holds up to 10,000 characters, and the modal shows when it was last updated.

Note

Turning off AI memory does not turn off opt-out recording. Do-not-call, do-not-SMS, and do-not-email are still set when a contact asks.

Assigned assistants

The assistants this contact belongs to, each with its role and the channels it is allowed to use (SMS, Call, Email). Click Remove to unassign one.

To add an assignment, pick an assistant from the Assign to assistant… list and click Add. Assistants already assigned are not offered. Assignment takes effect immediately — it does not wait for Save.

Deleting a contact

Click the trash icon on the row and confirm in the Delete contact dialog. The record is soft-deleted: it disappears from the list, but the underlying record is kept. Adding a contact with the same phone number later restores it rather than creating a new one.