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
Novice
40b0d7c898
feat: implement app runtime upgrade feature to clone and convert classic runtime apps to sandboxed mode
2026-03-17 13:54:16 +08:00
Harry
76c02db094
fix: namespace sandbox temp paths by sandbox ID to prevent cross-session collisions
...
DifyCli and AppAssets used hardcoded absolute paths under /tmp/.dify/,
causing concurrent sandbox sessions on the same host (e.g. SSH provider)
to overwrite each other's config files and CLI binaries.
- Add Sandbox.id property (uuid4 hex) as a stable, path-safe identifier
independent of provider-specific environment IDs
- Convert DifyCli/AppAssets from static constants to per-sandbox instances
namespaced under /tmp/.dify/{sandbox.id}/
- Replace all vm.metadata.id references with sandbox.id
- Replace upload_file with heredoc-based pipeline step in session.py to
reduce round-trips
2026-03-11 19:19:17 +08:00
Harry
dbc87dbd3b
feat: update LLM node skills API to extract tool dependencies and change endpoint to POST
2026-03-11 14:41:33 +08:00
Harry
0776e16fdc
refactor: async skill compile and context sharing
2026-03-11 14:41:33 +08:00
Harry
65e89520c0
refactor: unify download item types and eliminate extension-based branching
...
Merge AssetDownloadItem, AssetInlineItem into SandboxDownloadItem with
optional 'content' field. All consumers now follow a clean pipeline:
get items → accessor.resolve_items() → AppAssetService.to_download_items() → download
Key changes:
- SandboxDownloadItem gains content: bytes | None (entities.py)
- ZipSandbox.download_items() handles both inline (base64 heredoc) and
remote (curl) via a single pipeline — no structural branching
- AssetDownloadService.build_download_script() takes unified list
- CachedContentAccessor.resolve_items() batch-enriches items from DB
(extension-agnostic, no 'if md' checks needed)
- AppAssetService.to_download_items() converts AssetItem → SandboxDownloadItem
- DraftAppAssetsInitializer, package_and_upload, export_bundle simplified
- file_upload/node.py switched to SandboxDownloadItem
- Deleted AssetDownloadItem and AssetInlineItem classes
2026-03-10 17:12:15 +08:00
Harry
a8074f4f4a
feat: add DB inline content cache for app asset draft files
...
Introduce app_asset_contents table as a read-through cache over S3 for
text-like asset files (e.g. .md skill documents). This eliminates N
individual S3 fetches during SkillBuilder builds — bulk_load pulls all
content in a single SQL query with S3 fallback on miss.
Key components:
- CachedContentAccessor: DB-first read / dual-write / S3 fallback
- AssetContentService: static DB operations (get, get_many, upsert, delete)
- should_mirror(): single source of truth for extension-based policy
- Alembic migration for app_asset_contents table
Modified callers:
- SkillBuilder uses accessor.bulk_load() instead of per-node S3 reads
- AppAssetService.get/update_file_content route through accessor
- delete_node cleans both DB cache and S3
- draft_app_assets_initializer uses should_mirror() instead of hardcoded .md
2026-03-10 17:12:14 +08:00
Harry
53f76a20c2
refactor: redesign skill compilation and document assembly process
2026-03-10 17:12:14 +08:00
wangxiaolei
cc127f5b62
fix: fix chat assistant response mode blocking is not work ( #32394 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-03-02 14:05:04 +08:00
99
a01de98721
refactor(workflow): decouple start node external dependencies ( #32793 )
2026-03-02 02:01:41 +08:00
-LAN-
53c62fde33
fix(api): enforce ownership check for conversation delete ( #32686 )
2026-03-01 17:53:37 +08:00
L1nSn0w
337161cdb9
feat(enterprise): auto-join newly registered accounts to the default workspace ( #32308 )
...
Co-authored-by: Yunlu Wen <yunlu.wen@dify.ai >
2026-03-01 16:53:09 +08:00
-LAN-
1f0fca89a8
refactor(workflow): move variables package into core.workflow ( #32750 )
2026-03-01 03:15:09 +08:00
Harry
a0d1816a6e
feat: add mergeable skill bundles with incremental compilation
...
Refactor skill compilation around mergeable bundle patches so dynamic skill updates no longer require full rebuilds. Keep dependency closures accurate by recomputing affected nodes from direct dependency data.
2026-02-28 14:35:29 +08:00
-LAN-
a694533fc9
refactor(workflow): inject credential/model access ports into LLM nodes ( #32569 )
...
Signed-off-by: -LAN- <laipz8200@outlook.com >
2026-02-27 14:36:41 +08:00
-LAN-
eea1cf17ef
refactor(workflow): inject redis into graph engine manager ( #32622 )
2026-02-27 13:29:52 +08:00
-LAN-
0964fc142e
refactor(workflow): inject http request node config through factories and defaults ( #32365 )
...
Signed-off-by: -LAN- <laipz8200@outlook.com >
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-02-25 16:29:59 +08:00
-LAN-
fbacb9f7a2
fix: clear stale provider credentials during plugin uninstall ( #32380 )
2026-02-19 10:28:01 +08:00
Harry
2dc86363e3
feat: enhance asset packaging to handle empty assets and direct storage uploads
2026-02-17 12:16:15 +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
Harry
48e694eafe
fix: agentbox using nginx for traffic proxy
2026-02-15 11:31:22 +08:00
Harry
cb6445a977
feat: fallback handle for skill exception when draft not sync yet
2026-02-15 02:00:27 +08:00
hjlarry
5cfb3d70e1
feat: mentioned user email can directly open app
2026-02-14 15:08:20 +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
Varun Chawla
f233e2036f
fix: metadata batch edit silently fails due to split transactions and swallowed exceptions ( #32041 )
2026-02-12 12:59:59 +08:00
Junyan Chin
2bf767d5f7
feat: add Creators Platform helper for DSL upload and OAuth redirect (Vibe Kanban) ( #32232 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-11 21:10:48 +08:00
twwu
26ace0da95
Merge branch 'main' into feat/support-agent-sandbox
2026-02-11 17:50:35 +08:00
hj24
7e0bccbbf0
fix: update index to optimize message clean performance ( #32238 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-02-11 16:07:52 +08:00
yyh
29406dbc46
Merge remote-tracking branch 'origin/main' into feat/support-agent-sandbox
...
# Conflicts:
# api/core/app/task_pipeline/easy_ui_based_generate_task_pipeline.py
2026-02-11 12:44:05 +08:00
QuantumGhost
704ee40caa
fix(api): excessive high CPU usage caused by RedisClientWrapper ( #32212 )
...
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
2026-02-11 09:49:29 +08:00
Harry
102310f5b9
feat: add FILES_API_URL for storage file ticket API endpoints
2026-02-10 15:36:40 +08:00
zyssyz123
9c0b01ef20
fix: When the user is a non-sandbox user and has a paid balance, the … ( #32173 )
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-02-10 15:36:40 +08:00
zyssyz123
7dabc03a08
fix: When the user is a non-sandbox user and has a paid balance, the … ( #32173 )
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-02-10 12:08:23 +08:00
yyh
78acba7a35
Merge remote-tracking branch 'origin/main' into feat/support-agent-sandbox
2026-02-10 11:07:45 +08:00
Dream
1a050c9f86
fix(api): clean up orphaned pending accounts on member removal ( #32151 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-02-10 10:17:27 +08:00
yyh
db0c527ce8
Merge remote-tracking branch 'origin/main' into feat/support-agent-sandbox
2026-02-09 18:43:04 +08:00
Vlad D
fa763216d0
fix(api): register knowledge pipeline service API routes ( #32097 )
...
Co-authored-by: Crazywoola <100913391+crazywoola@users.noreply.github.com >
Co-authored-by: FFXN <31929997+FFXN@users.noreply.github.com >
2026-02-09 17:43:36 +08:00
Harry
83c260ee4c
Merge remote-tracking branch 'origin/main' into feat/support-agent-sandbox
2026-02-09 17:00:56 +08:00
盐粒 Yanli
a303560b98
feat: Service API - add end-user lookup endpoint ( #32015 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-02-09 15:39:16 +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
盐粒 Yanli
5b06203ef5
feat: Service API - add end-user lookup endpoint ( #32015 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-02-09 14:01:22 +08:00
yyh
7d2e630fc8
Merge remote-tracking branch 'origin/main' into feat/support-agent-sandbox
2026-02-08 13:27:02 +08:00
kongwenyan
4bd80683a4
refactor: remove unnecessary type: async_workflow_service.py ( #32081 )
2026-02-08 03:26:30 +09:00
yyh
d23a94982d
Merge remote-tracking branch 'origin/main' into feat/support-agent-sandbox
2026-02-08 01:30:21 +08:00
hjlarry
865b221ce6
fix: make sure restart server not get ghost online user
2026-02-07 09:48:07 +08:00
hjlarry
bb9ae66f81
fix: ensure leader online to accept graph change
2026-02-07 09:34:13 +08:00
Jyong
4430a1b3da
fix: batch delete document db session block ( #32062 )
2026-02-06 18:02:14 +08:00
Harry
c61129590d
fix: improve download filename handling in S3 storage and asset service
2026-02-06 16:32:55 +08:00
zyssyz123
2c9430313d
fix: redis for api token ( #31861 )
...
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>
Co-authored-by: hj24 <mambahj24@gmail.com >
2026-02-06 16:25:27 +08:00