Inbox

Read and answer every lead conversation in one queue, with the contact and Gene's controls beside the thread.

Where to change itInbox
On this page

The Inbox is where every lead conversation lands, so you can read and answer leads in one place. WhatsApp is the live channel today, so in practice the Inbox is your WhatsApp queue plus any conversation you start by hand.

Gene can reply in these conversations on its own. Every conversation has its own Gene switch in the composer that decides whether Gene or your team is answering. See AI replies and handover.

Every button, icon, badge and status on the screen is listed under Details below.

How the screen is laid out#

The screen has three columns:

  • Conversation list (left): your threads, newest activity first. The first one opens automatically when the page loads.
  • Message thread (middle): the full message history with that contact and the composer for replying. Until you pick a thread it reads "Select a conversation".
  • Panel rail (right): tap an icon to open Contact, Recent Activity, Tasks, Notes, Appointments, or Documents for whoever you are talking to. Tap it again to close the panel. Every field in each panel is under Right-side panels below.

Work through your conversations#

  • Open a conversation (left list): selecting a row opens the thread and clears its unread count for you. Each teammate has their own unread badges, so your reading a conversation leaves it unread for everyone who has not opened it yet. Opening does not move it off Open: it stays there until someone replies or marks it handled. The list updates in real time as new messages arrive.
  • Switch tabs (tabs above the list): Open, Handled, Starred, Archived. Open is the default.
    • Open: the lead spoke last and is waiting on a reply. A conversation also lands here when a message to the lead fails for good (an invalid WhatsApp number, a rejection, an email bounce), until the next message goes through. The number on Inbox in the left nav is how many conversations are on Open, so it goes down when you or Gene reply, or when you mark one handled, not when you just open it.
    • Handled: you or Gene spoke last. Conversations you mark as handled move here too.
    • Archived: the conversations you closed. Archived conversations are hidden from Open but never deleted.
  • Search (search chip below the tabs): opens the command palette to find a thread by name, phone, or email. Matches are highlighted in the list.
  • Star a conversation (star on a row, or in the thread header): keeps it on the Starred tab.
  • Mark as handled or Reopen, assign, snooze, close, or delete: right-click a row for the per-row menu, or select rows to act on several at once.
  • Mark as handled moves a conversation from Open to Handled when nobody needs to reply (a lead who wrote "thanks", say). Reopen puts a handled one back on Open. The choice holds until the next message: when the lead writes again, or someone replies, the conversation follows the messages again.
  • Collapse the list (collapse icon, list header): shrinks the list to a 64px avatar rail so the thread gets full width. The list also auto-collapses to the rail when the AI sidebar is open on a narrow screen.

Reply to a lead#

  • Reply (composer, bottom of the thread): type and press Enter. The toolbar also lets you:
    • let Gene draft a reply for you (AI drafts, the sparkle icon)
    • attach a file or add an emoji
    • record a WhatsApp voice note
    • translate your draft into the lead's language
  • Quote one message: to answer one particular WhatsApp message, hover it and press the reply arrow so your reply quotes it.
  • Leave an internal note (Internal Comment toggle, composer): a note visible to your team only, never sent to the contact. You can @mention teammates to notify them.
  • Turn Gene on or off for this conversation (the Gene switch, beside Send): hand a thread to your team or back to Gene.

See Composing messages for every composer tool.

Start a new conversation#

Click the pencil icon in the list header to open New conversation. It has one search box ("Search a name, number, or @username").

  • A matching contact is listed once for each channel that can reach them. Picking one creates the conversation and opens it.
  • With no match, a typed phone number can be messaged on WhatsApp straight away (and on Telegram where it is on).
  • Gene App checks the number and shows "On WhatsApp" with the person's profile photo when they have one, or "Not on WhatsApp".
  • An @username offers Telegram, Instagram or Messenger where those are on.
Note

If Restrict lead visibility is on for you and the number or handle belongs to a colleague's lead, Gene App says "This number belongs to a lead assigned to someone else. Ask a manager to reassign it." instead of opening their conversation. A new number starts a lead of your own.

See what is about to go out#

The clock icon in the list header opens Scheduled, a popup over the Inbox with every message waiting to go out to a lead, from Gene's queued follow-ups to welcome messages still to come. See Scheduled.

Inside a conversation, the same messages for that lead wait at the bottom of the thread as dashed bubbles, each with "Gene sends this" and its time on the lead's own clock, in their timezone. A queued follow-up has Cancel right on the bubble.

Filter the list#

The funnel icon in the list header opens the filter panel.

  • Only unread, Only mine, New senders: three switches, alongside the channel chips. Each narrows the tab you are on rather than replacing it.
    • Only unread narrows whichever tab you are on to conversations you have not read yet. A teammate opening a conversation does not take it off your list. So you can ask it of Handled (Gene answered, you have not looked) as well as of Open.
  • Channel: All channels, or a single channel. Only connected channels appear; WhatsApp is always available.
  • Lead attributes: the same cross-page filter used on Contacts and Pipeline (source, stage, temperature, motive, timeline, budget, owner).
    • Source is one dropdown: pick one or several sources from the list.
    • The popover only applies when you press Apply.
    • The funnel icon shows a badge with the number of active filters.
  • Saved filters (footer of the filter popover): name the current filter as a view and reuse it later.
    • You can share it with the team, load it, update it when it drifts from what is saved, or delete it.
    • Saved views belong to the Inbox.

The sort is fixed: always newest first by last message time. There is no manual sort control. The list pages in as you scroll and shows "You're all caught up" at the end.

No channel connected yet#

When no messaging channel is connected, the list shows "Connect a messaging channel" with a Connect WhatsApp button that opens Settings > Communication > WhatsApp. Hook up WhatsApp, email, or Telegram so leads can reach you and Gene can reply in your voice.

When you can run a test, it reads "See your agent in action" instead, with a Test your agent button: start a practice lead and watch your agent answer it, no WhatsApp needed. Connect a channel when you are ready for real leads.

Tips#

  • The first conversation opens by itself, so you can start reading the moment the Inbox loads.
  • Opening a thread clears its unread count for you (not for your teammates) but leaves it on Open. When a conversation needs no reply, use Mark as handled from the thread header or the right-click menu so it leaves Open and the Inbox count. To bring one back for later, use Reopen.
  • First thing in the morning, turn on Only unread in the filter panel to see just what came in overnight, then turn it off to get the whole queue back.
  • A new WhatsApp number you have never spoken to shows up under New senders, and Gene waits for you to classify it before replying. See AI replies and handover.

Details#

A control-by-control map of the Inbox, for when you need to look up what a button, icon, badge or status means. WhatsApp is the live channel. Controls and channels that belong to connectors not enabled for your account do not appear (see Channels). The composer at the bottom of the thread has its own page: every control on it is under Composing messages.

Screen layout#

The screen is three columns plus a far-right rail:

  • Conversation list: 300px, or a 64px avatar rail when collapsed.
  • Message thread: at least 400px wide.
  • Context panel (optional): 320px, or 260px when compact.
  • Panel rail: the icons that open each panel.

Conversation list#

List header#

  • Collapse / expand list. Panel icon. Toggles the list between the full 300px column and the 64px avatar rail. Auto-collapses when the AI sidebar is open on a screen 1440px or narrower.
  • Filter. Funnel icon. Opens the filter popover: channel chips and three switches on top, the lead-attribute filter below, and Saved filters in the footer. A count badge on the funnel icon shows how many filters are active. Every option is under Filters, sorts and views.
  • New conversation. Pencil icon. Opens the "New conversation" dialog (see Start a new conversation).
  • Scheduled. Clock icon. Opens Scheduled as a popup over the Inbox: every message waiting to go out to a lead. Click a lead's name in it to open their conversation.
  • Filtered emails. Envelope icon with a cross, beside the clock (in the cleaner Inbox layout it is under More). Shows to managers and admins while Only show emails from leads is on, or while filtered email is still waiting. Opens a popup with the emails that switch kept out of the Inbox and why; Move to inbox makes the sender a contact, puts the email in their conversation and lets that sender straight through from then on. Gene AI does not auto-reply to a moved email. A link to /inbox?filtered=1 opens the Inbox with it already up.
  • Filter tabs. Open (default), Handled, Starred, Archived. A tab is correct across every page of results, not just the loaded ones.
  • Search chip. "Search by name, phone, email...". Opens the command palette; matches are highlighted in rows. Search runs at two or more characters.
  • Select all. Checkbox above the list; selects or clears every loaded row.
  • Sort. Fixed, newest first by last message time. No sort control.
  • Infinite scroll. The list pages in 30 at a time and shows "You're all caught up" at the end.
  • Realtime. The list refreshes automatically when conversations change.

Each row#

  • Avatar (doubles as select). Hovering the avatar shows a check; clicking it selects the row without opening the chat. Selecting rows reveals the bulk action bar.
  • Name. Brighter when unread. Falls back to "WhatsApp Contact" and similar when the name is unknown.
  • Gene Support. A purple badge on the preview line when the contact is one of Gene's own phone numbers, so conversations with Gene support are never mistaken for your leads. The same badge shows in the thread header, the contact panel, on the Contacts list and on the contact's page.
  • WhatsApp number chip. A small chip with a phone icon naming the number replies go out from: the number the lead last wrote to (its name, its last four digits, or API number for a Meta API number).
    • Shows whenever the workspace has more than one WhatsApp number.
    • The same chip shows in the thread header. See Which number replies.
  • Relative time. now / Nm / Nh / Nd, then a date past a week.
  • Star. Click to star or unstar; it updates instantly. Filled when starred.
  • Preview / typing. The last message preview, or animated dots and "typing" while the contact is typing, or "No messages".
  • Unread badge. The number of messages you have not read yet. Opening the thread clears it for you only: each teammate has their own badge.

Row right-click menu#

  • Mark as handled / Reopen. Mark as handled on a conversation that is waiting on a reply, Reopen on one that is not. Moves it between Open and Handled until the next message.
  • Star / Remove star.
  • Assign to. Submenu of team members, plus Unassign.
  • Snooze. Later today, Tomorrow, Next week.
  • Close / Reopen. Closes the conversation, or reopens a closed one.
  • Delete. Opens a single-conversation delete confirmation.

Bulk action bar#

When rows are selected, the search row is replaced by "{n} selected" with:

  • Mark as handled. Check-circle icon. Moves every selected conversation to Handled.
  • Reopen. Undo icon. Moves every selected conversation back to Open.
  • Assign to. Dropdown of team members.
  • Delete. Asks for confirmation, then permanently deletes the message history. The contact is unaffected and can message again. Cannot be undone.
  • Clear. Deselects all.

Thread#

Thread header#

  • Contact name. Shows, when they apply:
    • a typing indicator when the contact is typing
    • the Gene Support badge when the contact is one of Gene's own numbers
    • the WhatsApp number chip, where the workspace has more than one WhatsApp number
  • Search in conversation. Search icon. Opens an in-thread search bar with a "{current} / {total}" counter. Step with the up/down buttons, Enter / Shift+Enter, or Arrow Up / Down; Esc closes. Matches are highlighted in place.
  • Call on WhatsApp. WhatsApp icon right after search. Rings the contact on WhatsApp from Gene App, from the number the thread is on, and you talk through your computer (see Channels).
    • Shows on every WhatsApp thread.
    • When that number does not have calling yet, it opens Turn on WhatsApp calling with the price in credits a month, for a Manager to turn on.
    • A thread not on a WhatsApp via QR number is told calling needs one.
  • Call with CloudTalk or Call by phone. Phone icon right after Call on WhatsApp, shown when the contact has a phone number. These are the same two call buttons as on the contact page. When CloudTalk is connected under Settings > Communication > CloudTalk it reads Call with CloudTalk and opens the CloudTalk desktop app with the number ready (see CloudTalk). Otherwise it reads Call by phone and opens your phone app.
  • Star / Unstar. Star icon.
  • Mark as handled / Reopen. Check-circle icon on a conversation waiting on a reply (moves it to Handled), undo icon otherwise (moves it back to Open). The next message clears the choice.
  • Translate conversation. Languages icon. Rewrites every bubble into the chosen language: Original, English, Arabic, Spanish, French, German, Portuguese, Italian, Chinese (Simplified), Russian, Hindi, Indonesian. A banner then offers "Show original" / "Show translation" and a clear (x).
  • Archive / Unarchive. Archive icon, which changes to a restore icon while the conversation is archived. Toggles status between open and closed. Archiving with E shows here straight away too.
  • More actions (three dots). The rest, named in words:
    • Rerun Gene on the last message. Asks Gene to take another pass at the latest message.
    • Check for missed reply. Only on WhatsApp threads with a QR-linked number. Pulls any message the provider may have queued and reports how many were recovered.
    • Call on WhatsApp. Only on a WhatsApp thread with a phone when Gene App cannot place the WhatsApp call itself (no Call on WhatsApp button above). Opens wa.me for the number in a new tab.
    • Open contact. Opens the contact's page.
    • Block sender. WhatsApp and Telegram threads. Blocks the number, with a confirm.

Banners above the thread#

  • New sender. "New sender, not in Gene App yet" on an unknown WhatsApp contact. It could be a lead from a referral or ad, or someone personal. Gene will not auto-reply until you act (see New senders).
    • Not now closes the thread.
    • Block blocklists the number and removes the contact, with a confirm.
    • Add as lead classifies them as a real lead.
  • Snoozed. "Snoozed until {time}" when the conversation is snoozed.
  • Conversation summary. A Gene-written summary, shown once the thread has at least five messages. Close it with the x; reopen with the "Show summary" pill in the thread.
  • Translation active. Shows the target language with "Show original" / "Show translation" and a clear control while a conversation translation is on.
  • WhatsApp window closed. Warns when the 24-hour WhatsApp window has closed and free-form messages cannot be delivered until the lead messages again or a template is sent.
  • WhatsApp number restricted or disconnected (QR numbers, only where WhatsApp message actions are enabled for your account). When WhatsApp has restricted the number this conversation runs on, a strip says so in WhatsApp's terms, for example "This number can't message new people for now", with a countdown ("Lifts in 3h 20m") when WhatsApp gives an end time. When the number is disconnected, the strip says why. Hover it for what to do next.
  • Why Gene did not reply. See the next section.

Why Gene did not reply#

This banner shows when the newest thing on a thread is a blocked reply rather than an answer, so a silence is never left unexplained. It names the cause in plain terms and links to the fix where there is one. It clears itself as soon as a reply goes out.

Causes with a fix link or action:

  • No credits: Pick a plan or top up, which opens Billing.
  • A failed billing check: Check billing.
  • Auto-reply switched off for the workspace: links to AI settings.
  • Gene switched itself off because the last message to this lead did not send: reply yourself, and turn Gene back on with the switch below the composer to resume.

Other causes it can name:

  • Gene switched off for this contact.
  • An earlier message still on its way.
  • WhatsApp billing missing on Meta's side.
  • A pause after too many automatic replies (several unanswered rounds in an hour, or 20 in a day).
  • An open handover waiting on you.
  • Do not contact switched on for this contact (switch it off in the contact panel to let Gene reply again).
  • A closed 24-hour Messenger or Instagram window.
  • A thread in review.
  • An attachment Gene could not read.
  • A reply held back because it repeated Gene's last message. Gene redrafts once; if the new draft is still a copy of what the lead already read, nothing is sent, the credit for that reply goes back and a ticket is opened for the Gene team. Answer the lead yourself.

Message bubbles and statuses#

  • Delivery status (hover an outbound bubble). Send time, an author icon (Gene mark for AI, person for a teammate), and one of Sending..., Sent, Delivered, Read, or Failed.
    • Failed shows a reason tooltip and a "Send again" action. For the first 24 hours after Meta held a message back for its per-person marketing limit, there is no "Send again": Meta says a resend that soon fails too and can keep the lead blocked another day, and Gene retries its own templates on a schedule. A message Gene held back because it was only internal tool-call text (JSON or a function name) never gets a "Send again" either; write the lead a reply yourself.
    • Example reasons: a closed 24-hour WhatsApp window, no recipient, an unconfigured channel, or Meta holding back a marketing message to that one lead (which leaves Gene on).
  • Quoted replies. When a message answers an earlier one (the lead replied to a specific message on their phone, or you used Reply), the quoted text sits at the top of the bubble, the way WhatsApp shows it. Gene sees the quote too, so it knows which message the lead is answering.
  • Media bubbles. Images render inline and open in a lightbox on click. Documents render as a download link with the filename. Voice notes render with an audio player and, when available, the transcribed text. Video renders inline. Media that failed to load falls back to a labeled placeholder.
  • Interactive replies. When a contact taps a WhatsApp button or list option, the bubble shows a "Tapped button" or "Tapped list option" chip.
  • Reactions. An emoji the contact (or your team) put on a WhatsApp message shows as a small chip under that bubble.
  • Locations, contact cards, polls and group invites (QR numbers). These arrive in the thread as a short text line, such as the place's name or the contact's name. Where WhatsApp message actions are enabled for your account, they show as cards instead:
    • Location: the place's name and address (or "Dropped pin" with coordinates), Open in Maps, and a "Live location" tag on a live share.
    • Contact card: the name, numbers and emails. Start chat beside a number on WhatsApp opens a conversation with that person.
    • Poll: the question and its options. Votes are not shown.
    • Group invite: the group's name, tagged "Expired" once the invite lapses. WhatsApp group chats are not in the Inbox, so there is no join button.
  • Edited and deleted messages (QR numbers, only where WhatsApp message actions are enabled for your account).
    • Edited: shows in the bubble when the contact or your team changed a message after sending it. Click it for Edit history: every earlier version with the time it was replaced, then the current text.
    • Deleted by sender or Deleted by us: shows when a message was deleted for everyone on WhatsApp. The text stays readable in Gene App with the badge, unless your workspace chose to hide it (see Deleted WhatsApp messages), in which case the bubble reads "This message was deleted".
    • Gene treats a message deleted for everyone as taken back: it never quotes it to the lead or builds a reply on it.
  • Internal notes. Render full width as an amber "Internal note" card with the author and time; @mentions are highlighted. Never sent to the contact.
  • System events. Automation and system events render as centered pill rows, not bubbles.
  • Separators. Date headers (Today, Yesterday, then a date), a time stamp after a 10-minute gap, and a "Subject:" marker when an email sub-thread starts. Messages from the same sender are grouped only within a burst: a message followed by a new day or a 10-minute gap keeps its own time and sender row.
  • Imported history. Messages brought over from another CRM (see Transfer from another CRM) always show their time. Every message your side sent there carries one label, "Sent in" the old CRM (for example "Sent in Gene 2.0"), never Gene AI or a teammate's name, because the import cannot reliably tell who or what sent it. Message info shows the same in its From row.
    • Gene 2.0 kept campaign messages as a template with several wording options ("{Hi|Hey|Hello} ..."), not the exact words each lead got. The bubble shows the first option of each choice.
  • Pending sends. Dashed bubbles at the very bottom: what Gene is about to send. See Scheduled.
  • Auto-translated inbound. Inbound messages not in your workspace's primary language are translated automatically, with the original shown beneath. Messages already in your primary language are left as they are and cost nothing.

Per-message right-click menu#

  • React. WhatsApp messages only. A row of six emoji at the top of the menu sends that reaction to the contact; clicking the one you already sent takes it back, as on the phone. On the official Meta API a reaction only goes out inside the 24-hour window. On a QR number, reactions only send where WhatsApp message actions are enabled for your account; otherwise Gene App says the number cannot send reactions.
    • More reactions... (only where WhatsApp message actions are enabled): pick any other emoji. Click your own reaction chip under the bubble to remove it.
  • Edit (QR numbers, only where WhatsApp message actions are enabled). On a text message your team sent, for 15 minutes after sending, which is WhatsApp's own limit. The contact sees the new text with an Edited label.
  • Delete for everyone (QR numbers, only where WhatsApp message actions are enabled). On a message your team sent, for about 2 days after sending, which is WhatsApp's own limit. After a confirmation it is removed from the contact's WhatsApp; in Gene App it stays, marked Deleted by us.
  • Reply. WhatsApp messages only (not failed ones). Quotes the message in your next reply; the same action sits beside the bubble as a reply arrow on hover. The composer shows "Replying to ..." with an x to cancel.
  • Copy message. Copies the text and shows "Copied".
  • Forward. Opens the "Forward message" dialog: a preview, a contact search, and a list of matches. Picking one creates a conversation if needed and sends the text.

Deleting a single message#

  • A scheduled message or follow-up that has not gone out yet is cancelled from Scheduled (the x on its row).
  • A message already in a thread, including one the lead sent you, can be removed from Gene App: ask Gene AI in the sidebar ("delete the message that says ..."). It confirms first, then deletes that one message; the rest of the conversation stays.
  • Deleting it in Gene App does not unsend it from the lead's own WhatsApp. To take back a message your team sent on a QR number, use Delete for everyone in its right-click menu where that is enabled (see Per-message right-click menu).
  • To wipe the whole conversation, use Delete on the conversation (see Bulk action bar).

Popups and dialogs#

  • New conversation. Pencil icon. One search box ("Search a name, number, or @username"). What it offers is under Start a new conversation.
  • Filtered emails. Envelope icon with a cross in the list header. Emails from new senders that did not look like leads, each with Move to inbox. See List header.
  • Forward message. Per-message menu. A message preview, a contact search ("Search contacts to forward to..."), and the matching contacts.
  • Gene is on for this conversation. Opens when you send while Gene is replying there. "Turn off Gene & send" switches Gene off for that conversation and sends your message; "Keep Gene on" sends nothing.
  • Turn Gene off for this conversation? Confirms before switching Gene off.
  • Delete conversation(s). From the bulk bar or a row's right-click menu. Warns it permanently deletes history and cannot be undone.
  • Block this number? From the New sender banner. Adds to the blocklist and removes the contact; cannot be undone.
  • Outside the 24-hour window. Opens when you send on WhatsApp more than 24 hours after the contact last replied, when WhatsApp does not allow a free message. Submit the message to Meta for approval as a template, and Gene App sends it automatically once it is approved (usually within minutes).

Right-side panels#

The far-right rail opens one panel at a time: Contact, Recent Activity, Tasks, Notes, Appointments, Documents. Each reads the contact behind the open conversation. Close a panel with the x in its header or by tapping the rail icon again.

Contact panel#

Opened from the rail (Contact). It is the same Details panel as the contact page, so fields save on their own: text as you type, with a Saving... / Saved marker by each label, and dropdowns as soon as you pick. See Details tab.

  • Header. The contact's avatar, name, a "Gene Support" badge when the contact is one of Gene's own numbers, and an "On WhatsApp" badge when the contact is confirmed on WhatsApp.
    • The avatar is the contact's WhatsApp profile photo, fetched when Gene App checks their number or when they write to you on WhatsApp, if they have no photo yet and their photo is public.
    • A lead who writes in on WhatsApp is marked On WhatsApp straight away. A contact with no name yet takes the name from their WhatsApp profile; a name you or a form already gave is never replaced.
  • Owner. Dropdown to assign the conversation to a team member ("Assign..." when unset).
  • Phone, Email, First name, Last name. Editable.
  • Promoted captured fields. Budget, Timeline, Project, Motive, Location (timezone). Filled by Gene from the conversation; "Not set" when empty.
    • Project, Motive, and Location are read-only.
    • Budget and Timeline are editable inline. They write to the contact's own fields, so the edit also shows on the contact page.
    • Objection, Lack of knowledge and Handover reason sit in the Qualification section: what the lead objected to and how Gene handled it, questions Gene could not answer, and why it handed over. Gene fills them from the conversation and you can edit them.
  • Other imported fields. A collapsible section listing any extra imported values, shown when present.
  • Do not contact. A switch. While it is on, no messages go to this contact: no Gene replies or follow-ups, no campaigns, Push this project or welcome flows, and the composer refuses to send with "This contact is on Do not contact." Switch it off to message them again. See Do not contact.
  • Language. Detected from what the lead writes ("English (not detected yet)" until then), and you can change it. Their appointment emails and WhatsApp messages are translated into it.
  • Footer. "Created on" and "Created by", and a "View full contact" link.

Recent Activity panel#

Opened from the rail (Recent Activity). A read-only timeline of everything tied to the contact, grouped by day (Today, Yesterday, then the date).

  • Entries. Messages (with an inbound or outbound arrow), notes, tasks, appointments, and system events, each with an icon, a title, an optional detail line, and a relative time.
  • No actions. This panel only shows history. Add tasks, notes, and appointments from their own panels.
  • Empty state. "No activity yet".

Tasks panel#

Opened from the rail (Tasks). Tasks for the contact, split into a pending list and a "Completed" section.

  • Add task. "Add task" opens an inline form. "Create task" saves; "Cancel" or Esc closes the form. Fields:
    • Title, and Description (optional)
    • Type: Follow up, Call back, Viewing, Document, Custom
    • Due date (date and time)
    • Assign to: a team member, or you by default
    • Recurrence: No repeat, Repeat daily, weekly, monthly, yearly
  • Complete a task. The checkbox toggles a task between pending and completed. Completed tasks move to the Completed section and read with a strike-through.
  • Delete a task. A trash icon on hover removes the task.
  • Per task. Shows the title, the description, the due date, and "Repeats {daily/weekly/...}" when recurring.
  • Empty state. "No follow-ups for this contact", with an "Add a task" action. Use tasks for callbacks, send-docs reminders, or anything you want Gene to nudge you about.

Notes panel#

Opened from the rail (Notes). Free-text notes on the contact, newest first.

  • Add note. "Add note" opens a text box. Cmd/Ctrl+Enter (or "Save note") saves; Esc cancels.
  • Edit a note. A pencil on hover opens the note for editing. Your changes save as you type, with a Saving... / Saved marker, or "Not saved. Try again" if a save fails. Done or Esc closes the editor once the note has saved. A note cannot be emptied (delete it instead): with the box empty, Done keeps the last saved text.
  • Delete a note. A trash icon on hover removes the note.
  • Gene-written notes. Notes Gene wrote during a conversation show a "Gene" pill and read "Gene wrote a note"; your own notes show your name. Each note shows a relative time.
  • Empty state. "No notes yet", with an "Add the first note" action. Notes hold preferences, budget, viewings, or anything Gene should know for next time.

Appointments panel#

Opened from the rail (Appointments). Appointments with the contact, newest first.

  • Book appointment. "Book appointment" opens an inline form. "Create" saves. Fields:
    • Title
    • Type: Appointment, Property viewing, Call, Follow up, Other
    • Start, and End (auto-filled to one hour after the start, still editable)
    • Location (optional)
  • Syncs to Google Calendar. Booking posts the event to the host's Google Calendar, not just the contact record, so it appears on the connected calendar.
  • Per appointment. Shows the title, the date and time range, the location (a map pin, or a video icon for a link), and a type chip.
  • Empty state. "No appointments with this contact". A booking you make here syncs to your calendar.

Documents panel#

Opened from the rail (Documents). Files attached to the contact, both the ones your team uploaded and the ones the lead sent with a form's File upload question. The contact page shows the same list under its Files tab.

  • Upload file. "Upload file" picks one file at a time (max 25MB). A spinner shows while it uploads.
  • Preview. Click the thumbnail, the filename or the eye icon to open the file in a new tab.
  • Download. The download icon saves the file under its original name.
  • Delete. A trash icon removes the file.
  • Per file. A thumbnail (the picture itself for an image, a file-type icon for a PDF, video or other file), the filename, the size, and the upload date. A file the lead sent with a form also reads From the lead, with a line naming the question and the form, such as "Passport, sent with Owner valuation request".
  • Empty state. "Attach a doc to this contact" and "Max 25MB per file". Use it for contracts, IDs, brochures, invoices.

Filters, sorts and views#

All filters live in the funnel popover in the list header, except the tabs and search.

  • Tabs: Open (default), Handled, Starred, Archived.
  • Channel: chips for All channels, then one per connected channel (WhatsApp always present).
  • Switches: Only unread, Only mine, New senders. Each narrows the active tab instead of replacing it, so Only unread can be asked of Handled as well as Open. The switches apply immediately and are not part of a saved filter.
  • Lead-attribute filter: the cross-page filter shared with Contacts and Pipeline: source, stage, temperature, motive, timeline, budget, owner. Each is multi-select and narrows the list.
    • Source is a single dropdown ("Any source" until you pick) listing the workspace's sources with their icons. Tick one or several. A search box appears once there are more than 8.
    • The popover edits a draft and only takes effect on Apply. Reset clears the draft; Cancel discards it.
    • A count badge on the funnel icon shows how many filters are active.
  • Saved filters: a footer in the same popover. Save the current filter as a named view, optionally share it with the team, load it, update it when it drifts from what is saved, or delete it. Saved views are scoped to the Inbox.
  • Search: by name, phone, email, at two or more characters, via the command palette.
  • Sort: fixed, newest first by last message time.

Keyboard shortcuts#

  • J / K move to the next or previous conversation. Opening one this way leaves the cursor where it was, so letters typed afterwards never land in that lead's message box. It marks the conversation read, the same as clicking it.
  • R puts the cursor in the open conversation's message box.
  • E archives the open conversation, or unarchives it from Archived. The archive button in the chat header and the tabs follow straight away.
  • / jumps to the conversation search box.
  • None of these fire while you are typing in a field, while a dialog, menu or popover is open, or while an input method is composing.
  • Enter sends; Shift+Enter new line.
  • Tab accepts a Smart Compose suggestion; Esc dismisses it.
  • @ opens the teammate picker in note mode.
  • In conversation search, Enter / Shift+Enter and Arrow Up / Down step through matches; Esc closes.