Commit Graph
3565 Commits
Author SHA1 Message Date
Jackie ChuiandClaude Opus 4.7 9b10726c7b sandbox: implement LocalShellBackend with capability-gated execute tool
Adds dev-only shell execution (opt-in via SANDBOX_TYPE=local-shell) so the
SmartAgent can run real coding tasks during development. The execute tool
binds and surfaces in the system prompt only when the active backend
implements ShellBackendProtocol, keeping state/local backends safe by default.

Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
2026-05-08 15:15:00 -07:00
Jackie ChuiandClaude Opus 4.7 2463ca4486 sandbox: extract shared BackendProtocol conformance suite
Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
2026-05-07 13:58:24 -07:00
Jackie ChuiandClaude Opus 4.7 e0fb1a7ead sandbox: rewrite only image tool results, let non-image binaries pass through
Previously rewriteBinaryToolResults stripped audio/video/PDF blocks from
tool messages into a text breadcrumb, dropping bytes that providers like
Anthropic (PDFs) and Gemini (audio/video) can read natively. Now images
alone are smuggled out as a synthetic user message with image_url (still
required for OpenAI Chat Completion); other binaries pass through, and
non-supporting providers cleanly 4xx via Flowise's existing error path.

Extracts the function from a private SmartAgent method to an exported
helper in agentflow/utils.ts (sibling of addImageArtifactsToMessages)
and adds 6 tests. Updates the read_file tool description to set the
right expectation about which models can read which file types.

Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
2026-05-07 13:11:13 -07:00
Jackie Chui 5d1166832a Added support for reading non text files 2026-05-06 16:21:59 -07:00
Jackie ChuiandClaude Opus 4.7 68e88d8a2c sandbox: add CompositeBackend with prefix-based routing
Routes paths to sub-backends by longest matching prefix and translates
paths/FilesUpdate keys across the boundary. Wires SANDBOX_TYPE=composite
into the factory and includes it under hasStatefulSmartAgent so state
persistence still applies.

Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
2026-05-06 11:01:32 -07:00
Jackie ChuiandClaude Sonnet 4.6 5cba8029c4 sandbox: scope LocalBackend root by orgId/chatflowid/chatId
Concurrent SmartAgent runs previously shared one global root
(`~/.flowise/sandbox` or `SANDBOX_LOCAL_PATH`), causing cross-chat
file collisions and EEXIST races on `write` (wx flag). Factory now
composes `<base>/<orgSeg>/<flowSeg>/<chatSeg>` via new
`buildScopeSegments` helper, mirroring the orgId/chatflowid/chatId
hierarchy used by `getFileFromStorage`. SmartAgent passes scope at
the call site; StateBackend ignores it (already isolated per
execution). LocalBackend constructor unchanged.

Co-Authored-By: Claude Sonnet 4.6 <[email protected]>
2026-05-04 17:17:00 -07:00
Jackie ChuiandClaude Sonnet 4.6 781ac84ee1 sandbox: stream LocalBackend.grep, clarify doc
- grep uses readline + createReadStream so peak memory is one line per file, not the whole file
- JSDoc no longer claims "Dev-only" — that warning belongs to LocalShellBackend (shell exec), not disk-only access
- drop unused toVirtual helper

Co-Authored-By: Claude Sonnet 4.6 <[email protected]>
2026-05-04 15:43:03 -07:00
Jackie Chui a718f7ffbd added LocalBackend support for disk sandbox.
- Added SANDBOX_LOCAL_PATH incase users want to edit the path
- adds MAX_LIST_OBJECTS for glob and grep
- pinned 20.12.0 < 21.0.0 to support file system calls
2026-05-04 14:51:52 -07:00
Jackie Chui 60203ffd14 edit incorrect error message and added todo for Uint8Array for later for read 2026-05-01 23:56:10 -07:00
Jackie Chui 46ec327774 added normalize content to fix potential read grep and glob issues with mimeTypes and Uint8Array, made sure edit and grep must have minimum string in it before performing action 2026-05-01 16:25:55 -07:00
Jackie Chui 247810769e - implemented StateBackend with read, write, edit, ls, glob, and grep capabilities
- updated fs tools with universal edit_file, list_file, glob_files, and grep_file capabilities, add, and write already existed
- Updated systemPromptBuilder with additional fs tools
- SmartAgents: synced Statebackend using runTimeState.files to sync mutations and files so data is persisted across execution.
2026-05-01 15:03:55 -07:00
Jackie ChuiandClaude Opus 4.7 871a42fa1d sandbox: rename class-anchored files to PascalCase
Rename state.ts -> StateBackend.ts and protocol.ts -> BackendProtocol.ts
to match the packages/components convention (PascalCase for files whose
primary export is a same-named class/interface).

Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
2026-04-30 11:03:19 -07:00
Jackie Chui 4e65f92e6d sandbox: simplify factory, always wire fs tools, harden mime parse
- Replace filesystemEnabled() with getSandboxType(); default to 'state' there
- createBackend throws on unknown SANDBOX_TYPE instead of silently defaulting
- SmartAgent always creates a backend (filesystem is always on per design)
- getMimeType: explicit no-dot guard before slicing
2026-04-29 17:26:06 -07:00
Jackie Chui b1f314ea5d added utils and protocol interfaces and types for backends fs commands. Added a basic StateBackend for read and write and connected it with fs and smart agents for basic testing 2026-04-29 15:51:11 -07:00
Henry Hengandyau-wd 7f89d0fbbc Migrate Custom Assistants to Agents (#6163)
* Migrate Custom Assistants to Agents with single-table architecture

- Replace dual-table (assistant + chatflow) with single chatflow table for Agents.
- Add /agents route as default landing page
- Full configure page with dynamic field options from server node definitions
- Dedicated agents RBAC permission group
- Agent marketplace template type with view-only preview, type-validated export/import, and evaluation updates.

* - Add down() rollback logic to all 4 DB migration files to reverse agents permission additions
- Wrap all marketplace template JSON parsing in try-catch to prevent a single malformed file from crashing the entire marketplace
- Remove incompatible AgentListMenu from legacy CustomAssistantLayout

* implement pagination for agents list

* - revamp agents and agentflows view pages
- smartagents

* Enhance Agentflows and Agents views with version toggle buttons and responsive grid layout adjustments. Added a ToggleButtonGroup for selecting agentflow versions and updated grid templates for better responsiveness during loading states.

* fefactored various views to ensure consistent UI and UX across the application

* Enhance agentflows and marketplaces views by adding agent-specific data extraction and UI elements. Updated agentflow version condition in agentflows view and removed unnecessary loading state in dataset views. Improved rendering of agent information in marketplaces, including system message and model details.

---------

Co-authored-by: yau-wd <[email protected]>
2026-04-28 12:01:04 +01:00
chloebyun-wdandChloe Byun c79fe56a6c bug: Block read_pickle and class definitions, restrict custom CSV field to read_csv() only (#6257)
* bug: Block read_pickle and class definitions, restrict custom CSV field to read_csv() only

* pr

---------

Co-authored-by: Chloe Byun <[email protected]>
2026-04-27 14:55:27 -07:00
j-sanaa 3d69baed40 Fix/agentflow Fixing agentflow UI style and make it similar to v2 (#6280)
* Fix output node not selectable

* Fix highlight color

* Fix previous node displaying label and not ID

* Fix tool arguements not being called

* Fix dropdown values to not be bold

* Add standard sizing for all input text

* FIx syntax highlighting styling

* Use predefined tokens for font weight and size

* Fix dialog size of Source

* Fix color of syntax highlight in dark mode

* Fix the input fileds color in dark and regular mode

* Fix gemini comments

* FIx inconsistent spacing

* Standardise gap between label and field

* Remove export for unused function and standardize dialog size accrosss code, rich text,
  and source

* Fix test error
2026-04-27 09:15:16 -07:00
fed53e46b8 chore: update Node.js version consistency and optimize Docker build (#6285)
* chore: update Node.js version consistency and optimize Docker build

- Bump .nvmrc from v20.19.2 to v20.20.2 to match CI
- Narrow package.json engines to ^20 across root and packages/server
- Exclude @flowiseai/agentflow and @flowiseai/observe from Docker build
  to save ~40-50s per build (sdk packages not needed for app runtime)

Co-Authored-By: Claude Sonnet 4.6 <[email protected]>

* chore: add build:docker script and fix Docker build filter

Co-Authored-By: Claude Sonnet 4.6 <[email protected]>

* chore: update README files Node.js version to 20.0.0

---------

Co-authored-by: Claude Sonnet 4.6 <[email protected]>
Co-authored-by: yau-wd <[email protected]>
2026-04-27 20:20:35 +08:00
Abdul Samad Siddiqui ccc7d23baa feat: add GPT-5.5 and GPT-5.5 Pro to OpenAI chat models (#6278)
* feat(models): add gpt-5.5 and gpt-5.5-pro to chatOpenAI

  OpenAI released GPT-5.5 on April 23, 2026. Add both variants to the
  chatOpenAI model list with confirmed pricing:
  - gpt-5.5: /0 per 1M input/output tokens
  - gpt-5.5-pro: 0/80 per 1M input/output tokens

* feat(models): add gpt-5.5 and gpt-5.5-pro to chatOpenAI_LlamaIndex
2026-04-27 11:44:50 +01:00
yau-wdandgemini-code-assist[bot] b17dabbb26 Fix FLOWISE-319 Sanitize User (#6269)
* fix(account): flowise-319 sanitize user

* Update packages/server/src/enterprise/services/account.service.ts

Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>

---------

Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
2026-04-27 16:20:23 +08:00
Jocelyn Lin 99805d6ac2 chore: update agentflow workflow and add changelog (#6284)
* chore: update agentflow workflow and add changelog

- Enhanced the npm dist-tag description in the publish-agentflow.yml workflow to clarify options for development, pre-release, and stable versions.
- Introduced a new CHANGELOG.md file for the @flowiseai/agentflow package, documenting notable changes and adhering to the Keep a Changelog format.
- Updated README.md to reflect the current development status and features of the agentflow package, including detailed descriptions of functionalities and examples.

* update TESTS.md to include TipTap mock
2026-04-24 15:29:23 -07:00
Henry Heng 1298a392d8 Chore/pin axios to 1.15.0 (#6282)
pin axios to 1.15.0
2026-04-24 18:19:56 +01:00
yau-wd ec7a7f9ebe Chore update Node.js version to 20.20.2 in CI workflows (#6277)
chore: update Node.js version to 20.20.2 in CI workflows
2026-04-23 11:27:06 -07:00
Hoang DoanandHenry 3d7597717a feat: implement the custom MCP Server in tool (#6205)
* feat: implement the custom MCP Server in tool

- Implemented MCPServersTable for displaying MCP server data with status badges and tools count.
- Created CustomMcpServerDialog for adding and editing custom MCP servers with validation and authorization features.
- Integrated MCP server management into the Tools view with tabbed navigation for Custom Tools and Custom MCP Servers.
- Added pagination and loading states for MCP servers.

* tfix nodes.test.ts ESM load crash

* feat(custom-mcp): harden security, scalability, and UI polish

* enhance custom mcp server creation flow and UI updates

* feat(mcp): add MCP server handshake timeout, enhance UI UX for editing custom mcp server

---------

Co-authored-by: Henry <[email protected]>
2026-04-23 16:52:07 +01:00
SyncWithRaj a4b3f6f1f6 docs: fix broken environment variable docs links in markdown files (#6255)
* docs: fix broken environment variables link

* docs: fix broken environment variables links at all places
2026-04-23 10:56:54 +01:00
Jocelyn Lin d226cc98e1 feat(observe): add initial package structure and configuration for @flowiseai/observe (#6270)
* feat(observe): add initial package structure and configuration for @flowiseai/observe

- Introduced the @flowiseai/observe package with a modular architecture for observing AI agent executions and evaluations.
- Added essential files including ESLint and Prettier configurations, Jest setup, and TypeScript configuration.
- Created foundational components and documentation for usage, testing, and architecture.
- Updated pnpm-lock.yaml with new dependencies for the observe package.

This commit sets the groundwork for further development of the observability features.

* fix(observe): enhance documentation and improve execution polling logic

- Updated README.md to clarify the permissions required for the API token.
- Added cleanup logic in ExecutionDetail component to prevent memory leaks by removing event listeners on unmount.
- Improved clipboard copy functionality to check for navigator.clipboard availability.
- Adjusted useExecutionPoll hook dependencies to include fetchExecution for better stability.
- Enhanced unit tests for useExecutionTree and useObserveApi to ensure proper error handling and functionality.
2026-04-22 13:58:42 -07:00
abdullah-workday 34ab4e0de4 Refactoring Validation logic into separate function (#6272) 2026-04-22 13:39:44 -07:00
Henry Heng ea68f9a859 fix(mcp): preserve tool input schema types and required fields (#6248)
* fix(mcp): preserve tool input schema types and required fields

* Update OpenAIAssistant.ts

* replace zod-to-json-schema with toolSchemaToJsonSchema for schema normalization

* enhance isZodSchema validation and handle null schemas in toolSchemaToJsonSchema
2026-04-21 14:28:15 +01:00
Junghwanandyau-wd 1e21e61dad fix(server): preserve custom iframe allowlists in frame headers (#6232)
* Preserve explicit iframe allowlists when hardening frame headers

The clickjacking fix correctly added frame-ancestors controls, but custom allowlists still emitted X-Frame-Options: DENY. This keeps SAMEORIGIN for 'self' and DENY for 'none', while letting explicit allowlists rely on CSP alone so supported embeds continue to work.

Constraint: Legacy X-Frame-Options cannot express arbitrary allowlists

Rejected: Keep DENY for all non-self values | breaks documented IFRAME_ORIGINS allowlists

Confidence: high

Scope-risk: narrow

Reversibility: clean

Directive: Keep CSP as the source of truth for custom iframe allowlists; do not reintroduce contradictory XFO headers

Tested: Added unit coverage for wildcard, self, none, and custom allowlists; local header reproduction for custom origin

Not-tested: Full browser iframe E2E across legacy browsers

* Avoid malformed iframe CSP values while removing per-request header recomputation

Gemini's review pointed out two low-risk improvements that strengthen the
existing iframe allowlist fix without changing its intent: normalize away empty
CSV tokens before building frame-ancestors, and compute the static header set
once during app startup instead of rebuilding it on every request.

Constraint: IFRAME_ORIGINS is startup configuration, not a dynamic per-request input
Rejected: Larger header-construction refactor | not necessary to address the concrete review feedback
Confidence: high
Scope-risk: narrow
Reversibility: clean
Directive: Keep CSP token normalization aligned with explicit allowlists so empty CSV segments never leak into frame-ancestors
Tested: pnpm --dir packages/server test -- src/utils/XSS.test.ts --runInBand
Not-tested: Full browser iframe embed verification against a running server

---------

Co-authored-by: yau-wd <[email protected]>
2026-04-21 16:31:13 +08:00
Jocelyn LinandClaude Sonnet 4.6 3542a047ec fix(agentflow): fix variable resolution, credential sync, and add E2E example (#6245)
* fix(agentflow): fix variable resolution, credential sync, and add E2E example

- Fix variable picker emitting {{nodeId.data.instance}} instead of {{nodeId}}
- Fix customMention serializer using display label instead of node ID
- Fix Start node missing outputData.content for chatInput type
- Sync credential selection to nodeData.credential for server-side execution
- Add E2E example with save/delete/test-run FABs via canvasActions
- Simplify BasicExample to minimal canvas-only usage
- Fix act() warnings in TooltipWithParser and useAsyncOptions tests

Co-Authored-By: Claude Sonnet 4.6 <[email protected]>

* fix(agentflow): add user-facing error feedback for save failures in E2E example

Co-Authored-By: Claude Sonnet 4.6 <[email protected]>

* fix(agentflow): fix variable chip display and revert Start node content field

- VariableInput: show {{nodeId}} in mention chip instead of display label,
  consistent with the value serialized to flow data
- useAvailableVariables: exclude startAgentflow from upstream node outputs;
  users reference the question via {{question}} (global variable), matching
  agentflow v2 behavior — no Start node change or server change needed
- Start.ts: revert outputData.content = input; Start node is no longer
  exposed as a node output variable in the picker

Co-Authored-By: Claude Sonnet 4.6 <[email protected]>

---------

Co-authored-by: Claude Sonnet 4.6 <[email protected]>
2026-04-20 11:04:26 -07:00
Abdul Samad SiddiquiandHenry Heng 674bfc7409 feat(components): Add support for Anthropic Claude Opus 4.7 (#6247)
* feat(components): add support for Claude Opus 4.7 model and logic

* fix(components): update thinkingEffort description to include newer Opus models

* Update models.json for opus 4-7

---------

Co-authored-by: Henry Heng <[email protected]>
2026-04-20 16:10:53 +01:00
Henry Heng 62b56d08a7 Bugfix/Missing Reasoning Item (#6237)
* - pass langchain message instance as a whole to avoid missing reasoning item
- add `normalizeMessagesForStorage` function to convert LangChain message instances into plain JSON objects, improving database storage efficiency and UI readability

* - Fix ChatflowConfigurationDialog for inconsistent behaviour
- Added a button in NodeExecutionDetails to toggle visibility of all available tools, improving user experience.

* display input data for tool node in execution
2026-04-20 12:12:38 +01:00
jchui-wdandClaude Sonnet 4.6 e10a4ca0d8 bugfix: message panel crashes via large chat volume (#6191)
* fix: replace full message load in stats endpoint with SQL COUNT queries

* fix: replace full message load in stats endpoint with SQL COUNT queries

Loading all messages into memory to compute stats caused OOM crashes with
large chat volumes. Replaced with parallel SQL COUNT queries that never load
message rows. The feedbackTypes filter now uses a correlated subquery to
avoid hitting PostgreSQL's parameter limit at high feedback volumes.

Co-Authored-By: Claude Sonnet 4.6 <[email protected]>

* feedback filters were incorrectly filtering messages with feedback of the WHOLE session, instead of just the feedback + previous message. Added code to count preceding messages as count to mimic previous functionality

* fix: consolidate stats queries from 4 round-trips into 1 combined query

Replace 4 separate COUNT QueryBuilders (totalMessages, totalSessions,
totalFeedback, positiveFeedback) with a single query using addSelect
and CASE WHEN for the positive feedback breakdown. When a feedbackTypes
filter is active, reduce from 5 round-trips down to 2 (combined + preceding).
Update tests to match the new single getRawOne call and aliased column names.

---------

Co-authored-by: Claude Sonnet 4.6 <[email protected]>
2026-04-17 14:09:49 -07:00
JunghwanandHenry Heng 42b9157f8c fix(mcp): guard malformed form option metadata in chatflow MCP schema generation (#6233)
* Reject malformed MCP form option metadata before schema generation crashes

Chatflow-as-MCP-server assumes addOptions is always an array for form fields of type 'options'. Imported or malformed configs can carry '', null, or undefined instead, which throws during schema generation. This change fails fast with a controlled validation path and adds coverage for those cases.

Constraint: Fix should stay inside the server-side MCP endpoint path

Rejected: Normalize all malformed values silently | hides bad config state and weakens feedback

Confidence: high

Scope-risk: narrow

Reversibility: clean

Directive: Keep MCP schema generation defensive around imported flow JSON shapes

Tested: Added unit coverage for string, undefined, and null addOptions cases; local runtime repro confirms prior crash modes

Not-tested: Full end-to-end MCP initialize/tools-list call against a running server

* Keep malformed MCP option metadata from taking down form tool schemas

The maintainer follow-up on the MCP schema fix asked for malformed or empty
options metadata to be ignored rather than treated as a fatal configuration
error. This updates the schema builder to skip unusable enum fields, adds test
coverage for those cases, and narrows the start-node shape locally so the
server-side test can compile against the current interface types.

Constraint: Maintainer requested skip semantics for invalid/empty addOptions instead of hard failure
Rejected: Preserve throw-on-invalid behavior | conflicts with upstream maintainer direction
Confidence: high
Scope-risk: narrow
Reversibility: clean
Directive: Keep malformed or empty options metadata non-fatal; omit that field rather than breaking the whole MCP tool schema
Tested: pnpm --dir packages/components build; pnpm --dir packages/server test -- src/services/mcp-endpoint/index.test.ts --runInBand
Not-tested: End-to-end MCP initialize/tools/list flow against a live server

* add schema checks for input.addOptions

---------

Co-authored-by: Henry Heng <[email protected]>
2026-04-17 21:48:47 +01:00
github-actions[bot]andgithub-actions[bot] 19b64e5803 chore: bump @flowiseai/agentflow to 0.0.0-dev.13 (#6244)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-04-17 10:10:54 -07:00
j-sanaa 0fc44e6b0e Fix(agentflow) - Fix z-index for validation button (#6238)
* Fix z-index for validation

* Reverting changes to ValidationFeedback.tsx

* Use tokens for z index
2026-04-16 16:23:07 -07:00
VaidikFlow 1194c97069 Bring canvas buttons to same z-index level (#6235)
* Bring canvas buttons to same z-index level

* gemini suggested Fixes

* missing space
2026-04-16 12:27:03 -07:00
j-sanaa 11a9c924a2 Fix/agentflow Fixed theming for dark mode in agentflow (#6234)
* To highlight input fiels in dark mode

* Fix background color of edit node dialog

* Fix background color for input messages field

* Fix Message container

* Fix border container color

* Make token be referenced by name

* Revert changes to server file

* Fix gemini comments
2026-04-16 09:53:49 -07:00
Jocelyn Lin be37e73ed1 feat(agentflow): make client-specific knowledge fields for agent nodes (#6226)
- Updated Agent node to include 'client' property for 'agentKnowledgeDocumentStores' and 'agentKnowledgeVSEmbeddings', allowing differentiation between 'agentflowv2' and 'agentflowsdk'.
- Added tests to ensure correct filtering of knowledge fields based on client type.
2026-04-16 08:58:44 -07:00
Henry Heng 85df44bca4 Feat/FlowConfigDialog UI Redesign (#6229)
* enhance ChatflowConfigurationDialog with new configuration sections and improved UI

* fix: remove background color override for MuiSvgIcon in dark mode
2026-04-16 14:57:43 +01:00
github-actions[bot]andgithub-actions[bot] 73d57db9d2 chore: bump @flowiseai/agentflow to 0.0.0-dev.12 (#6225)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-04-15 13:29:00 -07:00
github-actions[bot]andgithub-actions[bot] 65f68059f5 chore: bump @flowiseai/agentflow to 0.0.0-dev.11 (#6216)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-04-15 13:06:11 -07:00
Jocelyn Lin a77194c8c2 feat(agentflow): optional cavasActions to allow additional buttons next to validate (#6224)
* feat(agentflow): optional cavasActions to allow additional buttons next to validate

- Updated Agentflow component to support canvasActions prop for rendering additional action buttons in the canvas overlay.
- Enhanced type definitions to include canvasActions in AgentflowProps.
- Added tests to verify the rendering of canvasActions in the Agentflow component.
- Added a new example  demonstrating custom FABs alongside the validation button.

* update jsdoc to match actual implementation
2026-04-15 12:54:54 -07:00
Hoang DoanandHenry 62a5d1d59c feat: turn chatflow into MCP server (#5930)
* feat: turn chatflow into MCP server

- Added '@modelcontextprotocol/sdk' version 1.12.0
- Added 'zod' version 3.25.32
- Added migrations for MCP server config
- Added MCP endpoints (Streamable HTTP and SSE)
- Added MCP server configuration tab
- Added unit tests for MCP endpoints and services

* feat: Implement MCP endpoint service with SSE support

- Added a new MCP endpoint service to handle requests for chatflows, including support for SSE (Server-Sent Events) and stateless transport.
- Introduced functions for handling MCP requests, SSE connections, and message routing.
- Implemented error handling for service errors and session management for SSE.
- Created unit tests for the MCP server service, covering configuration CRUD operations and token management.
- Updated the MCP server configuration logic to ensure proper validation and error handling.
- Refactored the UI component to utilize a new API hook for fetching MCP server configuration.

* chore: handle error when get mcp server config

* - Introduced a new chat type 'MCP' in the ChatType enum, including UI filters and backend processing.
- Updated the zod dependency version specification to support both ^3.25.76 and ^4.
- Fix setHasExistingConfig

* fix: update chatflowCallback to enable chatflow building with active state for MCP

* refactor: remove deprecated SSE transport endpoints and related logic

- Removed handleGet and handleSseMessage methods from MCP endpoint controller.
- Updated MCP endpoint routes to eliminate SSE-related routes.
- Refactored service layer to remove SSE session management and related methods.
- Updated tests to remove references to deprecated SSE functionality.
- Adjusted UI component to remove SSE endpoint URL handling.

* chore: update MCP endpoint routes and references to align with new API structure

* chore: remove abortChatMessage when mcp request closed

* optimize mcpserver dialog for dark mode

* feat: implement form input schema generation for agentflow chatflows

---------

Co-authored-by: Henry <[email protected]>
2026-04-15 20:36:28 +01:00
Jocelyn Lin 96fca439c1 feat(agentflow): add client filtering for form input options in Start node (#6212)
- Enhanced Start node to include a client property for the form input option, allowing differentiation between 'agentflowv2' and 'agentflowsdk'.
- Added tests to verify that the 'formInput' option is correctly filtered based on the client type.
2026-04-14 11:07:55 -07:00
abdullah-workday 04b897adc3 Fix: Clean and Nuke Script (#6213) 2026-04-14 10:30:01 -07:00
Jocelyn Lin 32232c04c5 fix(agentflow): add onFlowChange notifications for deleteNode, deleteEdge, and duplicateNode actions (#6211)
* fix(agentflow): add onFlowChange notifications for deleteNode, deleteEdge, and duplicateNode actions

- Updated context state management to include viewport information during flow changes.
- Improved test coverage for flow change notifications to ensure correct behavior on node and edge modifications.

* address gemini comment
2026-04-14 08:19:56 -07:00
yau-wd 311a3f47d0 Fix clickjacking (#6185)
* fix(server): clickjacking

* fix(XSS.ts): handle CSV and null values in getAllowedIframeOrigins
2026-04-14 20:23:00 +08:00
Henry Hengandyau-wd 4114b3b506 Release/3.1.2 (#6215)
[email protected]

Co-authored-by: yau-wd <[email protected]>
[email protected] [email protected] [email protected]
2026-04-14 11:42:44 +01:00
Jocelyn Lin 7de9e3ecb6 fix/agentflow: Update default values and auto-add Start node for empty state (#6210)
- Implemented auto-add functionality for Start node in Agentflow when creating a new canvas.
- Updated default values for number and options types to return empty strings instead of zero or first option name.
- Adjusted MessagesInput and ArrayInput tests to reflect changes in default values.
2026-04-13 16:21:44 -07:00