Install
openclaw skills install @robinkam/iqiyi-skillopenclaw skills install @robinkam/iqiyi-skill本 skill 面向 AI Native 视频类应用,把爱奇艺搜索、推荐、播放控制和基础服务整理为可复用能力。当前版本是无登录版 MVP,基于飞书「智能助理」数据源执行 Web API Operation,并内置 qips 协议拼接能力;不新增客户端 native 指令,不新增后端接口。
使用本 skill 处理:
https://mesh.if.iqiyi.com/ai/zhipu/video/search,按关键词搜索视频、明星、角色、片单等内容。https://mesh.if.iqiyi.com/ai/zhipu/video/recommend,支持类型、筛选词和推荐来源。https://mesh.if.iqiyi.com/ai/zhipu/video/details、/video/related、/video/episode;仅在需要 H5 降级、候选确认或接口播放详情时调用 /video/play。https://mesh.if.iqiyi.com/ai/zhipu/star/search。vtype=6;action=play,不预先请求后端解析。当前 MVP 不处理:
如果用户请求排除项,直接说明当前 MVP 不支持该闭环,并给出无登录替代:热门/频道推荐、H5 播放地址、客户端下载提示或要求补充登录/后端需求。
references/operations.md;默认使用 executeOperation(...) 真实触发请求并读取返回数据。明确播放意图先走 qips,本地生成 action=play,不要为了播放预先调用 /video/play。references/sop.md。references/qips/vtype-recipes.md、references/qips/channel-table.md 或 references/qips/api-usage.md。node .cursor/skills/iqiyi-skill/scripts/iqiyi-skill-catalog.mjs
import {
buildOperationRequest,
executeOperation,
formatOperationResponse,
getClientInstallLink,
} from ".cursor/skills/iqiyi-skill/scripts/iqiyi-skill-catalog.mjs";
buildOperationRequest("video.search", { q: "周星驰演的电影", pageNum: 1 });
await executeOperation("video.search", { q: "周星驰演的电影", pageNum: 1 });
getClientInstallLink("mac");
命令行触发真实请求:
node .cursor/skills/iqiyi-skill/scripts/iqiyi-skill-catalog.mjs video.search '{"q":"周星驰演的电影","pageNum":1}'
也可以使用 iqiyi-cli 语法。通用 skill 环境使用 bundled script 路径;若安装器支持 package.json 的 bin 入口,可直接使用 iqiyi-cli:
node .cursor/skills/iqiyi-skill/scripts/iqiyi-cli.mjs video search --q "周星驰" --pageNum 1
node .cursor/skills/iqiyi-skill/scripts/iqiyi-cli.mjs video recommend --type "电影" --style "适合全家一起看的电影" --kind suggest
node .cursor/skills/iqiyi-skill/scripts/iqiyi-cli.mjs video play --title "庆余年" --season 2 --episode 5
node .cursor/skills/iqiyi-skill/scripts/iqiyi-cli.mjs star search --q "刘德华"
支持 bin 的 package-style 安装环境也可使用等价命令:
iqiyi-cli video search --q "周星驰" --pageNum 1
iqiyi-cli video recommend --type "电影" --style "适合全家一起看的电影" --kind suggest
iqiyi-cli video play --title "庆余年" --season 2 --episode 5
iqiyi-cli star search --q "刘德华"
CLI 默认真实执行请求;但 video play 默认只生成本地 qips,不请求网络。调试请求结构时追加 --dry-run。输出可用 --text、--raw、--formatted 或 --request 选择。
返回结果使用 formatted 字段组织对话内容:
formatted.kind === "collection":使用 formatted.items 和 formatted.text 列出影片、描述、播放 URL。formatted.kind === "data":使用 formatted.data 和 formatted.text 组织详情。formatted.prompt 若提示“下一页”,用户追问下一页时将 pageNum + 1 再次调用同一 Operation。推荐风格会先按产品筛选项归一化:
scripts/iqiyi-skill-catalog.mjs 的 getRecommendStyleCatalog()。video.recommend 会把 style 中的用户措辞尽量落到当前类型支持的风格,例如“全家一起看 / 合家欢 / 亲子 / 老少皆宜”在电影下归一为 家庭。warnings,便于调试和解释。判断模式:用户问“怎么拼 / 怎么调 SDK / qips 怎么写”时只回答调用方式;用户直接说“播放 / 暂停 / 下一集 / 跳频道 / 搜索 XXX”时,可以基于本 skill 生成并校验 qips 后拉起客户端或交付 deeplink 命令。
qips://、qisu://、iqiyi://、shell 命令或其他协议。third_play_url 不得是 javascript:、data:、file:、shell:、osascript:、嵌套 qips:/qisu:/iqiyi: 等可执行或二次跳转协议。qips 格式:
qips://key1=value1;key2=value2;...;
; 分隔键值对,结尾保留分号。encodeURIComponent,包括中文、URL 和整段 JSON。qisu:// 与 qips:// 等价;新拼接只产出 qips://。iqiyi://... 可由客户端转换为 qips;本 skill 对外按 qips 契约回答。常用入口:
| 场景 | qips 形态 |
|---|---|
| 点播正片 | vtype=0;tvid=<tvid>;,可带 albumid、start_pos、playrecord、ischarge。 |
| 跳频道/片库/搜索/我的/内嵌页 | vtype=6;target=2;channelid=<id>;,可带 third_play_url。 |
| 按标题开播 | vtype=6;action=play;title=<encoded>;season=?;year=?;episode=?; |
| 播控 | vtype=6;target=101..106;,101/102 播放暂停,103/104 上下一集,105/106 快进快退。 |
| 带 hash 的频道深链 | vtype=7;third_play_url=?<query>#/channel/<id>/;,整段 third_play_url 需编码。 |
本 skill 的 qips golden helper 位于 scripts/qips-build.mjs,对应测试位于 scripts/qips-build.test.mjs。详细场景路由:
| 用户意图 | 读取 |
|---|---|
| qips 能力总览 | docs/qips-capabilities.md |
不知道频道、片库、搜索或个人中心 channelid | references/qips/channel-table.md |
| 知道场景但不知道怎么拼 | references/qips/vtype-recipes.md |
| SDK 代码层调用方式 | references/qips/api-usage.md |
| 本机拉起验收 | references/qips/launch-checklist.md |
| 用户意图 | 处理 |
|---|---|
| “搜/找/查询某片、角色、片单” | 执行 video.search,按返回 col 组织候选列表,必要时继续 video.details。 |
| “某明星资料/作品集” | 执行 star.search,按返回 data 组织明星资料和作品。 |
| “找 2026 恐怖电影 / 某频道某题材” | 执行 video.recommend,把条件映射为 type 和 style,按返回 col 组织片单。 |
| “找一些适合全家一起看的电影” | 执行 video.recommend,type=Movie,style=["家庭"]。 |
| “有什么热门/榜单/推荐” | 未传登录态时执行 video.recommend,kind 使用 hot、soar、top、new 或 douban。 |
| “播放/暂停/下一集/快进/跳频道/打开搜索页” | 优先使用内置 qips 契约拼接或执行 qips;标题、季、年份、集数直接进入 action=play 参数,不先调用 /video/play。 |
| “我没装客户端怎么办” | 返回 H5 播放地址,并给出 Mac 或 PCA/Windows/UWP 安装链接。 |
| “查我是不是会员 / 给我个性化推荐” | 当前 MVP 不做真实登录闭环;降级为热门/频道推荐或要求补充授权方案。 |
npm run test:iqiyi-skillnpm run test:iqiyi-qips