twenty/v2.18.0

resend/react-emailtwenty/v2.18.0Jul 2, 2026by prastoin

AI Summary

This release focuses on multi-locale support for the website, improvements to AI tools like bulk data import, and enhancements to the v2 onboarding process and messaging features. It also includes Helm chart configuration updates and server-side search optimizations.

Key Highlights

  • Multi-locale documentation site (i18n) support
  • Reliable bulk data import via code-interpreter
  • v2 onboarding improvements including a dedicated verify step
  • Messaging sync for draft emails in thread composer
  • Configurable HTTP keep-alive/headers timeouts

New Features

  • Multi-locale documentation site
  • Reliable bulk data import via code-interpreter
  • v2 onboarding invite team page
  • Messaging sync for draft emails
  • Configurable HTTP keep-alive/headers timeouts
  • Helm chart nodeSelector, tolerations, and DNS overrides

Full Release Notes

## What's Changed
* feat(website): ship all documentation locales (multi-locale site) by @mabdullahabaid in https://github.com/twentyhq/twenty/pull/22257
* fix(website): config-only Crowdin pull to match short-code catalogs by @mabdullahabaid in https://github.com/twentyhq/twenty/pull/22262
* chore: bump version to 2.18.0 by @twenty-pr[bot] in https://github.com/twentyhq/twenty/pull/22256
* i18n - website translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/22263
* i18n - website translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/22264
* fix(website): bump @opennextjs/cloudflare to 1.20.0 (R2 deploy on Node 24) by @mabdullahabaid in https://github.com/twentyhq/twenty/pull/22266
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/22271
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/22273
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/22276
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/22279
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/22280
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/22281
* fix: ignore IME composition Enter in chat-thread and attachment rename inputs by @greymoth-jp in https://github.com/twentyhq/twenty/pull/22270
* fix(server): dedupe in-flight application translation catalog loads by @FelixMalfait in https://github.com/twentyhq/twenty/pull/22285
* fix(ai-tools): make navigate_app tool schema a valid object root for direct model binding by @etiennejouan in https://github.com/twentyhq/twenty/pull/22284
* feat(ai): reliable bulk data import via code-interpreter by @etiennejouan in https://github.com/twentyhq/twenty/pull/22209
* fix: Vite 8/Rolldown build warnings in library packages by @parshipcy in https://github.com/twentyhq/twenty/pull/22205
* feat(helm): add nodeSelector, tolerations and DNS overrides to server and worker by @mhorcajada in https://github.com/twentyhq/twenty/pull/22233
* Add v2 onboarding invite team page by @bosiraphael in https://github.com/twentyhq/twenty/pull/22229
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/22296
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/22297
* fix: prevent crash when leaving dashboard edit mode with side panel open by @Weiko in https://github.com/twentyhq/twenty/pull/22292
* microsoft webhook ttl fix by @neo773 in https://github.com/twentyhq/twenty/pull/22300
* Add marketplace catalog synchronization to admin panel by @martmull in https://github.com/twentyhq/twenty/pull/22260
* chore(docs): exclude code blocks and icon frontmatter from Crowdin translation by @abdulrahmancodes in https://github.com/twentyhq/twenty/pull/22304
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/22307
* fix(server): normalize legacy index names (command) by @ijreilly in https://github.com/twentyhq/twenty/pull/22053
* Move filter group destruction after filter operations by @Souheyl7Gouadria in https://github.com/twentyhq/twenty/pull/22248
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/22317
* Add call recorder oom diagnosis logs  by @ehconitin in https://github.com/twentyhq/twenty/pull/22315
* fix: evict js-yaml 3.x via front-matter patch + scoped resolutions by @mabdullahabaid in https://github.com/twentyhq/twenty/pull/22312
* fix(server): add workspaceMember jobTitle field without view-field side effects by @FelixMalfait in https://github.com/twentyhq/twenty/pull/22306
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/22319
* Polish settings page titles and admin tables by @Bonapara in https://github.com/twentyhq/twenty/pull/22305
* v2 onboarding: dedicated verify step and upgrade-free-trial as the last step by @bosiraphael in https://github.com/twentyhq/twenty/pull/22303
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/22329
* fix: improve native print output for dashboards and record tables by @vittolago in https://github.com/twentyhq/twenty/pull/22272
* feat(server): resolve app translations across remaining metadata resolvers by @FelixMalfait in https://github.com/twentyhq/twenty/pull/22237
* chore(docs): self-clean orphans and surface failed languages in i18n … by @abdulrahmancodes in https://github.com/twentyhq/twenty/pull/22278
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/22335
* fix(front): mark stale AnimatePresence exit page inert so it can't intercept clicks by @Weiko in https://github.com/twentyhq/twenty/pull/22328
* bump call recorder by @ehconitin in https://github.com/twentyhq/twenty/pull/22318
* fix: reconcile metadata store after object creation so activity targets on new custom objects link correctly by @etiennejouan in https://github.com/twentyhq/twenty/pull/22331
* ci(twenty-front): show only failing unit tests in CI by @prastoin in https://github.com/twentyhq/twenty/pull/22345
* feat(call-recorder): use workspace logo for Recall bot image by @ehconitin in https://github.com/twentyhq/twenty/pull/22302
* feat(server): configurable HTTP keep-alive/headers timeouts to prevent proxy 502s by @charlesBochet in https://github.com/twentyhq/twenty/pull/22327
* Deprecate `asExpression` from field metadata search_vector by @prastoin in https://github.com/twentyhq/twenty/pull/22287
* Remove twenty-ui reexport from the SDK and use twenty-ui directly by @bosiraphael in https://github.com/twentyhq/twenty/pull/22326
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/22350
* chore: sync DPA sub-processors from trust center by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/22282
* fix(navigation-menu-item): reject PAGE_LAYOUT items that don't reference a STANDALONE_PAGE layout by @etiennejouan in https://github.com/twentyhq/twenty/pull/22343
* feat(messaging): sync draft emails and edit them in the thread composer by @neo773 in https://github.com/twentyhq/twenty/pull/22178
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/22352
* Fix v2 onboarding dropping to v1 after connecting email by @bosiraphael in https://github.com/twentyhq/twenty/pull/22351
* fix(server): recreate searchVector GIN index on rebuild by @prastoin in https://github.com/twentyhq/twenty/pull/22349
* Clear orphan search field metadata backfill tsVectorFieldMetadataId by @prastoin in https://github.com/twentyhq/twenty/pull/22353
* v1.2.0 — Client brief intake (marketplace B2) by @rashad in https://github.com/twentyhq/twenty/pull/22290
* Track total onboarding free credits in an atom by @bosiraphael in https://github.com/twentyhq/twenty/pull/22348
* Credit the import-contacts onboarding reward on account connection by @bosiraphael in https://github.com/twentyhq/twenty/pull/22354
* feat(server): add 2.18 recompute-search-vectors upgrade command by @prastoin in https://github.com/twentyhq/twenty/pull/22355
* Credit workspaces for onboarding invite-team signups by @bosiraphael in https://github.com/twentyhq/twenty/pull/22309
* improve dry run logs: show entity names and changed fields by @ijreilly in https://github.com/twentyhq/twenty/pull/22299
* Update workflows documentation by @ijreilly in https://github.com/twentyhq/twenty/pull/22356

## New Contributors
* @greymoth-jp made their first contribution in https://github.com/twentyhq/twenty/pull/22270
* @mhorcajada made their first contribution in https://github.com/twentyhq/twenty/pull/22233
* @vittolago made their first contribution in https://github.com/twentyhq/twenty/pull/22272

**Full Changelog**: https://github.com/twentyhq/twenty/compare/twenty/v2.17.0...twenty/v2.18.0