github novuhq/novu v3.18.0

3 hours ago

API

🚀 Features

  • api-service: enforce 512-char limit on custom subscription identifiers fixes NV-8216 (#11827)
  • shared: migrate Slack agent manifest to agent_view fixes NV-8220 (#11833)
  • api-service,dashboard: open subscriber access for email agents fixes NV-8212 (#11815)
  • api-service: add SdkMethodName decorator for mobile link creation in integrations controller fixes NV-8203 (#11801)
  • shared,api-service,dashboard: align agent name length on a single 60-char limit (#11808)
  • dashboard: email agent whats-next guide and simplified setup fixes NV-8115 (#11706)
  • framework,api-service: self-hosted Slack-native tool approval cards fixes NV-8204 (#11805)
  • api: support Clerk OAuth (DCR) access tokens on opted-in endpoints fixes NV-8158 (#11802)
  • framework,api-service: improve self-hosted tool approval card cleanup fixes NV-8199 (#11788)
  • framework,api-service: expose delete message on self-hosted agent reply contract fixes NV-8197 (#11787)
  • api-service: rolling secret key rotation behind feature flag fixes NV-8173 (#11770)
  • dashboard, api-service: align managed and self-hosted conversation timeline fixes NV-8174 (#11771)
  • framework,api-service: self-hosted tool approval consistency and remove plan cards fixes NV-8164 (#11768)
  • framework: self-hosted tool approval for the ai-sdk agent flavor fixes NV-8148 (#11733)
  • docs: add telegram provider doc page fixes DOC-385 (#11729)
  • dashboard: support actor variables in step content editor fixes NV-8143 (#11709)
  • js, react, api-service: add Telegram connect button (SDK peer to Slack/MS Teams) (#11661)
  • dashboard: MS Teams multi-tenant distribution & subscriber-rollout onboarding fixes NV-8124 (#11654)
  • framework,api-service: unified plan progress via ctx.plan fixes NV-8129 (#11676)
  • framework: self-hosted brain-controlled typing indicator fixes NV-8128 (#11671)
  • framework: add @novu/framework/ai-sdk agent plugin fixes NV-8117 (#11656)
  • dashboard: improve agent onboarding setup UX and CLI auth fixes NV-8125 (#11655)
  • api, application-generic: enhance workflow preferences retrieval with batch processing and caching improvements (#11646)
  • api-service,js,react: Telegram subscriber-link SDK + shared linking module fixes NV-8095 (#11619)
  • api-service: add get preferences kill switch to v2 endpoints fixes NV-8116 (#11644)
  • dashboard: add Slack channel what's next guide to integration details fixes NV-8115 (#11645)
  • agent-evals: add suite-based behavioral eval harness for agent onboarding fixes NV-8059 (#11589)
  • api-service: stream agent replies per message via onMessage fixes NV-7420 (#11610)
  • api-service: lazy-reconcile managed agent platform tools fixes NV-8073 (#11600)
  • api-service: unify tool trust into agent_tool_trust with lazy MCP backfill fixes NV-8056 (#11594)
  • api, dashboard, dal, shared: implement active conversation logic for billing fixes NV-8055 (#11582)
  • api-service: lazy MCP OAuth keeps subscriber OAuth off agent definition fixes NV-8053 (#11584)
  • api-service: on-demand MCP OAuth, per-session tools, and connect card UX fixes NV-8002 (#11567)
  • novu: surface keyless claim link in connect onboarding flow fixes NV-8036 (#11530)
  • api-service: send welcome email after email channel connection fixes NV-8029 (#11541)
  • api, dashboard, shared: introduce entitlements for agents fixes NV-7427 (#11519)
  • api, dal: implement agent integration disconnection handling and revival logic fixes NV-8019 (#11522)
  • shared: onboard 22 MCP providers to DCR OAuth fixes NV-7959 (#11470)
  • root: add PORTLESS URLS mprocs tab fixes NV-8010 (#11509)
  • novu: secure setup links for Slack/Telegram secrets fixes NV-8008 (#11506)
  • api-service,dashboard: agent suggestions based on org domain and industry fixes NV-7992 (#11486)
  • api-service: unify inbound ack with hourglass liveness fixes NV-7818 (#11483)
  • worker: emit step_created trace when step runs are created fixes NV-7949 (#11418)
  • api-service: add thalamus session queue for sequential agent turns fixes NV-7742 (#11466)
  • api-service: deploy step resolver to EU cluster fixes NV-7980 (#11458)
  • api-service,dashboard,shared: keyless novu connect flow fixes NV-7968 (#11450)
  • dashboard,api-service: onboarding managed agents preview fixes NV-7804 (#11315)
  • shared: add 12 net-new DCR MCP catalog entries fixes NV-7959 (#11437)
  • api-service: expand MCP DCR catalog and OAuth discovery polish fixes NV-7959 (#11435)
  • api-service, framework: expose email raw payload and resolved routing in agent context (fixes NV-7951) (#11422)
  • api-service: gate managed agent MCP permissions behind feature flag fixes NV-7946 (#11409)
  • worker: surface inbound-email requests in activity log fixes NV-7927 (#11379)

🩹 Fixes

  • api-service: discriminate unresolved subscriber resolution outcomes fixes NV-8238 (#11855)
  • api-service: re-dispatch Telegram bot commands dropped by chat SDK slash-command routing fixes NV-8235 (#11849)
  • api-service: stop NovuBridgeModule from shadowing ClickHouse DI fixes NV-8217 (#11826)
  • api-service: use Slack mrkdwn links in Powered by watermark fixes NV-8206 (#11806)
  • api-service: scope workflow reads and environment diff to API key environment fixes NV-8200 (#11789)
  • providers: validate Infobip SMS baseUrl against SSRF fixes NV-8179 (#11778)
  • api-service: block SSRF via SMTP check-integration and Sinch region fixes NV-8186 (#11784)
  • api-service: scope env variable writes and environment deletes to API key environment fixes NV-8182 (#11781)
  • api-service: disable Vercel partner integrations for Better Auth fixes NV-8181 (#11783)
  • api-service: scope inbox snooze lookups to subscriber fixes NV-8175 (#11773)
  • api-service: validate environment ownership for env variable values fixes NV-8172 (#11769)
  • api-service: scope Vercel partner integration fixes NV-8171 (#11767)
  • api-service: return v0 notification payload as data in inbox API fixes NV-8155 (#11750)
  • api-service: handle null subscriber channels in retrieve response fixes NV-8159 (#11757)
  • api-service: handle attachment validation, context race, and invalid subscriber cursor fixes NV-8039 (#11697)
  • api-service: format agent powered-by branding as muted footnote fixes NV-8064 (#11719)
  • api-service: cast request log source in activity e2e test (#11695)
  • shared: self-hosted SSRF allow list for internal bridge URLs (#11702)
  • api-service, dashboard, shared: enable and improve inbound mail UX on Self hosted EE fixes NV-8106 (#11652)
  • api-service: remove setImmediate yielding in subscriber preferences hot path fixes NV-8111 (#11635)
  • api, dashboard, dal: count active channels by channel type, not integration fixes NV-8103 (#11627)
  • api-service: avoid class-transformer CPU hot path in subscriber preferences fixes NV-8111 (#11628)
  • api-service: upsert Slack bot token on OAuth reconnect fixes NV-8088 (#11613)
  • shared: mint autolink-safe connect claim tokens (#11618)
  • api-service: omit requests activityFeedLink without ClickHouse (#11441)
  • root: resolve high vite, high hono, moderate tar vulnerabilities (NV-8072) (#11596)
  • api-service: improve WhatsApp agent watermark and MCP connect links fixes NV-8057 (#11585)
  • api-service: lazy-provision subscriber for keyless email MCP demo fixes NV-8054 (#11581)
  • api-service: allow keyless managed agents to reply without a resolved subscriber (#11568)
  • api-service: show hourglass only for queued inbound turns fixes NV-7742 (#11577)
  • api-service,dashboard,shared: CLI auth slug, onboarding hang, and copy feedback fixes NV-8038 (#11551)
  • api-service: use timing-safe comparisons for secret validation fixes NV-8031 (#11543)
  • api-service: stabilize flaky digest merge e2e tests fixes NV-8033 (#11545)
  • api-service: use link button for keyless welcome signup CTA fixes NV-8025 (#11534)
  • worker: keep to empty when replaceToRecipient uses explicit to: [] fixes NV-8011 (#11511)
  • api: reduce keyless demo reply cap to 3 messages fixes NV-8014 (#11515)
  • api-service: add ThrottleStepUpsertDto to UpdateWorkflowDto fixes NV-7995 (#11498)
  • novu: harden keyless session bootstrap and CI handoff events (#11489)
  • api-service: resolve MCP always-allow stuck on multi-tool approval fixes NV-7998 (#11492)
  • api-service: mark v1 in-app api as deprecated in favor of new inbox apis (#10618)
  • shared: use ClickHouse command() to drain response streams fixes NV-7999 (#11493)
  • api-service: update integration operation descriptions (#11113)
  • novu: fallback to dashboard auth when keyless demo limits are hit fixes NV-7993 (#11484)
  • api-service: provision Novu Email demo provider for keyless envs fixes NV-7994 (#11485)
  • api-service: scope integration mutations to API key environment fixes NV-7989 (#11480)
  • api: bump chat SDK to 4.30.0 and enable WhatsApp typing fixes NV-7977 (#11473)
  • api-service: harden keyless flow against IP collision and claim RBAC bypass fixes NV-7978 (#11462)
  • novu,api-service,dashboard: improve email onboarding UX fixes NV-7975 (#11457)
  • js: validate in-app redirect URLs in inbox API and client fixes NV-7971 (#11453)
  • api-service: Redact MCP URLs in managed agent adoption logs fixes NV-7967 (#11449)
  • api: Telegram tool approval and managed-agent plan delivery fixes NV-7962 (#11438)
  • api-service: add Redis-backed action tokens for chat card buttons fixes NV-7956 (#11430)
  • api-service: resolve plan card stuck on thinking after turn interrupts fixes NV-7934 (#11432)
  • api-service: remove close tab button from email action success page fixes NV-7863 (#11426)
  • api-service: attribute agent webhook analytics to organization id fixes NV-7942 (#11403)

❤️ Thank You

Dashboard

🚀 Features

  • dashboard: surface Clerk self-serve SSO in organization settings (#11772)
  • shared: migrate Slack agent manifest to agent_view fixes NV-8220 (#11833)
  • api-service,dashboard: open subscriber access for email agents fixes NV-8212 (#11815)
  • shared,api-service,dashboard: align agent name length on a single 60-char limit (#11808)
  • dashboard: email agent whats-next guide and simplified setup fixes NV-8115 (#11706)
  • api-service: rolling secret key rotation behind feature flag fixes NV-8173 (#11770)
  • dashboard, api-service: align managed and self-hosted conversation timeline fixes NV-8174 (#11771)
  • dashboard: subscriber credentials tab fixes NV-8163 (#11761)
  • framework: self-hosted tool approval for the ai-sdk agent flavor fixes NV-8148 (#11733)
  • docs: add telegram provider doc page fixes DOC-385 (#11729)
  • dashboard: support actor variables in step content editor fixes NV-8143 (#11709)
  • dashboard: open Mintlify docs assistant from Command K fixes NV-8146 (#11716)
  • dashboard: One-click add channel from agent overview fixes NV-8140 (#11690)
  • js, react, api-service: add Telegram connect button (SDK peer to Slack/MS Teams) (#11661)
  • dashboard: MS Teams multi-tenant distribution & subscriber-rollout onboarding fixes NV-8124 (#11654)
  • dashboard: improve agent onboarding setup UX and CLI auth fixes NV-8125 (#11655)
  • api-service,js,react: Telegram subscriber-link SDK + shared linking module fixes NV-8095 (#11619)
  • dashboard: add Slack channel what's next guide to integration details fixes NV-8115 (#11645)
  • dashboard: add agent overview what's next section fixes NV-8115 (#11636)
  • agent-evals: add suite-based behavioral eval harness for agent onboarding fixes NV-8059 (#11589)
  • dashboard: enhance usage card with upgrade button and reset date label (#11592)
  • api, dashboard, dal, shared: implement active conversation logic for billing fixes NV-8055 (#11582)
  • novu: default connect to dashboard OAuth, add --keyless flag fixes NV-8048 (#11566)
  • api-service: on-demand MCP OAuth, per-session tools, and connect card UX fixes NV-8002 (#11567)
  • novu: surface keyless claim link in connect onboarding flow fixes NV-8036 (#11530)
  • api-service: send welcome email after email channel connection fixes NV-8029 (#11541)
  • dashboard: hide provider-managed MCPs for demo Anthropic agents (#11528)
  • dashboard: update agents list icons and row actions (fixes NV-8017) (#11525)
  • dashboard: redesign Workflows empty state for development env fixes NV-8021 (#11526)
  • dashboard: onboarding cli agent creation polling and success view fixes NV-8016 (#11529)
  • api, dashboard, shared: introduce entitlements for agents fixes NV-7427 (#11519)
  • novu,dashboard,shared: connect --login and dashboard onboarding auth signal fixes NV-8020 (#11523)
  • dashboard: welcome page ui updated to cover inbox and agents usecase fixes NV-8018 (#11524)
  • dashboard,api-service: agents product usecase persistance and query param handling fixes NV-8012 (#11517)
  • dashboard: agent-onboarding prompt fixes NV-8013 (#11516)
  • novu: secure setup links for Slack/Telegram secrets fixes NV-8008 (#11506)
  • dashboard: show personalizing suggestions shimmer for agent suggestion pills fixes NV-8006 (#11501)
  • dashboard: improve agents onboarding flow fixes NV-8005 (#11500)
  • dashboard: update side-nav to latest Conversational Agents designs fixes NV-8004 (#11496)
  • api-service,dashboard: agent suggestions based on org domain and industry fixes NV-7992 (#11486)
  • dashboard: add Visit Dashboard CTA on connect claim success fixes NV-7985 (#11477)
  • dashboard: add descriptions for system variables fixes NV-7983 (#11474)
  • api-service,dashboard,shared: keyless novu connect flow fixes NV-7968 (#11450)
  • dashbord: agent templates from sanity fixes NV-7790 (#11448)
  • dashboard: update platform agents empty state copy (#11442)
  • dashboard,api-service: onboarding managed agents preview fixes NV-7804 (#11315)
  • dashboard: gate inbound request logs behind LaunchDarkly flag fixes NV-7948 (#11417)
  • worker: surface inbound-email requests in activity log fixes NV-7927 (#11379)

🩹 Fixes

  • api-service: disable Vercel partner integrations for Better Auth fixes NV-8181 (#11783)
  • dashboard: use root dashboard URL for trial inbox marketing CTA fixes NV-8152 (#11726)
  • dashboard: update broken PII security docs link fixes NV-8150 (#11720)
  • dashboard: open prod inbox integration config drawer fixes NV-8147 (#11717)
  • dashboard: resolve layout editor crash on HTML layouts (#11704)
  • dashboard: prevent agent setup step text column from collapsing fixes NV-8138 (#11688)
  • dashboard: remove Beta badge from contexts page fixes NV-8130 (#11674)
  • dashboard: center workflow blank state on page fixes NV-8123 (#11651)
  • api-service, dashboard, shared: enable and improve inbound mail UX on Self hosted EE fixes NV-8106 (#11652)
  • api, dashboard, dal: count active channels by channel type, not integration fixes NV-8103 (#11627)
  • shared: mint autolink-safe connect claim tokens (#11618)
  • api-service: omit requests activityFeedLink without ClickHouse (#11441)
  • root: resolve high multer, http-proxy-middleware, piscina vulnerabilities fixes NV-8082 (#11608)
  • root: resolve high vite, high hono, moderate tar vulnerabilities (NV-8072) (#11596)
  • dashboard: build for vite (3eb546335e)
  • root: resolve high esbuild vulnerability fixes NV-8040 (#11554)
  • dashboard: redirect connect claim to claimed agent fixes NV-8042 (#11556)
  • api-service,dashboard,shared: CLI auth slug, onboarding hang, and copy feedback fixes NV-8038 (#11551)
  • dashboard: tailor email onboarding for managed vs custom agents fixes NV-8035 (#11548)
  • dashboard: update agent onboarding prompt placeholder fixes NV-8037 (#11549)
  • dashboard: update onboarding loading label copy fixes NV-8034 (#11547)
  • dashboard: route agents empty state to onboarding setup fixes NV-8032 (#11544)
  • dashboard: redirect to agents list on organization switch from agent details (#11535)
  • dashboard: equalize padding in agent dialog segmented control (#11521)
  • dashboard: remove API key edit link from agent overview sidebar (#11512)
  • dashboard: redirect 'Navigate to Dashboard' to created agent after onboarding (#11510)
  • dashboard: preserve HTML block content on autosave fixes NV-7878 (#11308)
  • dashboard: redirect agent setup onboarding to agents page fixes NV-7986 (#11478)
  • dashboard: restore connect claim flow after platform unification fixes NOV-7984 (#11475)
  • novu,dashboard: use dashboard domain for novu connect flows (#11459)
  • novu,api-service,dashboard: improve email onboarding UX fixes NV-7975 (#11457)
  • root: resolve high react-router vulnerability fixes NV-7965 (#11444)
  • dashboard: poll Clerk until externalOrgId sync on CLI auth page (#11434)
  • api-service: add Redis-backed action tokens for chat card buttons fixes NV-7956 (#11430)
  • dashboard: show bridge setup after cloud email channel selection fixes NV-7950 (#11421)
  • dashboard: Keep selected locale after saving translation fixes NV-7885 (#11314)
  • dashboard: dismiss provisioning overlay on usecase select page fixes NV-7947 (#11412)
  • dashboard: redirect platform org create to usecase onboarding fixes NV-7945 (#11408)
  • dashboard: route first agent creation to onboarding setup page fixes NV-7944 (#11407)

❤️ Thank You

Worker

🚀 Features

  • api-service,dashboard: open subscriber access for email agents fixes NV-8212 (#11815)
  • dashboard: email agent whats-next guide and simplified setup fixes NV-8115 (#11706)
  • dashboard: MS Teams multi-tenant distribution & subscriber-rollout onboarding fixes NV-8124 (#11654)
  • worker: emit step_created trace when step runs are created fixes NV-7949 (#11418)
  • worker: surface inbound-email requests in activity log fixes NV-7927 (#11379)

🩹 Fixes

  • worker: correct inverted monthDays digest validation fixes NV-8201 (#11822)
  • worker: populate email-webhook payloadDetails content for v2 workflows fixes NV-8153 (#11743)
  • worker: handle missing array values in IN/NOT_IN step filters fixes NV-8168 (#11764)
  • worker: compile actor variables in sent notifications and exclude actor from fan-out fixes NV-8143 (#11753)
  • worker: read schedule day-of-week in the subscriber timezone (#11691)
  • shared: self-hosted SSRF allow list for internal bridge URLs (#11702)
  • worker: keep to empty when replaceToRecipient uses explicit to: [] fixes NV-8011 (#11511)
  • shared: use ClickHouse command() to drain response streams fixes NV-7999 (#11493)

❤️ Thank You

WS

This was a version bump only for @novu/ws to align it with other projects, there were no code changes.

🐳 Community Docker Images

Community Docker images are now available for v3.18.0, making it easy to deploy in containerized environments.

📦 SDKs

Server side SDKs(Typescript, Golang, Python, PHP, C-Sharp and Java) and Inbox SDKs (JS, React, Next.js, and React Native) for v3.18.0 are available to help you integrate with the platform using your preferred programming language. These SDKs are maintained alongside the core release and community images to ensure compatibility and a smooth upgrade experience.

Don't miss a new novu release

NewReleases is sending notifications on new releases.