Features
- feat(readme): added deepwiki to readme, consolidated utils (#2856)
- improvement(deployed-mcp): added the ability to make the visibility for deployed mcp tools public, updated UX (#2853)
- feat(workspace): added option to leave workspace (#2854)
- improvement(security): added input validation for airtable, lemlist, and more tools to protect against SSRF (#2847)
- feat(ocr): added reducto and pulse for OCR (#2843)
- feat(context-menu): added context menu to dead sidebar space and usage indicator (#2841)
- improvement(permissions): added ability to auto-add new org members to existing permission group, disallow disabling of start block (#2836)
- feat(workflow-controls): added action bar for workflow controls (#2767)
- v0.5.60: invitation flow improvements, chat fixes, a2a improvements, additional copilot actions
- feat(sheets): added sheet selector for microsoft excel and google sheets tools (#2835)
- feat(starter): in start block input format, don't prevent deletion if only one field remaining, just clear form (#2830)
- fix(misc): added trace spans back to notifications for webhooks, updated verification code for users signing in with email, updated welcome email (#2828)
- improvement(langsmith): add wand for batch ingestion schemas (#2827)
- feat(dashboard): added stats endpoint to compute stats on server side and avoid limit (#2823)
- feat(langsmith): add langsmith tools for logging, output selector use tool-aware listing (#2821)
- fix(agent-tools): added special handling for workflow tool in agent tool input, added react grab and feature flag (#2820)
- feat(reorder): allow workflow/folder reordering (#2818)
- fix(batch-add): on batch add persist subblock values (#2819)
- feat(tinybird): added tinybird block (#2781)
- feat(terminal): migrate from zustand for console terminal logs to indexedDb, incr limit from 5mb to ~GBs (#2812)
- fix(a2a): added file data part and data data part to a2a agents (#2805)
- improvement(oauth): added random identifier in unused accountId to bypass betterauth unique constraint (#2807)
- feat(slack): added get message by timestamp and get thread tool (#2803)
- fix(comparison): add condition to prevent duplicate identical edges (#2799)
- feat(copilot): add commands (#2797)
Improvements
- improvement(serializer): canonical subblock, serialization cleanups, schedules/webhooks are deployment version friendly (#2848)
- improvement(posthog): improve posthog config to be more lightweight (#2851)
- Improvement: subblocks (#2850)
- improvement: workflow, blocks, preview, avatars, output-select (#2840)
- improvement(chat): partialize chat store to only persist image URL instead of full image in floating chat (#2842)
- improvement(tools): use react query to fetch child workflow schema, avoid refetch and duplicated utils, consolidated utils and testing mocks (#2839)
- improvement(webhooks): lifecycle management with external providers, remove save configuration (#2831)
- improvement(snapshot): show subblocks for trigger only blocks in frozen canvas (#2838)
- improvement(slack): updated docs to include information for slack marketplace submission (#2837)
- improvement(copilot): update copilot to match copilot repo (#2829)
- improvement(emails): update email footer links to link to sim.ai/provider instead of direct provider links (#2826)
- improvement(langsmith): ugpraded langsmith to use tool names directly in dropdown (#2824)
- improvement(pricing): drop agent multiplier in docs, change base exec cost
- improvement(schedule): default schedule timezone (#2800)
Bug Fixes
- fix(slack): tool params should be in line with block (#2860)
- fix(google-vault): error handling improvement and more params (#2735)
- fix(copilot): copilot edit router block accepts semantic handles (#2857)
- fix(copilot): fix copilot bugs (#2855)
- fix(queries): remove more remaining manual state management and refetching in favor of reactquery (#2852)
- fix(webflow): fix collection & site dropdown in webflow triggers (#2849)
- fix(linear): updated linear tools to enforce only required fields per api spec (#2845)
- improvement(presence): show presence for the same user in another tab, fix z-index of multiplayer cursor to fall behind panel,terminal,sidebar but above blocks, improved connection detection (#2844)
- fix(start): permission check for executor
- fix(drag): read perms prevent drag (#2834)
- fix(sortOrder): initial ordering must be deterministic (#2833)
- fix(popover): fix frozen workspace popover (#2832)
- fix(otp): send welcome email even when user signs up via email/pass along with oauth providers (#2825)
- fix(notifications): consolidate notification utils, update email styling (#2822)
- fix(terminal-colors): change algo to compute colors based on hash of execution id and pointer from bottom (#2817)
- fix(i18n): update translations action to run once per week on sunday (#2816)
- fix(terminal): pop all entries from a single execution when the limit is exceeded (#2815)
- fix(copilot): rewrote user input popover to optimize UX (#2814)
- fix(copilot): commands (#2811)
- fix(chat): remove special handling for non-streaming (#2808)
- fix(invitations): preserve tokens after error (#2806)
- fix(sockets): redrawing edges should not lead to socket ops (#2804)
- fix(triggers): cleanup trigger outputs formatting, fix display name issues (#2801)
- fix(executor): pattern match more errors to prevent swallow (#2802)