← All changes
data tablesconversationsguardrailsagentsknowledge

Recoverable writes, and templates that keep their setup

A rejected write no longer stalls the reply, a template keeps its skills, tools and privacy rules whichever way you build it, and Klic reuses the knowledge and tables you already have.

Fixed

  • A contact detail your agent could not save no longer stalls the conversation. When someone gave a phone number without a country code, the agent was told the value was invalid — but the example showing it the correct format had itself been masked before the agent could read it, so it was being asked to copy a format it could not see. It retried until the reply timed out and the customer got an error instead of an answer. The agent now reads the format, asks for the one missing piece, and carries on. See when a write is rejected.
  • The three-attempt limit on a failing write now applies to the web widget. An agent that kept failing the same write was meant to stop after three tries and say what it could not do. On the widget it did not stop, and instead spent its entire step budget on one record before giving up with an apology. It now stops after three, as it already did on other channels.
  • Personal details are no longer repeated back inside a validation error. When a write was rejected, the rejected value was quoted back to the agent in full — including a phone number or ID that the platform had deliberately kept hidden from it. Those values are now masked, while everything an agent genuinely needs to correct the write, such as a mistyped choice value or a malformed date, is still shown in full.
  • An agent built from a template now gets the template's skills and tools, whichever way you build it. Through chat, a naming mismatch meant every one shipped with none attached — including the tool that hands a conversation to a human; Klic now builds the whole thing from a single confirmation. Through Agents → New Agent, the template's tools were never applied at all, so the same template produced a less capable agent depending on where you started it. Both routes now attach the same set. See what a template brings.
  • A data table built through chat keeps the template's privacy rules. A table meant to mask personal fields from the agent and show it only its own records was instead granted table-wide read on everyone's. It now carries the same permissions the dashboard wizard has always applied.
  • Klic reuses the knowledge sources and data tables you already have. It can now see what a workspace already holds and offers to reuse it, rather than proposing a duplicate of a document or table you created earlier.
  • Klic can attach a knowledge source to an agent from the conversation itself. No more being sent to the dashboard for a step it can do directly, including on an agent it just created. See creating a knowledge source.
  • {{BUSINESS_NAME}} and other placeholders are filled in, or left visible if you haven't given one yet — instead of silently disappearing from a generated agent's instructions. A template's starter documents now get your business name filled in through Agents → New Agent as well, where they previously kept the raw placeholder.
  • Klic tells you which placeholders are still waiting for you. After building an agent from a template it now lists what is left to fill — the contact number, email and opening hours in the starter documents, not just the ones in the agent's own instructions. Those are the ones a template cannot guess, and they were the ones it never mentioned. See after creating from a template.