twenty/v2.18.0
parruda/swarmtwenty/v2.18.0Jul 2, 2026by prastoin
AI Summary
A comprehensive release focused on internationalization (i18n), AI tooling enhancements, and V2 onboarding flow improvements. It introduces multi-locale support, bulk data import via code interpreter, and various UI/UX fixes.
Key Highlights
- Shipped all documentation locales for a multi-locale site
- Added reliable bulk data import via code-interpreter
- Updated V2 onboarding flow with a dedicated verify step
- Enabled editing of draft emails in the thread composer
New Features
- Multi-locale documentation site
- AI bulk data import via code-interpreter
- V2 onboarding dedicated verify step
- Messaging sync for draft emails
- Marketplace catalog synchronization
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