* 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]>
* update langchain and all related scoped packages to v1, deprecate agents and llms, rename and upgrade chat models
* add reasoning capability to Agent and LLM
* add token cost to usageMetadata
* update azure and chat openai
* restore executable permission for husky pre-commit hook
* refactor(agentflow): implement extractResponseContent utility for consistent response handling
- Introduced extractResponseContent function to streamline response content extraction across various components.
- Updated multiple files to utilize the new utility, enhancing code readability and maintainability.
- Adjusted model configurations and added new parameters for Gemini models to improve functionality.
* added a mock implementation for the logger in the URL security utilities test file to isolate tests and improve reliability.
* chore: update package.json and pnpm-lock.yaml to add uuid dependency and mock multer-azure-blob-storage in Jest config
- Added uuid dependency with version 10.0.0 and request>uuid with version 3.4.0 in package.json.
- Updated pnpm-lock.yaml to reflect the new uuid dependency and its deprecation notice.
- Modified Jest configuration to mock multer-azure-blob-storage to avoid module resolution issues with uuid/v4.
* gpt 5.4 models
* - Changed the stream conversion method in convertTextToSpeechStream to utilize Readable.fromWeb, enhancing compatibility with web streams.
- Added '/api/v1/chatmessage/abort' to the WHITELIST_URLS array to allow for aborting chat messages in the API.
* - Refactors how agentflow nodes (Agent, ConditionAgent, LLM) handle images in chat messages so that base64 is only used during model invocation
- Storage and chat history keep file references only
- Added comprehensive test cases to ensure correct handling of base64 image data and file references
* fix unit test
* implement filename sanitization to prevent path traversal vulnerabilities
* fix(validator): normalize backslashes in file names for cross-platform compatibility
* updated utils to process messages with images, converting stored-file references to base64 for model invocation, and implement interfaces
* add sanitization to unwanted keys when processing images
* add uuid to components package.json
* move allow image uploads params on chat models
* add encodingformat to openai embeddings
* Refactor output parsing for reasoning models
* Update ConditionAgent to version 2.0, refactor system prompt handling, and enhance message preparation logic
* add claude settings local json to gitignore
* remove claude settings local json
---------
Co-authored-by: yau-wd <[email protected]>
* feat(agentflow): add test infrastructure and unit tests
Add Jest test suite with coverage enforcement for @flowise/agentflow.
Includes 119 tests across core logic, API layer, search, and state
management. Fixes trailing-slash bug in getNodeIconUrl and extracts
reducer to its own module for cleaner separation.
Co-Authored-By: Claude Opus 4.6 <[email protected]>
* address gemini review comment
* fix lint errors
---------
Co-authored-by: Claude Opus 4.6 <[email protected]>
* Fix(FlowiseChatGoogleGenerativeAI): Prevent "parts must not be empty" API error in Seq Agents
* Fix: Update pnpm-lock.yaml to resolve CI issues
* convert role function and tool to function
* remove comment
---------
Co-authored-by: Henry <[email protected]>