v1.1.0

twentyhq/twentyv1.1.0Jul 10, 2025by charlesBochet

AI Summary

Twenty v1.1.0 is a significant release following the v1 launch, introducing AI agent capabilities (IMAP driver integration, MCP integration, agent chat tab), major workflow enhancements (filters, queue limits, multi-record execution), and completing the hotkey-to-focus-stack refactoring across the UI. The release also includes substantial backend improvements in migration handling, error handling, and REST API functionality.

Key Highlights

  • AI Agent capabilities: IMAP driver integration, MCP integration, agent role assignment with database CRUD tools, and new agent chat tab
  • Workflow system enhancements: workflow filters on diagram, queue limits per workspace, running workflow versions on multiple records, and filter actions converted to conditions
  • Completed hotkey scopes replacement with focus stack across all UI components (Parts 1-6)
  • Major UI/UX improvements: date picker fixes, filter improvements, dropdown refactoring to useCloseDropdown/useOpenDropdown/useToggleDropdown hooks
  • Backend improvements: migration runner refactoring within transactions, improved error handling, REST API filter fixes, and workspace migration builder v2

Breaking Changes

  • API keys and webhooks migration moved from version 1.3 to 1.1 - requires migration for existing installations
  • createdAt and updatedAt fields set as readonly on the frontend - prevents manual editing of timestamps
  • Removed useDropdown and legacy states - requires updates to any custom components using the old API

New Features

  • IMAP Driver Integration for email handling
  • MCP (Model Context Protocol) integration for AI
  • Agent chat tab for AI agent interactions
  • Tool execution messages in AI agent chat
  • Export of deleted records functionality
  • Workflow filters on diagram view
  • Add first filter step version
  • Turn filter action into conditions
  • Add a limit to workflow queue per workspace
  • Run workflow version on multiple records
  • Empty option for select form fields
  • Empty state for multi-select input
  • Auto-scroll to selected menu items in CustomSlashMenu
  • Blockquote icon in slash menu
  • 22 branches data migration
  • Store HTTP request JSON body as string

Full Release Notes

## What's Changed
* docs: upgrade guide by @prastoin in https://github.com/twentyhq/twenty/pull/12857
* change log, user guide, and readme updates for v1 launch by @vickywxng in https://github.com/twentyhq/twenty/pull/12860
* fixing images url to main branch by @guillim in https://github.com/twentyhq/twenty/pull/12862
* Field metadata relation edge cases exceptions coverage by @prastoin in https://github.com/twentyhq/twenty/pull/12866
* Fix page change effect being rerun after changes on views by @bosiraphael in https://github.com/twentyhq/twenty/pull/12869
* Replace hotkey scopes by focus stack (Part 2 - Record Table, Rows and Cells) by @bosiraphael in https://github.com/twentyhq/twenty/pull/12798
* onboarding - signout button on `Choose your workspaces` modal by @ehconitin in https://github.com/twentyhq/twenty/pull/12794
* permissions - fix cancel button in create mode by @ehconitin in https://github.com/twentyhq/twenty/pull/12870
* i18n - translations by @github-actions in https://github.com/twentyhq/twenty/pull/12877
* Fix array field migration by @Weiko in https://github.com/twentyhq/twenty/pull/12874
* Refactor useDropdownV2 by @lucasbordeau in https://github.com/twentyhq/twenty/pull/12875
* Add placeholder to generate fake form respose by @martmull in https://github.com/twentyhq/twenty/pull/12871
* Minor changelog updates + other misc issues by @vickywxng in https://github.com/twentyhq/twenty/pull/12882
* Enable the opening of email threads and calendar events from the timeline by @bosiraphael in https://github.com/twentyhq/twenty/pull/12873
* chore: improve password strength in install script (#12878) by @jezweb in https://github.com/twentyhq/twenty/pull/12896
* Updated PH banner from the README by @Bonapara in https://github.com/twentyhq/twenty/pull/12894
* Fix standard object computed metadata by @prastoin in https://github.com/twentyhq/twenty/pull/12883
* escaping special chars for events by @guillim in https://github.com/twentyhq/twenty/pull/12872
* Add empty option to select form field by @martmull in https://github.com/twentyhq/twenty/pull/12898
* fix(server): incr metadata version by @prastoin in https://github.com/twentyhq/twenty/pull/12907
* Fix upgrade command updating version during dry run by @Weiko in https://github.com/twentyhq/twenty/pull/12909
* Add fix schema array type command by @Weiko in https://github.com/twentyhq/twenty/pull/12887
* Refactor useDropdown states to component state V2 by @lucasbordeau in https://github.com/twentyhq/twenty/pull/12911
* Import - richTextV2 import by @etiennejouan in https://github.com/twentyhq/twenty/pull/12868
* Improve FE error handling by @ijreilly in https://github.com/twentyhq/twenty/pull/12864
* i18n - translations by @github-actions in https://github.com/twentyhq/twenty/pull/12913
* Replace hotkey scopes by focus stack (Part 3 - Record Board, Cards and Inline Cells) by @bosiraphael in https://github.com/twentyhq/twenty/pull/12910
* fix(captcha): simplify captcha token refresh logic by @AMoreaux in https://github.com/twentyhq/twenty/pull/12876
* fix IndexFieldMetadata availability in IndexMetadata/ObjectMetadata in front by @etiennejouan in https://github.com/twentyhq/twenty/pull/12886
* i18n - translations by @github-actions in https://github.com/twentyhq/twenty/pull/12926
* Workspace creation - fix not found file during avatar picture copy by @etiennejouan in https://github.com/twentyhq/twenty/pull/12920
* Nitpick: psl types  by @prastoin in https://github.com/twentyhq/twenty/pull/12925
* feat: IMAP Driver Integration by @neo773 in https://github.com/twentyhq/twenty/pull/12576
* i18n - translations by @github-actions in https://github.com/twentyhq/twenty/pull/12951
* feat: Add agent role assignment and database CRUD tools for AI agent nodes by @abdulrahmancodes in https://github.com/twentyhq/twenty/pull/12888
* i18n - translations by @github-actions in https://github.com/twentyhq/twenty/pull/12952
* Fix server integration tests due to expired token by @Weiko in https://github.com/twentyhq/twenty/pull/12966
* Add a limit to workflow queue per workspace by @thomtrp in https://github.com/twentyhq/twenty/pull/12908
* Store HTTP request json body as a string by @Devessier in https://github.com/twentyhq/twenty/pull/12931
* Improve RestApiExceptionFilter by @ijreilly in https://github.com/twentyhq/twenty/pull/12967
* Fix REST API filters by @prastoin in https://github.com/twentyhq/twenty/pull/12929
* Run workflow version on multiple records by @thomtrp in https://github.com/twentyhq/twenty/pull/12969
* Add workflow filters on diagram by @Devessier in https://github.com/twentyhq/twenty/pull/12974
* Fix search record for workflow objects by @MohitAgrawal16 in https://github.com/twentyhq/twenty/pull/12914
* Fix Vite stale chunk lazy loading error. by @lucasbordeau in https://github.com/twentyhq/twenty/pull/12984
* Fixed avatar font weight and associated story by @lucasbordeau in https://github.com/twentyhq/twenty/pull/12989
* Separate system operations from core objects in GraphQL endpoints by @ehconitin in https://github.com/twentyhq/twenty/pull/12977
* Rebase main before applying breaking change CI by @FelixMalfait in https://github.com/twentyhq/twenty/pull/12992
* Fix Raw Json Null Error by @rajatsingh23 in https://github.com/twentyhq/twenty/pull/12968
* Fix bug date picker month and year dropdown not clickable by @lucasbordeau in https://github.com/twentyhq/twenty/pull/12963
* Connect - Update Gql schema generation by @etiennejouan in https://github.com/twentyhq/twenty/pull/13001
* Scaffold filters creation and deletion by @Devessier in https://github.com/twentyhq/twenty/pull/12990
* Dates beyond 2030 and autoscroll in select by @FelixMalfait in https://github.com/twentyhq/twenty/pull/12998
* Turn filter action into conditions by @thomtrp in https://github.com/twentyhq/twenty/pull/13005
* [#12744] UI Fix: Filter Section Separator Needs to Be Darker by @iamjeremylim in https://github.com/twentyhq/twenty/pull/12945
* Fix: Remove white gap in workflow HTTP headers input field by @abdulrahmancodes in https://github.com/twentyhq/twenty/pull/12812
* Replaced useDropdown calls by useCloseDropdown, useOpenDropdown and useToggleDropdown by @lucasbordeau in https://github.com/twentyhq/twenty/pull/12958
* fix: update customize fields navigation to go directly to object detail page by @jezweb in https://github.com/twentyhq/twenty/pull/12904
* Miscrosoft Client errors when refreshing accessToken by @guillim in https://github.com/twentyhq/twenty/pull/12884
* Refactor migration runner within transaction by @Weiko in https://github.com/twentyhq/twenty/pull/12941
* Fix Apollo client routing for view operations in field metadata hooks by @ehconitin in https://github.com/twentyhq/twenty/pull/13012
* Update docker entry point parsing to handle postgres query paramaters by @aldalen in https://github.com/twentyhq/twenty/pull/12937
* fix: updated naming convention in action & object label by @Jagss24 in https://github.com/twentyhq/twenty/pull/12935
* i18n - translations by @github-actions in https://github.com/twentyhq/twenty/pull/13013
* fix long activity panel in deleted record details by @ehconitin in https://github.com/twentyhq/twenty/pull/12854
* 22 branches data migration by @martmull in https://github.com/twentyhq/twenty/pull/13006
* i18n - translations by @github-actions in https://github.com/twentyhq/twenty/pull/13019
* Add relations to form record output by @thomtrp in https://github.com/twentyhq/twenty/pull/13023
* Fix a hotkey scope race condition in command menu by @lucasbordeau in https://github.com/twentyhq/twenty/pull/13025
* Define server error messages to display in FE from the server by @ijreilly in https://github.com/twentyhq/twenty/pull/12973
* i18n - translations by @github-actions in https://github.com/twentyhq/twenty/pull/13028
* Add empty state to multi select input by @Devessier in https://github.com/twentyhq/twenty/pull/13029
* feat(ai): add mcp integration by @AMoreaux in https://github.com/twentyhq/twenty/pull/13004
* Fix update context and stepOutput when step running by @martmull in https://github.com/twentyhq/twenty/pull/13030
* Pretty format webhook payload example + unify expected body validation by @Devessier in https://github.com/twentyhq/twenty/pull/13034
* i18n - translations by @github-actions in https://github.com/twentyhq/twenty/pull/13040
* Prevent testing malformed workflows and allow testing workflows with cron trigger by @Devessier in https://github.com/twentyhq/twenty/pull/13045
* Fix phone input clearing its value when hitting space by @lucasbordeau in https://github.com/twentyhq/twenty/pull/13031
* Fixes greater than or equal and less than and equal filters by @lucasbordeau in https://github.com/twentyhq/twenty/pull/13033
* i18n - translations by @github-actions in https://github.com/twentyhq/twenty/pull/13049
* Fix workflow title cell not opening by @lucasbordeau in https://github.com/twentyhq/twenty/pull/13052
* Fix circular structure error in useFetchMoreRecordsWithPagination by @ehconitin in https://github.com/twentyhq/twenty/pull/13042
* feat: enable export of deleted records by @omarNaifer12 in https://github.com/twentyhq/twenty/pull/12776
* fix: align workspace switcher button in collapsed navigation drawer (#12893) by @jezweb in https://github.com/twentyhq/twenty/pull/12902
* Import - Improve phone validation by @etiennejouan in https://github.com/twentyhq/twenty/pull/12901
* i18n - translations by @github-actions in https://github.com/twentyhq/twenty/pull/13055
* i18n - translations by @github-actions in https://github.com/twentyhq/twenty/pull/13057
* Fix broken data model translation by @charlesBochet in https://github.com/twentyhq/twenty/pull/13067
* fix: fixed the update of field metadata label, icon & object by @Jagss24 in https://github.com/twentyhq/twenty/pull/13064
* Fix stories by @charlesBochet in https://github.com/twentyhq/twenty/pull/13069
* [POC] Workspace migration builder v2 by @Weiko in https://github.com/twentyhq/twenty/pull/13026
* Fix error handling by @ijreilly in https://github.com/twentyhq/twenty/pull/13072
* feat(ci): add GraphQL check workflow and update dependencies setup by @AMoreaux in https://github.com/twentyhq/twenty/pull/13075
* Replace hotkey scopes by focus stack (Part 4 - Inputs) by @bosiraphael in https://github.com/twentyhq/twenty/pull/12933
* Silent harmless AbortError by @ijreilly in https://github.com/twentyhq/twenty/pull/13080
* fix(ci): reorganize workflow steps and move cache saving to correct s… by @AMoreaux in https://github.com/twentyhq/twenty/pull/13083
* Feat - Agent chat tab by @abdulrahmancodes in https://github.com/twentyhq/twenty/pull/13061
* 22 branches 2 by @martmull in https://github.com/twentyhq/twenty/pull/13051
* i18n - translations by @github-actions in https://github.com/twentyhq/twenty/pull/13085
* Remove product hunt by @FelixMalfait in https://github.com/twentyhq/twenty/pull/13090
* fix: blockquote icon in slash menu by @jbronssin in https://github.com/twentyhq/twenty/pull/13068
* Migration builder v2 handle `RELATION` through `fields` actions by @prastoin in https://github.com/twentyhq/twenty/pull/13076
* fix: prevent LinkAvatarChip from triggering page reload when table cells or inline cells are in edit mode by @omarNaifer12 in https://github.com/twentyhq/twenty/pull/12734
* Pass dropdownId to all closeDropdown calls in MatchColumnToFieldSelect by @cxdima in https://github.com/twentyhq/twenty/pull/13087
* Billing - fix duplicate customer in stripe + subscription constraint violation by @etiennejouan in https://github.com/twentyhq/twenty/pull/13091
* fieldmetadatatype + featurelfag creation by @guillim in https://github.com/twentyhq/twenty/pull/13021
* Set createdAt and updatedAt as readonly on the frontend by @FelixMalfait in https://github.com/twentyhq/twenty/pull/13096
* i18n - translations by @github-actions in https://github.com/twentyhq/twenty/pull/13098
* Import - fixes by @etiennejouan in https://github.com/twentyhq/twenty/pull/13097
* Skip front config generation if index isn't writable by @niklaskorz in https://github.com/twentyhq/twenty/pull/13094
* Update yarn and remove explicit hardened mode by @niklaskorz in https://github.com/twentyhq/twenty/pull/13092
* i18n - translations by @github-actions in https://github.com/twentyhq/twenty/pull/13102
* fix relation issue by @guillim in https://github.com/twentyhq/twenty/pull/13109
* Removed useDropdown and its legacy states by @lucasbordeau in https://github.com/twentyhq/twenty/pull/13111
* Replace hotkey scopes by focus stack (Part 5 - Form field Inputs, Pages, Dialog ...) by @bosiraphael in https://github.com/twentyhq/twenty/pull/13106
* Agent chat code cleanup by @abdulrahmancodes in https://github.com/twentyhq/twenty/pull/13088
* Prevent relation update from settings by @charlesBochet in https://github.com/twentyhq/twenty/pull/13099
* Create custom StreamingRestLink for streaming API requests using @stream directive by @abdulrahmancodes in https://github.com/twentyhq/twenty/pull/13114
* Frontend tests improvements by @FelixMalfait in https://github.com/twentyhq/twenty/pull/13115
* [field-level permissions] Upsert fieldPermission + use fieldPermission to compute permissions by @ijreilly in https://github.com/twentyhq/twenty/pull/13050
* Refactor data model settings new field folder by @charlesBochet in https://github.com/twentyhq/twenty/pull/13119
* i18n - translations by @github-actions in https://github.com/twentyhq/twenty/pull/13121
* Fix refetch cached views after field creation by @lucasbordeau in https://github.com/twentyhq/twenty/pull/13120
* Remove unwanted workflow fetch on right drawer open by @charlesBochet in https://github.com/twentyhq/twenty/pull/13122
* Add first filter step version by @thomtrp in https://github.com/twentyhq/twenty/pull/13093
* i18n - translations by @github-actions in https://github.com/twentyhq/twenty/pull/13126
* Connect logic in Workspace Entity Manager by @etiennejouan in https://github.com/twentyhq/twenty/pull/13078
* i18n - translations by @github-actions in https://github.com/twentyhq/twenty/pull/13128
* 13058 workflow with code fail to run by @martmull in https://github.com/twentyhq/twenty/pull/13118
* Fix relation field unknown target object by @charlesBochet in https://github.com/twentyhq/twenty/pull/13129
* Workspace migration v2 builder INDEX by @prastoin in https://github.com/twentyhq/twenty/pull/13100
* Api keys and webhook migration to core by @ehconitin in https://github.com/twentyhq/twenty/pull/13011
* Improve error handling by @ijreilly in https://github.com/twentyhq/twenty/pull/13130
* i18n - translations by @github-actions in https://github.com/twentyhq/twenty/pull/13134
* i18n - translations by @github-actions in https://github.com/twentyhq/twenty/pull/13135
* Replace hotkey scopes by focus stack (Part 6 - Remove Hotkey scopes 🫳🎤) by @bosiraphael in https://github.com/twentyhq/twenty/pull/13127
* Delete userWorkspace when removed from workspace by @charlesBochet in https://github.com/twentyhq/twenty/pull/13131
* i18n - translations by @github-actions in https://github.com/twentyhq/twenty/pull/13138
* feat: add auto-scroll to selected menu items in CustomSlashMenu by @jbronssin in https://github.com/twentyhq/twenty/pull/13048
* Show tool execution messages in AI agent chat by @abdulrahmancodes in https://github.com/twentyhq/twenty/pull/13117
* i18n - translations by @github-actions in https://github.com/twentyhq/twenty/pull/13143
* Use view filters operands in step filters + migrate to twenty-shared by @thomtrp in https://github.com/twentyhq/twenty/pull/13137
* Move apikey/webhook migration command from 1.3 to 1.1 by @Weiko in https://github.com/twentyhq/twenty/pull/13146

## New Contributors
* @vickywxng made their first contribution in https://github.com/twentyhq/twenty/pull/12860
* @jezweb made their first contribution in https://github.com/twentyhq/twenty/pull/12896
* @rajatsingh23 made their first contribution in https://github.com/twentyhq/twenty/pull/12968
* @iamjeremylim made their first contribution in https://github.com/twentyhq/twenty/pull/12945
* @aldalen made their first contribution in https://github.com/twentyhq/twenty/pull/12937
* @Jagss24 made their first contribution in https://github.com/twentyhq/twenty/pull/12935
* @jbronssin made their first contribution in https://github.com/twentyhq/twenty/pull/13068
* @cxdima made their first contribution in https://github.com/twentyhq/twenty/pull/13087
* @niklaskorz made their first contribution in https://github.com/twentyhq/twenty/pull/13094

**Full Changelog**: https://github.com/twentyhq/twenty/compare/v1.0.0...v1.1.0