Not marketing announcements — actual changes that shipped. Newest first.
Some entries below are about the agent. For a while SemAgent also built an autonomous agent, and those entries stay here because they really happened — a changelog records what shipped. What this site is about today is the Support Assistant and the Store Assistant. The autonomous agent is now positioned as a separate product with its own site: agent.semagent.ai.
Customers waiting for an agent, new conversations and low satisfaction ratings (1–2) can now land in your team's Slack channel. Under Connections › Slack, the button opens Slack with the settings filled in: you create the app in your own workspace, pick the channel and paste the address Slack gives you. Connect Slack →
Content-free by default. Slack only gets what happened, which channel it came from and a link to the conversation; sending the customer's name and message is your call. A waiting customer is announced once while they wait. Messages can be in English, Turkish, German, French, Spanish, Italian, Dutch, Portuguese or Russian.
You can now publish your public help site on your own domain, for example help.yourcompany.com, instead of your-name.semagent.ai/help. Type your domain in the Settings window of the help site card on the Articles screen, add the two records the window shows (a CNAME, and a TXT for ownership) at your domain provider and press Check now. The security certificate is set up by itself. Your own domain →
Your links don't break. The old address stays open and points search engines to the new one; the sitemap moves to the new address too. Only your help site opens there; the panel's sign-in and settings pages don't.
Activity. In Customers, a person's window lists their orders and recorded events together, newest first, and you can add an event by hand there. Only verified addresses and addresses your team linked count. Opening a person →
Language versions for canned replies. Write a canned reply in up to 12 languages; Conversations inserts the version in the customer's language by itself and tells you which one it used. Canned responses →
The widget's canned sentences in 9 languages. In a German, French, Spanish, Italian, Dutch, Russian or Portuguese widget, the handoff promise (with when the team is back outside working hours), error texts and the check-in question to a customer who goes quiet now go out in that language, and the AI answers customers writing in these languages in their own language. We also fixed a bug where some messages in these languages were taken for Turkish and answered in Turkish. Reply language →
Email campaigns. Send email to opted-in customers from Campaigns › Email: from your own verified domain or connected mailbox, with an unsubscribe link in every email. Before sending you see how many people it will reach and who is skipped and why. Email campaigns →
Satisfaction survey (NPS). A survey email with a 0–10 score row; results show next to the campaign and on the NPS card in Reports. NPS survey →
Automated sequences. Up to 5 emails in order of days after a conversation is resolved or a visitor becomes a customer: say, a short survey the next day and a campaign a week later. Automated sequences →
API & webhooks. Read conversations and customers and send replies with an API key; receive new conversation, message, handoff, resolution and satisfaction rating events in your own systems through signed webhooks. API & webhooks →
Voice messages, transcribed. Voice messages from WhatsApp, Instagram and Telegram show their transcript in the chat, and the AI answers what was said. Turn it on in Messaging. Voice messages →
On your site now. The On site button in Conversations shows who is on your site right now and on which page, with no IP or location kept. Turn it on in Widget Settings. Live visitors →
Proactive messages on the cart. In Shopify and WooCommerce stores the bubble can fire on items in the cart, the cart total or a product in the cart, with a ready-made rule for visitors about to abandon their cart. Proactive messages →
The widget in 9 languages. The interface now also speaks German, French, Spanish, Italian, Dutch, Russian and Portuguese. Reply language →
Team inboxes and a reply time target. Each team gets its own inbox; when the reply time you set is missed, the conversation is marked in red, and Reports show how many handoffs were answered on target. Reply time target →
Satisfaction and closing. Reports split ratings between the AI and the team, a 1–2 rating emails your team, and a customer who goes quiet is asked once, “Is there anything else I can help you with?” Conversation settings →
Teach the right answer. Write the right answer to a negative one in Answer Review, or add a good agent reply to the knowledge base in one click from Conversations; the assistant answers that question that way from then on. Agent replies now also reach the widget instantly. Answer Review →
Products as cards in the chat. When the AI describes a product from your store, a card with the image, price, stock and View product appears under the reply. Products with a single option also get Add to cart; on your Shopify store's page the product goes into the cart without leaving the page. Option buttons and product cards →
Options in one tap. When the AI asks the customer to choose a size, a colour or a model, the options appear as buttons: buttons in the web widget, reply buttons or a list on WhatsApp, quick replies on Instagram.
A card report. Reports show how often each product was shown, clicked and added to cart, with no personal data kept. Product cards report →
Automatic translation. When a customer writes in a language other than your team's, the translation of their messages appears in Conversations by itself; each message is translated once and kept. Customer messages now have a visible Translate button, and the original of a reply you sent translated is kept in the panel. Message translation →
Read the customer's message in your language. Translate in the … menu of a customer's message in Conversations translates it into the language your team chose, whatever language it was written in; you can also translate a single message into one of 39 languages. Only you see the translation; it never goes to the customer. Message translation →
Canned replies with "/". Type / in the reply box, search as you type, press Enter to drop the reply into the box. Composing tools →
Your help site on Google. The public help site now comes with a sitemap, a robots.txt announcement and structured data, so search engines find your articles more easily. Articles and the help site →
An order archive that stays current. With a new switch on the Customers screen, the order archive syncs from your store every night by itself, so segments with order rules stay current. Order archive →
Control the widget from your code. Your site's code can now open and close the widget, prepare a question on a product page, recognise a signed-in customer with a signed identity and listen for replies: window.SemAgent. Controlling the widget from code →
Find what you need fast. The Audit Log now has a search box and a filter panel by severity (Critical, Warning, Info), area and person; filters work on every entry in the period, and clicking a row opens its details. You can now pick up to the last 3 years. Audit Log guide →
Proof of erasure. Customer record deletion entries show what was erased and what was kept, in counts. Open the entry to download an Erasure certificate (PDF) with a verification code that you can give to the person who asked. Erasure certificate →
Correct times. Times in the Audit Log appeared 1-2 hours late; they now show correctly in your browser's time, with UTC in the details. Deletion and transcript entries now name the user who did it, and Shopify notifications show as "Shopify (automatic)".
Deleting a person deletes their memory. Deleting a record on the Customers screen now also deletes the person's AI memory (their name and preferences); Shopify's customer data deletion notice works the same way. Deleting a record →
Conversations can be deleted too. Owners and admins can tick Also delete their conversations in the delete window to remove the person's conversations with their messages, files and conversation cards. Leave it unticked and the conversations stay.
The 24 hours on Instagram. Once 24 hours have passed since the customer's last message, no reply can be sent on Instagram, and the panel no longer shows a 7-day allowance in that case (that allowance needs a separate Meta approval). The comments screen now says so plainly when the account has no comment permission. Messaging guide →
Everything in your language. With the panel set to English, screens, errors and notices are in English, and the e-mails your team gets (invitations, handoffs, trial and payment notices) reach each person in their own panel language. On English accounts the ready-made personas are applied with their full English text; apply a persona you used before again and you get the English text. The left menu has a new Docs link, and screens link to their own guide. Templates →
Your customer in their language. The assistant answers in the language the customer writes in, and canned sentences such as the handoff promise, order code and error messages go out in that language too. In an English store, prices come in the store's currency and the welcome is in English. Reply language →
Shopify. The theme card on the E-commerce Widget screen turns green once the chat bubble loads on your store and says where it was last seen. The hint about hiding the signature now names your package's real plans (Showroom and Flagship on Shopify). When an account with no instructions and no persona connects its store, the E-commerce Assistant persona is applied in the account's language by itself, and the billing page shows your Shopify plan's name and status. Shopify guide →
Virus scanning for team uploads. Logos and knowledge-base files are now scanned after upload too; a harmful file is removed and written to the Audit Log. The uploaded knowledge-base file itself is deleted once its text has been extracted; the text stays in your knowledge base. Knowledge base →
Instagram. Sending an automatic private message (DM) to whoever commented is switched off, and the setting no longer shows in the panel. When Facebook asks you to log in and the window loses its link to the panel, the connection now completes on its own; reconnecting a dropped account takes one step. Messaging guide →
Order details need a code. The assistant now shows order status, items and tracking only after the customer enters the 6-digit code sent to the order's e-mail; in the same chat it doesn't ask again for that order for 15 minutes. Customers signed in to your store don't need a code. Cancellations, return requests, address changes and refunds always ask for their own code. You can turn the viewing code off under Settings → E-Commerce (on by default). Shopify guide →
A consent ledger that fills itself. E-mail and WhatsApp marketing consent from Shopify is synced into the ledger every night: subscribed becomes consent, unsubscribed becomes a refusal, and a sync never overrides a newer record of ours. Recording consent by hand is open to owners and admins and needs a document; anyone can record a refusal. If you want, agents can send a consent question with Yes / No buttons in a WhatsApp conversation; this setting is off by default. A campaign with a marketing template goes only to people with recorded consent. Marketing consent →
A simpler inbox. The conversation header is a single line, and the same person's cards share one color in the list. The person panel has four sections: the person, this conversation, previous conversations and details. In a long conversation the last 200 messages open, and older ones come with Show earlier messages. Conversations guide →
🐛 Fix: in an e-mail conversation started from the panel, the customer's answer went to your support mailbox instead of the panel. The reply address is now the conversation's own address, so the answer lands in the same conversation.
The same person's other conversations. When you open a conversation, the same person's conversations on other channels appear in a strip above the messages. Open ones come first; each row shows the channel, who is handling it, the WhatsApp and Instagram messaging window, and how the conversation is tied to this person. Conversations are not merged; each stays on its own channel. If the customer moved to another channel, you can mark the old conversation as “continues here”. When you want to write on another channel, the panel only offers options that follow that channel's rules. Conversations guide →
Conversation cards and AI memory. On plans with memory, the AI writes a short card for every conversation that closes: topic, outcome and any promise made. It also remembers the customer's preferences, and memory is now also updated when a conversation closes.
A setup test for recognising signed-in customers. The key is now created in a setup window where you pick your platform and get the code. After adding the code to your site, Test setup confirms it works, and if it doesn't, the panel tells you why. Widget settings guide →
A faster inbox, package changes. Opening a conversation, the list and the menu badge load with less waiting; what you see is the same. The Starter plan now includes 2 users. What each package includes is defined module by module: a feature that isn't in your package doesn't appear in the menu. Plans →
Shopify discount codes in the panel. The new Discount codes screen shows the codes in your store, live: value, conditions, last day and how often they were used. You choose which codes the assistant may give and under which conditions: only to verified customers, once per person, or only during a campaign. The system enforces the conditions; the AI never creates a code, never picks a rate and never gives a code that is not valid in the store. You can also create and deactivate codes on the same screen; an end date and a usage limit are required. Discount codes guide →
Test sends for campaigns. A campaign reaches each person once. To see the template on your own phone first there is now Send as test: a test does not count and does not stop the campaign from reaching that person later. Opt-out and consent rules apply to tests too.
Temporary visitors and customers are separate. Everyone who writes to you opens as a record at their first message. Someone known only by their channel or device waits in a separate list as a temporary visitor: they stay out of segments and campaigns by default and are deleted automatically after 90 days of inactivity. A person whose identity is proven or who is linked by your team becomes a customer. An email a visitor types is now only a claim: it never merges people and never brings in that address's order history. Customers guide →
Ways to become a customer. When the assistant takes an order number and the email on that order and the store confirms the match, the person becomes the customer of that email, on WhatsApp, Instagram and Telegram too. You can also recognise customers signed in to your site: your site signs their email with a key only you have, and the key never reaches the browser. Your team can link a person by hand; moving someone who belongs to another customer needs explicit confirmation. Every link, move and detachment shows in the history and can be undone.
Consent ledger. You can record a person's marketing consent or opt-out per channel, with its source, evidence and date. Records are only ever added; a customer who writes “stop” is recorded in their own words, and that stops every campaign message. The campaign preview tells you how many recipients have consent on record.
A person's other channels and the same agent. The person panel in Conversations lists the customer's conversations on other channels; if one is open elsewhere, the panel says who is handling it and a new conversation goes to that agent when they are online. The AI also knows a verified customer's other conversations: only when and about what they wrote, never the message text.
One person, several addresses; retention for the archive. You can add a customer's second email; orders from both addresses count towards the same person and segments see them together. You can choose a 12, 24 or 60-month retention period for the order archive; anything past it is deleted every night. The Customers screen shows how many temporary visitors became customers in the last 30 days, and through which channel.
Outbound WhatsApp messages from a campaign. Campaign mode used to work only on incoming messages. Now, if your WhatsApp number is connected, you can start the conversation yourself from the same campaign using an approved template. The flow is deliberately two steps: first a preview showing how many people it reaches and who was excluded and why, then the send. People with no address, who never wrote to this number, who asked you to stop, or who this campaign already reached are excluded automatically. Meta bills the fees directly to your own WhatsApp account; no SemAgent credits are spent. Campaigns guide →
Order archive and customer events. Sync orders on the Customers screen asks your store for each known email address and writes what comes back into a permanent archive — because the amount is kept as a number, questions like “spent over 5,000” can be asked for the first time. For what the store does not know there are events: refund requested, sample sent. Event names are normalised, otherwise the same segment would silently split in two.
Saved segments and their editor. You can now save several rules under one name: tags, channels, number of conversations, country, last seen — and, newly, number of orders, total spend, order date and events. Members are not stored, they are recalculated every time; a copied list would go stale the moment a customer's tag changed. Customers guide →
“Can it actually send?” is now measured separately. If your WhatsApp account has a payment problem, incoming messages keep working and only the messages you start are blocked — so a campaign could fail silently without anything turning red. The daily check now asks Meta about this separately; a warning appears under the number carrying Meta's own stated reason, and admins get an email. Connection health →
A public help site. The articles you publish can be served as a search-engine readable help centre at {tenant}.semagent.ai/help. You switch it on from the settings on the Articles page.
Connect without giving up the WhatsApp Business app on your phone. The Messaging screen now offers two options: connect the number in the app on your phone, or a new number. When you connect the app's number, messages show on the phone and in Conversations; if you choose to share them, the last 180 days of chats and the names in your contacts are imported, with progress on the number's card. If the phone changes, sending pauses for a few minutes and resumes once Meta reconnects.
Write after 24 hours too. When a WhatsApp conversation's window has closed, you write from Conversations with an approved template: fill in the variables, preview, and send templates with an image, video or document header as well. Under each message you send you see sent / delivered / read, and the customer's reaction shows as a chip on the message. Instagram gets ice breakers and quick reply suggestions; story replies and edited messages are marked in the conversation.
No message slips by quietly. When a number or account disconnects, admins get an email; when a waiting customer's 24-hour window is about to close, the assignee is alerted by SMS or WhatsApp. Team alerts no longer need a separate provider: send them from the number you connected to SemAgent and submit the template for approval in one click. Reports now break results down by channel and show Meta's WhatsApp charges. Connecting channels opens once SemAgent's Meta app is approved. Messaging guide →
A refreshed panel. Buttons, form fields, tabs, dialogs, badges and alerts now come from a single design system: tabs stand out more, dialogs are easier to use with a keyboard and a screen reader, and alerts are easier to read. If you turned on reduced motion in your operating system, the panel's transitions are reduced too.
Files, voice notes and video now go both ways. Your customer can send a photo, a document, a voice note or a video on WhatsApp, and your agent can send the same from the panel. It is a per-number switch: Publishing → Messaging → WhatsApp tab → File sharing. A file an agent sends waits until the virus scan comes back clean; if it does not, the file is not sent and the message says why.
You don't have to give up WhatsApp on your phone. You can keep using the number in the WhatsApp Business app: a reply you type there lands in the same conversation, marked “Sent from the WhatsApp app”, and the AI stays quiet in that conversation — so the customer never gets two different answers. If you approve sharing chat history while connecting the number, up to six months of past chats are written to the archive as closed conversations: searchable, without filling your inbox or spending credit.
Instagram DMs are in Conversations too. Messages to your Instagram account become conversations and your team replies from the panel. Instagram's 24-hour rule is shown in the panel; once it closes, a human agent's reply can still go out for up to seven days. If a customer unsends a message, the conversation marks it as withdrawn. Connecting an account opens once SemAgent's Meta app is approved. Channels docs →
A simpler menu: one screen per channel. Messaging holds your WhatsApp number, your Instagram account and the SMS / WhatsApp alerts to your team as tabs; Email holds the channel settings and the conversations waiting for a reply. Your old addresses redirect to the new screens. Alert lines docs →
Messages your customers send on WhatsApp now become conversations in Conversations: the AI answers first from your knowledge base and your team takes over from the panel. The first answer carries a “Talk to a person” button; when the customer taps it the conversation goes to your team without calling the AI. Photos, voice notes and files with no text get a short reply that uses no credits, and WhatsApp’s 24-hour rule is shown with a countdown in the panel. You will connect your number on the Publishing → WhatsApp screen; connecting opens once SemAgent’s Meta app is approved.
The menu is simpler too: everything about WhatsApp lives on the WhatsApp screen (customer channel and team alert tabs) and the SMS provider on its own SMS screen; the old “SMS & WhatsApp” address redirects to the SMS screen. Alert lines guide →
Fairer credits: a failed AI call is no longer charged — an operation whose answer never reached you costs nothing. The query expansion and reranking behind a knowledge-base answer are billed from their real monthly cost instead of being rounded up call by call. Credits guide →
Every email sent to your support address (for example [email protected]) now becomes a conversation in Conversations: your team replies from the panel and the customer's answer lands in the same conversation. Setup is one step: forward your mail to the address on the Email channel screen (step-by-step instructions for Cloudflare, Gmail and Outlook are on the screen).
You choose how replies go out: through SemAgent (from your own address once you verify your domain with three DNS records), from your Gmail / Google Workspace or Microsoft 365 account (only permission to send is requested; we can't read your mailbox), or from your own SMTP server. The coloured box at the top of the card says which way and which address replies use right now; if a connection drops, no reply is lost, it goes out through SemAgent. When you add your own domain, its records are checked automatically every hour for 72 hours, so there's no need to keep pressing “Verify now”. To protect everyone's email reputation, sending through SemAgent pauses automatically for an account whose emails bounce or are marked as spam too often; you can keep sending from your own account. Each tab links to the matching step-by-step section of the guide. Email channel guide →
When a visitor sends a file, the widget shows the upload progress as a percentage, and once the virus scan finishes the “scanning…” label updates by itself in the widget and the panel. On the Conversations screen, clicking a file opens PDF, PNG, JPG and TXT files in a new tab, and the button next to it downloads it (types that can run scripts never open). 🐛 Fixes: Send me a sample on Reports said “The sample couldn't be sent”; on Conversations the page jumped after sending a reply and the reply box ended up below the screen; with the “SemAgent” signature hidden, the widget's message box touched the bottom edge. All fixed. Conversations › File sharing →
The Conversations screen got the pieces live chat was missing. While a person is handling the chat, visitors can send files from the widget and agents from the panel (PDF, PNG, JPG, TXT; up to 10 MB); no file can be downloaded until the virus scan marks it clean. You see “typing…” while the other side types. With the bell on, push notifications arrive even when the panel is closed: a new conversation, a handoff to the team, a visitor message and the waiting alert; they carry no message text or visitor details. You can block a visitor who causes trouble from inside the conversation: what they write doesn't reach you and the AI doesn't reply. Conversations also has search by customer name, email or message text. Conversations docs →
Every user can turn on two-step verification from the key icon in the left rail (Google / Microsoft Authenticator, 1Password, Authy); an admin can reset it from the Users screen for someone who lost their phone. Account security →
Reports gained “handoff to resolution” and a per-agent “resolution time”; turn it on and a weekly report email arrives every Monday at 09:00 (off by default). On Pro and higher you can hide the “Answers by SemAgent” signature in the widget. 🐛 Fixes: in the Agents report, picking a person or team left the list empty; it now shows zeros and the reason, and says how many older messages without a recorded author were left out. Document dates on the Sources screen reset on every re-index, and connector and server times showed 3 hours early. Both are fixed.
All 16 screens in the guide were recaptured after the latest changes (English / Turkish, light / dark; with sample data). 🐛 Found while capturing them, all fixed: the Audit Log showed role changes by an internal key; it now shows the role's name (“Member → Support agent”; for custom roles, the name you gave it), and a “user updated” row says which field changed (the value itself is never recorded). Answer Review and the Widget Dashboard now write percentages and durations the way your language does (“88%”, not “%88”, in English; “%71,2”, not “71.2%”, in Turkish). The Widget Dashboard's chat trend chart looked like a flat line; it now shows the daily bars. The persona card on the Overview follows the light and dark theme too. Guide →
The Business WhatsApp screen is now SMS & WhatsApp, and the SMS provider moved there from Widget Settings. For the provider you pick, the screen opens a step-by-step setup: how to subscribe, where each key is, the cost and what to watch out for (Netgsm, İleti Merkezi, Verimor, Twilio, Vonage, Infobip, Plivo; for WhatsApp Meta, 360dialog, Twilio, Infobip). A What is an approved template? section gives the suggested body and the sample value asked for at submission.
A new Verify connection button asks the provider about the account and the SMS sender ID or WhatsApp number without sending anything, so a wrong key or an unapproved sender ID shows up before the test message.
🐛 Found while re-reading every provider's documentation, all fixed: the İleti Merkezi credentials were computed wrongly (requests would be refused); a “rejected” status inside an Infobip 200 response counted as success; the “+” was stripped from numbers sent to Meta, so a message could reach the wrong number. Turkish operators have blocked texts with links from foreign senders since April 2026: in that case the link is now removed and the text says “Open the panel to reply”. SMS & WhatsApp docs →
Reports has a new Agents section: per person, conversations assigned, replied to and resolved, time to first reply (median and “9 in 10”), satisfaction and open work. Filter by widget type, team and agent; download the summary and the conversation list as CSV files that open directly in Excel. Customer names and emails appear in the file only for roles that can see Conversations.
When a conversation is assigned to a person, that person gets an email (assigned to a team, its members do; the person who assigned it doesn't). Conversations shows who has it, since when and who assigned it. Take over on a conversation another agent holds asks for confirmation and tells that agent by email. Reports docs →
When a visitor clicks Talk to a person or writes "I want to talk to a human", the conversation moves to your team and the AI goes quiet. If the AI can't answer two questions in a row, or the visitor is upset, it offers the handoff itself; when it says "I'm transferring you to an agent", the handoff really happens.
A working hours editor with weekly ranges, 24-hour days, presets and holidays / special days: outside hours the widget says so, tells the visitor when the team is back and asks for an email. Teams assign to the next online agent; rules, internal notes, tags and the waiting alert are included.
Handoffs now notify by email, WhatsApp and SMS: SMS through your own provider (Netgsm, İleti Merkezi, Verimor, Twilio, Vonage, Infobip, Plivo or custom HTTP), WhatsApp from your company's WhatsApp Business line (Meta Cloud API, 360dialog, Twilio, Infobip; approved template). If no channel gets through, the alert goes out by email. Human handoff docs →
The Viewer role is now the Support agent: it sees the Publishing screens and takes over and answers conversations, but can't change settings. The Roles & Permissions matrix now decides who manages the inbox; the team member list shows everyone and explains who can't be picked.
Adding, inviting and the new edit dialog take a phone number with a country code; WhatsApp / SMS handoff alerts go to it. Roles & Permissions docs →
The homepage and some product pages overflowed sideways on phones, which also pushed the widget button off screen. Every page now fits the screen and the button is visible.
With working hours on, the widget no longer says the team is online outside working hours just because someone has the panel open; it says when the team is back. The widget also shows the official SemAgent logo now.
All 14 guide pages on docs.semagent.ai now open with the screen itself — in English and Turkish, with separate light and dark captures. The images come from the real panel, but the data in them is entirely sample data: no customer data was used. The captions do more than say "here is the screen"; each one points at the thing on that screen that is easy to get wrong — that an empty audit list does not mean nothing happened, that a failing connection shows its error in its own row, that the assistant says "I could not find it" instead of inventing an answer.
🐛 We found a bug while doing it. Taking the screenshot of the permissions screen showed that a custom role you define was displayed by an internal key instead of its name (on the role card, in the permission matrix header and in the folder table). Fixed the same day: the role now appears under the name you gave it.
The Roles & Permissions screen has arrived: rows are panel sections, columns are roles, and every cell is none / view / edit. Here is what matters: this table is not decoration. The server checks the same matrix on every request, so pulling a cell down to "none" really does close those endpoints. Hiding it from the menu is only a convenience — typing the address by hand does not get you in either.
Two rows cannot be delegated: Roles & Permissions and Subscription & Billing stay with the account owner. Whoever can grant permissions can grant themselves everything; the payment method and the plan belong with the owner too. A role change takes effect immediately — nobody has to sign in again.
If the five built-in roles are not enough, + Add role creates your own (say "HR Specialist"). The new role is born with the permissions of the base role you pick, and you adjust it from there in the matrix. A role in use cannot be deleted — try it and we tell you how many people hold it and refuse, because deleting it would change those people's permissions without telling anyone.
Folder scope: knowledge base folders can be closed per role. The contents of a closed folder are not used in the chats or agent searches of people in that role. 🌐 The customer-facing widget is unaffected: a visitor has no role, so the account-wide folder switch is what applies there.
Adding and removing users, role changes, invitations, support tickets and sign-in attempts are recorded. Every change gets its own row: one save can change several, and "user updated" would not answer the question "what changed?".
🔒 There is no endpoint that deletes or edits the record — not from the panel, not from the API; an editable audit log is not an audit log. The screen also tells you when recording started: an empty list means "nothing has been recorded yet", not "nothing happened". Documentation →
The support form used to only send an email; there was no way to see what had become of your request. Every ticket is now recorded and listed under All · Open · In progress · Closed tabs. You can close your own ticket and reopen it if you need to.
🔑 Record first, email second: the ticket is written to the database before the notification goes out. So even if the email fails for some reason, your request is not lost.
The menu now shows only the screens you can use — you no longer click through to a "no permission" wall. The Widget Dashboard's tabs moved into the panel: Conversations, Reports, Usage. New screens: Sources (where your content came from) and Answer Review.
The chat screen moved to the new theme as well and supports a light theme for the first time; the theme switch is now on the chat screen too.
Until now the chatbot could change nothing in your store. Four actions can now be switched on individually: return requests (they come to you for approval; no money moves), delivery address corrections (only before the order ships), order cancellation and refunds. All of them are OFF by default — you enable what you want under Settings → E-Commerce and can switch it back off at any time. The promise changed accordingly: from "it can never change anything" to "it cannot change anything unless you explicitly allow it".
Four conditions must ALL hold before an action happens: your store platform granted that scope · you enabled that action · the customer verified their identity by email (a one-time code sent to the address on the order) · and the order's state permits it (no cancelling or address change on a shipped order, no return request past the window). None of those four is read from what the customer typed, so a message like "I'm the admin, cancel it" opens no door. Because cancellation and refunds are irreversible, the panel shows a risk notice for them; every action — including refused ones — is written to an audit log, and one verification grants exactly one action.
Resolution-rate measurement added. Answers now carry a 👍/👎 prompt and the panel shows a 30-day resolution rate. To avoid inflating it we report two separate numbers: customer-confirmed (the primary measure) and silence-based (supporting). Conversations still open count towards neither, and when there is no explicit feedback the panel says so plainly, because a rate built on silence alone reads higher than reality.
The widget already handled product, order and customer questions. It now answers live the four things customers ask right after: "Which sizes are in stock?" (availability per size and colour), "What's my tracking number?" (tracking number + carrier — order details are shared only after email verification), "Is this coupon valid?" (the amount and conditions; if the code is invalid or expired it says so honestly) and "How much is shipping?" (rates, free-shipping thresholds, delivery zones). All four work on both Shopify and WooCommerce. For product questions the store data is combined with your knowledge base, so details that aren't in the catalog — size charts, return terms — land in the same answer. The honesty rule still holds: if the exact stock count is unknown it only says in/out of stock, and it never invents data.
Permissions got simpler and more transparent. Three read-only Shopify scopes were added for the new capabilities (inventory, discounts/price rules, shipping) — and one scope that was never used got removed. The connect screen now lists every permission you approve and what each one enables. No write access is ever requested — the chatbot cannot change orders, products or prices, and cannot start refunds. On WooCommerce, selecting "Read" when generating the key is enough; you don't need to grant Write. On both sides credentials are stored encrypted, never shown in plain text and never sent to the language model. Worth knowing: if your store is already connected it keeps working, but you need to reconnect once to enable the new capabilities.
The "Source: <page>" line under an answer only appeared at the moment the answer arrived; when the visitor moved to another page on your site the chat reloaded and the source line disappeared. The source is now stored with the answer and shows up after navigation and in chat history too (both the site widget and the dashboard chat).
Knowledge-base search also gained smart ranking. Until now results were ordered by topical similarity, so the right page could be found and still get cut in the top-five trim. Candidates are now re-ordered by how likely they are to contain the answer, which raises the hit rate. It is skipped for greetings and short messages, so everyday chat gets no extra delay; substantive questions take a couple of seconds longer. It can be turned off under Settings → Support Assistant (on by default).
The agent could already generate Excel, Word and decks — but the generated file could only be downloaded from the chat. Now it goes straight into Google Drive: "check the mail from ACME, work out what I paid in invoices in 2026, and save it as an Excel sheet in the xyz folder on Drive", or "read the files in the xyz folder on Drive, build a deck from them and put it in the same folder" — end to end. The upload still requires approval. One limit worth knowing: the one-click Drive connection runs on Google's drive.file scope — the agent sees only the files and folders it created itself, so a folder you made by hand is invisible to it. Either let the agent create the target folder, or put a Google identity with the full drive scope into the Vault.
Second: you can now connect several accounts to the same connector. Each gets a nickname ("Main Account", "Accounting"), each can be enabled or disabled on its own, and one can be marked default; just tell the agent "list them using the Main Account". This round covers Email (SMTP), Gmail (IMAP+SMTP), Google Drive read, Drive Upload and the Shopify Admin API. Important behaviour: when several accounts are enabled and you haven't said which one to use, the agent does not pick at random — it asks you; mark one as default if you'd rather it didn't. Your existing connection isn't lost: the old one doesn't wait for a second account — open that service's card in Connectors and it is already sitting at the top of the accounts list under a name derived from its real identity (an email address, a store domain), wearing the "existing" badge and the default star. This applies to every connector (Gmail, Drive, Shopify Admin, Etsy, SMTP, WhatsApp, SMS…), not just the five services above. Rename it with the pencil if you like — anything you run without naming an account keeps working as before. Credentials still live in the encrypted Vault; the account record only holds the name and state.
The agent no longer just downloads email attachments — it now reads the text inside them: PDF, Word, Excel and CSV, with OCR for scanned PDFs, so even an invoice that is nothing but an image can be read. Extracted text counts as external content and passes through the security quarantine (dual-LLM check); the raw file bytes never reach the model. Most invoice and notification emails carry no plain-text part at all, only an HTML body — that body is now converted to text, so questions like "what's the amount on this invoice?" finally get an answer. And every file operation in a single turn is now collected into one approval card: one approval for 7 invoices instead of 7 separate ones.
E-commerce adds WooCommerce (connect via Consumer Key/Secret; Ticimax coming soon). Knowledge-base data sources now include Zendesk (API token — Help Center articles and tickets) and Dropbox. Google/Microsoft/Dropbox now connect with your own OAuth app in one click — no central verification. For Google Drive, choose "all Drive (drive.readonly)" or "only selected files (Picker)".
The agent can now upload files to Google Drive and archive them into tidy folders (drive_upload), and pull email attachments through a safe quarantine into Drive (gmail_attachments). Autonomous tasks you set up from chat run a bounded tool set without approval on each run (read mail · fetch attachments · put in Drive · generate report · send mail); email goes only to you and the fixed recipients you name — never an address derived from mail content. Social publishing adds the Zernio aggregator, and the agent now learns from the performance of the posts it publishes to adapt its strategy.
The agent can now publish to your connected social accounts with approval (social_post), joining the Instagram/X/TikTok/Reddit read tools. The Social Media Management template reached 6,000+ curated documents.
Your agent summarizes your day in your timezone: calendar, things you follow, and your "I'll reply tomorrow" promises. Delivered to email or WhatsApp; fully opt-in. Repeated corrections now become standing rules.
Live spoken conversation with a wake word and low-latency first replies. (Voice AI on Enterprise and E-commerce Pro+.)
User profile, episodic memory (history summaries + recall_history) and skill distillation. Tenant-isolated, visible and deletable in the privacy panel.
Large tasks split across sub-agents (delegate_task); long tasks post progress updates; an idempotency layer prevents accidental double-execution.
The app now runs on multiple nodes behind a load balancer; the database in an HA cluster (automatic failover within seconds). Health checks wired to 24/7 alerts.
phpBB, inSided, Discourse, XenForo and vBulletin auto-detected; "answered topics only" filter; long crawls resume from checkpoints.
Team members work with role-based permissions; conversations are user-isolated. On the crawl side: a stealth browser for bot-protected sites, proxy management + an automatic hourly health test, and a content filter that strips out repeated boilerplate text.