喜马拉雅小助手

SKILL开发
开发 未标注权限 许可证不明确
安装这个技能

把「喜马拉雅音频助手」v1 技能里靠 LLM 手动 snapshot、用易变 @ref 点击的 上传/编辑/替换/删除/查询流程,固定成一份确定性 Python 脚本。 当用户提到"喜马拉雅"与"上传/发布/编辑/替换/删除/查询"音频时触发。 所有交互均用稳定的 CSS 选择器 + JS eval 驱动,绕开 @ref 与 React 合成事件静默失败。

一句话选型结论

按资料字段整理

喜马拉雅小助手是开发类的 Agent Skill,安装方式未标注,权限级别未标注,许可证不明确,有可直接复制的安装命令。技能本质是给模型读的说明书,效果取决于模型与客户端;装完先用一个小任务验证,再放进正式流程。

分类开发 安装方式未标注 权限级别未标注权限 许可证许可证不明确
累计安装 未标注 本周 未标注
GitHub 星标 未标注 仓库 未标注
下载量 未标注 技能市场下载数
权限级别 未标注权限 安装前请确认风险范围
许可证 许可证不明确 未说明

安装

未标注
在支持 Skills 的客户端里执行,装完问一句「你有哪些技能」验证
skillhub install user_c354bc8c/ximalaya-audio-assistant
  1. 1
    确认客户端支持

    确认你的客户端支持 Skills(Claude、Codex、Cursor 等),并升级到较新的版本。

  2. 2
    拿到技能文件

    执行上面的命令安装;也可以把仓库里的 SKILL.md 手动放进客户端的 skills 目录。

  3. 3
    刷新技能列表

    重新打开客户端,或刷新技能列表,让新放进来的技能被加载。

  4. 4
    验证是否生效

    问一句「你有哪些技能」,确认列表里出现它,再拿一个小任务试跑。

技能档案

开发
字段来自技能仓库与公开索引,中文说明由本站标注
作者 / 维护方user_c354bc8c仓库 未标注 · 版本 未标注
宿主客户端未标注技能可被这些客户端加载
安装方式未标注安装包 community
权限级别未标注权限安装前请确认风险范围
许可证未说明许可证不明确,商用前请自行确认条款
仓库可用性available技能仓库当前是否可访问
最近核验未标注上游最后核验时间 · 数据更新 1791723532
正文体量9.2 KBSKILL.md 原文大小,越大说明说明书写得越细

典型使用场景

3 类
按分类整理的常见用法,具体以 SKILL.md 为准
写代码与改 bug

按需求补代码、定位并修掉报错。

读仓库与生成改动

让模型读懂项目结构,再给出可落地的改动。

跑测试与排查故障

按现象排查问题,补测试用例并复跑。

选择建议

装之前先看这几条
按条目字段给出的判断,不替你决定用不用

值得选的地方

  • 有可直接复制的安装命令,不用自己翻文档找入口。

先想清楚的地方

  • 没有标注权限级别,实际能做什么要装好后确认。
  • 许可证不明确,商用或二次分发前先到仓库确认条款。
  • 没有做站内核验,内容以作者仓库为准。
  • 技能只是说明书,实际效果取决于模型与客户端,装完先用小任务试一遍。

更适合

  • 需要在开发场景里给模型补一套做法的人。
  • 愿意先读一遍 SKILL.md、确认它会让模型做什么的人。

不太适合

  • 对许可证要求很严、必须明确可商用的人。
  • 只想装完就自动变强、不打算看说明书的人。

同类对比

6 个同类
同分类里挑最接近的几条,字段以各自详情页为准
技能权限级别安装方式累计安装宿主客户端安装命令
喜马拉雅小助手当前 未标注权限 未标注 未标注 未标注 有
技能审查员 浏览器控制 ClawHub 市场 877.9 万 OpenClaw 有
Vercel React 最佳实践 浏览器控制 GitHub 仓库 849.1 万 Codex、Claude、Cursor 有
GitHub 代码协作 联网访问 ClawHub 市场 763.3 万 OpenClaw 有
网页设计指南 联网访问 GitHub 仓库 668.6 万 Codex、Claude、Cursor 有
本体论 只读 ClawHub 市场 663.7 万 OpenClaw 有

SKILL.md 全文

9.2 KB
模型实际读到的说明书原文,来自技能仓库

喜马拉雅音频助手 v2(固定脚本版)

这是什么

v1(旧 playbook,目录 ximalaya-assistant)是一份给 LLM 看的 playbook:
每次都要读 SKILL.md、手动 snapshot、用每次都变的 @ref 号去 click,
而且很多按钮 click @ref 对 React 合成事件静默失败,需要临时写 JS 兜底。

v2 把那套流程固化成一份可重复执行的脚本 ximalaya-audio-assistant.py(本技能,技能 ID:
ximalaya-audio-assistant):
不依赖任何易变 ref,用稳定的 CSS 选择器 + JS eval 直接驱动页面。
LLM 只需决定调哪个子命令、传什么参数,不再临场摸索 DOM。

前置依赖

  • 已安装 agent-browser-core 技能,且 agent-browser 在 PATH(可用环境变量
    AGENT_BROWSER_CMD 覆盖命令名)。
  • 浏览器运行时已装:agent-browser install。
  • 首次运行会开浏览器扫码登录,登录态写入 --state 指定的文件(默认
    ximalaya-state.json),后续复用。

脚本位置

与本文同级:ximalaya-audio-assistant.py

运行(在本机终端,不在沙箱):

python "<技能目录>/ximalaya-audio-assistant.py" --help

子命令(增删改查 + 替换 + 登录)

命令 作用 关键参数
login 扫码登录并自动保存登录态(无登录态时先跑这个) --state --timeout
upload 上传并发布 --album-id --file/--folder --title --intro --tags --topic --ai --discussion --yes
edit 编辑已发布音频元数据 --track-id --title --intro --tags --topic --discussion
replace 替换音频文件(保留 ID/元数据) --album-id --title --file
replace-cover 替换单集配图(封面图) --album-name/--album-id --first/--title/--track-id --image
delete 删除音频(不可撤销) --album-id --title --confirm
list-albums 列出我的专辑及 albumId —
query 查专辑全部单集播放数/更新时间,或单集元数据 --album-id / --track-id

示例

# 无登录态:先跑 login(截图提示扫码 → 自动轮询 → 自动保存登录态)
python ximalaya-audio-assistant.py login --state "D:/xm-state.json"

# 上传发布一集
python ximalaya-audio-assistant.py upload \
  --album-id 12345 --file "D:/a/第1集_最终.wav" \
  --title "第一回 标题" --intro "简介" --tags "历史,儿童" \
  --topic "历史" --ai --discussion "你更支持哪一方?"

# 查某专辑全部单集的播放数
python ximalaya-audio-assistant.py query --album-id 12345

# 替换某集音频文件
python ximalaya-audio-assistant.py replace --album-id 12345 --title "第1集" --file "D:/new.wav"

# 替换某专辑第一回的配图(封面图)
python ximalaya-audio-assistant.py replace-cover \
  --album-name "新长城内外|新中国的诞生与崛起" --first --image "D:/cover.png" --yes

# 删除(必须 --confirm)
python ximalaya-audio-assistant.py delete --album-id 12345 --title "第1集" --confirm

无登录态的处理流程(重要)

运行任何子命令前先确认登录态:若 --state 指定的文件不存在、或上一次运行报
「未登录或会话已过期」,按以下步骤处理(脚本的 login 子命令已实现同一流程):

  1. 先截图给用户并提示扫码登录:运行 login(或让其它子命令走到未登录分支),
    打开登录页(未登录访问创作中心会自动跳到 passport 二维码页),执行
    agent-browser screenshot qrcode_login.png,把截图路径告诉用户,
    提示用户用喜马拉雅 App 扫码。
  2. 提示的同时轮询登录状态:不阻塞等待,脚本每 5 秒检查一次
    (get url 回到 studio.ximalaya.com 且不再含 passport/login 即视为已登录),
    每 30 秒打印一次等待进度,直到登录成功或超时(默认 5 分钟,可用 --timeout 调整)。
  3. 已登录则自动保存登录态:登录成功后执行 agent-browser state save <state文件>,
    把 cookie 等登录态写入 --state 指定的文件(如 D:/xm-state.json)。
  4. 重新用保存的登录态执行用户的要求:带上 --state <文件> 重新执行用户原本的
    上传/编辑/替换/删除/查询命令,不再要求扫码。

示例:login --state "D:/xm-state.json" 完成后,
upload --state "D:/xm-state.json" ... 即可直接复用登录态。

已固化的关键坑点(都在脚本里处理好了)

  • 隐藏 input[name=file] 三步上传(先 JS 显示再 upload)。
  • 「确认发布」「保存」按钮用 dispatchEvent(new MouseEvent('click')),不用 click @ref。
  • 编辑页简介用 Form API setFieldsValue({richIntro: html}),且保存前检查是否为空防覆盖。
  • 讨论卡片用 React Fiber 找父节点 onClick 展开;问题文本用真实键盘事件(CLI type + CSS 选择器)输入。
  • 声音管理页「...」菜单(manage-point-box)JS dispatchEvent 触发不了 React 弹层,必须真实 mouse 坐标点击
    (新增 mouse_click():agent-browser mouse move/down/up);菜单项「替换声音」是 webuploader-pick,
    同样真实点击;上传 input 是 input[type=file].webuploader-element-invisible(accept 含 .mp3/.wav),
    加临时 id #temp_replace_audio 再 upload;上传后弹 ant-modal「替换声音 <文件名>/取消/确定」,
    用 _js_click_modal_confirm() 点「确定」。管理页分页(每页 10 条),replace 会自动翻页查找目标(最多 20 页)。
    通用教训:React 弹层/菜单内按钮,JS dispatchEvent 都不可靠,优先真实 mouse 坐标点击。
  • 标签用 input[placeholder*=&quot;回车&quot;] + Enter 键事件。
  • 话题用 Form API 直写:先走 /reform-upload/upload/getTopicPage?keyword=... API 解析出
    metadataId,再 setFieldsValue({topicTags: &#x27;{&quot;&lt;metadataId&gt;&quot;:[&quot;&lt;话题名&gt;&quot;]}&#x27;}),与已发布单集
    getFieldsValue().topicTags 格式完全一致。不要用 UI 搜索 5 步法——实测编辑页/上传页的
    「话题」搜索面板(.show-more-topic → 输入框 → Enter)在本机触发不了 onSearch,结果永不渲染;
    Form API 直写稳定生效(已实跑验证)。
  • 查询统一走 /reform-upload/manage/album/tracks API,不爬脆弱的 DOM/截图。
  • upload 发布后自动补简介:上传页的富文本简介经常填不进去(NO_INTRO),脚本在发布拿到
    trackId 后会自动打开编辑页检查简介(LEN:0 则用 Form API 写回并保存),一条命令完成上传+简介。
  • delete 流程(2026-08-23 实跑重写):行内「...」菜单与菜单项「删除」用真实 mouse 坐标点击;
    确认弹窗是自定义组件 .xmDeleteModal(按钮是 span.xmButton.primary,文本「删除」,不是
    &lt;button&gt;
    )——用 _js_locate_modal_confirm(&quot;删除&quot;) 定位坐标后真实点击;删除后脚本会重新拉
    专辑单集列表验证目标已消失
    ,防止「假成功」。

注意事项

  • 脚本无法在 WorkBuddy 沙箱内端到端验证(依赖本机 agent-browser + 喜马拉雅登录态),
    只在真机跑过语法与 JS 片段生成校验。
  • 已实跑验证:upload(含标题/标签/AI 勾选/Form API 话题/发布后自动补简介)与 edit --intro
    在「新长城内外|新中国的诞生与崛起」专辑第 19/20/21 集上传成功;replace-cover 已给该专辑全部
    20 集成功换封面(第一回 trackId=1006549933 单测 + 其余 19 集批量 OK:19 FAIL:0)。
  • 2026-08-23 完整闭环测试(第二十一回):upload(trackId=1008169793,自动补简介 LEN:0→260→SAVED)
    → edit(改简介 LEN:263→260→SAVED,重开编辑页确认新文本落库)→ replace(行菜单/替换声音/上传/弹窗
    确定全流程 CONFIRM_OK,已提交转码)→ delete(自定义弹窗真实鼠标确认,删除后 API 验证专辑 21→20 集,
    列表中已无目标)。四步全部通过,脚本定版。
  • 替换配图(封面图):编辑页「节目配图」的 file input 没有 name/class,accept 是
    .png, .jpg, .jpeg, .bmp(不含 "image" 字样)
    ——脚本按图片扩展名匹配 + 加临时 id
    #temp_cover_input 上传;上传后必弹裁剪框(.anchor-cropper),必须点「确定」
    (.anchor-cropper-bottom-surebtn)才真正提交
    ,否则封面不生效(已验证:上传后不点确定,
    保存了封面仍是旧图)。脚本已固化这两步。
  • 删除操作不可撤销,脚本强制要求 --confirm;删除成功后脚本会验证专辑列表中已无目标(2026-08-23
    实测发现旧版「无验证就报成功」的假成功 bug,已修复)。

常见问题

5 问
答案由本站依据条目字段整理
喜马拉雅小助手怎么安装?

在支持 Skills 的客户端里执行:skillhub install user_c354bc8c/ximalaya-audio-assistant。安装方式为未标注。装完刷新技能列表或重开客户端。

喜马拉雅小助手支持哪些客户端?

资料没有标注宿主客户端,但只要客户端支持 Skills(Claude、Codex、Cursor 等),一般都能加载。

喜马拉雅小助手权限高吗,安全吗?

权限级别为未标注权限。安装前先看它会读取或写入哪些内容。

喜马拉雅小助手收费吗?

本站不代收费用,也没有标注具体价格。是否收费取决于技能本身和所用的模型或客户端,正式使用前按作者说明确认。

喜马拉雅小助手用什么许可证?

许可证标注为 未说明(许可证不明确)。商用或二次分发前请到仓库确认条款原文。

热门专题

按场景挑技能
全部专题 →

技能内容以作者仓库为准;分类、权限级别与许可证状态的中文说明为中文整理,最近核验 未标注。