26ace0da95
Merge branch 'main' into feat/support-agent-sandbox
2026-02-11 17:50:35 +08:00
b4fec9b7aa
fix: hide invite button if current user is not workspace manager ( #31744 )
2026-02-11 16:31:12 +08:00
439d931e9f
fix: support tool call badge & disable tools in llm when model not support tool call
2026-02-11 10:46:55 +08:00
db0c527ce8
Merge remote-tracking branch 'origin/main' into feat/support-agent-sandbox
2026-02-09 18:43:04 +08:00
3c0b50ee77
feat(sandbox): add SSH agentbox provider for middleware and docker deployments
2026-02-09 16:38:05 +08:00
f6b036b121
Merge remote-tracking branch 'origin/main' into feat/support-agent-sandbox
2026-02-09 11:35:42 +08:00
bdf6739b86
fix: search model provider list ( #32106 )
2026-02-09 10:35:40 +08:00
e9bff0b7b7
feat(sandbox): use official brand assets for provider icons
...
Replace placeholder sandbox provider icons with official brand assets:
- Docker: white whale SVG on brand blue (#1D63ED) background
- E2B: official PNG logo via CSS module
- Local: Dify-branded SVG icon (SandboxLocal)
2026-02-08 02:04:20 +08:00
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
e2913d9ee1
Revert "refactor!: replace Zustand global store with TanStack Query for systemFeatures"
...
This reverts commit 806ece9a67 .
2026-02-01 19:06:45 +08:00
806ece9a67
refactor!: replace Zustand global store with TanStack Query for systemFeatures
...
Follow-up to SSR prefetch migration (2833965 ). Eliminates the Zustand
middleman that was syncing TanStack Query data into a separate store.
- Remove useGlobalPublicStore Zustand store entirely
- Create hooks/use-global-public.ts with useSystemFeatures,
useSystemFeaturesQuery, useIsSystemFeaturesPending, useSetupStatusQuery
- Migrate all 93 consumers to import from @/hooks/use-global-public
- Simplify global-public-context.tsx to a thin provider component
- Update 18 test files to mock the new hook interface
- Fix SetupStatusResponse.setup_at type from Date to string (JSON)
- Fix setup-status.spec.ts mock target to match consoleClient
BREAKING CHANGE: useGlobalPublicStore is removed. Use useSystemFeatures()
from @/hooks/use-global-public instead.
2026-02-01 19:06:08 +08:00
5d41f67fe1
Merge remote-tracking branch 'origin/main' into feat/support-agent-sandbox
...
# Conflicts:
# api/core/workflow/graph_events/__init__.py
2026-01-27 16:22:02 +08:00
b66bd5f5a8
feat: enhance quota panel with installed providers mapping ( #31546 )
...
Co-authored-by: CodingOnStar <hanxujiang@dify.ai >
Co-authored-by: CodingOnStar <hanxujiang@dify.com >
2026-01-27 15:43:37 +08:00
2e954388f5
merge
2026-01-26 16:57:45 +08:00
8724ba04aa
fix: fix Cannot read properties of null (reading 'credential_form_sch… ( #31117 )
2026-01-26 15:52:53 +08:00
dd988d42c2
feat: enhance quota panel to support additional model providers and integrate trial models feature ( #31443 )
...
Co-authored-by: CodingOnStar <hanxujiang@dify.ai >
2026-01-26 14:04:12 +08:00
677775079f
fix: use IS_CLOUD_EDITION for 'Managed by SaaS' tag visibility
...
Change from !IS_CE_EDITION to IS_CLOUD_EDITION to ensure the tag only
shows in cloud edition, not in enterprise or other self-hosted variants.
2026-01-26 11:42:55 +08:00
4f75d7f8e2
fix: hide 'Managed by SaaS' tag in CE edition for sandbox providers
...
The tag should only display in SaaS version since CE edition also has
system config from migrations but the label is misleading for self-hosted.
2026-01-26 11:33:40 +08:00
4c596aaac2
Merge branch 'feat/collaboration2' into feat/support-agent-sandbox
2026-01-25 00:00:03 +08:00
edb4457684
Merge remote-tracking branch 'myori/main' into feat/collaboration2
2026-01-24 15:22:07 +08:00
f7f4d066dc
fix: following docs link fix ( #31390 )
...
Co-authored-by: Riskey <36894937+RiskeyL@users.noreply.github.com >
2026-01-22 16:13:10 +08:00
3de33f7a4e
fix: check and update doc links ( #30849 )
...
Co-authored-by: Riskey <36894937+RiskeyL@users.noreply.github.com >
2026-01-22 16:13:09 +08:00
036f6ef5ab
fix: following docs link fix ( #31390 )
...
Co-authored-by: Riskey <36894937+RiskeyL@users.noreply.github.com >
2026-01-22 15:02:37 +08:00
061feebd87
fix: check and update doc links ( #30849 )
...
Co-authored-by: Riskey <36894937+RiskeyL@users.noreply.github.com >
2026-01-21 16:31:48 +08:00
468d84faba
Merge remote-tracking branch 'origin/main' into feat/support-agent-sandbox
...
# Conflicts:
# web/app/components/header/account-setting/model-provider-page/model-selector/popup-item.tsx
# web/package.json
2026-01-21 10:52:43 +08:00
95f92e07e4
chore(web): comment out unused provider entries in quota panel ( #31315 )
...
Co-authored-by: CodingOnStar <hanxujiang@dify.ai >
2026-01-21 10:26:14 +08:00
8056768106
fix: enforce no-leaked-conditional-rendering as error and fix violations ( #31262 )
...
Co-authored-by: Stephen Zhou <38493346+hyoban@users.noreply.github.com >
2026-01-20 23:08:59 +08:00
13d6923c11
Merge branch 'feat/llm-support-tools' into feat/support-agent-sandbox
2026-01-20 10:27:42 +08:00
8f4a4214a1
feat(sandbox): preserve user config when switching to system default
...
Update frontend to use new backend API:
- save_config now accepts optional 'activate' parameter
- activate endpoint now requires 'type' parameter ('system' | 'user')
When switching to managed mode, call activate with type='system' instead
of deleting user config, so custom configurations are preserved for
future use.
2026-01-19 22:27:06 +08:00
cb8fc9cf2d
Merge remote-tracking branch 'myori/main' into feat/collaboration2
2026-01-19 21:15:53 +08:00
3bb9625ced
fix(sandbox): prevent revoking active provider config
...
Hide revoke button for active providers to avoid "no sandbox provider"
error when user deletes the only available configuration.
2026-01-19 20:09:14 +08:00
5aa4088051
fix(sandbox): use deleteConfig when switching to managed mode
...
Delete user config instead of saving empty config when switching to
managed mode, allowing the system to fall back to system defaults.
2026-01-19 19:51:47 +08:00
5496fc014c
feat(sandbox): add connect mode selection for E2B provider
...
Add ability to choose between "Managed by Dify" (using system config)
and "Bring Your Own API Key" modes when configuring E2B sandbox provider.
This allows Cloud users to use Dify's pre-configured credentials or
their own E2B account for more control over resources and billing.
2026-01-19 18:35:53 +08:00
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
269c85d5a3
feat: ee workspace permission control ( #30841 )
2026-01-19 11:06:04 +08:00
ebeee92e51
fix(sandbox-provider): align frontend types with backend API after refactor
...
Remove label, description, and icon fields from SandboxProvider type
as they are no longer returned by the backend API. Use i18n translations
to display provider labels instead of relying on API response data.
2026-01-19 10:50:57 +08:00
fc291e4ca2
Merge remote-tracking branch 'myori/main' into feat/collaboration2
2026-01-17 10:22:41 +08:00
0bd17c6d0f
refactor(sandbox): sandbox provider system default configuration
2026-01-16 18:22:44 +08:00
384b99435b
Merge remote-tracking branch 'origin/main' into feat/support-agent-sandbox
...
# Conflicts:
# api/.env.example
# api/uv.lock
2026-01-14 21:14:36 +08:00
11f1782df0
fix: correct API Extension documentation link ( #30962 )
2026-01-14 21:21:15 +09:00
7ce144f493
Merge remote-tracking branch 'origin/main' into feat/support-agent-sandbox
2026-01-14 13:40:39 +08:00
14b2e5bd0d
refactor(web): MCP tool availability to context-based version gating ( #30955 )
2026-01-14 13:40:16 +08:00
2279b605c6
refactor: import SandboxProvider type from @/types and remove retry:0
...
Move type imports to @/types/sandbox-provider instead of re-exporting
from service file. Remove unnecessary retry:0 options to use React
Query's default retry behavior.
2026-01-14 10:10:04 +08:00
7c029ce808
Merge remote-tracking branch 'origin/main' into feat/support-agent-sandbox
...
# Conflicts:
# api/services/workflow_service.py
2026-01-14 09:54:07 +08:00
91da784f84
refactor: init orpc contract ( #30885 )
...
Co-authored-by: yyh <yuanyouhuilyz@gmail.com >
2026-01-13 23:38:28 +09:00
c6ba51127f
fix(sandbox-provider): allow admin role to manage sandbox providers
...
Change permission check from isCurrentWorkspaceOwner to
isCurrentWorkspaceManager so both owner and admin roles can
configure sandbox providers.
2026-01-13 17:17:36 +08:00
5675a44ffd
fix(sandbox-provider): use Loading component and add daytona doc link
...
- Replace hardcoded "Loading..." text with Loading component
- Add daytona documentation link to PROVIDER_DOC_LINKS
2026-01-13 16:37:58 +08:00
48295e5161
refactor(sandbox-provider): extract shared constants and remove redundant cache invalidation
...
- Extract PROVIDER_ICONS and PROVIDER_DESCRIPTION_KEYS to constants.ts
- Create shared ProviderIcon component with size and withBorder props
- Remove manual invalidateList() calls from config-modal and switch-modal
(mutations already invalidate cache in onSuccess)
- Remove unused useInvalidSandboxProviderList hook
2026-01-13 16:18:08 +08:00
ffc39b0235
refactor: rename ACCOUNT_SETTING_TAB.PROVIDER to MODEL_PROVIDER
...
Rename the constant for clarity and consistency with the new
sandbox-provider tab naming convention. Update all references
across the codebase to use the new constant name.
2026-01-13 15:07:04 +08:00
f72f58dbc4
fix: loading state
2026-01-13 14:38:19 +08:00