创建第一个工作流 🚀

5分钟学会创建和运行你的第一个编钟YAML模板

学习目标

  • • 理解编钟工作流的基本概念
  • • 创建你的第一个YAML模板
  • • 运行工作流并查看结果
  • • 掌握基本的调试技巧
预计完成时间:5-10分钟

基本概念

什么是编钟工作流?

编钟工作流是一个用YAML格式定义的自动化流程,它描述了如何协调多个MCP Server来完成复杂任务。 每个工作流包含以下核心组件:

📝 元数据

工作流的基本信息,如名称、描述、版本等

🔧 变量

可配置的参数,让模板更加灵活

⚡ 步骤

具体的执行任务,调用各种MCP Server

🛡️ 错误处理

异常情况的处理策略和恢复机制

创建你的第一个模板

让我们创建一个简单的"Hello World"工作流,它会获取一个网页内容并保存到本地文件。

步骤1:创建模板文件

在你的项目目录中创建一个新的YAML文件:

touch hello-world.yml

步骤2:编写模板内容

将以下内容复制到 hello-world.yml 文件中:

name: "Hello World 工作流"
description: "我的第一个编钟工作流"
version: "1.0.0"
author: "编钟新手"

# 变量定义
variables:
  target_url: "https://httpbin.org/json"
  output_file: "./hello-world-result.txt"

# 执行步骤
steps:
  - name: "获取网页内容"
    tool: "fetch-mcp"
    params:
      url: "{{variables.target_url}}"
      timeout: 10
    output_var: "web_content"
    
  - name: "保存到文件"
    tool: "file-mcp"
    params:
      action: "write"
      path: "{{variables.output_file}}"
      content: |
        Hello World from ChimeMCP!
        
        获取时间: {{now}}
        网页内容: {{steps.获取网页内容.result}}
        
        🎉 你的第一个工作流运行成功!
    output_var: "save_result"

运行工作流

现在让我们运行刚刚创建的工作流,看看编钟是如何协调MCP Server的。

步骤3:验证模板语法

在运行之前,先验证YAML语法是否正确:

chime validate hello-world.yml

预期输出

✅ YAML 语法检查: 通过
✅ 变量定义检查: 通过  
✅ 步骤依赖检查: 通过
✅ MCP Server 可用性: 通过
🎉 模板验证成功!

步骤4:运行工作流

使用以下命令运行你的第一个工作流:

chime run hello-world.yml

执行过程

🚀 开始执行工作流: Hello World 工作流
📋 加载变量配置...
⚡ [1/2] 执行步骤: 获取网页内容
   └─ 调用 fetch-mcp: https://httpbin.org/json
   └─ ✅ 成功获取 245 字节数据
⚡ [2/2] 执行步骤: 保存到文件  
   └─ 调用 file-mcp: ./hello-world-result.txt
   └─ ✅ 文件保存成功
🎉 工作流执行完成! 耗时: 1.2秒

步骤5:查看结果

检查生成的文件内容:

cat hello-world-result.txt

调试技巧

当工作流出现问题时,这些调试技巧能帮你快速定位和解决问题。

常见问题和解决方案

1. YAML语法错误

错误信息:YAML parsing error

解决方案:
  • • 检查缩进是否使用空格(不要用Tab)
  • • 确保冒号后有空格
  • • 字符串值用引号包围

2. MCP Server 不可用

错误信息:MCP Server 'fetch-mcp' not found

解决方案:
  • • 运行 chime doctor 检查MCP Server状态
  • • 确保所需的MCP Server已安装和配置
  • • 检查网络连接

3. 变量引用错误

错误信息:Variable 'target_url' not defined

解决方案:
  • • 检查变量名拼写
  • • 确保变量在 variables 部分定义
  • • 使用正确的模板语法 {{variables.name}}

详细日志模式

使用详细模式获取更多调试信息:

chime run hello-world.yml --verbose

下一步

🎉 恭喜!你已经成功创建并运行了第一个编钟工作流。现在你可以: