dify version history
10 releases tracked, newest first.
1.15.0
Jun 25, 2026# Dify 1.15.0 Release Note
## What's Changed
### UX & UI Enhancements
<img width="1920" height="1044" alt="录屏2026-06-25 21 12 33" src="https://github.com/user-attachments/assets/c3ac7394-2ccf-4a66-873a-b7224a16897a" />
- **Redesigned landing / onboarding** for an easier first-run experience (#37433, #37844, #37800)
- **Faster navigation** — improved "go to anything" palette and autofocused search inputs (#32130, #37175)
- **Safer deletes** — one-click confirmation before removing an app (#37263)
- **Cleaner workflow editor** with collapsible panels (#37276)
- **Clearer notifications** — consistent toasts that show long errors in full (#37382, #37581)
- **More accessible** — plugin permission hints, restored contact-us menu, skip-nav link, and keyboard focus polish (#37310, #37774, #37644)
### New Features
**difyctl — drive Dify from the command line** ([Docs](https://docs.dify.ai/en/cli/overview))
- difyctl is a command-line client for Dify: you can now run apps and workflows straight from your terminal, so personal agents, scripts, and CI pipelines can invoke Dify workflows without opening the web UI (#37036)
- Install it on any platform (macOS, Linux, Win
1 download
1.14.2
May 19, 2026## 🚀 What's New in v1.14.2?
v1.14.2 is a patch release focused on security hardening, workflow and knowledge reliability, observability fixes, agent groundwork, and deployment/runtime tuning after v1.14.1.
### 🔐 Security and administration
- **Tenant-scoped sensitive endpoints** — strengthened tenant isolation for app trace-config endpoints and FilePreview text extraction. Thanks @xr843 in [#35793](https://github.com/langgenius/dify/pull/35793) and [#35797](https://github.com/langgenius/dify/pull/35797).
- **Tool credential safety** — restricted default builtin tool credential updates to workspace admins and owners, and cleaned stale tenant tool credentials during `reset-encrypt-key-pair`. Thanks @NeatGuyCoding and @xr843 in [#36264](https://github.com/langgenius/dify/pull/36264) and [#35843](https://github.com/langgenius/dify/pull/35843).
### 🧩 Workflow, HITL, and app runtime
- **Workflow execution reliability** — restored tracing after HITL workflow resume, improved workflow run callback tracking, reduced message-update database roundtrips, fixed memory fetches outside Flask context, and closed base64 file lookup sessions correctly. Thanks @Blackoutta, @CodingO
0 downloads
1.14.1
May 12, 2026## 🚀 What's New in v1.14.1?
v1.14.1 is a patch release focused on security hardening, workflow and knowledge-base stability, deployment cleanup, and continued UI platform migration after v1.14.0.
### 🔐 Security
- **Self-hosted `SECRET_KEY` hardening** — Docker deployments no longer rely on a public default key. When `SECRET_KEY` is left empty, the API generates and persists a runtime key through the configured storage backend, while explicitly configured keys continue to work as before. Thanks @laipz8200 in [#36049](https://github.com/langgenius/dify/pull/36049).
- **Internal metrics endpoint protection** — `/threads` and `/db-pool-stat` are hardened to avoid unauthenticated exposure of internal runtime and database-pool details. Thanks @orbisai0security in [#35665](https://github.com/langgenius/dify/pull/35665).
- **Account and tool isolation** — fixed an IDOR issue in `GET /account/avatar` and scoped builtin-tool default-credential cleanup to the current tenant. Thanks @NeatGuyCoding and @GareArc in [#35771](https://github.com/langgenius/dify/pull/35771) and [#35887](https://github.com/langgenius/dify/pull/35887).
- **Dependency security** — upgraded LiteLLM for CVE
0 downloads
1.14.0
Apr 29, 2026## 🚀 What's New in v1.14.0?
### Collaboration
<img width="2632" height="1190" alt="img_v3_02117_67a67218-1ae5-4d68-a45b-3ada592f87fg" src="https://github.com/user-attachments/assets/1d4a3660-8a6a-4b29-9766-4d5b5fd9a51b" />
Collaboration allows workspace members to edit the same workflow together, with synced graph updates, online presence, and shared visibility into who is working where.
On self-hosted deployments, collaboration is turned off by default. Enable it by setting:
```
ENABLE_COLLABORATION_MODE = true
SERVER_WORKER_CLASS = geventwebsocket.gunicorn.workers.GeventWebSocketWorker
NEXT_PUBLIC_SOCKET_URL = your deployment’s WebSocket URL (e.g., wss://dify.example.com)
```
For more details, see [Full Documentation](https://docs.dify.ai/en/use-dify/build/workflow-collaboration)
### Human-in-the-loop (HITL)
- **Service API for HITL** — programmatic support for human-in-the-loop flows alongside existing console behavior.
### MCP and plugins
- **MCP tool metadata** — refresh after updates so the UI stays in sync.
- **MCP server URL** — fix double `/v1` that could break OAuth and authorization (404).
- **MCP OAuth discovery** — handle malformed JS
0 downloads
1.13.3
Mar 27, 2026## 🚀 What's New in v1.13.3?
Our latest patch release, v1.13.3, focuses on stability and correctness across workflow execution, streaming, and knowledge retrieval. Here's a quick look at the most important updates:
### 🎬 New Features
- **Workflow Configuration**: Added variable-reference support for model parameters in LLM, Question Classifier, and Variable Extractor nodes by @scdeng in #33082.
### 🛠️ Bug Fixes
- **Streaming Reliability**: Fixed `StreamsBroadcastChannel` replay and concurrency issues to keep frontend/backend event delivery stable by @QuantumGhost in #34030 and #34061.
- **Workflow Editor Behavior**: Fixed pasted nodes retaining Loop/Iteration metadata and prevented `HumanInput` nodes from being pasted into invalid containers by @majiayu000 and @hjlarry in #29983 and #34077.
- **Runtime Execution**: Restored prompt message transformation logic and corrected `max_retries=0` handling for executor-driven HTTP Request execution by @QuantumGhost, @fatelei, and @kurokobo in #33666, #33619, and #33688.
- **Knowledge Retrieval**: Preserved citation metadata in web responses, fixed crashes when dataset icon metadata is missing, corrected hit-count query filteri
0 downloads
1.13.2
Mar 18, 2026This patch release fixes several critical regressions and stability issues introduced in v1.13.1, including:
- a severe regression in prompt message transformation that caused multiple LLM-plugin invocation failures across
LLM-related nodes, including LLM and Question Classifier.
- Knowledge Retrieval node execution failures caused by incompatible enum values
- improper Weaviate client cleanup
---
## Upgrade Guide
> [!IMPORTANT]
> If you use custom `CELERY_QUEUES`, make sure `workflow_based_app_execution` is included.
> If `ENABLE_API_TOKEN_LAST_USED_UPDATE_TASK=true`, also include `api_token`.
>
> For background and details, see **⚠️ Important Upgrade Note** and **🔧 Operational Note** above.
### Docker Compose Deployments
1. Back up your customized docker-compose YAML file (optional)
```bash
cd docker
cp docker-compose.yaml docker-compose.yaml.$(date +%s).bak
```
2. Get the latest code from the main branch
```bash
git checkout main
git pull origin main
```
3. Stop the service. Please execute in the docker directory
```bash
docker compose down
```
4. Back up data
```bash
tar -cvf vo
0 downloads
1.13.1
Mar 17, 2026## 🚀 Major Functional Changes
### Data platform and dataset operations
- Added **Hologres** as a supported backend option for both vector retrieval and full-text search.
- Added Service API endpoints for dataset document downloads:
- Batch ZIP download for selected documents.
- Signed URL download for single-document original files.
### Workflow and chat experience improvements
- **Breaking change:** HITL email content now uses markdown rendering before delivery.
Existing email templates that relied on raw/plain behavior may render differently after upgrade.
- Draft variables are now user-scoped instead of app-scoped. Historical draft variables will not be available after upgrading.
- Added edge context menu support in workflow canvas, including direct edge deletion.
- Preserved existing connections when changing node types in workflow editing.
- Added configurable send-key behavior (`Enter` vs `Shift+Enter`) for embedded chat input.
- Added file payloads in message-end stream responses.
- Removed GPT-4-specific hardcoded behavior from default model selection logic.
- Added a new `export-app-messages` CLI command to export application messages and rel
0 downloads
1.14.0-rc1
Pre-releaseFeb 14, 2026## 💥 New Agent x Skills 🥳
`1.14.0-rc1` brings a new agent-building experience: sandboxed runtime, Skill Editor, collaboration, and dynamic variable assembly. preview docs: <https://docs.bash-is-all-you-need.dify.dev/>
## 🌟 Try the Experience Now
Build with the new Agent + Skill workflow in minutes.
### 👉 **Experience Now: [Live Demo](https://skills.bash-is-all-you-need.dify.dev/)**
Not sure where to begin?
Use our ready-made operational templates!
### 🧩 Start from Templates (Recommended) 👉 [Templates](https://marketplace.dify.ai/templates/operations)
## ✨ Highlights
- **New Agent runtime** with sandboxed execution and Agent Mode. ([Agent docs](https://docs.bash-is-all-you-need.dify.dev/en/use-dify/nodes/agent) · [Runtime docs](https://docs.bash-is-all-you-need.dify.dev/en/use-dify/build/runtime))
- **Skill Editor** helps you build reusable SOP blocks and call tools inline with `@` (e.g., `@send_email`). ([File system docs](https://docs.bash-is-all-you-need.dify.dev/en/use-dify/build/file-system))
- **Command + Upload File to Sandbox** make runtime operations practical and controllable. ([Command docs](https://docs.bash-is-all-you-need.dify.dev/e
0 downloads
1.13.0
Feb 11, 2026## 🚀 New Features
### Human-in-the-Loop (HITL)
We are introducing the **Human Input** node, a major update that transforms how AI and humans
collaborate within Dify workflows.
**Background**
Previously, workflows were binary: either fully automated or fully manual. This created a "trust gap" in
high-stakes scenarios where AI speed is needed but human judgment is essential. With HITL, we are making h
uman oversight a native part of the workflow architecture, allowing you to embed
review steps directly into the execution graph.
**Key Capabilities**
- **Native Workflow Pausing:** Insert a "Human Input" node to suspend workflow execution at critical decision points.
- **Review & Edit:** The node generates a UI where humans can review AI outputs and modify variables (e.g., editing a draft or correcting data) before the process continues.
- **Action-Based Routing:** Configure custom buttons (like "Approve," "Reject," or "Escalate") that determine
the subsequent path of the workflow.
- **Flexible Delivery Methods:** Human input forms can be delivered via **Webapp** or **Email**. In cloud environments, Email delivery availability may depend on plan/feature
0 downloads
1.12.1
Feb 4, 2026## What's Changed
* fix(docker): persist IRIS data across container recreation using Durable %SYS by @TomoOkuyama in https://github.com/langgenius/dify/pull/31899
* fix(docker): improve IRIS data persistence with proper Durable %SYS by @TomoOkuyama in https://github.com/langgenius/dify/pull/31901
* fix: base url in client by @hyoban in https://github.com/langgenius/dify/pull/31902
* fix: auto summary env by @zxhlyh in https://github.com/langgenius/dify/pull/31930
* fix: fix delete_draft_variables_batch cycle forever by @fatelei in https://github.com/langgenius/dify/pull/31934
* chore: bump version in docker-compose and package manager to 1.12.1 by @QuantumGhost in https://github.com/langgenius/dify/pull/31947
0 downloads