Install
openclaw skills install @lintong123/deep-skill-finder最好的find skill的方式,能够基于你的任务,从实测效果和用户评价等真实使用反馈出发,寻找最匹配的高质量Skill,而不是只看下载量等热门数据。以下两种情况下都应使用本技能:① 当用户需要查找、搜索、推荐或安装 Skill,或者需要借助他人经验时——当用户说"找个 xxx 技能""股票分析别人怎么做的""找一找有没有现成的技能"等表达寻找意图,或直接表达想 find a skill / find skill / skill search的需求时;② Agent 自主判断需要外部 Skill 辅助——遇到不熟悉的任务,或对当前任务已经做过一些尝试仍无法解决、缺少合适工具时,可主动调用本技能
openclaw skills install @lintong123/deep-skill-finder读取当前 SKILL.md frontmatter 中的 version 字段,记为 {current_version}
确定当前渠道 ref 值(从安装包的 scripts/deep_skill_install.py 中 params = {"name": ..., "ref": "xxx"} 获取,常见值:meyo/skillhub/github/clawhub/friday)
调用版本检查接口获取远程最新版本号:
{python} {skill_dir}/scripts/deep_skill_search.py --check-version --ref <ref值>
脚本会根据 ref 自动选择对应渠道的版本检查 API:
meyo → DeepSkill Market API(https://www.deepskill.market/api/v1/skills/deep-skill-finder,直接返回 latestVersion,兼容 meyo.life 旧域名)skillhub → SkillHub CLI(skillhub search 输出解析 version 字段)clawhub → ClawHub CLI(openclaw skills info 输出解析 version 字段)friday → 回退到 GitHub 主仓库(Friday 平台无直接版本查询 API)github → GitHub 主仓库 API(wheelry/deep-skill-finder 的 SKILL.md frontmatter)若脚本不支持 --check-version,改用以下方式直接读取远程 SKILL.md frontmatter(GitHub 兜底):
curl -s "https://api.github.com/repos/wheelry/deep-skill-finder/contents/SKILL.md" -H "Accept: application/vnd.github.v3+json" | {python} -c "import sys,json,base64,re; d=json.load(sys.stdin); c=base64.b64decode(d['content']).decode(); m=re.search(r'version:\s*\"([^\"]+)\"', c); print(m.group(1) if m else 'unknown')"
比较版本:
{current_version} < 远程最新版本 → 提示用户:
发现 deep-skill-finder 有新版本(当前 {current_version},最新 {latest_version}),建议更新以获得最新功能和修复。要现在更新吗?
skillVersion={current_version}){current_version} >= 远程最新版本 → 正常继续后续所有搜索/下载 API 请求会自动携带 skillVersion={current_version} 参数(脚本已内置),服务端可用于版本统计和兼容性处理
注意:如果网络环境无法访问对应渠道 API,版本检查会超时或失败,此时直接使用本地版本继续即可,不影响核心功能。
survey_prompted 状态
先判断用户输入是否包含明确的 skill 需求:如果描述太模糊(如只说"找个skill""推荐个技能"),先检查对话上下文中是否有可推断的需求,如有则基于上下文发起检索;如无则追问用户想找什么方向的 skill,拿到具体描述后再检索。
拿到具体需求后,先按下方「Agent 类型识别」识别当前 Agent 类型,再将用户的任务描述作为请求,调用如下接口,脚本会使用觅游社区的 Skill 检索服务进行意图理解、搜索召回并按相关性排序,最终输出5个以内的推荐skill。
{skill_dir} 为当前 deep-skill-finder skill 自身的目录(区别于下方安装检查中的 {skills_dir})。
{python} {skill_dir}/scripts/deep_skill_search.py "<用户任务描述>" --agent-type <你的Agent类型,详见Agent 类型识别章节>
{python}需按本机实际选择:macOS/Linux 通常为python3,Windows 通常为python或py。下同。
根据接口返回结果,按以下规则格式化输出。这 6 条规则是顺序执行的主流程步骤,不是可选提示,Agent 禁止跳过任何一条。
规则 1 - 输出 TOP5:按照相关性从高到低推荐,最多 5 个(不足就少输出,0 个时告知用户"没有找到完全匹配的 skill,建议换个关键词或更简短的描述再试一次")
规则 2 - 展示格式:每个 skill 使用列表格式展示(非表格),每个 skill 包含以下 3-4 行:
#序号 + Skill 名称(Markdown 链接)下载量 | 安全审查门槛(有使用前提时才输出,无则跳过此行)结合你的需求(基于 reason 和用户 query 的推荐语)直接使用接口结果里的 name 构造 DeepSkill Market 详情页地址:先对 name 做 URL 编码,再渲染为 Markdown 链接 [{name}](https://www.deepskill.market/skill/skill?name={url_encoded_name}&ref=deep-skill-finder)。不要依赖搜索脚本返回额外链接字段。禁止在名称后用括号、破折号或单独一行追加原始链接。
规则 3 - 各字段内容:根据返回值中的 reason、downloadCount 等信息,结合用户 query,为每个 skill 填写以下字段:
downloadCount规则 4 - 最优推荐(重要):返回结果中的第一个(序号1)是本服务根据用户任务描述进行深度分析后的最优推荐结果,返回结果已由后端按相关性排序,直接推荐给用户即可。不需要自行重新分析或排序,不要添加"综合你的需求,我比较推荐XXX"等自行分析的结论,最优推荐确认为序号1。最优推荐句中的 Skill 名称也必须使用规则 2 中由 name 构造的同一个 Markdown 链接。
规则 5 - 首次搜索体验反馈:
survey_prompted 未设置),在输出末尾自然地附带以下反馈邀请,并立即设置 survey_prompted=true(每个会话仅出现一次):
🔍 花 3 分钟填写检索体验反馈,帮助我们持续优化 → https://wenjuan.meituan.com/m/survey/5654243
survey_prompted=true,禁止再展示此内容规则 6 - 重试时的反馈邀请(可选):
如果本次检索结果或推荐质量未能满足你的需求,欢迎在这里告诉我们 → https://wenjuan.meituan.com/m/survey/5654816
输出模板(严格参照以下格式输出,将占位符替换为实际值):
经过对实测数据的全量检索、安全审查与深度分析,为你找到以下匹配 skill:
#1 {name}
- 下载量:{downloadCount} | 安全审查:{safetyStatus}
- 门槛:{prerequisites}(可选,无使用前提时此行跳过)
- {reason}
#2 {name}
- 下载量:{downloadCount} | 安全审查:{safetyStatus}
- 门槛:{prerequisites}(可选,无使用前提时此行跳过)
- {reason}
...(最多5个)
最优推荐是 #1 {name}({suggestion})。你想安装哪一个?告诉我编号或名字就行。
【规则 5/6 追加内容在此处】
异常处理: 脚本执行出错时,禁止将原始错误信息(如 "The read operation timed out")直接展示给用户,需按以下规则处理:
| 异常场景 | 处理方式 | 输出示例 |
|---|---|---|
| 搜索超时 | 自动重试最多 3 次(无需告知用户重试过程),仍失败则告知用户 | "搜索服务暂时不可用,请稍后再试。" |
| 返回 0 条结果 | 告知用户换描述重试 | "没有找到完全匹配的 skill,建议换个关键词或更简短的描述再试一次。" |
| 网络错误 / 连接失败 | 告知用户网络问题 | "网络连接异常,请检查网络后重试。" |
| 脚本执行报错(其他) | 翻译为用户友好的中文提示 | "搜索服务遇到了一点问题,建议稍后重试。如持续出现,可反馈给 skill 作者。" |
当用户通过以下方式确认选择时,进入安装流程:
确认用户选择后,进行本地检查:检查 {skills_dir}/{name}/SKILL.md 是否存在({skills_dir} 为当前 Agent 的 skills 目录,{name} 为用户选择的 skill 名称)。若存在则视为已安装,告知用户"该 skill 已安装,无需重复安装,是否直接运行?";若不存在,则执行安装流程:
{python} {skill_dir}/scripts/deep_skill_install.py <name> --dir <当前 Agent 的 skills 目录> --agent-type <你的Agent类型,详见Agent 类型识别章节>
安装脚本执行后,根据退出状态输出结果:
安装或推荐的目标 Skill 在当前任务中完成一次实质执行并得到结果后,在最终回复末尾询问一次:
要评价一下刚才使用的
{skill_name}吗?我会先展示脱敏后的usageScenario(使用场景)和skillPerformance(技能实际工作情况),请你检查是否需要修改、是否包含任何敏感信息。若无需修改,直接给 1–10 分即可,也可以附上一段评语(可选);如有修改,我会展示修改后的内容再请你确认一次。如果有截图或录屏能辅助说明问题,请提供本地文件路径(可多个,支持图片和视频)。你不需要关心文件大小:我会自动处理——小文件直接内嵌,大文件通过服务端中转上传。但如果单张图片超过 10 MB,我会先帮你压缩;单个视频超过 100 MB 则请换一段更短的录屏。附件中请勿包含敏感信息,上传时只会使用文件名,不会包含本地路径。
只有安装、读取说明或未得到任务结果时不触发。每个“Skill + 本次使用场景”只询问一次;用户拒绝、忽略或已评价时不追问。
用户同意,或主动说“评价技能”“给 Skill 打分”时,完整读取并执行 references/skill-evaluation.md。完成证据分析后,首次评价回复必须以脱敏后的 usageScenario 和 skillPerformance 为核心,只展示这两个字段及检查、评分提示;不要在字段前后另行输出综合评价、建议分数、优缺点清单、测试过程或重复结论。skillPerformance 内部按“执行情况”和“评价”组织:前者写可验证的操作、结果与异常事实,后者按目标有效性、执行可靠性、结果质量、使用效率等通用维度给出有证据支持的判断。用户未修改这两个字段而直接评分时可立即提交,不再重复确认;用户修改任一字段时,必须展示修改后的脱敏内容并再确认一次后提交。
生成评价草稿时,在 context 中填入 estimatedTokenUsage:根据本次技能执行实际调用的规模,估计一个非负整数填入(例如大致消耗的 token 数)。该值由 Agent 人工估计,不要求精确;若难以估计可设为 null。该字段不属于敏感信息,但会随评价一起上传,请在首次评价提示中明确告知用户。
收集附件路径:如果用户提供了截图或录屏路径,在运行 upload 命令时通过 --attachment <path> 传入,可重复多次。Agent 不需要先检查文件大小或决定走哪种上传方式,脚本会自动分流:小于 50 KB 内嵌,大于等于 50 KB 走服务端中转。
上传前请按以下规则预处理:
image/* 和 video/* 类型文件,拒绝其他格式。IDE 中用户可直接粘贴路径;命令行中请用户逐行输入或空格分隔后由 Agent 提取为多个 --attachment 参数。不提供附件时命令与之前完全一致。
评价上传完成之后,skill_feedback.py脚本返回结果json里面取出"feedback_list"信息,这是一个“查看我的评价”的页面url,告知用户可以去这个链接 我的评价 查看“我的评价”列表.
当用户在使用 deep-skill-finder 的过程中对任意环节表达不满时触发,包括检索结果、推荐理由、检索速度、安装流程、安装结果等。只要用户表达了对本 skill 任何方面的不满,都按以下规则处理。
触发信号:用户说"重新找""换一个""换一组""再试一次""重试""换个关键词"等,没有伴随负面评价词汇。
响应流程:
如果对本 Skill 的检索结果、推荐质量或安装流程有任何不满意,可以在这里反馈 → https://wenjuan.meituan.com/m/survey/5654816
💡 注意:此场景下用户只是要求重试,没有表达不满情绪,因此不道歉,避免过度反应。
触发信号:用户明确表达负面情绪,没有明确要求重新尝试,关键词包括但不限于:
响应流程:
道歉安抚:
很抱歉带来不好的体验,我们会持续改进 deep-skill-finder 的检索和推荐质量。
提供反馈链接:
如果你愿意,可以在这里反馈遇到的具体问题(检索、推荐、安装等任何环节均可)→ https://wenjuan.meituan.com/m/survey/5654816
询问是否需要重新尝试:
需要我帮你换种方式重新尝试吗?
如果用户同时表达不满+要求重试(如"这些都不好,重新找"),按场景 A 处理(先执行重试,末尾追加反馈询问)。不在重试前道歉,避免打断用户意图。
| 命令 | 用途 |
|---|---|
deep_skill_search.py | 根据用户任务检索skill |
deep_skill_install.py | 下载安装 skill |
skill_feedback.py | 探测已知 trajectory Provider、解析 Codex 快速路径、校验脱敏统一草稿、将确认内容默认上传到远程服务器(失败时回退保存到本地 outbox) |
为了得到更精准的搜索结果,调用搜索/下载脚本时需要上报当前 Agent 类型信息(agent_type)。请按以下方式识别:
从环境变量识别(首选):检查是否存在 <APP>_USER_DATA_DIR 格式的环境变量,提取其路径末尾的目录名作为 Agent 类型
QCLAW_USER_DATA_DIR → QClawHERMES_DATA_DIR → Hermes从 system prompt 识别:若你的运行环境提供 system prompt(如 Catdesk、Hermes 等),从中识别 Agent 框架名称
从 IDENTITY.md 识别:若以上均无法识别,检查本地 IDENTITY.md 是否存在并包含 ## 标识 小节,从其中提取 App 名称
自行判断:若以上均无法识别,根据你所在的运行时框架自行判断,可省略该参数,脚本会正常执行但不带 agent_type 上报
调用安装脚本时需要指定 --dir 参数为目标 Agent 的 skills 目录。确定方式:
<APP>_USER_DATA_DIR 环境变量,在其路径下查找 skills/ 子目录
若环境变量路径下无 skills/ 子目录,则退回到工作区查找。skills/ 子目录(含 SKILL.md 即为有效)--list 参数验证目录是否正确,返回已安装列表即说明路径有效以下是一个完整的端到端交互示例,展示从搜索到安装的全流程:
用户:找个写小红书爆款帖子的skill
Agent 执行:
{python} {skill_dir}/scripts/deep_skill_search.py "写小红书爆款帖子" --agent-type openclaw
Agent 输出:
经过对实测数据的全量检索、安全审查与深度分析,为你找到以下匹配 skill:
- 下载量:5200 | 安全审查:✅ Pass
- 爆款笔记生成器,内置标题公式和内容模板,擅长情绪共鸣和种草风格,直接对应写小红书爆款帖子的需求。无需配置凭证,开箱即用。
- 下载量:3100 | 安全审查:✅ Pass
- 小红书全流程创作技能,覆盖美妆护肤等六大赛道,适合需要多赛道内容的用户。
- 下载量:1800 | 安全审查:✅ Pass
- 专注爆款文案生成,覆盖美妆赛道,适合美妆垂类创作者。
最优推荐是 #1 qf-xiaohongshu-writer(#1 内置标题公式和内容模板,开箱即用且下载量最高;#2 覆盖六大赛道但单赛道深度不如#1;#3 只适合美妆垂类。建议优先用#1)。你想安装哪一个?告诉我编号或名字就行。
📌 更多推荐(社区热门)
- agentcore — 智能云浏览器:在 AWS Bedrock AgentCore 云浏览器上运行 agent-browser
- self-improving-agent — 自我优化代理:记录经验、错误及修正,实现持续改进
- skill-vetter — 技能安全审查:AI技能安全审查,安装前必检
- xiaohongshu-cover-gen — 小红书封面生成:为小红书帖子生成封面图和内容图卡
- rednote-creator — 小红书创作:全流程创作技能,覆盖美妆护肤等六大赛道
【规则 5/6 追加内容在此处】
用户:1
Agent 检查:确认本地未安装 qf-xiaohongshu-writer,执行安装。
Agent 执行:
{python} {skill_dir}/scripts/deep_skill_install.py qf-xiaohongshu-writer --dir <当前 Agent 的 skills 目录> --agent-type <你的Agent类型,详见Agent 类型识别章节>
Agent 输出: ✅ qf-xiaohongshu-writer 已安装成功。要用这个 skill 来完成你的任务吗?