Novice
94b01f6821
Merge commit '92bde350' into sandboxed-agent-rebase
...
Made-with: Cursor
# Conflicts:
# api/controllers/console/app/workflow_draft_variable.py
# api/core/agent/cot_agent_runner.py
# api/core/agent/cot_chat_agent_runner.py
# api/core/agent/cot_completion_agent_runner.py
# api/core/agent/fc_agent_runner.py
# api/core/app/apps/advanced_chat/app_generator.py
# api/core/app/apps/advanced_chat/app_runner.py
# api/core/app/apps/agent_chat/app_runner.py
# api/core/app/apps/workflow/app_generator.py
# api/core/app/apps/workflow/app_runner.py
# api/core/app/entities/app_invoke_entities.py
# api/core/app/entities/queue_entities.py
# api/core/llm_generator/output_parser/structured_output.py
# api/core/workflow/workflow_entry.py
# api/dify_graph/context/__init__.py
# api/dify_graph/entities/tool_entities.py
# api/dify_graph/file/file_manager.py
# api/dify_graph/graph_engine/response_coordinator/coordinator.py
# api/dify_graph/graph_events/node.py
# api/dify_graph/node_events/node.py
# api/dify_graph/nodes/agent/agent_node.py
# api/dify_graph/nodes/llm/entities.py
# api/dify_graph/nodes/llm/llm_utils.py
# api/dify_graph/nodes/llm/node.py
# api/dify_graph/nodes/question_classifier/question_classifier_node.py
# api/dify_graph/runtime/graph_runtime_state.py
# api/dify_graph/variables/segments.py
# api/factories/variable_factory.py
# api/services/variable_truncator.py
# api/tests/unit_tests/utils/structured_output_parser/test_structured_output_parser.py
# api/uv.lock
# web/app/components/app-sidebar/app-info.tsx
# web/app/components/app-sidebar/app-sidebar-dropdown.tsx
# web/app/components/app/create-app-modal/index.spec.tsx
# web/app/components/apps/__tests__/list.spec.tsx
# web/app/components/apps/app-card.tsx
# web/app/components/apps/list.tsx
# web/app/components/header/account-dropdown/compliance.tsx
# web/app/components/header/account-dropdown/index.tsx
# web/app/components/header/account-dropdown/support.tsx
# web/app/components/workflow-app/components/workflow-onboarding-modal/index.tsx
# web/app/components/workflow/panel/debug-and-preview/hooks.ts
# web/contract/console/apps.ts
# web/contract/router.ts
# web/eslint-suppressions.json
# web/next.config.ts
# web/pnpm-lock.yaml
2026-03-23 09:39:49 +08:00
Novice
cccff6768a
Merge commit '9c339239' into sandboxed-agent-rebase
...
Made-with: Cursor
# Conflicts:
# api/README.md
# api/controllers/console/app/workflow_draft_variable.py
# api/core/agent/cot_agent_runner.py
# api/core/agent/fc_agent_runner.py
# api/core/app/apps/advanced_chat/app_runner.py
# api/core/plugin/backwards_invocation/model.py
# api/core/prompt/advanced_prompt_transform.py
# api/core/workflow/nodes/base/node.py
# api/core/workflow/nodes/llm/llm_utils.py
# api/core/workflow/nodes/llm/node.py
# api/core/workflow/nodes/parameter_extractor/parameter_extractor_node.py
# api/core/workflow/nodes/question_classifier/question_classifier_node.py
# api/core/workflow/runtime/graph_runtime_state.py
# api/extensions/storage/base_storage.py
# api/factories/variable_factory.py
# api/pyproject.toml
# api/services/variable_truncator.py
# api/uv.lock
# web/app/account/oauth/authorize/page.tsx
# web/app/components/app/configuration/config-var/config-modal/field.tsx
# web/app/components/base/alert.tsx
# web/app/components/base/chat/chat/answer/human-input-content/executed-action.tsx
# web/app/components/base/chat/chat/answer/more.tsx
# web/app/components/base/chat/chat/answer/operation.tsx
# web/app/components/base/chat/chat/answer/workflow-process.tsx
# web/app/components/base/chat/chat/citation/index.tsx
# web/app/components/base/chat/chat/citation/popup.tsx
# web/app/components/base/chat/chat/citation/progress-tooltip.tsx
# web/app/components/base/chat/chat/citation/tooltip.tsx
# web/app/components/base/chat/chat/question.tsx
# web/app/components/base/chat/embedded-chatbot/inputs-form/index.tsx
# web/app/components/base/chat/embedded-chatbot/inputs-form/view-form-dropdown.tsx
# web/app/components/base/markdown-blocks/form.tsx
# web/app/components/base/prompt-editor/plugins/hitl-input-block/component-ui.tsx
# web/app/components/base/tag-management/panel.tsx
# web/app/components/base/tag-management/trigger.tsx
# web/app/components/header/account-setting/index.tsx
# web/app/components/header/account-setting/members-page/transfer-ownership-modal/index.tsx
# web/app/components/header/account-setting/model-provider-page/provider-added-card/index.tsx
# web/app/signin/utils/post-login-redirect.ts
# web/eslint-suppressions.json
# web/package.json
# web/pnpm-lock.yaml
2026-03-23 09:00:45 +08:00
Novice
89b76d6c33
Merge commit '657eeb65' into sandboxed-agent-rebase
...
Made-with: Cursor
# Conflicts:
# api/core/agent/cot_chat_agent_runner.py
# api/core/agent/fc_agent_runner.py
# api/core/memory/token_buffer_memory.py
# api/core/variables/segments.py
# api/core/workflow/file/file_manager.py
# api/core/workflow/nodes/agent/agent_node.py
# api/core/workflow/nodes/llm/llm_utils.py
# api/core/workflow/nodes/parameter_extractor/parameter_extractor_node.py
# api/core/workflow/workflow_entry.py
# api/factories/variable_factory.py
# api/pyproject.toml
# api/services/variable_truncator.py
# api/uv.lock
# web/app/components/app/app-publisher/index.tsx
# web/app/components/app/overview/settings/index.tsx
# web/app/components/apps/app-card.tsx
# web/app/components/apps/index.tsx
# web/app/components/apps/list.tsx
# web/app/components/base/chat/chat-with-history/header-in-mobile.tsx
# web/app/components/base/features/new-feature-panel/conversation-opener/modal.tsx
# web/app/components/base/features/new-feature-panel/file-upload/setting-content.tsx
# web/app/components/base/features/new-feature-panel/moderation/moderation-setting-modal.tsx
# web/app/components/base/features/new-feature-panel/text-to-speech/param-config-content.tsx
# web/app/components/base/message-log-modal/index.tsx
# web/app/components/base/switch/index.tsx
# web/app/components/base/tab-slider-plain/index.tsx
# web/app/components/explore/try-app/app-info/index.tsx
# web/app/components/plugins/plugin-detail-panel/tool-selector/components/reasoning-config-form.tsx
# web/app/components/workflow/nodes/llm/components/json-schema-config-modal/visual-editor/edit-card/required-switch.tsx
# web/app/components/workflow/nodes/llm/panel.tsx
# web/contract/router.ts
# web/eslint-suppressions.json
# web/i18n/fa-IR/workflow.json
2026-03-19 17:38:56 +08:00
-LAN-
4fd6b52808
refactor(api): move model_runtime into dify_graph ( #32858 )
2026-03-02 20:15:32 +08:00
-LAN-
c917838f9c
refactor: move workflow package to dify_graph ( #32844 )
2026-03-02 18:42:30 +08:00
-LAN-
ef2b5d6107
refactor(api): move llm quota deduction to app graph layer ( #32786 )
2026-03-01 23:25:36 +08:00
99
7656d514b9
refactor(workflow-file): move core.file to core.workflow.file ( #32252 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-02-16 22:38:19 +08:00
yyh
e730124740
Merge remote-tracking branch 'origin/main' into feat/support-agent-sandbox
...
# Conflicts:
# api/uv.lock
# web/app/components/apps/__tests__/app-card.spec.tsx
# web/app/components/apps/__tests__/list.spec.tsx
# web/app/components/datasets/create/__tests__/index.spec.tsx
# web/app/components/datasets/metadata/metadata-dataset/__tests__/dataset-metadata-drawer.spec.tsx
# web/app/components/plugins/readme-panel/__tests__/index.spec.tsx
# web/app/components/rag-pipeline/__tests__/index.spec.tsx
# web/app/components/rag-pipeline/hooks/__tests__/index.spec.ts
# web/eslint-suppressions.json
2026-02-13 15:17:52 +08:00
Bowen Liang
c0ffb6db2a
feat: support config max size of plugin generated files ( #30887 )
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-02-13 09:48:27 +08:00
Harry
83c260ee4c
Merge remote-tracking branch 'origin/main' into feat/support-agent-sandbox
2026-02-09 17:00:56 +08:00
QuantumGhost
a1fc280102
feat: Human Input Node ( #32060 )
...
The frontend and backend implementation for the human input node.
Co-authored-by: twwu <twwu@dify.ai >
Co-authored-by: JzoNg <jzongcode@gmail.com >
Co-authored-by: yyh <92089059+lyzno1@users.noreply.github.com >
Co-authored-by: zhsama <torvalds@linux.do >
2026-02-09 14:57:23 +08:00
yyh
871ec3b0ca
Merge remote-tracking branch 'origin/main' into feat/support-agent-sandbox
...
# Conflicts:
# api/controllers/console/app/app.py
# web/eslint-suppressions.json
# web/eslint.config.mjs
2026-02-06 14:40:44 +08:00
Stream
e04f2a0786
feat: use static manifest for pre-caching all plugin manifests before checking updates ( #31942 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Junyan Qin <rockchinq@gmail.com >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-02-05 18:58:17 +08:00
Stream
e0082dbf18
revert: add tools for output in agent mode
...
feat: hide output tools and improve JSON formatting for structured output
feat: hide output tools and improve JSON formatting for structured output
fix: handle prompt template correctly to extract selectors for step run
fix: emit StreamChunkEvent correctly for sandbox agent
chore: better debug message
fix: incorrect output tool runtime selection
fix: type issues
fix: align parameter list
fix: align parameter list
fix: hide internal builtin providers from tool list
vibe: implement file structured output
vibe: implement file structured output
fix: refix parameter for tool
fix: crash
fix: crash
refactor: remove union types
fix: type check
Merge branch 'feat/structured-output-with-sandbox' into feat/support-agent-sandbox
fix: provide json as text
fix: provide json as text
fix: get AgentResult correctly
fix: provides correct prompts, tools and terminal predicates
fix: provides correct prompts, tools and terminal predicates
fix: circular import
feat: support structured output in sandbox and tool mode
2026-02-04 21:43:53 +08:00
Harry
10f5d9e7ad
fix: stream never ruff
2026-02-03 14:42:30 +08:00
QuantumGhost
90fe9abab7
revert: revert human input relevant code ( #31766 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-01-30 19:18:49 +08:00
QuantumGhost
f90fa2b186
fix(api): fix workflow state persistence issue ( #31752 )
...
Ensure workflow pause configuration is correctly set for all entrypoints.
2026-01-30 17:44:29 +08:00
QuantumGhost
03e3acfc71
feat(api): Human Input Node (backend part) ( #31646 )
...
The backend part of the human in the loop (HITL) feature and relevant architecture / workflow engine changes.
Signed-off-by: yihong0618 <zouzou0208@gmail.com >
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: -LAN- <laipz8200@outlook.com >
Co-authored-by: 盐粒 Yanli <yanli@dify.ai >
Co-authored-by: CrabSAMA <40541269+CrabSAMA@users.noreply.github.com >
Co-authored-by: Stephen Zhou <38493346+hyoban@users.noreply.github.com >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Co-authored-by: yihong <zouzou0208@gmail.com >
Co-authored-by: Joel <iamjoel007@gmail.com >
2026-01-30 10:18:49 +08:00
Stream
2008768cb9
fix: provides correct prompts, tools and terminal predicates
...
Signed-off-by: Stream <Stream_2@qq.com >
2026-01-30 08:44:26 +08:00
Stream
ec9ade62f5
fix: circular import
2026-01-30 07:11:20 +08:00
Stream
edce6d4152
refactor: remove streaming structured output from invoke_llm_with_structured_output
...
Signed-off-by: Stream <Stream_2@qq.com >
2026-01-29 23:42:06 +08:00
yyh
d3d1ba2488
Merge remote-tracking branch 'origin/main' into feat/support-agent-sandbox
...
# Conflicts:
# api/core/app/apps/workflow/app_generator.py
2026-01-19 16:33:10 +08:00
wangxiaolei
0f1db88dcb
fix: fix dify-plugin-daemon error message ( #31218 )
2026-01-19 16:00:44 +08:00
yyh
657739d48b
Merge remote-tracking branch 'origin/main' into feat/support-agent-sandbox
...
# Conflicts:
# api/models/model.py
# web/contract/router.ts
2026-01-15 10:59:45 +08:00
wangxiaolei
98c88cec34
refactor: delete_endpoint should be idempotent ( #30954 )
2026-01-15 10:10:10 +08:00
Novice
1557f48740
Merge branch 'feat/agent-node-v2' into feat/support-agent-sandbox
2026-01-09 14:19:27 +08:00
Sara Rasool
4f0fb6df2b
chore: use from __future__ import annotations ( #30254 )
...
Co-authored-by: Dev <dev@Devs-MacBook-Pro-4.local >
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Asuka Minato <i@asukaminato.eu.org >
Co-authored-by: crazywoola <100913391+crazywoola@users.noreply.github.com >
2026-01-06 23:57:20 +09:00
Harry
36b7075cf4
Merge feat/llm-node-support-tools and fix type errors
...
- Merge origin/feat/llm-node-support-tools branch
- Fix unused variable tenant_id in dsl.py
- Add None checks for app and workflow in dsl.py
- Add type ignore for e2b_code_interpreter import
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2026-01-05 18:32:15 +08:00
Byron.wang
5362f69083
feat(refactoring): Support Structured Logging (JSON) ( #30170 )
2026-01-04 11:46:46 +08:00
Harry
926349b1f8
feat: transform tool file message for external access
2026-01-02 15:23:16 +08:00
Harry
3842eade67
feat: add API endpoint to fetch list of available tools and corresponding request model
2026-01-02 15:00:42 +08:00
wangxiaolei
9885e92854
fix: validate first then save to db ( #30107 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-12-25 19:36:52 +09:00
huku
eb5a444d3d
fix: plugin execution timeout not respecting PLUGIN_MAX_EXECUTION_TIMEOUT ( #29785 )
...
Co-authored-by: crazywoola <100913391+crazywoola@users.noreply.github.com >
2025-12-18 15:11:01 +08:00
Jyong
9affc546c6
Feat/support multimodal embedding ( #29115 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-12-09 14:41:46 +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
Maries
65976b27fe
fix: improve plugin invoke error ( #27137 )
...
Co-authored-by: Yeuoly <45712896+Yeuoly@users.noreply.github.com >
2025-10-22 17:09:24 +08:00
Alain
26ff59172e
fix: fix OpenAPI Schema Import Pydantic Validation Errors for Complex Default Values ( #27159 )
...
Co-authored-by: Alain <yinxulai@hoymail.com >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-10-22 11:45:31 +08:00
Asuka Minato
32c715c4d0
rm type ignore ( #25715 )
...
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: -LAN- <laipz8200@outlook.com >
2025-10-21 11:26:58 +08:00
Asuka Minato
cced33d068
use deco to avoid current_user ( #26077 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
2025-10-16 15:45:51 +09:00
Eric Guo
59ad6e02ce
Add timeout so any plugin daemon call (including the SSE path) that legitimately takes longer than 5s would right. ( #26852 )
2025-10-14 09:23:27 +08:00
Yuto Yamada
dfc03bac9f
Fix typo: reponse to response ( #26792 )
2025-10-13 10:04:19 +08:00
Asuka Minato
1bd621f819
remove .value ( #26633 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
2025-10-11 09:08:29 +08:00
Asuka Minato
bb6a331490
change all to httpx ( #26119 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: crazywoola <100913391+crazywoola@users.noreply.github.com >
2025-10-10 23:41:16 +08:00
Asuka Minato
ab2eacb6c1
use model_validate ( #26182 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: crazywoola <100913391+crazywoola@users.noreply.github.com >
2025-10-10 17:30:13 +09:00
Asuka Minato
3c4aa24198
Refactor: Remove unnecessary casts and tighten type checking ( #26625 )
...
Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-10-09 22:11:14 +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
-LAN-
bab4975809
chore: add ast-grep rule to convert Optional[T] to T | None ( #25560 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-09-15 13:06:33 +08:00
Krito.
a13d7987e0
chore: adopt StrEnum and auto() for some string-typed enums ( #25129 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: crazywoola <100913391+crazywoola@users.noreply.github.com >
2025-09-12 21:14:26 +08:00
-LAN-
08dd3f7b50
Fix basedpyright type errors ( #25435 )
...
Signed-off-by: -LAN- <laipz8200@outlook.com >
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-09-10 01:54:26 +08:00
Yongtao Huang
2ac7a9c8fc
Chore: thanks to bump-pydantic ( #25437 )
2025-09-09 20:07:17 +08:00