返回知识库知识库

Dify v1.16.0 正式发布:Dify Agent 进入公测阶段

Dify v1.16.0 版本正式发布,带来了全新的 Dify Agent 功能(Beta),这是一个运行在 Linux 沙箱环境中的代理体验。本次更新包含 Agent 构建器、AI 辅助构建、Workflow 集成等重大功能,同时优化…

Dify v1.16.0 版本正式发布,带来了全新的 Dify Agent 功能(Beta),这是一个运行在 Linux 沙箱环境中的代理体验。本次更新包含 Agent 构建器、AI 辅助构建、Workflow 集成等重大功能,同时优化了 OpenAI GPT-5.6 兼容性,增强了安全防护,修复了大量 Bug。升级需要运行 9 个数据库迁移,新增 28 个环境变量,Docker Compose 配置也有重大更新。

🎉 重大更新:Dify Agent (Beta)

Dify Agent 是一个全新的代理体验,运行在 Linux 沙箱环境中。

主要特性:

  • Agent 构建器

    通过 UI 构建 Dify Agents,设置基础提示词,上传技能和文件,连接工具和知识库

  • AI 辅助构建

    提供一个帮助构建 Dify Agents 的代理,可以通过对话配置 Linux 沙箱环境、安装所需包、创建新的技能和文件

  • Workflow 集成

    可在 Dify Workflow 中使用现有的 Dify Agent 或临时创建内联 Agent

  • 新的 Web 应用体验

    构建的 Dify Agent 可以发布并用作 Web 应用

⚠️ 重要提示:应仅向可信的、非恶意用户提供 Dify Agent 服务

📖 文档:docs.dify.ai/en/self-host/use-dify/build/new-agent/overview

⚠️ 需要注意的操作

OpenAI GPT-5.6 兼容性通知

  • OpenAI 插件之前默认使用 Chat Completions API,该 API 已被 OpenAI 弃用
  • 新发布的 GPT-5.6 系列在使用 Chat Completions 时有许多参数组合限制
  • 新配置的默认 API 类型已从 Chat Completions 更改为 Responses
  • 如果您之前配置了自定义 OpenAI API 密钥,请检查 API 类型设置,特别是在使用 GPT-5.6 或更高版本模型时,建议切换到 Responses

🆕 新功能

Agent App (公开测试版)

  • Agent App 进入公开测试,默认为所有用户启用
  • 内置沙箱用于代码执行和 shell 命令
  • 技能系统让代理可以调用工具和 API
  • 代理名册用于管理和在工作空间中重用代理
  • 支持从工作流代理节点引用新代理

更智能的 AI Workflow 生成

  • ⌘K → /create 和 /refine AI 工作流生成器得到端到端增强
  • 移除了低价值的"理想输出"字段
  • 静态示例芯片替换为基于工作空间上下文的 AI 生成建议
  • 节点配置生成现在并行化以获得更快的结果
  • 可配置超时(WORKFLOW_GENERATION_TIMEOUT_MS,默认 180 秒)

MCP 协议升级

  • workflow-as-MCP 服务器现在支持 MCP 协议 2025-06-18,包括版本协商和结构化工具输出
  • 保持与旧客户端的向后兼容
  • MCPClient 连接现在可以使用占位符在运行时注入动态 HTTP 请求头(例如 {{request.headers.X-Custom-Auth}}

Web 应用自定义

  • 应用所有者现在可以为 Chatbot、Agent 和 Chatflow Web 应用自定义聊天输入占位符文本(最多 64 个字符)
  • 自定义 UI 改进,命名更清晰("自定义前端" / "品牌")
  • 应用描述现在显示在聊天和文本生成应用屏幕上,带有可折叠视图

Workflow 可靠性和操作

  • Workflow 运行归档现在可以导出
  • Celery 温和关闭期间正确中止活动运行以防止孤立任务
  • Redis 连接更具弹性,支持 TCP keepalive 和扩展的重试覆盖
  • 模型提供商现在接收 app_id 用于提供商端成本归因
  • OAuth 和 SSO 登录流程更可靠地保留重定向 URL

🐛 Bug 修复

Workflow 和 Agent

  • 修复工作流草稿导入丢失引用、失败后节点结算、重试详细信息可见性、HITL 恢复状态恢复的多个问题
  • 修复 Unicode 分隔符的 SSE 流损坏、代理最终答案在流完成后清除、对话标题被空值覆盖
  • 修复工作流归档重试加固、多工作者协作支持、聊天树乱序父节点
  • 修复知识检索失败未向用户显示、内置模板中的 End 输出变量名称冲突

身份验证和访问控制

  • 修复登录后和身份验证重定向流程中的开放重定向漏洞
  • 修复登录重定向不停留在当前部署、身份验证前缀重复、更改电子邮件不工作
  • 修复编辑器权限问题:编辑器现在可以查看日志,不再查询计费订阅,不能再管理成员
  • 修复跟踪配置更改不需要编辑访问权限、推荐应用的试用应用访问加固

模型和插件

  • 修复删除时未清除自定义模型缓存、模型插件调试失败、Xinference 凭证上下文处理
  • 修复后续模型参数中无法禁用最大令牌参数
  • 修复插件提供商缓存风暴、市场安装回调、插件权限设置

Web 和 UI

  • 修复从 Learn Dify 创建应用、节点搜索字段输入、工作空间头像一致性、导航配置文件显示
  • 修复 Streamdown 全屏表格操作、市场页面标题抖动、安装对话框可访问性
  • 修复聊天附件滚动出视图、HITL 输入保存按钮可见性、应用卡元数据溢出
  • 修复监控图表零值显示、成员邀请状态处理、深色模式背景、表单字段名称中的 Unicode 字符
  • 修复 markdown 文件预览链接下载、Notion 同步空状态、CSP 下的博客 UTM 归因

其他

  • 修复批量文档删除中的无限循环、无效的 UTF-8 缓存有效负载、被吞没的文档索引错误
  • 修复 PostgreSQL 18 原生 uuidv7() 支持和 ADB-PG 7.0 兼容性
  • 修复 CAN_REPLACE_LOGO 默认为 true、execute_code 中不支持的语言错误、CLI --insecure 标志不跳过 TLS 验证

🚀 改进

性能

  • 消除高级聊天工作流运行列表和 TokenBufferMemory 消息文件加载中的 N+1 查询
  • 通过延迟加载的 Vite 插件和控制台合约分片加快前端启动
  • 通过缓存设置状态、使用 zstd 压缩 Redis 中的大型插件模型对象、通过直接外键检索已发布的工作流来降低数据库负载

架构和代码质量

  • 将所有控制台 API 端点迁移到使用 BaseModel 生成的 OpenAPI 合约
  • 在后端路径中传播显式数据库会话以保持一致性和可测试性
  • 用 Jotai atoms 替换前端的旧应用上下文提供者
  • 升级到 TypeScript 7 和 Vite+ 工具链,强制执行严格的 ESLint 规则,禁止在控制器中使用新的直接 SQLAlchemy

🔒 安全增强

  • SQL 注入

    :关闭 SQL 注入漏洞,通过元数据键验证增强 SQL 查询安全性

  • SSRF

    :修复通过 API 工具模式获取中的原始 httpx.get 绕过 SSRF

  • 开放重定向

    :防止登录后和身份验证重定向流程中的开放重定向

  • 沙箱强制

    :Chatflow API 现在检查 workflow_id 和沙箱计划

  • Landlock 保护

    :使用 Landlock 保护 Agent HOME 目录;降级到 v1 以获得更广泛的内核兼容性

  • CVE 依赖升级

    :httplib2、setuptools、wandb;python-engineio、python-socketio;fickling、pillow、click

🔧 环境变量更改

新增变量(28 个)

主要包括:

  • AGENT_BACKEND_BASE_URL

    :Agent 后端服务基础 URL

  • DIFY_AGENT_*

    系列:Dify Agent 相关配置

  • DIFY_AGENT_SERVER_SECRET_KEY

    :JWE 加密密钥(⚠️ 生产环境必须替换)

  • SHELLCTL_*

    系列:shellctl 相关配置

  • NEW_USER_DEFAULT_PLUGIN_IDS

    :新用户默认插件

  • WORKFLOW_GENERATION_TIMEOUT_MS

    :AI 工作流生成超时

  • REDIS_KEEPALIVE*

    系列:Redis TCP keepalive 配置

  • NEXT_PUBLIC_ENABLE_AGENT_V2

    :启用 Agent App v2(默认 true)

删除变量(1 个)

  • ENABLE_AGENT_V2

    :被 NEXT_PUBLIC_ENABLE_AGENT_V2 替代

修改变量(1 个)

  • NEXT_PUBLIC_ENABLE_FEATURE_PREVIEW

    :从 false 改为 true

Docker Compose 更改

  • 新增服务:agent_backend 和 local_sandbox

  • api

    和 worker 服务现在依赖 agent_backend

💾 数据库迁移

此版本包含 9 个新数据库迁移,升级后需要运行 flask db upgrade

📋 升级指南

重要提示

  1. 包含 9 个新数据库迁移

    • 升级时必须运行数据库迁移
  2. 28 个新环境变量,1 个删除,1 个修改

    • 需要更新 .env 文件
  3. Docker Compose 配置重大更改

    • 添加了两个新服务(agent_backendlocal_sandbox
  4. DIFY_AGENT_SERVER_SECRET_KEY

    附带开发默认值,生产环境必须替换:python -c 'import secrets; print(secrets.token_urlsafe(32))'

  5. ENABLE_AGENT_V2

    已重命名为 NEXT_PUBLIC_ENABLE_AGENT_V2,默认值为 true

  6. OpenAI GPT-5.6 用户

    :验证 API 类型设置为 Responses

Docker Compose 部署步骤

# 1. 备份  
cd docker  
cp docker-compose.yaml docker-compose.yaml.$(date +%s).bak  
cp .env .env.$(date +%s).bak 2>/dev/null || true  
  
# 2. 获取最新代码  
git fetch --tags  
git checkout 1.16.0  
  
# 3. 停止服务  
docker compose down  
  
# 4. 备份数据  
tar -cvf volumes-$(date +%s).tgz volumes  
  
# 5. 更新 .env 文件(特别是 DIFY_AGENT_SERVER_SECRET_KEY)  
  
# 6. 升级服务  
docker compose up -d

源码部署步骤

# 1. 停止服务  
  
# 2. 获取最新代码  
git fetch --tags  
git checkout 1.16.0  
  
# 3. 更新依赖  
cd api  
uv sync  
  
# 4. 运行迁移  
uv run flask db upgrade  
  
# 5. 配置 Agent 后端服务  
  
# 6. 重启服务

[登录查看剩余 70% 内容](javascript:void (0);)