3163 Commits
Author SHA1 Message Date
yau-wd abe4a8601a Fix Flowise 746 Chat Message Route (#6719)
fix(flowise-746): chat message route
2026-08-10 22:55:55 +08:00
Ilango 1939b5f374 add: permissions for bullmq endpoint (#6713) 2026-08-07 11:24:57 +05:30
Ilango 4b805e051f fix: flowise-707 (#6712) 2026-08-07 11:24:29 +05:30
Ilango 0b74fc07eb fix: flowise-603 (#6708) 2026-08-07 11:24:03 +05:30
Ilango f20d0941da fix: flowise-766 (#6709) 2026-08-07 10:37:30 +05:30
Ilango 269a493712 fix: upsert history permissions (#6680) 2026-08-07 10:37:00 +05:30
Ilango fe285d0b8d fix: flowise-627 (#6673) 2026-07-31 14:02:10 +05:30
Ilango 754f3d4747 fix: flowise-708 (#6679) 2026-07-31 14:01:46 +05:30
Henry Heng a65f81bb43 Release/3.1.4 (#6681)
[email protected]
2026-07-29 10:59:33 +01:00
Ilangoandyau-wd 5ecc3c5cb5 chore: flowise-839 (#6664)
* update: signup, invites and banner

* update: signup and invites

* update: login

---------

Co-authored-by: yau-wd <[email protected]>
2026-07-27 17:54:39 +01:00
Ilango 4ea391204a fix: flowise-598 (#6665)
* update: user and permissions in docker files

* fix: sql database chain node
2026-07-27 17:40:21 +05:30
Ilangoandgemini-code-assist[bot] ababf4c8eb fix: flowise-615 (#6629)
* fix: flowise-615

* Update packages/components/nodes/tools/MCP/core.ts

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

* fix: update versions for several packages (#6558)

* fix: update versions for several packages

* fix: review feedback

* fix: lock file

* fix: ci

* fix: ci

* fix: test coverage

* fix: flowise-399

---------

Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
2026-07-24 19:33:36 +05:30
Ilango dbec8f9fd3 fix: flowise 322 and 324 (#6650) 2026-07-24 19:28:32 +05:30
yau-wd e816d26a7d Fix Flowise-552 Add Allow List Execution Path (#6658)
fix(flowise-552): add allow list execution path
2026-07-24 08:43:26 +08:00
yau-wd 9d3059fdc0 Fix Flowise 849 SSO And Role (#6634)
fix(flowise-849): sso and role
2026-07-22 12:04:20 +08:00
yau-wd ed9e100fb7 Fix Flowise 809 Sanitize Organization User (#6633)
fix(flowise-809): sanitize organization user
2026-07-17 11:54:07 +08:00
Ilango 93c1abddd4 fix: update versions for several packages (#6558)
* fix: update versions for several packages

* fix: review feedback

* fix: lock file

* fix: ci

* fix: ci

* fix: test coverage
2026-07-15 13:21:50 +05:30
Ilangoandgemini-code-assist[bot] b98ff81b04 fix: check deny list in for certain chat models (#6589)
* fix: check deny list in for certain chat models

* Update packages/components/nodes/chatmodels/ChatOllama/ChatOllama.ts

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

* Update packages/components/nodes/chatmodels/ChatCloudflareWorkersAI/ChatCloudflareWorkersAI.ts

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

* fix: review feedback

---------

Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
2026-07-15 12:37:41 +05:30
Ilango 6c989ec860 fix: check deny list in webscrappers (#6559)
* fix: check deny list in webscrappers

* fix: review feedback
2026-07-15 12:36:43 +05:30
yau-wd 9fcb7ffbd5 Fix Flowise 788 Improve Tenant Validation (#6620)
* fix(flowise-788): improve tenant validation

* fix: use updatedBy instead of createdBy in organization user update
2026-07-15 11:54:38 +08:00
yau-wd bb773ffa71 Fix Flowise 722 node load method workspace (#6593)
fix(flowise-722):add node load method workspace scope
2026-07-06 12:30:01 +08:00
Ilangoandgemini-code-assist[bot] 096d2d4c14 fix: exports contain variable values (#6556)
* fix: exports contain variable values

* Update packages/server/src/services/export-import/index.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-07-01 13:38:12 +05:30
yau-wdandgemini-code-assist[bot] db8de568a8 Fix Flowise 610 openai-realtime cross-workspace authorization (#6586)
* fix(flowise-610): enforce workspace scoping and RBAC on openai-realtime routes

* Update packages/server/src/services/openai-realtime/index.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-07-01 14:09:55 +08:00
yau-wd f5d16835bc Fix Flowise 709 Make Custom MCP stdio command allowlist operator-controlled (#6578)
fix(flowise-709): make Custom MCP stdio command allowlist operator-controlled
2026-06-30 13:57:33 +08:00
yau-wdandgemini-code-assist[bot] de3a91827f Fix Type Validation For Session ID (#6568)
* fix: add type validation for session id

* Update packages/server/src/utils/index.ts

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

* Update packages/server/src/utils/index.ts

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

* Update packages/server/src/utils/index.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-06-26 10:19:55 +08:00
Henry Heng 09f099dbfd Release/3.1.3 (#6566)
[email protected]
2026-06-25 11:06:22 +01:00
Henry Heng 571b5d6218 Bugfix/add getSafeFilePath utility for secure file path resolution (#6549)
* add getSafeFilePath utility for secure file path resolution

* Enhance getSafeFilePath: add null byte detection and improve path traversal checks. Extend test cases for edge scenarios including encoded paths and leading/trailing dots.
2026-06-23 17:53:07 +01:00
Ilango d071868442 fix: FLOWISE-553, 598, 616 (#6464)
* fix: flowise-598

* fix: flowise-553

* fix: flowise-616

* fix: review feedback
2026-06-16 16:35:46 +05:30
Ilango 3f257bdc81 fix: FLOWISE-400, 543, 551 (#6417)
* fix: available dependencies in sandbox

* fix: better url validation and prevent arbitrary url injection into the sandbox

* fix: permissions in docker

* revert: all docker-related changes

* fix: review feedback
2026-06-16 16:21:16 +05:30
Ilango 96a9b23b5a fix: flowise 370 (#6409)
* add: new executions:update permissions and apply it to PUT /api/v1/executions endpoint

* add: executions:update permissions check in UI

* fix: review feedback
2026-06-16 16:20:56 +05:30
yau-wd f4e2794f6a Fix Flowise 606 (#6499)
fix(flowise-606): remove AirtableAgent and CSVAgent due to security vulnerabilities
2026-06-10 11:22:58 +08:00
yau-wdandgemini-code-assist[bot] 42d593f8ca Fix Flowise 591 (#6476)
* fix(flowise-591): Unicode homoglyph bypass

* Update packages/components/src/pythonCodeValidator.ts

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

* fix gemini lint error

* fix: strip backslash line-continuation sequences in validator normalization to close eval bypass

---------

Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
2026-06-05 11:41:04 +08:00
yau-wd a4c4e4988c Fix Flowise 552 (#6471)
fix(flowise-552): default Custom MCP to SSE and switch env vars from deny-list to allow-list
2026-06-04 00:32:30 +08:00
Ilango ba6a089d2b chore: node version update (#6359)
* update: node version

* fix: lint issues

* add: missing dependency in ci for faiss

* fix: pin pnpm version

* fix: more dependency issues

* fix: even more dependency issues

* update: pnpm overrides

* revert: experimental changes
2026-06-02 20:43:23 +05:30
yau-wd b2550f7ffe Fix FLOWISE-703 (#6446)
fix(flowise-703): workspace import/export privileges
2026-05-30 08:15:14 +08:00
yau-wd 2f528ceced Fix FLOWISE-597 (#6445)
* fix(flowise-597): chatflow deletion permissions handling

* fix(package.json): ERR_PNPM_MISSING_TARBALL_INTEGRITY  Cannot install package "xlsx@https://cdn.sheetjs.com/xlsx-0.20.3/xlsx-0.20.3.tgz": its lockfile entry has no "integrity" field, so pnpm cannot verify the downloaded tarball.
2026-05-30 08:05:24 +08:00
yau-wd bc22bf8bae Fix FLOWISE 596 (#6435)
disable files API endpoint and UI route
2026-05-26 23:11:19 +08:00
yau-wd 0fc7692083 Fix FLOWISE 453 (#6431)
* fix(httpSecurity.ts): flowise 453

* fix(httpSecurity.ts): ensure IP comparison uses parsed IP format

* fix(httpSecurity.ts): improve IP denial logic by using CIDR parsing and adjusting masks

* fix(httpSecurity.ts): skip malformed IPv4-mapped CIDR entries in deny list processing

* fix(httpSecurity.ts): enhance IP denial logic to handle non-canonical IPv6 addresses and improve entry comparison
2026-05-26 23:08:52 +08:00
Ilango b7a2005fd7 fix: access to invited workspace (#6360)
* fix: access to invited workspace

* update: idor guards
2026-05-19 19:52:50 +05:30
Abdul Samad SiddiquiandClaude Sonnet 4.6 9c85c14205 fix(models): correct chatMistralAI and chatCohere pricing by 1000x (#6393)
Pricing values in chatMistralAI and chatCohere were entered as $/1K tokens
instead of the $/token unit used by every other provider in this file.

All 17 Mistral models and 5 Cohere models had their input_cost and
output_cost divided by 1000 to match actual published pricing:
- open-mistral-nemo: $0.15/M tokens (was showing $150/M)
- mistral-large-latest: $2/M in, $6/M out (was showing $2000/$6000)
- command-r-plus-08-2024: $2.50/M in, $10/M out (was showing $2500/$10000)
- command-r-08-2024: $0.15/M in, $0.60/M out (was showing $150/$600)

Co-authored-by: Claude Sonnet 4.6 <[email protected]>
2026-05-18 21:50:52 +01:00
Ilango 9ae635b434 fix: flowise-318 (#6335)
* update: vars permissions check

* fix: check in queue mode
2026-05-14 14:15:45 +05:30
Henry Heng f05af6cb5f Reject webhook/schedule flows on prediction API and surface trigger-specific code samples (#6361)
* guard prediction API against webhook/schedule trigger flows and surface trigger-specific API snippets

* Enhance error message for webhook trigger configuration in executeAgentFlow function to include the configured HTTP method
2026-05-12 20:08:47 +01:00
Henry Heng a82edce8ae Chore/vm2 update (#6363)
vm2 update
2026-05-09 12:06:23 +01:00
Ilango 4d7899d02c fix: flowise-310 (#6321)
* add: validate customerId and subscriptionId

* fix: review feedback
2026-05-08 15:18:27 +05:30
Ilango e9bf04ac74 fix: flowise-186 (#6158)
* update: type field for some credentials where string type could expose secrets

* update: contribution docs with note on adding credential files

* update: add reveal for url type, permissions for get credential by id

* fix: review feedback

* fix: review feedback

* update: agentflow package with credentials ui changes

* fix: test coverage, add tests for changes in CreateCredentialDialog

* revert: changes to agentflows package
2026-05-08 15:08:18 +05:30
jchui-wd 23b997ee5e bugfix:308 | remove ungated overrideConfig spread (#6279)
* fix(server): remove ungated overrideConfig spread into flowConfig/flowData

The spread allowed API callers to inject arbitrary keys into the $flow.*
template namespace — bypassing the per-parameter gating that
replaceInputsWithConfig() enforces. Properly gated override paths
(replaceInputsWithConfig, $vars) are unaffected.

Closes FLOWISE-308

* added chatflowId and apiMessageId into flowData in buildFlow
2026-05-07 12:36:36 +01:00
j-sanaa 4b17501976 Feat(agentflow) Node version detection and version upgrade support (#6347)
* Implement Node versioning

* Add new example for showing outdated versions

* Remove header sync button

* Test changes

* ix lint error

* Fix gemini comments

* Udpate example to show no verison, outdated and correct version

* Add Sync as a FAB button

* Increase test coversge

* Add 2 sceaniors to exampels to make it clearer

* Fix gemini comments

* Fix review comments

* Fix review comments
2026-05-06 10:08:14 -07:00
1449e80d34 feature/extend AWS Bedrock node with full model catalog and custom model support (#6309)
* feat(bedrock): extend AWS Bedrock node with full model catalog and custom model support

* Update packages/components/models.json

fixed typo

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

* fixed typo

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

* Update packages/components/nodes/chatmodels/AWSBedrock/FlowiseAWSChatBedrockImported.ts

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

* fix

* lint fix

* remove redundant readme implementation file

---------

Co-authored-by: Ankit <[email protected]>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: Henry <[email protected]>
2026-05-06 15:58:09 +01:00
aee37e16b1 feat:344 | ambient agents webhooks (#6283)
* feat(ambient-agents): Add webhook trigger UI on start node (#6068)

* feat(ambient-agents): Add webhook trigger UI on start node, handles in both canvas, agentflow is out of scope but shows temporary ui

* fix: resolve webhookURL copy button not appearing after first save

useParams() does not update when window.history.replaceState() is used
on first save (bypasses React Router). Fall back to Redux canvas.chatflow.id
so NodeInputHandler re-renders reactively when SET_CHATFLOW is dispatched.

* feat/365-366-Webhooks-Server-Route-And-Execution (#6164)

* feat(webhooks): add server route and validation for webhook trigger

- POST /api/v1/webhook/:id route (accepts all HTTP methods via router.all)
- Validates chatflow exists and is configured as webhookTrigger, returns 404 otherwise
- Wraps raw webhook payload as incomingInput.webhook for buildAgentflow

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

* feat(agentflow): wire up webhook flow execution (FLOWISE-366)

- Resolve {{ $webhook.field }} template variables in agentflow nodes
- Add required body param validation in webhook service
- Whitelist /api/v1/webhook/ to bypass global auth middleware
- Set $input to JSON payload in custom function nodes for webhook flows
- Add $webhook. autocomplete suggestions in node editors
- Unit tests for body param validation and pre-mutation body pass-through

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

* feat(webhooks): namespace webhook payload under $webhook.body.*

- Wrap webhook body as { webhook: { body } } in controller so $webhook.body.*,
  $webhook.headers.*, and $webhook.query.* can coexist as distinct namespaces
- Update suggestion option IDs/labels in UI from $webhook.* to $webhook.body.*
- Restrict webhookTrigger start option to agentflowv2 client only
- Remove static webhookURL placeholder from NodeInputHandler (agentflow)

---------

Co-authored-by: Claude Sonnet 4.6 <[email protected]>

* feat/389-Webhooks-Headers-Query-params-Methods-validation (#6217)

* feat(ambient-agents): Add webhook trigger UI on start node, handles in both canvas, agentflow is out of scope but shows temporary ui

* fix: resolve webhookURL copy button not appearing after first save

useParams() does not update when window.history.replaceState() is used
on first save (bypasses React Router). Fall back to Redux canvas.chatflow.id
so NodeInputHandler re-renders reactively when SET_CHATFLOW is dispatched.

* feat(webhooks): add headers, query params & body validation to webhook trigger

- Add webhookTrigger input type to Start node with HTTP method, content
  type, and expected headers/query/body param configuration
- New /api/v1/webhook/:id route with method, content-type, header, body,
  and query param validation (400/405/415 on mismatch)
- Namespace webhook payload as $webhook.body.*, $webhook.headers.*,
  $webhook.query.* in the flow runtime
- Resolve $webhook.* variables in downstream nodes via buildAgentflow.ts
- Auto-unwrap form-encoded `payload` JSON strings (e.g. GitHub webhooks)
  so $webhook.body.* paths work regardless of content type
- Expose webhook variable suggestions in the node variable picker
- Show copyable webhook URL in the Start node canvas UI

* fixed a bug where downstream nodes cant reference values via node id, and a lowercase headers issue

* feat:533 webhook secrets (#6227)

* feat: add webhook secret & HMAC signature verification to webhook trigger

Adds server-side webhook secret management (generate/clear/verify) and a
UI control in the Start node for configuring the secret, signature header,
and signature type (HMAC-SHA256 or plain token). Raw request body is now
captured before JSON parsing so HMAC signatures can be verified against the
original bytes. Migrations added for all four supported databases.

* fix: accept string-coerced numbers and booleans in webhook body type validation

application/x-www-form-urlencoded payloads deliver all values as strings,
so the strict typeof check was incorrectly rejecting valid numeric ("42")
and boolean ("true"/"false") values. Updated the filter to coerce and
validate instead, with tests covering both JSON and form-encoded cases.

* fix: prevent mass-assignment of webhookSecret fields in chatflow create/update

Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>

---------

Co-authored-by: Claude Opus 4.6 (1M context) <[email protected]>

* feat:367 | Webhooks - Human Input + Callback Support (#6263)

* Added HITL support for webhooks

* feat: add async callback URL to webhook trigger
Optional Callback URL / Secret on the Start node (or x-callback-url
header). Webhook now returns 202 immediately and POSTs SUCCESS,
STOPPED (HITL), or ERROR to the callback URL, signed with HMAC-SHA256
when a secret is set. Retries 3x with 0s/3s/6s backoff.

* used getErrorMessage for error messages

* feat: add object/array body param types and per-option show/hide on d… (#6273)

* feat: add webhook secret & HMAC signature verification to webhook trigger

Adds server-side webhook secret management (generate/clear/verify) and a
UI control in the Start node for configuring the secret, signature header,
and signature type (HMAC-SHA256 or plain token). Raw request body is now
captured before JSON parsing so HMAC signatures can be verified against the
original bytes. Migrations added for all four supported databases.

* fix: accept string-coerced numbers and booleans in webhook body type validation

application/x-www-form-urlencoded payloads deliver all values as strings,
so the strict typeof check was incorrectly rejecting valid numeric ("42")
and boolean ("true"/"false") values. Updated the filter to coerce and
validate instead, with tests covering both JSON and form-encoded cases.

* Added HITL support for webhooks

* feat: add async callback URL to webhook trigger
Optional Callback URL / Secret on the Start node (or x-callback-url
header). Webhook now returns 202 immediately and POSTs SUCCESS,
STOPPED (HITL), or ERROR to the callback URL, signed with HMAC-SHA256
when a secret is set. Retries 3x with 0s/3s/6s backoff.

* feat: add object/array body param types and per-option show/hide on dropdowns

- Add object, array[string/number/boolean/object] as webhook body param types, available when content type is application/json
- Extend options fields with show/hide conditions so individual dropdown choices can be hidden based on other param values

* fix: prevent SSRF in webhook callback URL

Remove the x-callback-url header override that allowed any external
caller to control where the server sends POST requests. Callback URL
now only comes from the Start node config (authenticated users).

Add checkDenyList validation to block callback URLs targeting private
networks, cloud metadata endpoints, and loopback addresses.

* fix: exclude HTTP method from webhook URL copy

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

* feat: enhance webhook functionality in Start node

- Added new input options for webhook handling, including input modes (Custom Text, No Input, Full Webhook Payload) and response modes (Synchronous, Asynchronous, Streaming).
- Implemented request signature verification and callback URL handling for asynchronous responses.
- Updated validation logic for webhook requests, including content type and required headers.
- Enhanced tests to cover new webhook features and validation scenarios

* adds a generic SSE observer primitive and a webhook listener registry that lets the canvas watch incoming webhook executions live

* fix webhook tests by mocking webhook listener registry and updating expectations for chatId in createWebhook function

* fix: harden webhook trigger surface against SSRF, secret leakage, and listener data exposure

* fix: improve webhook listener reliability with initial heartbeat and logging

---------

Co-authored-by: Claude Sonnet 4.6 <[email protected]>
Co-authored-by: Henry <[email protected]>
2026-05-06 14:57:11 +01:00
github-actions[bot]andgithub-actions[bot] 6f7d37b408 chore: bump @flowiseai/observe to 0.0.0-dev.1 (#6349)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-05-05 16:30:32 -07:00