🚀 OpenSpace (HKUDS) 集成到 OpenClaw 完整指南

📖 什么是 OpenSpace?

OpenSpace 是香港大学 HKUDS 开源的 AI 代理自进化引擎,它可以让 AI 代理:

  • 自动学习 - 从成功任务中提取可复用的技能模式
  • 自动修复 - 技能损坏时自动修复
  • 自动进化 - 每次任务执行后优化技能
  • 云端共享 - 一个代理学到的技能,所有代理都能受益

实测效果:在 50 个真实专业任务上,OpenSpace 代理比基线代理收入高 4.2 倍,token 消耗减少 46%


🔧 集成方案:通过 MCP 协议

OpenSpace 通过 MCP (Model Context Protocol) 与 OpenClaw 集成,提供 4 个核心工具:

工具 功能
execute_task 执行复杂任务的多步代理循环
search_skills 搜索本地和云端技能库
fix_skill 修复损坏的 SKILL.md
upload_skill 上传技能到云端社区

📋 具体操作步骤

步骤 1:安装 OpenSpace

# 克隆仓库(轻量版,跳过图片资源)
git clone --filter=blob:none --sparse https://github.com/HKUDS/OpenSpace.git
cd OpenSpace
git sparse-checkout set '/*' '!assets/'

# 安装 Python 包
pip install -e .

# 验证安装
openspace-mcp --help

要求

  • Python 3.8+
  • Node.js ≥ 20(用于 Dashboard)

步骤 2:复制 OpenSpace 核心技能到 OpenClaw

# 复制两个核心技能到 OpenClaw 技能目录
cp -r ~/OpenSpace/openspace/host_skills/skill-discovery/ ~/.openclaw/workspace/skills/
cp -r ~/OpenSpace/openspace/host_skills/delegate-task/ ~/.openclaw/workspace/skills/

技能说明

  • skill-discovery:教会代理何时/如何搜索和使用技能
  • delegate-task:提供任务委托、技能修复、上传等完整功能

步骤 3:配置 OpenClaw 的 MCP 服务器

OpenClaw 使用 mcporter 作为 MCP 运行时。运行以下命令注册 OpenSpace:

mcporter config add openspace --command "openspace-mcp" \
  --env OPENSPACE_HOST_SKILL_DIRS=/Users/jerry/.openclaw/workspace/skills \
  --env OPENSPACE_WORKSPACE=/Users/jerry/OpenSpace \
  --env OPENSPACE_API_KEY=sk-xxx  # 可选,用于云端技能访问

环境变量说明

变量 必填 说明
OPENSPACE_HOST_SKILL_DIRS OpenClaw 技能目录路径
OPENSPACE_WORKSPACE OpenSpace 安装目录
OPENSPACE_API_KEY 云端社区 API Key(在 open-space.cloud 注册获取)

步骤 4:配置 LLM API Key(如需要)

OpenSpace 会自动从 OpenClaw 的配置中检测 LLM 凭据。如果需要单独配置:

# 创建 .env 文件
cat > ~/.openclaw/workspace/skills/.env << EOF
OPENSPACE_LLM_API_KEY=your-api-key
OPENSPACE_LLM_MODEL=anthropic/claude-sonnet-4-6
EOF

步骤 5:验证集成

# 检查 MCP 服务器状态
mcporter config list

# 测试 OpenSpace 工具
openspace-mcp --help

步骤 6:重启 OpenClaw Gateway

openclaw gateway restart

🎯 使用方式

方式 A:通过聊天使用(推荐)

集成后,您的 OpenClaw 代理会自动学习使用 OpenSpace 技能。例如:

用户:帮我分析一下 GitHub 上最近一周的网络安全热门项目

代理:我正在使用 OpenSpace 的 skill-discovery 技能搜索相关技能...
     找到了 3 个相关技能,将使用 github-trending-finder 执行任务...
     [执行完成后] 已完成分析,生成了包含 15 个热门项目的 HTML 报告。
     本次任务进化了 2 个新技能:github-api-rate-limit-handler, markdown-report-generator

方式 B:命令行直接使用

# 交互式模式
openspace

# 执行特定任务
openspace --model "anthropic/claude-sonnet-4-6" \
  --query "创建一个 Docker 容器监控仪表板"

方式 C:Python API

import asyncio
from openspace import OpenSpace

async def main():
    async with OpenSpace() as cs:
        result = await cs.execute("分析 GitHub 热门仓库并生成报告")
        print(result["response"])
        
        # 查看进化的技能
        for skill in result.get("evolved_skills", []):
            print(f"✨ 进化:{skill['name']} (来源:{skill['origin']})")

asyncio.run(main())

📊 查看技能进化(可选)

启动本地 Dashboard 查看技能进化历史:

# 终端 1:启动后端 API
openspace-dashboard --port 7788

# 终端 2:启动前端
cd ~/OpenSpace/frontend
npm install  # 仅需一次
npm run dev

然后在浏览器访问 http://localhost:5173 查看技能进化图谱。


☁️ 云端社区(可选)

注册 open-space.cloud 获取 API Key 后,可以:

# 下载云端技能
openspace-download-skill <skill_id>

# 上传自己的技能到云端
openspace-upload-skill /path/to/your/skill-dir

没有 API Key 也能用:所有本地功能(任务执行、技能进化、本地搜索)都正常工作,只是无法访问云端技能库。


🔍 技能目录结构

~/.openclaw/workspace/skills/
├── skill-discovery/          # OpenSpace 核心技能
│   └── SKILL.md
├── delegate-task/            # OpenSpace 核心技能
│   └── SKILL.md
├── openspace/                # 您的自定义 OpenSpace 技能
│   └── SKILL.md
└── ...                       # 其他 OpenClaw 技能

⚠️ 注意事项

  1. Python 版本:确保 Python 3.8+,推荐使用虚拟环境
  2. Node.js 版本:Dashboard 需要 Node.js ≥ 20
  3. API Key:云端功能是可选的,本地使用不需要
  4. 技能安全:所有技能在加载前会通过 check_skill_safety 检查,危险模式会被自动阻止
  5. 技能优先级
    • OPENSPACE_HOST_SKILL_DIRS(最高)
    • config_grounding.jsonskills.skill_dirs
    • 默认 skills 目录(最低)

📚 相关文档


Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐