Skip to main content
migrate 支持两种迁移方式:
  • 对 LangChain、LangGraph、ADK、Strands 和 Bedrock AgentCore 项目执行本地结构化迁移,生成 AgentKit 应用文件。
  • 对 Dify Workflow、Dify Chatflow 或其他类型的智能体项目启动远程迁移任务,并在任务结束后下载生成的 VeADK 项目。

Dify 迁移范围

使用 --framework dify create 时,输入目录必须是已存在的目录,并应包含至少一个 Dify DSL YAML 文档。迁移流程会递归扫描目录中的 .yml 与 .yaml 文件,只有内容符合 Dify DSL 结构时才按 Dify 迁移处理:根对象为 kind: app,app 中包含非空 mode,并且 workflow.graph 同时包含 nodes 与 edges 列表。文件名和目录层级不参与判定;普通 YAML 即使命名为 workflow.yml 也不会被当作 Dify DSL。 在远程迁移开始前,CLI 会读取匹配到的 Dify DSL,向迁移过程提供只读上下文:DSL 版本、应用模式、节点与边、变量、App Features、依赖、诊断信息以及被截断内容的位置。凭证字段和常见认证文本会被脱敏。若目录中存在多个有效 Dify DSL,迁移会选择路径按字典序排列后的第一个文件,并在诊断信息中记录候选文件。节点级补充配置也按内容关联主 DSL 中的节点;只有能通过节点 ID、节点类型或明确覆盖字段建立对应关系的 YAML,才会作为节点补充配置。 Dify workflow 与 advanced-chat 都属于迁移范围。对于 Chatflow,迁移会额外关注会话变量、sys.query、sys.files、sys.conversation_id、LLM 节点记忆窗口、Answer 节点顺序、文件上传、语音、引用溯源和内容审核等上下文。
这些上下文用于提高迁移时对源图的理解,不代表所有 Dify 节点都会一比一映射为同名 AgentKit 能力。迁移结果仍需要按生成报告和源项目行为逐项核对。

migrate

本地结构化迁移会分析入口对象并在源项目中生成服务入口、部署配置和迁移计划,同时更新项目依赖。命令会输出新建、更新或覆盖的文件;使用 --dry-run 可以只查看计划。
该命令会修改源项目。--force 会覆盖已存在的生成文件;执行前请提交或备份现有改动,并先使用 --dry-run 核对计划。

migrate create

为 Dify 导出目录或其他智能体项目创建远程迁移任务。命令会上传源目录、创建远程沙箱并返回任务 ID;任务在后台继续执行。相同工作区、源目录和迁移配置已有进行中的任务时,命令会复用该任务。
该操作会把源目录上传到远程沙箱,并可能创建产生费用的云资源。请先移除密钥、用户数据和其他不应上传的文件。生成结果必须写入源目录的同级专用目录,不能覆盖源目录或写入其内部。

migrate list

列出指定工作区本地保存的 Dify 或 Any 迁移任务元数据。该操作不会查询其他工作区,也不会创建云资源。

migrate status

查询远程任务状态。任务成功、部分成功或失败后,该命令会把结果或失败报告下载到创建任务时确定的输出目录;再次执行时会复用本地终态结果。
--overwrite 会替换已经下载到结果目录中的文件。仅在确认不需要保留本地修改时使用。
最后修改于 2026年9月19日