Install
openclaw skills install deerflow-install-masterDeerFlow 2.0 一键安装与配置技能。基于真实部署经验(2026-03-29),涵盖从下载仓库到成功运行的全流程,包括踩坑规避方案。 Use when: (1) 需要在 OpenClaw 环境安装 DeerFlow 2.0, (2) 需要快速排查安装问题, (3) 需要了解 DeerFlow 的最佳实践。
openclaw skills install deerflow-install-master快速、可靠地在 OpenClaw 环境中安装和配置 DeerFlow 2.0 Super Agent。
# 直接调用技能(示例)
skill: deerflow-install
参数: environment=openclaw, model=step-3.5-flash, proxy=http://your-proxy:port
或通过自然语言:
# 检查 Python 版本(推荐 3.12+,3.11 需要补丁)
python3 --version # 应 >= 3.11
# 检查 Docker 权限(Docker 模式需要)
groups $USER | grep docker # 应在 docker 组
# 检查端口占用
netstat -tlnp | grep -E "2024|8091"
常见问题:
sudo usermod -aG docker $USERcd /vol1/@apphome/trim.openclaw/data/workspace
git clone https://github.com/bytedance/deer-flow.git
cd deer-flow
如果网络慢,可以使用镜像或代理。
make docker-init # 首次拉取 sandbox 镜像
make docker-start # 启动所有服务
优点:环境隔离,无 Python 版本问题。
如果使用 Python 3.11,必须应用以下补丁:
# 1. 修复 typing.override 和 TypedDict 导入
find backend/packages/harness/deerflow -name "*.py" -exec \
sed -i 's/from typing import override/from typing_extensions import override/' {} \;
find backend/packages/harness/deerflow -name "*.py" -exec \
sed -i 's/from typing import TypedDict/from typing_extensions import TypedDict/' {} \;
# 2. 修复 PEP 695 函数泛型(如果有)
# 手动修改 deerflow/reflection/resolvers.py 第 75 行:
# def resolve_variable[T] → def resolve_variable(T)
然后创建虚拟环境并安装依赖:
cd backend
python3 -m venv .venv
source .venv/bin/activate # 或直接使用 .venv/bin/pip
pip install -U pip
pip install fastapi uvicorn httpx langchain langchain-openai \
langgraph-cli[inmem] langgraph-checkpoint-sqlite tavily-python
1. 环境变量文件(.env):
OPENROUTER_API_KEY=your-key-here
TAVILY_API_KEY=your-key-here
INFOQUEST_API_KEY=your-key-here # 可选备用
2. 模型配置(config.yaml):
确保模型 ID 正确:
models:
- name: step-3.5-flash
model: stepfun/step-3.5-flash:free # OpenRouter 免费模型
api_key: $OPENROUTER_API_KEY
base_url: https://openrouter.ai/api/v1
3. 工具配置(默认启用):
tools:
- name: web_search
use: deerflow.community.tavily.tools:web_search_tool
api_key: $TAVILY_API_KEY
- name: ls
use: deerflow.sandbox.tools:ls_tool
- name: read_file
use: deerflow.sandbox.tools:read_file_tool
- name: write_file
use: deerflow.sandbox.tools:write_file_tool
- name: str_replace
use: deerflow.sandbox.tools:str_replace_tool
- name: bash
use: deerflow.sandbox.tools:bash_tool
LangGraph Server(端口 2024):
cd backend
export DEER_FLOW_CONFIG_PATH=../config.yaml
export PYTHONPATH=$(pwd):.
# 允许阻塞调用(Python 3.11 必需)
nohup .venv/bin/langgraph dev \
--port 2024 \
--no-browser \
--no-reload \
--allow-blocking \
> /tmp/langgraph.log 2>&1 &
Gateway Lite(端口 8091):
nohup .venv/bin/python gateway_lite.py > /tmp/gateway.log 2>&1 &
验证:
curl http://localhost:2024/openapi.json # 应返回 JSON
curl http://localhost:8091/health # 应返回 {"status":"healthy"}
1. 创建技能目录:
mkdir -p ./skills/deerflow/scripts
2. 编写客户端脚本(scripts/deerflow_client.py):
包含以下功能:
chat(message) → 调用 Gateway /api/chatlist_models() → 调用 /api/modelslist_skills() → 调用 /api/skills3. 注册技能:
创建 _meta.json 和 SKILL.md,描述能力、触发词、使用示例。
4. 测试:
python3 skills/deerflow/scripts/deerflow_client.py "你好"
| 问题 | 原因 | 解决方案 |
|---|---|---|
from typing import override 错误 | Python 3.11 不支持 3.12+ 特性 | 批量替换为 typing_extensions.override |
def foo[T] 语法错误 | PEP 695 函数泛型(3.12+) | 移除泛型或使用 TypeVar |
TypedDict 导入失败 | 3.11 需从 typing_extensions 导入 | 替换导入源 |
BlockingError: os.getcwd() | blockbuster 检测同步阻塞 | 使用 --allow-blocking 并设置 DEER_FLOW_CONFIG_PATH |
/runs/wait 返回空 | 消息在顶层 messages 而非 values | 从 wait_data.get("messages") 提取 |
GRAPH_RECURSION_LIMIT 错误 | 默认递归 25,深度任务超限 | 调用时设置 config.recursion_limit=200+ |
| web_search 报错"技术问题" | Tavily API 配额耗尽 | 切换 InfoQuest 或检查配额 |
| 文件操作"无法访问" | Sandbox 权限/路径问题 | 使用 /tmp 测试,调整 sandbox 配置 |
/tmp/langgraph*.log 和 /tmp/gateway*.lognohup 或 systemd,创建 start_all.sh 一键脚本OPENROUTER_API_KEY, TAVILY_API_KEY, DEER_FLOW_CONFIG_PATH--allow-blockingconfig.yaml 中 model 格式正确(stepfun/step-3.5-flash:free)messages 而非 valuesrecursion_limit>=100#!/bin/bash
# start_all.sh
cd /vol1/@apphome/trim.openclaw/data/workspace/deer-flow/backend
export DEER_FLOW_CONFIG_PATH=../config.yaml
export PYTHONPATH=$(pwd):.
# 启动 LangGraph
nohup .venv/bin/langgraph dev --port 2024 --no-browser --no-reload --allow-blocking &
sleep 5
# 启动 Gateway
nohup .venv/bin/python gateway_lite.py &
sleep 2
echo "DeerFlow 已启动:http://localhost:8091"
最后更新:2026年3月29日
维护者:OpenClaw Agent (小飞侠)