Skills runninghub_api
RunningHub AI Platform 直接调用 - 文生图、图生图、视频生成等,支持智能存储判断和链式工作流
install
source · Clone the upstream repo
git clone https://github.com/openclaw/skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/openclaw/skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/airix315/rhskill" ~/.claude/skills/openclaw-skills-runninghub-api && rm -rf "$T"
OpenClaw · Install into ~/.openclaw/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/openclaw/skills "$T" && mkdir -p ~/.openclaw/skills && cp -r "$T/skills/airix315/rhskill" ~/.openclaw/skills/openclaw-skills-runninghub-api && rm -rf "$T"
manifest:
skills/airix315/rhskill/SKILL.mdsource content
RunningHub API Skill
概述
直接调用 RunningHub API,支持生图、生视频、音频处理等 AI 任务。
与 RHMCP 的关系:
- RHMCP 是 MCP Server,提供 STDIO/HTTP 接口
- 本 Skill 直接复用 RHMCP 的 API Client,跳过 MCP 层,速度更快
- 支持 RHMCP 配置文件中定义的 APP
前置条件
-
RunningHub 账号
- 注册:https://www.runninghub.cn(国内)或 https://www.runninghub.ai(国际)
- 获取 API Key:个人中心 → API 控制台
-
百度网盘(可选,用于 cloud 存储)
- 安装 bdpan-storage Skill
- 执行登录:
bash ~/.agents/skills/bdpan-storage/scripts/login.sh
-
Google Drive(可选,用于 cloud 存储)
- 安装 gog Skill
- 执行授权:
gog auth credentials /path/to/client_secret.json
配置
环境变量
export RUNNINGHUB_API_KEY="your-api-key" export RUNNINGHUB_BASE_URL="www.runninghub.cn" # 或 www.runninghub.ai
OpenClaw 配置
编辑
~/.openclaw/openclaw.json:
{ skills: { entries: { "runninghub-api": { enabled: true, env: { RUNNINGHUB_API_KEY: "your-api-key", RUNNINGHUB_BASE_URL: "www.runninghub.cn", }, config: { defaultStorage: "auto", // auto/none/cloud defaultCloudProvider: "auto", // auto/bdpan/gog } } } } }
存储模式
| 模式 | 说明 | 触发条件 |
|---|---|---|
| 返回 RH 服务器 URL | 默认、直接交付、链式流程 |
| 上传到网盘 | 明确要求保存、需要确认 |
|
AUTO 决策逻辑
if (storage === "auto") { if (链式流程 || 直接交付) → "none" else if (要求保存 || 需要确认) → "cloud" else → "none" } if (cloudProvider === "auto") { if (提到 Google/Sheet) → "gog" else → "bdpan" }
路径规则
- bdpan:
runninghub/{projectName}/{timestamp}_{filename} - gog:
RunningHub/{projectName}/{timestamp}_{filename} - 项目名: 用户指定 > 自动生成(
)rh-{timestamp}
工具
rh_list_apps
列出可用的 RunningHub APP。
rh_list_apps({ refresh: false }) // 返回: { apps: [{ alias, appId, category, description }] }
rh_execute
执行 APP 任务。
rh_execute({ alias: string, // APP 别名 params: Record<string, any>, // APP 参数 storage?: "none" | "cloud" | "auto", cloudProvider?: "bdpan" | "gog" | "auto", projectName?: string, // 项目名称 mode?: "sync" | "async", // 同步/异步 timeout?: number // 超时时间(秒) }) // 返回: { // taskId: string, // status: "SUCCESS" | "PENDING", // outputs: [{ // originalUrl: string, // RH 服务器 URL // cloudUrl?: string // 网盘 URL(cloud 模式) // }] // }
rh_query_task
查询任务状态(用于异步模式)。
rh_query_task({ taskId: string }) // 返回: { taskId, status, outputs?, progress? }
使用示例
简单生图(none 模式)
用户: 生成一只可爱的猫咪 Agent 调用: rh_execute({ alias: "qwen-text-to-image", params: { text: "一只可爱的猫咪,卡通风格" }, storage: "none" }) // 返回 RH 服务器 URL
上传到百度网盘
用户: 生成一张风景图保存到网盘 Agent 调用: rh_execute({ alias: "qwen-text-to-image", params: { text: "美丽的风景" }, storage: "cloud", cloudProvider: "bdpan", projectName: "landscape" }) // 返回 bdpan://runninghub/landscape/...
链式流程(图生视频)
用户: 生成主角图片,然后用它生成视频 步骤1: 生成图片(storage: "none") const imageResult = await rh_execute({ alias: "qwen-text-to-image", params: { text: "主角形象" }, storage: "none" }); const imageUrl = imageResult.outputs[0].originalUrl; 步骤2: 图生视频(使用上一步 URL) rh_execute({ alias: "image-to-video", params: { image: imageUrl, prompt: "奔跑动画" }, storage: "cloud" });
共享 APP 清单
内置共享测试 APP(来自 RHMCP 官方):
| 别名 | APP ID | 类型 | 说明 |
|---|---|---|---|
| qwen-text-to-image | 2037760725296357377 | image | Qwen 文生图 |
| qwen-image-to-image | 2037822548796252162 | image | Qwen 图生图 |
故障排除
| 问题 | 原因 | 解决 |
|---|---|---|
| 提交任务失败 | APP 参数不匹配 | 检查 shared-apps.json 中的 inputs 配置 |
| bdpan 上传失败 | 未登录 | 执行 重新登录 |
| 任务超时 | 执行时间过长 | 使用 异步模式 |
| Token 过期 | 授权失效 | 重新登录或授权 |
扩展开发
添加新 APP
编辑
references/shared-apps.json:
{ "apps": { "my-new-app": { "appId": "your-app-id", "alias": "my-new-app", "category": "video", "description": "描述", "inputs": { "param1": { "nodeId": "1", "fieldName": "field1" } } } } }
参考链接
- RHMCP GitHub: https://github.com/AIRix315/RHMCP
- RunningHub: https://www.runninghub.cn
- OpenClaw Docs: https://docs.openclaw.ai
License
MIT