isCustom is removed from agent, skill, view, index, and agentChatChannel types. Code that reads or writes this property will not compile against this release.
Applications can now restrict permissions with disabledFieldPermissionActions on fields and disabledObjectPermissionActions on objects. Inbox helpers sendInboxMessage, inboxMention, and inboxReferenceRecord are now exported from twenty-sdk/front-component as well as twenty-sdk/logic-function. A new mcpServer entity lets workspaces register external MCP servers with authentication tied to a connection provider.
Agent sync is more reliable. AgentManifest now carries modelConfiguration, so agents with web search or X search survive twenty app pull / twenty app apply without losing that config. The billingPlans query replaces the deprecated listPlans in the metadata client.
⚠️ Breaking changes
isCustomis removed from agent, skill, view, index, and agentChatChannel types — remove any references in manifest files and TypeScript code. (#29052) by @FelixMalfait
🌟 Highlights
isCustomis removed from agent, skill, view, index, and agentChatChannel types — remove any references to avoid compile errors. (#29052)sendInboxMessage,inboxMention, andinboxReferenceRecordare now exported fromtwenty-sdk/front-componentin addition totwenty-sdk/logic-function. (#29088)objectMetadata.disabledObjectPermissionActionsandfieldMetadata.disabledFieldPermissionActionslet applications lock down what roles may do on specific objects and fields. (#28985)AgentManifestnow includesmodelConfiguration; agents with web search or X search no longer lose that setting ontwenty app pull / twenty app apply. (#29045)billingPlansquery added to the metadata client;listPlansis deprecated — replace calls withbillingPlans. (#29003)
✨ New features
- A new
mcpServersyncable entity is available via the client SDK; register external MCP servers withname,url,connectionProviderId, andisActive. (#28597) by @abdulrahmancodes objectMetadata.disabledObjectPermissionActionslets applications prevent any role from being granted read, update, soft-delete, or destroy access on specific objects. (#28985) by @charlesBochet- App message channels can now carry folders; call
syncMessageFolderswith the channel id and folder array to register sub-streams such as Front inboxes or Slack channels. (#28986) by @FelixMalfait billingPlansquery added to the metadata client;listPlansis deprecated — replace calls withbillingPlans. (#29003) by @FelixMalfaitSEND_EMAIL,DRAFT_EMAIL, andCREATE_CALENDAR_EVENTsteps indefineWorkflownow acceptconnectedAccountHandle(an email address) as a portable alternative toconnectedAccountId; the schema requires exactly one of the two. (#29048) by @FelixMalfait- Workspace edits to app-installed agents and skills are now stored as overrides and survive re-sync; the next
twenty app applyno longer reverts workspace customizations. (#29051) by @FelixMalfait fieldMetadata.disabledFieldPermissionActionslets applications prevent roles from reading or updating specific field values. (#29084) by @charlesBochetsendInboxMessage,inboxMention, andinboxReferenceRecordare now exported fromtwenty-sdk/front-componentas well astwenty-sdk/logic-function. (#29088) by @bosiraphael
💅 Improvements & UX
FormFieldRownow accepts acontentPaddingprop; the existing 8px default is preserved. (#28934) by @bosiraphaelisAuditLoggedis now exposed onObjectMetadatain the GraphQL type and client SDK fragment. (#29016) by @martmullAgentManifestnow includesmodelConfiguration; agents with web search or X search round-trip throughtwenty app pull / twenty app applywithout losing that config. (#29045) by @FelixMalfait
🐛 Bug fixes
- The local logic function runtime now matches Lambda —
os.tmpdir()returns a private writable folder inside the execution directory, and Node permission flags restrict disk access. (#28599) by @FelixMalfait - zod 4 updated to 4.6.7 to fix a high-severity memory exhaustion vulnerability (GHSA-mrhx-c7xc-m3w5). (#28959) by @BOHEUS
- Metadata client type index for
billingPlanscorrected; the query now maps toBillingPlaninstead ofBillingPaymentIntent. (#29013) by @etiennejouan
🔧 Developer & API
- Vendor entry and shim build helpers are now shared across CLI, SDK, and server compilation. (#28855) by @Weiko
🏗️ Internal changes (4)
- Match inbox channel navigation (#28868) by @bosiraphael
- feat(captcha): require captcha on workspace creation and enforce a minimum score (#28977) by @etiennejouan
- Remove the IS_DEFERRED_WORKSPACE_MIGRATION_ACTIONS_ENABLED feature flag (#29081) by @charlesBochet
- Show the unread inbox count in the blue badge (#29133) by @bosiraphael
🎉 New contributors
- @Adithya9605 made their first contribution in #28579
- @siddiqueirshad made their first contribution in #28664
- @saltcoffee made their first contribution in #28592
- @arnavsingh0418 made their first contribution in #28658
- @ahmed-aneem made their first contribution in #28795
Full changelog (21 PRs)
- Add mcpServer syncable metadata entity with GraphQL CRUD (#28597) by @abdulrahmancodes
- Align local logic function runtime with Lambda (#28599) by @FelixMalfait
- Share frontend vendor and shim build helpers (#28855) by @Weiko
- Match inbox channel navigation (#28868) by @bosiraphael
- Allow custom FormFieldRow content padding (#28934) by @bosiraphael
- chore(security): bump zod 4 to 4.6.7 (#28959) by @BOHEUS
- feat(captcha): require captcha on workspace creation and enforce a minimum score (#28977) by @etiennejouan
- Let applications disable object permission actions on their objects (#28985) by @charlesBochet
- Let apps declare message folders on their channels (#28986) by @FelixMalfait
- chore: bump version to 2.53.0 (#29002) by @etiennejouan
- Add a billingPlans query and deprecate listPlans (#29003) by @FelixMalfait
- fix(sdk): regenerate metadata client for billingPlans (#29013) by @etiennejouan
- Hide non-audit-logged objects from the log console object filter (#29016) by @martmull
- Sync agent modelConfiguration and make isSystem display only (#29045) by @FelixMalfait
- Pull and apply email and calendar workflow steps (#29048) by @FelixMalfait
- Give agents and skills the override and archive model of objects (#29051) by @FelixMalfait
- Drop isCustom from agent, skill, view, index and agentChatChannel (#29052) by @FelixMalfait
- Remove the IS_DEFERRED_WORKSPACE_MIGRATION_ACTIONS_ENABLED feature flag (#29081) by @charlesBochet
- Let applications disable field permission actions on their fields (#29084) by @charlesBochet
- Share the inbox SDK helpers with front components (#29088) by @bosiraphael
- Show the unread inbox count in the blue badge (#29133) by @bosiraphael
Full Changelog: sdk/v2.52.0...sdk/v2.53.1