Skip to main content

August 4, 2026

Highlights

This release is about control: over what leaves your organization, over where your app keeps its data, and over your place in a long conversation.

  • Org admins: sanitization now covers what people attach, not just what they type. If your organization runs message sanitization, we can extend the same policy to images and documents, reading their text before anything reaches the model and blocking files that break the rules. This is available on request rather than on by default, so nothing changes for your organization until you ask us to turn it on.
  • Builders: pick a database without breaking your flow. When an app needs to store data, App Builder now pauses and asks you to choose a database, browser storage for a quick prototype or Supabase for something real, instead of guessing. Live builds show steadier progress, Kimi K3 is selectable in the App Builder model picker, and you can now add a collaborator without sending them an email.
  • Everyone: chat keeps its place and stops going in circles. Your prompt stays pinned to its turn as you scroll, timestamps show the full date, long answers that start repeating themselves are cut off instead of running away, and chat search is quicker and steadier.

There is more in the full notes below, including analytics that follow your billing cycle, web search answers that link to their real sources, and clearer reasoning controls.

New features

Sanitization for image and document attachments (available on request)

Message sanitization has always covered what people type. Attachments were the gap: a screenshot of a customer record or a spreadsheet full of personal data went straight to the model untouched.

Now the same policy you already configured can be applied to files people attach in chat:

  • Images are read with OCR, so text inside a screenshot or photo is checked, not just the file name
  • Documents have their text extracted and checked against your entity rules, confidence thresholds, and allow list
  • The scan runs before the message is sent, so nothing sensitive reaches the model while the check is pending
  • Blocked files produce a clear notice that names the file and explains that your organization's policy does not allow those details, instead of a generic failure

This is not enabled by default. It builds on your existing Message Sanitization settings in organization settings, and we switch it on for organizations that ask for it. Talk to us if you want it for yours.

Choose a database in App Builder

When a new app needs to store data, App Builder now stops and asks you instead of quietly picking for you.

You get a simple choice: browser storage for a quick prototype that lives in the app itself, or Connect Supabase for a real database you can grow into. Pick one and the build continues from there. If you already said which one you wanted in your first message, App Builder skips straight to confirming it, and you can switch later from the Database panel.

Starting from a spreadsheet still gets you to a working app as fast as possible and tells you that switching is an option later.

Share an app without sending an email

When you add a collaborator to an app, a Notify people option now controls whether they get an email about it. Turn it off and they still get access, quietly. Useful when you are setting a group up ahead of time or you already told them in person.

Analytics that follow your billing cycle

The analytics dashboard adds a Cycle period that windows usage to your organization's current subscription billing cycle, with the exact dates in a tooltip. Where a cycle exists, it becomes the natural default, so what you see on the dashboard lines up with what you are billed for instead of an arbitrary 30 days.

Kimi K3 in App Builder

Kimi K3, which joined the model catalog in the last release, is now selectable in the App Builder model picker for organizations with access through our managed gateway.

Prompts that stay put, and dates you can read

Scrolling a long conversation should not leave you guessing which question produced the answer on screen. Every prompt you send now stays pinned to its own turn while you scroll through the response, in a compact single-line form that does not crowd the answer. Message timestamps show the full date, so older conversations are easier to place in time.

Improvements

  • Long answers stop going in circles. When a model gets stuck repeating the same text, chat now detects it, stops the response, and cleans up the repeated output instead of letting it run to the limit. This is on for everyone.
  • Chat search is quicker and steadier. Search across your chats keeps your selection where you left it, shows the results it has when the index is still catching up, and pages through long result lists reliably.
  • Web search answers link to their real sources. Citations come from the actual pages behind an answer, with duplicates collapsed, across every provider we search with.
  • Clearer context limits. The context usage view matches each model's real limits.
  • Honest reasoning controls. Thinking and reasoning-effort settings only appear where the model supports them.
  • More accurate costs. Token accounting and model rates were corrected, and balance refresh dates follow your billing cycle.
  • Knowledge imports are more forgiving. JSON files with comments no longer fail to import, and re-imported sources index against the current version of your knowledge.

Bug fixes

Reliability fixes across chat, chat search, App Builder builds and database setup, sanitization, web search citations, knowledge imports, model gateway behavior, and billing display, plus platform work under the hood. Together they should make everyday chat and building feel more predictable.

⌘J