What's new
New automation conditions and actions
- Notify action - email a custom subject and message to picked agents or teams when a rule fires.
- Snooze action - snooze a conversation for a set duration from a rule.
- Trigger webhook action - fire a chosen webhook with a custom event name when a rule matches.
- Previous value conditions - match on the previous status, priority, assignee or team of a conversation.
Others
- Connection status banner for agents - a floating pill shows when the connection drops and clears on reconnect.
What's fixed
- Inline images from Outlook and other clients that omit Content-Disposition now render in the conversation instead of dropping to attachments.
- Automation loop protection is hardened, so a rule whose actions update the conversation no longer re-triggers itself.
- Email verification for AI agent contacts is now bound to the verified address, so a second conversation cannot rebind the contact to an unproven email.
- Livechat widget icons now pick a readable colour against dark brand colours instead of rendering black on dark.
- Many other quality of life fixes and improvements.
Upgrade notes
- Always take a database backup before upgrading.
- Follow the steps here.
Changelog
- 948ffd8 Merge pull request #478 from abhinavxd/fix-ai-agent-otp-flow
- b3c1623 fix AI agent OTP verification flow
- b228e7b Merge pull request #477 from abhinavxd/fix-automation-action-combobox-type
- 0711908 fix agent avatars showing in non-agent automation action dropdowns
- d435af7 Merge pull request #441 from chahat-101/network-status-banner
- 2552c8e restyle connection banner as floating pill and fix focus reconnect
- 64e7430 Merge pull request #469 from abhinavxd/new-automations
- 4710177 skip disabled agents and blank emails in notify action
- cb96d9f pass all previous values when claiming an unassigned conversation
- 057d798 add missing evaluator operator and field tests
- ca7aad6 snapshot previous values before reopening conversation on incoming message
- 49f287f add tests for automation loop guards
- b5f4144 Use warning design tokens for connection banner
- d180bfb Merge remote-tracking branch 'upstream/main' into network-status-banner
- e67aa28 suppress only automation's own events, not concurrent agent updates
- 9f55a73 Merge pull request #476 from abhinavxd/macro-usage-count
- cc3f428 count macro usage for content-only macros
- 51a7b95 Merge pull request #474 from abhinavxd/ai-request-timeout
- c6961da raise request timeout to 120s for LLM-backed AI endpoints
- ae0b6ee rework notify action with subject, message and picked recipients
- 89b40f9 add compact webhooks endpoint and fix previous_* automation values
- c4270f4 reject non-positive webhook IDs for targeted delivery
- aa0deed fix automation rule feedback loops and scope the starts with operator
- fa591de add i18n keys for new automation actions
- 2aa4a1a Merge branch 'main' into new-automations
- 178136c add notify, snooze and trigger webhook automation actions
- a482f07 Update ROADMAP.md
- 13168b0 Update ROADMAP.md
- 67f885d Merge pull request #467 from abhinavxd/pr433-imap-junk-parts
- 086eb4e skip junk email parts and name nameless attachments on IMAP ingest
- 2a3eefc Merge pull request #461 from abhinavxd/add-decryp-cli
- 037956a check encryption key length
- 8613203 Add CLI helper for decrypting crypto payloads
- 22300bd Merge pull request #425 from abhinavxd/fix/draft-inline-cid-scope
- 46c6f84 Merge remote-tracking branch 'origin/main' into fix/draft-inline-cid-scope
- d32cb5a Merge pull request #460 from abhinavxd/fix/otp-verify-email-binding
- 2d8f953 resolve draft inline media scoped to the draft's own conversation so pasted same-conversation images keep working
- 642b5a1 add tests for the OTP verification email binding
- 3f7c50c treat a pending OTP without an attested email as expired
- d855a45 bind OTP verification to the attested email so a sibling conversation can't rebind the contact to an unverified address
- 85ed93a Merge pull request #428 from Anandumv/fix/widget-contrast-color-luminance
- 1d3c56b Merge remote-tracking branch 'origin/main' into fix/widget-contrast-color-luminance
- ee45e87 show connection status banner to agents
- 78b1c26 Update static/widget.js
- de46b7a fix(email): render inline images from clients that omit Content-Disposition
- b74a268 test(email): cover Outlook inline images without Content-Disposition
- b5228e6 fix(widget): gamma-correct luminance in contrastColor
- 9520a50 scope draft inline image resolution to unattached media
What's Changed (Auto generated)
- fix(widget): gamma-correct luminance in contrastColor by @Anandumv in #428
- bind OTP verification to the attested email so a sibling conversation can't rebind the contact to an unverified address by @abhinavxd in #460
- scope draft inline image resolution to unattached media by @abhinavxd in #425
- Add CLI helper for decrypting crypto payloads by @abhinavxd in #461
- PR-433 by @abhinavxd in #467
- raise request timeout to 120s for LLM-backed AI endpoints by @abhinavxd in #474
- count macro usage for content-only macros by @abhinavxd in #476
- New automations by @abhinavxd in #469
- show connection status banner to agents by @chahat-101 in #441
- fix agent avatars showing in non-agent automation action dropdowns by @abhinavxd in #477
- fix AI agent OTP verification flow by @abhinavxd in #478
New Contributors
Full Changelog: v2.6.1...v2.7.0