Knowledge that shows its gaps, reviews you can act on, and an audit log
The knowledge base and agent reviews are rebuilt around what needs fixing next, every settings change is now recorded, and a WhatsApp Flow can be built and attached to a template without leaving Cloodot.
Knowledge base
Both knowledge pages now answer "what does my agent know, what's wrong with it, and what should I fix next" instead of listing documents.
- Health chips across the top of the library — live, needs attention, out of date, still processing — are both the summary and the filter, and they now filter your whole library rather than just the rows on screen.
- Every entry says how much of it the agent can actually quote, when it was last refreshed, and whether you've edited it since. Where that can't be measured, the row says so instead of guessing.
- See which entries the agent leans on and which it has never once used.
- Select the flagged rows and refresh them in place, or delete them, without leaving the list.
- Put an image straight into an entry's body and the agent reads it: the picture is described and stored alongside the words around it, and when a customer's question matches that part of the entry, the agent sends them the image with its reply.
Questions
- The unanswered queue is now the page. Answer a question inline in its row — no dialog — and the whole pass is keyboard-driven:
j/kto move,Enterto open,Cmd+Enterto save,Dto dismiss. - Dismissing is reversible. It used to be a hard delete, which threw away the record that customers were asking and let the same question come straight back the next day.
- Each question shows how often it was asked. Repeats were previously dropped on the floor.
- One coverage score replaces the four stat tiles. Off-topic and unclassified questions are left out of the maths and the score tells you what it excluded, so spam no longer counts against your team.
- How relevant a question was judged to be — core, related, tangential, unclassified — is now stated in words instead of hidden behind an unlabelled icon.
Your AI agent
Reviews used to open on a table of verdicts and hide the fixes behind a second tab. It's the other way round now.
- Improvements is the default tab and leads with a plain-language verdict — "2 fixes ready and 7 problems found" — instead of a card of stats.
- Suggested instruction changes and the problems found in the review window — unanswered questions, personas that are slipping, late handovers, churn, complaint and compliance flags — share one queue, ranked worst first, with everything you've already applied kept as history in the same rail.
- The queue is a list beside one open item, not a wall of tall cards, with one Apply and one Dismiss at the bottom of the open item. Deciding advances you to the next one. Arrow keys move through the list.
- Every item ends in a real control: answer an unanswered question into the knowledge base right there, or jump into the review list already filtered to the rows behind the number.
- Each item now shows the actual reviews it came from, open on the page rather than behind a "read these conversations" button, and opening the same detail drawer as the review list.
- Overnight suggestions used to stack a near-duplicate per persona every night. Overlapping advice is now folded into one proposal that carries the evidence from all of it, and the queue is capped at five open items.
- The full review list moves to its own page with its own filters. It's quieter too: colour is spent only where it means something, the table drops from seven columns to five, risk and missed handover merge into one Flags column that appears only when there's a flag, and the same "All flags" choice replaces two rows of controls above it. Existing filtered links still land filtered.
Three fixes to the replies themselves:
- Replies no longer occasionally arrive with a block of raw code stuck on the end. Quick-reply buttons were always correct; the text sometimes carried a copy of them too, and customers saw it.
- When the usual answer path is busy the agent now falls back cleanly instead of stalling for up to half a minute and then failing. This was affecting the busiest workspaces hardest.
- Your instructions reach the agent once instead of twice, so replies come back quicker and headings in your instructions no longer run into the text beneath them.
- WhatsApp Flows now live in Settings → Presets as "WhatsApp Flows", next to WhatsApp Templates. Old links redirect.
- Build a flow in Cloodot and attach it to a template in one pass. The template's flow button picks from your own flows and registers the one you choose with WhatsApp for you — no round trip to Meta first. You can also register from the flows list or the workbench.
- A flow tells you whether it's registered, and whether you've edited it since, so an edited flow can be re-registered before you send.
Workflows
- AI Extraction now pulls from a source you choose — the previous step's output, the conversation, or a value you bind — and fills in fields you declare by name, type and description. Anything the source doesn't actually say comes back empty instead of invented, and every field is offered to later steps. A webhook → fetch → extract chain works without a conversation attached; saved workflows keep reading the conversation as before.
- The WhatsApp Flow Submitted trigger can name its fields from a flow you pick, instead of you hunting down a real submission to paste in. Pasting a sample still works for every trigger.
- The editor header now spans the page above the canvas, so opening the node library and a node's panel no longer squeezes the tabs and buttons into whatever room is left.
- Analytics is a fourth tab in the editor instead of an item in the overflow menu, and Runs, Settings and Analytics are all the same width so the page stops resizing as you switch. The unlabelled flask is now a Test button.
- The HTTP request step puts the method above the URL instead of squeezing both onto one line, stacks each header's name over its value so a long token doesn't wrap over six lines, and adds a Format action that re-indents the body while leaving your
{{variables}}untouched. - Condition, quick-reply and extraction rows stack instead of splitting a narrow panel in half, so labels no longer truncate against each other.
- Node cards are a single clean surface with a clearer glyph and label, palette rows match the card they become, connectors are thicker with larger arrowheads, and the divider between canvas and panel is visible without hovering it.
Settings
- Audit Log, new under Settings → Organization for owners and admins: who changed what, when, and what the value was before and after. It covers organization settings, business hours, the agent's intelligence level, persona versions, labels, canned responses, custom fields, channels, teams, invitations and API keys, and you can filter by action, by person, or by date. It's read-only, and channel credentials and API key material are never recorded in it.
Shopify
- Read a conversation your AI agent is handling without leaving Shopify admin — tap a row and the thread opens in place, with Shopify's own back action. Handing a conversation to a person still happens in the dashboard.
- The dashboard now shows the plan you're actually on. Merchants on Growth were being told they were on Starter and pushed to upgrade to the plan they already had.
- Upgrade buttons now take you to Shopify's plan picker instead of a billing page you can't act on, "Manage in Shopify" opens the plan picker rather than your Apps list, and a plan you've just chosen shows up immediately instead of after the next check.
- The billing card now states plainly that Cloodot never charges your store directly and that everything, enterprise plans included, is billed through Shopify.
- Collection sync no longer gets stuck. A run that died used to lock the sync forever with a progress bar animating at nothing; a stalled run now clears itself and a retry takes over. Failures are shown with a retry instead of staying invisible, one bad collection no longer aborts the rest, and a large collection's products no longer time out and lose the import.
- The Shopify card only shows what the app can do today — product and collection sync — and the "last synced" time reflects that.
Campaigns
- "Download click leads" is back in the click activity section — a CSV of phone, name, button text and when they clicked.
- Button click-through rate is now calculated the same way in the report and in the overview tile, so the two no longer disagree.
- The "Link activity" tab is now called "Click activity". Existing shared report links still work.
- Campaign pages have a breadcrumb trail back to the list, and long tables no longer end flush against the bottom edge of the panel.
Contacts
- Custom values captured during a conversation now show on the contacts table, the watchlist board and contact cards after that conversation is resolved. They used to go blank, which made a segment look like it had matched an empty value.
- Segments built on a dropdown custom field now filter properly. Anything other than "is" and "is not" was quietly matching every contact that had the field at all, and "does not contain" was inverted.
New message
Rolling out account by account — here's what lands when it reaches you.
- The dialog holds one height from start to finish, so Send stays put instead of sliding under your cursor as you pick a channel, browse templates and fill in variables. The "To … from …" bar and the live preview stay in place while the form beside them scrolls.
- Open the contact field and you get your most recent contacts instead of "No contacts match that search" on an empty box. A workspace with no contacts yet says so.
- Searching by name works. The search was stripping letters out of what you typed, so a name search silently returned your newest contacts rather than the ones you were looking for.
- Type a number nobody's saved and it's offered as a row in the list, so reaching a new person is the same Enter as reaching a saved one. Matches are highlighted on each row, and the list keeps the previous results on screen while the next ones load.
- Naming a new contact now happens attached to the number you just typed, with a live avatar filling in from the initials, and the helper text tells you the contact is saved when you send.
- Narrowing a typed number down to a saved contact used to send the template to the number you'd abandoned. Fixed.
- The template preview sits on the WhatsApp wallpaper, so what you see matches what your customer gets.
Copilot
- Chat with your copilot over WhatsApp. Settings → Copilot → Messengers gives you a pairing code plus a scannable QR and an "Open in WhatsApp" button, and sending the code from your own number is what pairs it. Your copilot's memory and connected servers carry over from the dashboard. Rolling out gradually.
- Credits and the "Connecting…" indicator moved to a fixed line under the header, so connecting no longer shoves the message list and composer around.
- The floating panel gains new-chat and maximize/restore buttons, and its margins adapt to the panel's own width rather than your screen's.
- The Zapier and HubSpot one-click connectors have been removed. The HubSpot CRM integration itself is unaffected, and adding your own server is unchanged.
Mobile app
- Sign-in is rebuilt to match the web app — the Cloodot mark, labelled fields, a proper card — with native controls on iOS and bot protection on the way in. Native sign-in also simply works now; every attempt from the app used to be rejected.
- Inbox rows show the real contact name and avatar. Every conversation used to read "Unknown" with a placeholder.
- The conversation list is brought up to parity with the dashboard: media previews with a clear label, the channel icon beside the timestamp, a star on the avatar, colour-tinted avatars, a subtler unread badge, and correct channel names.
- The composer no longer sits under the home indicator and is one pill with its controls inside, and it lifts to the right height above the keyboard.
- A failed load now says the fetch failed instead of claiming you have no conversations.
- Teams is rebuilt, timestamps and placeholders meet contrast standards in both light and dark, icon-only buttons are labelled for screen readers, and Reduce Motion is honoured.
Developers
- A connected assistant now asks you to confirm before it runs anything destructive — deleting a label, for instance — rather than just doing it.
- Skill handlers can see the message that triggered them, the channel it arrived on, and the last few turns of the conversation, so a skill can point back at the exact message or read what the customer actually said.
- The Skill context reference now lists every field with no aliases, and it's the same shape whether a skill is fired from a workflow or the API. Secret config values arrive under
secrets— the guides and the generator prompt used to point atconfig, which handed skills nothing.
Speed & reliability
- Every dashboard page loads noticeably faster once you're signed in — a duplicate check on each page load is gone, and it was often the last thing holding the page up.
- The inbox paints sooner.
- Scrolling and animation are smoother across the app: the frosted-glass and glow effects have been rebuilt without the blur pass that was the most expensive thing on the page.
- Hover feedback lands on the first frame instead of fading in a beat behind your cursor.
Polish
- Corners are one rung tighter throughout — panels, dialogs, buttons and inputs read as crisp chrome rather than pills.
- Table column titles stay on one line, and long custom-field headers on the watchlist board truncate with the full name on hover.
- The collapsed sidebar has square icon buttons on an even pitch, a divider while you peek at it, and no redundant expand button — hover-to-peek and
[still do the job. - The notice bar at the top of the app is solid and high-contrast.
- Billing pages take their colour from your workspace accent.
- Back buttons in panel headers are gone in favour of the breadcrumb trail, which now covers knowledge base articles and workflow subpages too. Not-found pages put their recovery button in the empty state where you're looking.
- The instructions editor has a minimap down its right edge: hover a tick to preview that paragraph in context, click to jump to it. Knowledge base articles get the same rail for switching between siblings without going back to the table.
- Deal card hover lift is softened to something card-sized, deals board column borders are visible against the fill, and the dead band under page content is gone.
- The campaign builder's step trail, stage and footer finally sit on one left edge.
Elsewhere
- Routine security hardening across the platform.