| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| Parent folder | |||
| README.md | 2026-10-14 | 36.7 kB | |
| sdk_v2.47.0 source code.tar.gz | 2026-10-14 | 154.2 MB | |
| sdk_v2.47.0 source code.zip | 2026-10-14 | 178.4 MB | |
| Totals: 3 Items | 332.6 MB | 0 | |
⚠️ Breaking changes
- feat(sharing): reshape record sharing API and share panel (#27121) by @FelixMalfait
- feat(usage-limit): replace the limit meter with a usage unit (#27124) by @etiennejouan
- refactor(ai): drop unused agent history repository registrations and errorDetails field (#27197) by @FelixMalfait
- Remove the install apps onboarding step and rely on pre-installed apps (#27374) by @etiennejouan
- Track application upgrade as a queued job with progress (#27526) by @martmull
- sendInboxMessage takes workspaceMemberIds; one thread key is one conversation (#27615) by @FelixMalfait
- [BREAKING_CHANGE] Ship the Conversations tab and workflow inbox messages under the inbox flag (#27830) by @FelixMalfait
- [BREAKING_CHANGE] Unpin chat Share and drop the AI chat sharing dropdown flag (#27832) by @FelixMalfait
- Add widgetAvailability to front components (#27841) by @martmull
✨ New features
- feat(campaigns): add selected people or a whole People view to a campaign list (#26823) by @neo773
- feat: admin-issued two-factor authentication recovery codes (#26933) by @abdulrahmancodes
- feat(ai): let runAgent continue a conversation by thread key (#27135) by @FelixMalfait
- feat(ai): let agents and workflows propose tool calls for approval (#27169) by @FelixMalfait
- feat(permissions): add a workspace flag to turn off record share visibility gating (#27177) by @charlesBochet
- feat(ai): ask one question per call and step through every pending request (#27206) by @FelixMalfait
- feat(ai): unread badge on the inbox, with inbox state sent as record events (#27221) by @FelixMalfait
- feat(ai-chat): # to reference records, @ to bring teammates into a chat (#27234) by @FelixMalfait
- feat(applications): show install and uninstall progress in the action buttons (#27357) by @martmull
💅 Improvements & UX
- Forward typed events with React compatibility to front component workers (#26356) by @bosiraphael
- [1/3] Let apps declare user-scoped application variables (#26868) by @ehconitin
- [2/3] Let each member set their own value of a user application variable (#26869) by @ehconitin
- Track campaign opens (#26938) by @neo773
- Chat inbox: read cursor, unread line, done and snooze per member (#27046) by @FelixMalfait
- Migrate field input pickers and row menus (#27061) by @bosiraphael
- Migrate navigation menus and icon pickers (#27064) by @bosiraphael
- Migrate address and email autocompletes (#27065) by @bosiraphael
- Migrate record and tab dropdown menus (#27070) by @bosiraphael
- Unify resizing with ResizeHandle (#27083) by @bosiraphael
- Migrate phone country picker to Twenty UI (#27125) by @bosiraphael
- Migrate currency picker to Twenty UI (#27127) by @bosiraphael
- Migrate country selection in Twenty UI (#27128) by @bosiraphael
- Keep the first keystroke typed into a dropdown search (#27148) by @bosiraphael
- Replace hidden chat messages with system messages (#27207) by @FelixMalfait
- Load a member's chat inbox state with its threads (#27219) by @FelixMalfait
- Refuse administration operations to installed application tokens (#27241) by @prastoin
- Add isSystem to agents and workflows (#27252) by @FelixMalfait
- Upgrade Preact to 11 for React 19 refs (#27271) by @bosiraphael
- Add people to a campaign list with a background job (#27276) by @neo773
- Remove agent evaluations and the agent Logs tab (#27320) by @FelixMalfait
- Add triggers to agents (1/3) (#27322) by @FelixMalfait
- Record runAgent calls made without a thread (#27337) by @FelixMalfait
- Remove dead AI code and unused module imports (#27339) by @FelixMalfait
- Organize Twenty UI components by family (#27354) by @bosiraphael
- Keep JSX handlers when a clone replaces a remote element ref (#27366) by @bosiraphael
- Align settings switches and complete feature flag labels (#27370) by @Bonapara
- Ground the scaffolded AGENTS.md in what the build enforces and fix dev:add output (#27371) by @ijreilly
- Complete ColorSample and Loader APIs (#27381) by @bosiraphael
- Accept isActive when updating a page layout widget (#27389) by @thomtrp
- Use node slots for icon presentation (#27393) by @bosiraphael
- Align Banner and InlineBanner feedback APIs (#27396) by @bosiraphael
- Let agent triggers and runAgent calls wait on events and durations (#27403) by @FelixMalfait
- Expose the selected records filter to front components (#27404) by @charlesBochet
- Stop agent code from depending on workflow code (#27407) by @FelixMalfait
- Inbox: chat subscriptions and server-side mentions (#27430) by @FelixMalfait
- Remove unused NestJS module imports in twenty-server (#27434) by @FelixMalfait
- Inbox: assign chats to a member (#27442) by @FelixMalfait
- Move skeleton placeholders into twenty-ui (#27481) by @bosiraphael
- Make Callout dismissal caller-owned (#27485) by @bosiraphael
- Align Tooltip shorthand and parts (#27488) by @bosiraphael
- Add loading positions to Button (#27496) by @bosiraphael
- Write the front component JSX runtime in TypeScript (#27497) by @bosiraphael
- Make typography composition explicit (#27504) by @bosiraphael
- Expose Collapsible parts (#27507) by @bosiraphael
- Block uninstalling a server route app from its owner workspace while installed elsewhere (#27510) by @martmull
- Gate the AI chat inbox behind a feature flag (#27552) by @FelixMalfait
- Remove the unused addAgentChatThreadParticipants mutation (#27557) by @FelixMalfait
- Compute the inbox counts on the server over all of a member's chats (#27570) by @FelixMalfait
- Replace the seven AI chat inbox mutations with one batched mutation (#27576) by @FelixMalfait
- Represent a paused agent run as a pending wake-up (#27579) by @FelixMalfait
- Complete Field and Slider anatomy (#27583) by @bosiraphael
- Align Section and CommandBlock composition (#27584) by @bosiraphael
- Expose Checkbox and Switch parts (#27587) by @bosiraphael
- Align input and textarea integration (#27589) by @bosiraphael
- Expose complete Popover parts (#27590) by @bosiraphael
- Complete AlertDialog parts (#27605) by @bosiraphael
- Expose complete Dialog parts (#27606) by @bosiraphael
- Complete Button and IconButton contracts (#27609) by @bosiraphael
- Fix oversized icon in InlineBanner (#27624) by @FelixMalfait
- Lighter shortcut hint in buttons and new snooze/done icons in the AI inbox (#27626) by @FelixMalfait
- Complete Card composition (#27632) by @bosiraphael
- Preserve native Breadcrumb links (#27636) by @bosiraphael
- Expose Avatar parts and explicit interaction (#27640) by @bosiraphael
- Stabilize Dropdown trailing action story (#27641) by @bosiraphael
- Derive AvatarGroup overflow (#27646) by @bosiraphael
- Simplify Chip content and interaction (#27648) by @bosiraphael
- Simplify Tag and Status composition (#27681) by @bosiraphael
- Keep ListItem presentational (#27683) by @bosiraphael
- Clarify SettingsRow control integration (#27686) by @bosiraphael
- Replace Pill and NotificationCounter with Badge (#27702) by @bosiraphael
- Clarify ImageInput file selection (#27706) by @bosiraphael
- Complete radio and segmented selection (#27707) by @bosiraphael
- Replace Accounts with App preferences behind a feature flag (#27708) by @ehconitin
- Align Tabs with Base UI (#27732) by @bosiraphael
- Expose NumberField and retain NumberStepper (#27734) by @bosiraphael
- Complete Select public parts (#27741) by @bosiraphael
- Wait for popup visibility in disabled item stories (#27766) by @FelixMalfait
- Identify chat owners and senders by workspace member, and drop the legacy chat columns (#27783) by @FelixMalfait
- Complete Autocomplete parts (#27806) by @bosiraphael
- Gate validation rules behind the Organization plan (#27818) by @thomtrp
- Let invoice-paying customers end their trial without a card (#27827) by @ijreilly
- Unify Progress semantics and move onboarding motion (#27831) by @bosiraphael
- feat(billing) : store the ?partner= sign-up attribution on the Stripe customer (#27836) by @etiennejouan
- Order application workflow steps by application and label (#27839) by @martmull
- Ask consent to bill credits when installing an app (#27844) by @martmull
- Add Toast updates and status naming (#27846) by @bosiraphael
- Make workflow commands, navigation and pages core-only (#27853) by @thomtrp
- Show application logo on fields, views, widgets and created-by actor (#27876) by @martmull
- Put twenty-ui styles in a cascade layer (#27899) by @bosiraphael
- Only measure overflowing lists while their count can show (#27923) by @charlesBochet
- Make Toast timing deterministic (#27930) by @bosiraphael
- Make table cell and skeleton styles static and add a block Skeleton layout (#27957) by @charlesBochet
🐛 Bug fixes
- fix(front): preserve multi-record selection in side-panel components (#27041) by @waelantar
- fix(ui): truncate LTR values at their end in RTL layouts (#27059) by @almoghazaz-cell
- fix(cli): remove legacy CLI config migration (#27085) by @Sameer7-s
- fix(calendar): stop re-saving unchanged calendar events and participants on sync (#27151) by @charlesBochet
- fix(twenty-sdk): only remove dist/sdk before bundling declarations (#27261) by @PINYOPATTANAWASANPORN
- fix(usage-limit): keep the limits form off scopes only an operator can set (#27373) by @etiennejouan
- fix(auth): trust the identity provider's email for SSO sign-ups and show the real SAML/OIDC URLs (#27486) by @ijreilly
⚡ Performance
- perf(roles): batch role relation resolvers and add a getRole query (#27118) by @FelixMalfait
🔧 Developer & API
- Accept enum string values in twenty-sdk inputs (#27193) by @prastoin
- Clean up CodeEditorHeader API (#27376) by @bosiraphael
- Normalize Separator API (#27383) by @bosiraphael
- Run workflow, API and trigger agent turns through one engine runner (#27385) by @FelixMalfait
- Normalize DirectionProvider API (#27387) by @bosiraphael
- Normalize VisuallyHidden API (#27388) by @bosiraphael
- Regenerate the SDK metadata client (#27544) by @FelixMalfait
- Remove unused Menu API (#27815) by @bosiraphael
- Deprecate the SDK CLI and create-twenty-app (#27862) by @Weiko
🏗️ Internal changes (8)
- refactor(shared): expose universal identifier validation ([#27140](https://github.com/twentyhq/twenty/pull/27140)) by @Weiko - refactor(ai): simplify and unify AI chat code on server and front ([#27192](https://github.com/twentyhq/twenty/pull/27192)) by @FelixMalfait - chore(usage-limit): remove the webhook rate limit and execution quota feature flags ([#27278](https://github.com/twentyhq/twenty/pull/27278)) by @etiennejouan - refactor(usage-limit): charge usage rows through one call that debits then records ([#27286](https://github.com/twentyhq/twenty/pull/27286)) by @etiennejouan - chore(logic-function): remove the IS_LOGIC_FUNCTION_PREBUILT_MODE_ENABLED feature flag ([#27307](https://github.com/twentyhq/twenty/pull/27307)) by @martmull - docs(sdk): point to the twenty CLI package from the SDK README ([#27512](https://github.com/twentyhq/twenty/pull/27512)) by @Weiko - chore(twenty-ui): declare storybook as a devDependency ([#27697](https://github.com/twentyhq/twenty/pull/27697)) by @abdulrahmancodes - chore(security): bump oxfmt to 0.72.0 and reformat ([#27772](https://github.com/twentyhq/twenty/pull/27772)) by @mabdullahabaid🎉 New contributors
- @PINYOPATTANAWASANPORN made their first contribution in https://github.com/twentyhq/twenty/pull/26742
- @glitchedmob made their first contribution in https://github.com/twentyhq/twenty/pull/27226
- @okxint made their first contribution in https://github.com/twentyhq/twenty/pull/27232
- @YadurajManu made their first contribution in https://github.com/twentyhq/twenty/pull/27248
- @omlahore made their first contribution in https://github.com/twentyhq/twenty/pull/26759
- @sarmah-rup made their first contribution in https://github.com/twentyhq/twenty/pull/26880
- @pranav440 made their first contribution in https://github.com/twentyhq/twenty/pull/26929
- @evanliuuu made their first contribution in https://github.com/twentyhq/twenty/pull/27018
- @hussnainahmedd made their first contribution in https://github.com/twentyhq/twenty/pull/27112
- @Sameer7-s made their first contribution in https://github.com/twentyhq/twenty/pull/27085
- @slavarosin made their first contribution in https://github.com/twentyhq/twenty/pull/27245
Full changelog (138 PRs)
- Forward typed events with React compatibility to front component workers ([#26356](https://github.com/twentyhq/twenty/pull/26356)) by @bosiraphael - feat(campaigns): add selected people or a whole People view to a campaign list ([#26823](https://github.com/twentyhq/twenty/pull/26823)) by @neo773 - [1/3] Let apps declare user-scoped application variables ([#26868](https://github.com/twentyhq/twenty/pull/26868)) by @ehconitin - [2/3] Let each member set their own value of a user application variable ([#26869](https://github.com/twentyhq/twenty/pull/26869)) by @ehconitin - feat: admin-issued two-factor authentication recovery codes ([#26933](https://github.com/twentyhq/twenty/pull/26933)) by @abdulrahmancodes - Track campaign opens ([#26938](https://github.com/twentyhq/twenty/pull/26938)) by @neo773 - fix(front): preserve multi-record selection in side-panel components ([#27041](https://github.com/twentyhq/twenty/pull/27041)) by @waelantar - Chat inbox: read cursor, unread line, done and snooze per member ([#27046](https://github.com/twentyhq/twenty/pull/27046)) by @FelixMalfait - fix(ui): truncate LTR values at their end in RTL layouts ([#27059](https://github.com/twentyhq/twenty/pull/27059)) by @almoghazaz-cell - Migrate field input pickers and row menus ([#27061](https://github.com/twentyhq/twenty/pull/27061)) by @bosiraphael - Migrate navigation menus and icon pickers ([#27064](https://github.com/twentyhq/twenty/pull/27064)) by @bosiraphael - Migrate address and email autocompletes ([#27065](https://github.com/twentyhq/twenty/pull/27065)) by @bosiraphael - Migrate record and tab dropdown menus ([#27070](https://github.com/twentyhq/twenty/pull/27070)) by @bosiraphael - Unify resizing with ResizeHandle ([#27083](https://github.com/twentyhq/twenty/pull/27083)) by @bosiraphael - fix(cli): remove legacy CLI config migration ([#27085](https://github.com/twentyhq/twenty/pull/27085)) by @Sameer7-s - perf(roles): batch role relation resolvers and add a getRole query ([#27118](https://github.com/twentyhq/twenty/pull/27118)) by @FelixMalfait - feat(sharing): reshape record sharing API and share panel ([#27121](https://github.com/twentyhq/twenty/pull/27121)) by @FelixMalfait - feat(usage-limit): replace the limit meter with a usage unit ([#27124](https://github.com/twentyhq/twenty/pull/27124)) by @etiennejouan - Migrate phone country picker to Twenty UI ([#27125](https://github.com/twentyhq/twenty/pull/27125)) by @bosiraphael - chore: bump version to 2.46.0 ([#27126](https://github.com/twentyhq/twenty/pull/27126)) by @twenty-pr - Migrate currency picker to Twenty UI ([#27127](https://github.com/twentyhq/twenty/pull/27127)) by @bosiraphael - Migrate country selection in Twenty UI ([#27128](https://github.com/twentyhq/twenty/pull/27128)) by @bosiraphael - feat(ai): let runAgent continue a conversation by thread key ([#27135](https://github.com/twentyhq/twenty/pull/27135)) by @FelixMalfait - refactor(shared): expose universal identifier validation ([#27140](https://github.com/twentyhq/twenty/pull/27140)) by @Weiko - Keep the first keystroke typed into a dropdown search ([#27148](https://github.com/twentyhq/twenty/pull/27148)) by @bosiraphael - fix(calendar): stop re-saving unchanged calendar events and participants on sync ([#27151](https://github.com/twentyhq/twenty/pull/27151)) by @charlesBochet - feat(ai): let agents and workflows propose tool calls for approval ([#27169](https://github.com/twentyhq/twenty/pull/27169)) by @FelixMalfait - feat(permissions): add a workspace flag to turn off record share visibility gating ([#27177](https://github.com/twentyhq/twenty/pull/27177)) by @charlesBochet - refactor(ai): simplify and unify AI chat code on server and front ([#27192](https://github.com/twentyhq/twenty/pull/27192)) by @FelixMalfait - Accept enum string values in twenty-sdk inputs ([#27193](https://github.com/twentyhq/twenty/pull/27193)) by @prastoin - refactor(ai): drop unused agent history repository registrations and errorDetails field ([#27197](https://github.com/twentyhq/twenty/pull/27197)) by @FelixMalfait - feat(ai): ask one question per call and step through every pending request ([#27206](https://github.com/twentyhq/twenty/pull/27206)) by @FelixMalfait - Replace hidden chat messages with system messages ([#27207](https://github.com/twentyhq/twenty/pull/27207)) by @FelixMalfait - Load a member's chat inbox state with its threads ([#27219](https://github.com/twentyhq/twenty/pull/27219)) by @FelixMalfait - feat(ai): unread badge on the inbox, with inbox state sent as record events ([#27221](https://github.com/twentyhq/twenty/pull/27221)) by @FelixMalfait - feat(ai-chat): # to reference records, @ to bring teammates into a chat ([#27234](https://github.com/twentyhq/twenty/pull/27234)) by @FelixMalfait - Refuse administration operations to installed application tokens ([#27241](https://github.com/twentyhq/twenty/pull/27241)) by @prastoin - Add isSystem to agents and workflows ([#27252](https://github.com/twentyhq/twenty/pull/27252)) by @FelixMalfait - fix(twenty-sdk): only remove dist/sdk before bundling declarations ([#27261](https://github.com/twentyhq/twenty/pull/27261)) by @PINYOPATTANAWASANPORN - Upgrade Preact to 11 for React 19 refs ([#27271](https://github.com/twentyhq/twenty/pull/27271)) by @bosiraphael - Add people to a campaign list with a background job ([#27276](https://github.com/twentyhq/twenty/pull/27276)) by @neo773 - chore(usage-limit): remove the webhook rate limit and execution quota feature flags ([#27278](https://github.com/twentyhq/twenty/pull/27278)) by @etiennejouan - refactor(usage-limit): charge usage rows through one call that debits then records ([#27286](https://github.com/twentyhq/twenty/pull/27286)) by @etiennejouan - chore(logic-function): remove the IS_LOGIC_FUNCTION_PREBUILT_MODE_ENABLED feature flag ([#27307](https://github.com/twentyhq/twenty/pull/27307)) by @martmull - Remove agent evaluations and the agent Logs tab ([#27320](https://github.com/twentyhq/twenty/pull/27320)) by @FelixMalfait - Add triggers to agents (1/3) ([#27322](https://github.com/twentyhq/twenty/pull/27322)) by @FelixMalfait - Record runAgent calls made without a thread ([#27337](https://github.com/twentyhq/twenty/pull/27337)) by @FelixMalfait - Remove dead AI code and unused module imports ([#27339](https://github.com/twentyhq/twenty/pull/27339)) by @FelixMalfait - Organize Twenty UI components by family ([#27354](https://github.com/twentyhq/twenty/pull/27354)) by @bosiraphael - feat(applications): show install and uninstall progress in the action buttons ([#27357](https://github.com/twentyhq/twenty/pull/27357)) by @martmull - Keep JSX handlers when a clone replaces a remote element ref ([#27366](https://github.com/twentyhq/twenty/pull/27366)) by @bosiraphael - Align settings switches and complete feature flag labels ([#27370](https://github.com/twentyhq/twenty/pull/27370)) by @Bonapara - Ground the scaffolded AGENTS.md in what the build enforces and fix dev:add output ([#27371](https://github.com/twentyhq/twenty/pull/27371)) by @ijreilly - fix(usage-limit): keep the limits form off scopes only an operator can set ([#27373](https://github.com/twentyhq/twenty/pull/27373)) by @etiennejouan - Remove the install apps onboarding step and rely on pre-installed apps ([#27374](https://github.com/twentyhq/twenty/pull/27374)) by @etiennejouan - Clean up CodeEditorHeader API ([#27376](https://github.com/twentyhq/twenty/pull/27376)) by @bosiraphael - Complete ColorSample and Loader APIs ([#27381](https://github.com/twentyhq/twenty/pull/27381)) by @bosiraphael - Normalize Separator API ([#27383](https://github.com/twentyhq/twenty/pull/27383)) by @bosiraphael - Run workflow, API and trigger agent turns through one engine runner ([#27385](https://github.com/twentyhq/twenty/pull/27385)) by @FelixMalfait - Normalize DirectionProvider API ([#27387](https://github.com/twentyhq/twenty/pull/27387)) by @bosiraphael - Normalize VisuallyHidden API ([#27388](https://github.com/twentyhq/twenty/pull/27388)) by @bosiraphael - Accept isActive when updating a page layout widget ([#27389](https://github.com/twentyhq/twenty/pull/27389)) by @thomtrp - Use node slots for icon presentation ([#27393](https://github.com/twentyhq/twenty/pull/27393)) by @bosiraphael - Align Banner and InlineBanner feedback APIs ([#27396](https://github.com/twentyhq/twenty/pull/27396)) by @bosiraphael - Let agent triggers and runAgent calls wait on events and durations ([#27403](https://github.com/twentyhq/twenty/pull/27403)) by @FelixMalfait - Expose the selected records filter to front components ([#27404](https://github.com/twentyhq/twenty/pull/27404)) by @charlesBochet - Stop agent code from depending on workflow code ([#27407](https://github.com/twentyhq/twenty/pull/27407)) by @FelixMalfait - Inbox: chat subscriptions and server-side mentions ([#27430](https://github.com/twentyhq/twenty/pull/27430)) by @FelixMalfait - Remove unused NestJS module imports in twenty-server ([#27434](https://github.com/twentyhq/twenty/pull/27434)) by @FelixMalfait - Inbox: assign chats to a member ([#27442](https://github.com/twentyhq/twenty/pull/27442)) by @FelixMalfait - Move skeleton placeholders into twenty-ui ([#27481](https://github.com/twentyhq/twenty/pull/27481)) by @bosiraphael - Make Callout dismissal caller-owned ([#27485](https://github.com/twentyhq/twenty/pull/27485)) by @bosiraphael - fix(auth): trust the identity provider's email for SSO sign-ups and show the real SAML/OIDC URLs ([#27486](https://github.com/twentyhq/twenty/pull/27486)) by @ijreilly - Align Tooltip shorthand and parts ([#27488](https://github.com/twentyhq/twenty/pull/27488)) by @bosiraphael - Add loading positions to Button ([#27496](https://github.com/twentyhq/twenty/pull/27496)) by @bosiraphael - Write the front component JSX runtime in TypeScript ([#27497](https://github.com/twentyhq/twenty/pull/27497)) by @bosiraphael - Make typography composition explicit ([#27504](https://github.com/twentyhq/twenty/pull/27504)) by @bosiraphael - Expose Collapsible parts ([#27507](https://github.com/twentyhq/twenty/pull/27507)) by @bosiraphael - Block uninstalling a server route app from its owner workspace while installed elsewhere ([#27510](https://github.com/twentyhq/twenty/pull/27510)) by @martmull - docs(sdk): point to the twenty CLI package from the SDK README ([#27512](https://github.com/twentyhq/twenty/pull/27512)) by @Weiko - Track application upgrade as a queued job with progress ([#27526](https://github.com/twentyhq/twenty/pull/27526)) by @martmull - Regenerate the SDK metadata client ([#27544](https://github.com/twentyhq/twenty/pull/27544)) by @FelixMalfait - Gate the AI chat inbox behind a feature flag ([#27552](https://github.com/twentyhq/twenty/pull/27552)) by @FelixMalfait - Remove the unused addAgentChatThreadParticipants mutation ([#27557](https://github.com/twentyhq/twenty/pull/27557)) by @FelixMalfait - Compute the inbox counts on the server over all of a member's chats ([#27570](https://github.com/twentyhq/twenty/pull/27570)) by @FelixMalfait - Replace the seven AI chat inbox mutations with one batched mutation ([#27576](https://github.com/twentyhq/twenty/pull/27576)) by @FelixMalfait - Represent a paused agent run as a pending wake-up ([#27579](https://github.com/twentyhq/twenty/pull/27579)) by @FelixMalfait - Complete Field and Slider anatomy ([#27583](https://github.com/twentyhq/twenty/pull/27583)) by @bosiraphael - Align Section and CommandBlock composition ([#27584](https://github.com/twentyhq/twenty/pull/27584)) by @bosiraphael - Expose Checkbox and Switch parts ([#27587](https://github.com/twentyhq/twenty/pull/27587)) by @bosiraphael - Align input and textarea integration ([#27589](https://github.com/twentyhq/twenty/pull/27589)) by @bosiraphael - Expose complete Popover parts ([#27590](https://github.com/twentyhq/twenty/pull/27590)) by @bosiraphael - Complete AlertDialog parts ([#27605](https://github.com/twentyhq/twenty/pull/27605)) by @bosiraphael - Expose complete Dialog parts ([#27606](https://github.com/twentyhq/twenty/pull/27606)) by @bosiraphael - Complete Button and IconButton contracts ([#27609](https://github.com/twentyhq/twenty/pull/27609)) by @bosiraphael - sendInboxMessage takes workspaceMemberIds; one thread key is one conversation ([#27615](https://github.com/twentyhq/twenty/pull/27615)) by @FelixMalfait - Fix oversized icon in InlineBanner ([#27624](https://github.com/twentyhq/twenty/pull/27624)) by @FelixMalfait - Lighter shortcut hint in buttons and new snooze/done icons in the AI inbox ([#27626](https://github.com/twentyhq/twenty/pull/27626)) by @FelixMalfait - Complete Card composition ([#27632](https://github.com/twentyhq/twenty/pull/27632)) by @bosiraphael - Preserve native Breadcrumb links ([#27636](https://github.com/twentyhq/twenty/pull/27636)) by @bosiraphael - Expose Avatar parts and explicit interaction ([#27640](https://github.com/twentyhq/twenty/pull/27640)) by @bosiraphael - Stabilize Dropdown trailing action story ([#27641](https://github.com/twentyhq/twenty/pull/27641)) by @bosiraphael - Derive AvatarGroup overflow ([#27646](https://github.com/twentyhq/twenty/pull/27646)) by @bosiraphael - Simplify Chip content and interaction ([#27648](https://github.com/twentyhq/twenty/pull/27648)) by @bosiraphael - Simplify Tag and Status composition ([#27681](https://github.com/twentyhq/twenty/pull/27681)) by @bosiraphael - Keep ListItem presentational ([#27683](https://github.com/twentyhq/twenty/pull/27683)) by @bosiraphael - Clarify SettingsRow control integration ([#27686](https://github.com/twentyhq/twenty/pull/27686)) by @bosiraphael - chore(twenty-ui): declare storybook as a devDependency ([#27697](https://github.com/twentyhq/twenty/pull/27697)) by @abdulrahmancodes - Replace Pill and NotificationCounter with Badge ([#27702](https://github.com/twentyhq/twenty/pull/27702)) by @bosiraphael - Clarify ImageInput file selection ([#27706](https://github.com/twentyhq/twenty/pull/27706)) by @bosiraphael - Complete radio and segmented selection ([#27707](https://github.com/twentyhq/twenty/pull/27707)) by @bosiraphael - Replace Accounts with App preferences behind a feature flag ([#27708](https://github.com/twentyhq/twenty/pull/27708)) by @ehconitin - Align Tabs with Base UI ([#27732](https://github.com/twentyhq/twenty/pull/27732)) by @bosiraphael - Expose NumberField and retain NumberStepper ([#27734](https://github.com/twentyhq/twenty/pull/27734)) by @bosiraphael - chore: bump version to 2.47.0 ([#27735](https://github.com/twentyhq/twenty/pull/27735)) by @twenty-pr - Complete Select public parts ([#27741](https://github.com/twentyhq/twenty/pull/27741)) by @bosiraphael - Wait for popup visibility in disabled item stories ([#27766](https://github.com/twentyhq/twenty/pull/27766)) by @FelixMalfait - chore(security): bump oxfmt to 0.72.0 and reformat ([#27772](https://github.com/twentyhq/twenty/pull/27772)) by @mabdullahabaid - Identify chat owners and senders by workspace member, and drop the legacy chat columns ([#27783](https://github.com/twentyhq/twenty/pull/27783)) by @FelixMalfait - Complete Autocomplete parts ([#27806](https://github.com/twentyhq/twenty/pull/27806)) by @bosiraphael - Remove unused Menu API ([#27815](https://github.com/twentyhq/twenty/pull/27815)) by @bosiraphael - Gate validation rules behind the Organization plan ([#27818](https://github.com/twentyhq/twenty/pull/27818)) by @thomtrp - Let invoice-paying customers end their trial without a card ([#27827](https://github.com/twentyhq/twenty/pull/27827)) by @ijreilly - [BREAKING_CHANGE] Ship the Conversations tab and workflow inbox messages under the inbox flag ([#27830](https://github.com/twentyhq/twenty/pull/27830)) by @FelixMalfait - Unify Progress semantics and move onboarding motion ([#27831](https://github.com/twentyhq/twenty/pull/27831)) by @bosiraphael - [BREAKING_CHANGE] Unpin chat Share and drop the AI chat sharing dropdown flag ([#27832](https://github.com/twentyhq/twenty/pull/27832)) by @FelixMalfait - feat(billing) : store the ?partner= sign-up attribution on the Stripe customer ([#27836](https://github.com/twentyhq/twenty/pull/27836)) by @etiennejouan - Order application workflow steps by application and label ([#27839](https://github.com/twentyhq/twenty/pull/27839)) by @martmull - Add widgetAvailability to front components ([#27841](https://github.com/twentyhq/twenty/pull/27841)) by @martmull - Ask consent to bill credits when installing an app ([#27844](https://github.com/twentyhq/twenty/pull/27844)) by @martmull - Add Toast updates and status naming ([#27846](https://github.com/twentyhq/twenty/pull/27846)) by @bosiraphael - Make workflow commands, navigation and pages core-only ([#27853](https://github.com/twentyhq/twenty/pull/27853)) by @thomtrp - Deprecate the SDK CLI and create-twenty-app ([#27862](https://github.com/twentyhq/twenty/pull/27862)) by @Weiko - Show application logo on fields, views, widgets and created-by actor ([#27876](https://github.com/twentyhq/twenty/pull/27876)) by @martmull - Put twenty-ui styles in a cascade layer ([#27899](https://github.com/twentyhq/twenty/pull/27899)) by @bosiraphael - Only measure overflowing lists while their count can show ([#27923](https://github.com/twentyhq/twenty/pull/27923)) by @charlesBochet - Make Toast timing deterministic ([#27930](https://github.com/twentyhq/twenty/pull/27930)) by @bosiraphael - Make table cell and skeleton styles static and add a block Skeleton layout ([#27957](https://github.com/twentyhq/twenty/pull/27957)) by @charlesBochetFull Changelog: https://github.com/twentyhq/twenty/compare/sdk/v2.45.0...sdk/v2.47.0