OpenClaw入门指南:5分钟搭建模块化AI工作流,支持LLM路由与工具复用

OpenClaw 入门:5分钟跑通你的第一个模块化AI工作流
你写过用 ChatGPT 调天气 API 的脚本,也写过用 Claude 总结会议纪要的脚本——但它们彼此独立,逻辑重复,换模型就得改三处代码。想复用 Prompt、工具、状态?想让不同任务自动选最合适的模型(比如简单问答用 Qwen3,复杂推理切 Claude-3.5)?传统脚本做不到。
OpenClaw 就是为这事造的:它不帮你写 AI,而是帮你“组装 AI”。像搭乐高一样,把 LLM、工具、状态、路由规则拼成可复用的模块。核心就两点:
- 消息路由:一条请求进来,自动决定“该谁处理”(比如带
@weather标签走天气插件,含summarize关键词走摘要流) - 插件化扩展:换模型?只改 1 行配置;加新工具?写个 Python 函数注册进去;存用户对话历史?用内置状态管理器,不用自己搞 Redis
下面带你本地跑通一个真实 Demo:HTTP 请求触发 → 自动路由 → 用 Ollama 本地模型生成文案 + 调用自定义时间工具 → 返回结构化结果。
步骤 1:一键启动 OpenClaw(Docker)
# 拉取官方镜像(已预装 Ollama 和基础插件)
docker run -d \
--name openclaw \
-p 8000:8000 \
-v $(pwd)/config:/app/config \
-v $(pwd)/plugins:/app/plugins \
--gpus all \
ghcr.io/openclaw/openclaw:latest✅ 这步关键在哪?
OpenClaw 官方镜像已集成 Ollama(不用单独装)、内置 HTTP 服务、热重载机制。-v 挂载目录是为了后续放你自己的插件和配置——不是必须,但留着方便下一步扩展。
步骤 2:写一个超简插件(获取当前时间)
在 plugins/time_tool.py 中创建:
from openclaw import Tool
class TimeTool(Tool):
name = "get_current_time"
description = "Returns current time in ISO format"
def execute(self, **kwargs):
from datetime import datetime
return {"time": datetime.now().isoformat()}✅ 为什么叫“插件”?
它被 OpenClaw 自动发现(只要放在 plugins/ 目录下),无需修改框架源码。execute() 返回字典,会被自动注入到 LLM 上下文里——你后面写 Prompt 时直接写 {time} 就能用。
步骤 3:配置路由规则(让不同请求走不同流程)
新建 config/routing.yaml:
routes:
- pattern: ".*time.*" # 匹配含"time"的请求
workflow: "time_flow"
- pattern: ".*write.*" # 匹配含"write"的请求
workflow: "llm_flow"
workflows:
time_flow:
steps:
- tool: get_current_time
llm_flow:
steps:
- llm: ollama/qwen3:latest # 自动调用本地 Ollama 的 Qwen3
prompt: "用中文写一句关于{{input}}的广告语,不超过10个字"✅ 路由比 if-else 强在哪?
规则存在 YAML 里,运维改需求不用动 Python 代码;支持正则匹配、权重分流、fallback 备用流——比如 ollama/qwen3 加载失败时,自动切到 ollama/phi4。
步骤 4:发请求验证
# 触发时间插件
curl -X POST http://localhost:8000/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{"input": "现在几点?"}'
# 触发文案生成(自动调用 Qwen3)
curl -X POST http://localhost:8000/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{"input": "写一个咖啡广告语"}'✅ 返回效果示例:
{"output": "现在是2024-06-12T14:23:05.123456", "workflow": "time_flow"}
{"output": "香醇唤醒每一天", "workflow": "llm_flow"}👉 Binance · OKX · Gate.io · HTX · Bitget
常见问题
Q:Ollama 没装,能跑吗?
A:能!镜像自带 Ollama,但需确保你的机器有 GPU(或删掉 --gpus all 启动 CPU 版)。首次运行会自动拉取 qwen3:latest。
Q:怎么换 Claude 或 GPT?
A:只需改 routing.yaml 里的 llm: 行:
llm: anthropic/claude-3-5-sonnet-20240620 # 需提前配置 ANTHROPIC_API_KEY 环境变量Q:状态怎么保存?比如记住用户上次问了什么?
A:在 llm_flow 步骤里加一行:
steps:
- state: memory # 自动存最近3轮对话
- llm: ollama/qwen3:latest
prompt: "基于历史对话{{state.memory}},回答{{input}}"下一步建议
- ✅ 立刻动手:把上面 Demo 的
time_tool.py改成调用你自己的 API(比如豆瓣电影搜索),替换routing.yaml里的 pattern,30 分钟就能做出专属工作流。 - 📚 深入学习:
OpenClaw 插件开发指南:从天气工具到数据库查询
实战:用 OpenClaw + Dify 构建客服自动应答系统
零代码配置:用 Web UI 可视化编排多模型路由
OpenClaw 不是另一个大模型,它是你手里的“AI流水线控制器”。写一次插件,所有工作流都能复用;配一套路由,上百个业务场景自动分流。现在就去 plugins/ 目录下,新建你的第一个 .py 文件吧。