6.5.0
2026-08-11
New Features
New Diagram
A new, modern diagram for the flow builder canvas: more responsive, with new effects and animations, and new features such as auto-connect and auto-align. It also provides more visual feedback, especially when testing — you can see the status of each component and view its log data directly on the canvas by hovering over it.
An empty canvas now shows a placeholder that guides you to the two ways of starting a flow: adding a trigger manually or building the flow with AI.
The new diagram currently only supports the left to right layout. Customers using the top to bottom layout will automatically keep seeing the old diagram. We strongly recommend switching to the new diagram to get all of the new upgrades and features — after switching from top to bottom to left to right, the auto-align button (brush icon) in the lower left toolbar makes it easy to align your flows.
Flow Versioning & Drafts
Versioning Panel
A new side panel in the Designer lets you manage the version history of a flow: save named snapshots, rename, restore, clone a version into a new flow, or delete versions. A status bar above the canvas shows which historical version you are browsing.
Draft System for Running Flows
Running flows can now be edited safely through drafts. Clicking Edit on a running flow creates a draft; the live flow keeps running unchanged while you make your changes. Publish Changes merges the draft back into the original flow and automatically creates a version snapshot of the pre-publish state.
Restore for Running Flows
Versions can be restored even while a flow is running — the version is restored into a draft (an existing draft is replaced), never directly into the live flow. Restoring a stopped flow without a draft restores it in place and creates an automatic restore point first.
Flow Versions API
The new Flow Versions API powers all of the above: version CRUD, draft-aware restore, cloning a version into a new independent flow, version types (manual, autosave, publish, restore-point) and automatic garbage collection with configurable retention.
Flow Testing
Test Flow in the Designer
A new Test flow button executes a single test run of the current flow without starting it. Per-component progress is streamed live onto the canvas with status badges and connector colours; clicking a component's result badge opens its output, and the results link into the flow logs. Test runs never change the flow's stage and never touch production state.
Trigger Test Inputs
Dedicated test-input surfaces for common trigger types: a JSON payload dialog for Webhook triggers (with the option to load a recent live run), a conversational side panel for Chat triggers, and a form dialog for Form triggers rendering the trigger's configured fields.
Test Data Resolution
When no test data is supplied, the engine resolves the trigger's output using a fallback chain — the trigger's new test(context) method (real data), past runs from the flow logs, or a sample generated from the output port JSON schema — and reports which data source was used (real, logs, dummy, manual) so the Designer can inform the user.
Test Runs API & Logs
The test mechanism is available via a new SSE endpoint (POST /flows/{flowId}/test) with an abort endpoint. All log records produced by a test run — component outputs, context.log() output, static component calls and component errors — are marked with a testRunId, and the Logs API accepts a testRunId filter, so test executions are clearly marked and filterable in the Logs. In the UI, a consistent test-run indicator is shown in the Insights logs (in a dedicated column), the log detail, the Designer flow logs and the executions list.
Connector developers can implement the new test(context) virtual method to provide real sample data for their triggers.
Flow Validation
The validation sidebar in the Designer has been replaced with a floating validation panel attached to the Start flow / Test flow buttons.
The Flow Validation API now reports components that require authentication but have no connected account — such flows fail validation instead of failing at runtime with "Missing access token".
Required fields inside expression-type inspector fields are now validated as well.
Per-Component Error Handling
Each step in a flow can now define its own error handling (Designer: cogwheel → Error handling; API: the errorHandling component descriptor property):
Automatic retry toggle with a configurable number of retries.
On error action once retries are exhausted: route the error to a virtual error output port that can be wired to any downstream component (with error details and flow data available as variables), stop the flow, or store the message as unprocessed (the previous behaviour, still the default).
AI Copilot
A new AI assistant built into the Designer that builds, edits and explains flows from natural language. Copilot designs flows directly on the canvas — selecting connectors, wiring components and filling in parameters — and can read the open flow to modify, remap or explain it. For running flows, Copilot works on a draft.
Ships as an engine system plugin (
SYSTEM_PLUGINS=copilot) with configurable LLM provider, model and base URL (COPILOT_LLM_URL) — so Copilot can also target an Anthropic-compatible LLM gateway or proxy.Conversation is retained per flow and restored when the panel is reopened; replies render as Markdown.
The panel is resizable — drag its edge to change the width, double-click the resize handle to reset it.
Configurable example prompts via the Designer widget options (
options.copilot.examplePrompts).The Copilot button is automatically hidden when the plugin is not enabled.
AI Usage Monitoring
The Insights menu is now split into two sections: Flow activity (the flow execution logs) and AI usage (visible to administrators only). The AI usage dashboard shows Copilot spend: summary cards with an input/output token breakdown, a daily consumption chart, and a paged, searchable per-user / per-group / per-scope cost breakdown with drill-down into individual LLM requests — backed by new admin usage API endpoints.
The usage API supports optional offset/limit paging with a totalCount in the response (totals always describe the whole reporting window). Cost computation handles multiple models correctly: requests made with models missing from the pricing table report their token counts but add zero cost instead of invalidating the total, and group/scope breakdowns include a per-user breakdown.
TypeScript Connectors
Component behaviour files can now be written in TypeScript. The engine runs them using Node.js native type stripping — no build step required, upload .ts files the same way as .js files.
Conditional Auth Fields
Fields in a connector's authentication dialog can now declare a display precondition with the when property (eq/neq operators), so a field is only shown when another field has (or does not have) a specific value — for example, showing an AWS region field only when the Amazon Bedrock provider is selected. Hidden fields are excluded from validation and from the submitted credentials.
Flow & Integrations Manager Filters
Filters in the Flow Manager and Integrations manager now clearly indicate when they are applied and can easily be reset: each filter renders as a chip with a Group: value label that is highlighted when active, an × button clears a single filter group, and every filter menu offers an All option with a checkmark marking the active choice — in both grid and list layouts.
New APIs
Resource Transfer
New admin endpoint PUT /resources/transfer transfers all resources (flows, accounts, tokens, data stores, files, ...) from a user or group to another user or group as a background task — for example when an employee leaves. Deleting a group that still owns flows is now rejected unless its resources are transferred first (or ?force=true is used).
Progressive Component Loading
GET /components accepts a selectors[] query parameter to request multiple component patterns in a single call, and the new GET /flows/{flowId}/components endpoint returns only the manifests used by a flow — so clients can load manifests progressively instead of fetching the full catalogue.
AI Agent Tools Observability
The static component call API accepts a new log flag that records the call in the execution logs (component identity, input/output, status, duration, correlation) — used to make AI Agent tool calls observable in the Logs UI.
Automation Hub
Automation Hub tiles now render a flow image in the card body when the flow's image field is set, instead of the connector icon strip.
OpenTelemetry Support
Opt-in OpenTelemetry instrumentation for HTTP, MongoDB, Redis and RabbitMQ across all engine services. Enable it by pointing OTEL_EXPORTER_OTLP_ENDPOINT at your collector; individual instrumentations can be toggled with env vars, with zero overhead when disabled.
Performance & Technical Improvements
Faster Designer load — the Designer loading sequence was reworked to significantly speed up opening flows.
Module preloader — API nodes prebuild the most recently used component module caches right after startup, removing cold-start latency from component and variables endpoints. Shared
node_modulesare loaded once per component version, and preloading recovers gracefully from individual module failures.Faster
GET /variables— eliminated excessive filesystem checks and redundant module resolution in component loading; component synchronization is now enabled by default with batched writes.Optimized connector manifest loading — component icons in
GET /appsandGET /componentsresponses are served as URLs instead of inline base64 data, dramatically reducing payload sizes.Optimized
GET /logs— limited projections for single-flow queries and cached user→shared-flows relationships to avoid repeated database requests.Concurrency improvements — removed read/write locks from the component factory and uploader; concurrent component requests no longer serialize.
Poisoned message handling — messages that repeatedly crash their consumer are detected via the broker delivery count and moved to the unprocessed messages collection instead of being redelivered indefinitely.
Webhook retries index — added a missing
{ url: 1, due: 1 }database index on thewebhookRetriescollection, so webhook circuit-breaker probe queries no longer run unindexed.Improved flow token validation — refactored authentication status resolution (
getAuthStatus).Dependency upgrades —
ioredisupgraded to the latest 5.x release;axios,ajv,moment,adm-zip, the OpenTelemetry packages and other dependencies updated to their latest releases.Slimmer SDK — the Plotly vendor library was removed and the SDK now uses a single vendored JointJS+ 4.2.4 runtime; redundant API calls from Designer Inspector input changes were eliminated.
Bug Fixes
New diagram polish & performance — fixed theming regressions and dark-mode contrast issues, sped up flow thumbnail capture on larger flows, removed the canvas scrollbars, improved note editing focus behaviour, added fallback icons with proper loading states for connector images, and restored the full zoom-out range and unbounded Zoom to fit so large flows can be brought fully into view.
Flow thumbnails — thumbnails are now captured also for flows whose content is written on the server: flows built by AI Copilot, restored versions and published drafts previously ended up with a missing or stale thumbnail in the Flow Manager.
Component names without a manifest — components whose connector manifest cannot be resolved (a removed connector, or one hidden by an ACL change) now display a readable name derived from the component type instead of a raw component ID — most visibly in the Wizard Builder.
Backoffice: Public Files upload errors — failed uploads (for example a file exceeding the maximum allowed size) now show an error message instead of failing silently with a stuck loading indicator.
API version mismatch alert shown to admins only — the Designer alert warning about an SDK/engine API version mismatch is now shown only to admin users; end users of embedded integrations no longer see a deployment concern they cannot act on. The SDK's
warningevent still fires for all consumers and now carries a stablecodefield (apiVersionMismatch,apiValidationFailure) for programmatic handling.
Removed
The Insights Chart Editor and Insights Dashboard SDK widgets (
appmixer.ui.InsightsChartEditor,appmixer.ui.InsightsDashboard) have been removed, together with the histogram section of the Insights Logs widget. The Charts REST API remains available for existing chart data.
Last updated
Was this helpful?
