Commit Graph

150 Commits

Author SHA1 Message Date
aqiu 197e877462 revert changes 2025-12-29 11:04:42 +08:00
aqiu cd030d82e5 refactor(vibe): extract workflow generation to dedicated module
- Move workflow generation logic from LLMGenerator to WorkflowGenerator
  - Extract to api/core/workflow/generator/ with modular architecture
  - Implement Planner-Builder pattern for better separation of concerns
  - Add validation engine with rule-based error classification
  - Add node and edge repair utilities for auto-fixing common issues
  - Add deterministic Mermaid generator for consistent output

- Reorganize configuration and prompts
  - Move vibe_config/ to generator/config/
  - Move vibe_prompts.py to generator/prompts/ (split into multiple files)
  - Add builder_prompts.py and planner_prompts.py for new architecture

- Enhance frontend workflow handling
  - Use standard node initialization for proper node setup
  - Improve variable reference replacement with better error handling
  - Add model fallback logic for better compatibility
  - Handle end node outputs format (value_selector vs legacy format)
  - Ensure parameter-extractor nodes have required 'required' field

- Add comprehensive test coverage
  - Unit tests for mermaid generator, node repair, edge repair
  - Tests for validation engine and rule system
  - Tests for planner prompts formatting
  - Frontend tests for variable reference replacement

- Add max_fix_iterations parameter for validate-fix loop configuration

# Conflicts:
#	web/app/components/workflow/hooks/use-workflow-vibe.tsx
2025-12-29 11:04:42 +08:00
aqiu c4eee28fd8 refactor(vibe): modularize config and enhance workflow generation
- Extract vibe configuration into dedicated module (api/core/llm_generator/vibe_config/)
  - node_schemas.py: Built-in node parameter definitions
  - fallback_rules.py: Keyword-based fallback rules and aliases
  - responses.py: Off-topic response templates
  - node_definitions.json: Shared schema for frontend/backend sync

- Enhance workflow generation with intent classification
  - Add off-topic detection with helpful suggestions
  - Support regeneration mode with previous workflow context
  - Add tool validation and sanitization
  - Support language preference for generated content

- Extract frontend config to use-workflow-vibe-config.ts
  - NODE_TYPE_ALIASES: Node type inference mapping
  - FIELD_NAME_CORRECTIONS: LLM output field corrections
  - correctFieldName(): Unified field correction helper

- Fix defensive null checks in variable utils and key-value list
- Change verbose debug logs from info to debug level
2025-12-29 11:04:41 +08:00
yyh e5a98b10a9 refactor: Replace goto-anything actions with a new scope registry system, simplifying command management and registration. 2025-12-29 10:42:24 +08:00
yyh 0f40afafe2 fix: sync vibe apply immediately 2025-12-29 10:42:24 +08:00
yyh aa37e8fa4c fix: prevent stale vibe preview on invalid flow 2025-12-29 10:42:23 +08:00
yyh cfb54a0e7d fix: enhance version management and validation in workflow hooks
- Updated `useVibeFlowData` to prevent adding empty graphs and ensure the current version is correctly derived from available versions.
- Improved error handling in `applyFlowchartToWorkflow` to notify users when the current flow graph is invalid.
- Added checks to only add valid workflow graphs to the versions list, enhancing data integrity.
2025-12-29 10:42:23 +08:00
WTW0313 99e5669a66 fix: ensure storageKey defaults to an empty string in Vibe panel and workflow hooks 2025-12-29 10:42:23 +08:00
WTW0313 4879795cb9 feat: update Vibe panel to use new event handling and versioning for flowcharts 2025-12-29 10:42:22 +08:00
crazywoola f2363fc458 feat: use new styles 2025-12-29 10:42:22 +08:00
WTW0313 0f69e2f6ab feat: implement Vibe panel for workflow with regeneration and acceptance features 2025-12-29 10:42:22 +08:00
crazywoola 9d496ed3dc feat: add MCP tools 2025-12-29 10:42:22 +08:00
crazywoola 5705fa898f feat: v1 2025-12-29 10:42:21 +08:00
crazywoola a5c6c8638e feat: v1 2025-12-29 10:42:21 +08:00
JeeekXY 0f85ce3d0e
fix: prioritize copying selected text (#30141) 2025-12-25 16:22:42 +08:00
yyh 3cbbb06dc4
chore(web): migrate lodash-es to es-toolkit compat (#30126) 2025-12-25 09:44:57 +08:00
Stephen Zhou 1e3823e605
chore: fix type check for i18n (#30058)
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
Co-authored-by: yyh <yuanyouhuilyz@gmail.com>
2025-12-24 16:31:16 +08:00
Stephen Zhou f2842da397
chore(web): new lint setup (#30020)
Co-authored-by: yyh <yuanyouhuilyz@gmail.com>
2025-12-23 16:58:55 +08:00
yyh 59137f1d05
fix: show uninstalled plugin nodes in workflow checklist (#29630) 2025-12-15 10:11:23 +08:00
非法操作 3e5f683e90
feat: dark theme icon support (#28858) 2025-12-04 09:29:00 +08:00
GuanMu 5aba111297
Feat zen mode (#28794) 2025-11-27 20:10:50 +08:00
非法操作 6635ea62c2
fix: change existing node to a webhook node raise 404 (#28686) 2025-11-26 22:41:52 +08:00
Joel ef0e1031b0
pref: reduce the times of useNodes reRender (#28682)
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-11-26 16:52:47 +08:00
非法操作 1e6d0de48b
fix: knowledge pipeline can not published (#28203) 2025-11-14 09:47:37 +08:00
非法操作 b02165ffe6
fix: inconsistent behaviour of zoom in button and shortcut (#27944) 2025-11-13 14:37:27 +08:00
Yeuoly b76e17b25d
feat: introduce trigger functionality (#27644)
Signed-off-by: lyzno1 <yuanyouhuilyz@gmail.com>
Co-authored-by: Stream <Stream_2@qq.com>
Co-authored-by: lyzno1 <92089059+lyzno1@users.noreply.github.com>
Co-authored-by: zhsama <torvalds@linux.do>
Co-authored-by: Harry <xh001x@hotmail.com>
Co-authored-by: lyzno1 <yuanyouhuilyz@gmail.com>
Co-authored-by: yessenia <yessenia.contact@gmail.com>
Co-authored-by: hjlarry <hjlarry@163.com>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: WTW0313 <twwu@dify.ai>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-11-12 17:59:37 +08:00
Wu Tianwei 0e62a66cc2
feat: Introduce RAG tool recommendations and refactor related components for improved plugin management (#27259)
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-10-28 10:22:16 +08:00
yangzheli a7c855cab8
fix(workflow): resolve note node copy/duplicate errors (#27528)
Co-authored-by: crazywoola <100913391+crazywoola@users.noreply.github.com>
2025-10-28 09:26:12 +08:00
Wu Tianwei 95ce224df0
fix: enhance checklist functionality with embedding and rerank model lists (#27312) 2025-10-23 11:33:58 +08:00
Wu Tianwei f909040567
feat: Enhance knowledge base node validation by adding checks for embedding and reranking models (#27241) 2025-10-22 10:49:49 +08:00
crazywoola f0e739be43
fix: immer version and ref in code base (#27130) 2025-10-20 14:49:26 +09:00
GuanMu 1a37989769
Fix type-check error (#27051) 2025-10-18 12:03:40 +08:00
GuanMu 33b0814323
refactor(types): remove `any` usages and strengthen typings across web and base (#26677) 2025-10-09 21:36:42 +08:00
Asuka Minato a8746bff30
fix oxlint warnings (#26634) 2025-10-09 09:23:34 +08:00
Yadong (Adam) Zhang 654d522b31
perf(web): improve app workflow build performance. (#26310) 2025-10-07 14:21:08 +08:00
GuanMu 22f64d60bb
chore: update Dockerfile to use Python 3.12-bookworm and refactor layout logic to utilize ELK for improved node layout (#26522) 2025-10-05 12:49:41 +08:00
非法操作 36406cd62f
chore: time from now i18n support (#26328) 2025-09-28 13:37:42 +08:00
zxhlyh 915023b809
Chore/remove add node restrict of workflow (#26218)
Co-authored-by: -LAN- <laipz8200@outlook.com>
2025-09-25 18:02:43 +08:00
-LAN- 85cda47c70
feat: knowledge pipeline (#25360)
Signed-off-by: -LAN- <laipz8200@outlook.com>
Co-authored-by: twwu <twwu@dify.ai>
Co-authored-by: crazywoola <100913391+crazywoola@users.noreply.github.com>
Co-authored-by: jyong <718720800@qq.com>
Co-authored-by: Wu Tianwei <30284043+WTW0313@users.noreply.github.com>
Co-authored-by: QuantumGhost <obelisk.reg+git@gmail.com>
Co-authored-by: lyzno1 <yuanyouhuilyz@gmail.com>
Co-authored-by: quicksand <quicksandzn@gmail.com>
Co-authored-by: Jyong <76649700+JohnJyong@users.noreply.github.com>
Co-authored-by: lyzno1 <92089059+lyzno1@users.noreply.github.com>
Co-authored-by: zxhlyh <jasonapring2015@outlook.com>
Co-authored-by: Yongtao Huang <yongtaoh2022@gmail.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Joel <iamjoel007@gmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: nite-knite <nkCoding@gmail.com>
Co-authored-by: Hanqing Zhao <sherry9277@gmail.com>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: Harry <xh001x@hotmail.com>
2025-09-18 12:49:10 +08:00
Asuka Minato 77ba3e8f26
add autofix pnpm (#25557)
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-09-12 09:37:54 +08:00
XiamuSanhua ac2aa967c4
feat: change history by supplementary node information (#25294)
Co-authored-by: alleschen <alleschen@tencent.com>
Co-authored-by: crazywoola <100913391+crazywoola@users.noreply.github.com>
2025-09-09 15:18:42 +08:00
CrabSAMA 8d5f788f2b
feat(workflow): Allow paste node into nested block (#24234)
Co-authored-by: crab.huang <crab.huang@huolala.cn>
2025-09-04 15:21:43 +08:00
GuanMu 25a11bfafc
Export DSL from history (#24939)
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-09-02 21:36:52 +08:00
Yongtao Huang 208ce4e774
CI: add TS indentation check via esLint (#24810) 2025-09-01 15:31:59 +08:00
GuanMu 295b47cbff
Node search supports model and name search (#24331) 2025-08-22 22:01:11 +08:00
Joel de9c5f10b3
feat: enchance prompt and code (#23633)
Co-authored-by: stream <stream@dify.ai>
Co-authored-by: Stream <1542763342@qq.com>
Co-authored-by: Stream <Stream_2@qq.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-08-18 12:29:12 +08:00
Rajhans Jadhao 8d47213529
fix(workflow/if-else): keep conditions in sync on variable rename (#23611)
Co-authored-by: crazywoola <100913391+crazywoola@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: crazywoola <427733928@qq.com>
2025-08-14 19:55:18 +08:00
GuanMu de0dae9d9b
Fix node search (#23795) 2025-08-12 14:48:35 +08:00
lyzno1 0c5e66bccb
fix: unified error handling for GotoAnything search actions (#23715) 2025-08-11 11:57:06 +08:00
crazywoola 7ee170f0a7
Feat node search (#23685)
Co-authored-by: GuanMu <ballmanjq@gmail.com>
Co-authored-by: zhujiruo <zhujiruo@foxmail.com>
Co-authored-by: Matri Qi <matrixdom@126.com>
Co-authored-by: croatialu <wuli.croatia@foxmail.com>
Co-authored-by: HyaCinth <88471803+HyaCiovo@users.noreply.github.com>
Co-authored-by: lyzno1 <92089059+lyzno1@users.noreply.github.com>
2025-08-11 10:19:52 +08:00