When to Use
User asks how to do something, wonders whether a skill exists, wants a new capability, or asks for the best skill for a job. Use before solving manually when an installable skill could extend the agent, replace a weak skill, or offer a safer alternative.
Architecture
Memory lives in ~/skill-finder/. If ~/skill-finder/ does not exist or is empty, run setup.md.
CODEBLOCK0
Migration
If upgrading from a previous version, see migration.md for data migration steps.
The agent MUST check for legacy memory structure before proceeding.
Quick Reference
| Topic | File |
|---|
| Setup | INLINECODE4 |
| Memory template |
memory-template.md |
| Search strategies |
search.md |
| Evaluation criteria |
evaluate.md |
| Skill categories |
categories.md |
| Edge cases |
troubleshooting.md |
Activation Signals
Activate when the user says things like:
- - "How do I do X?"
- "Is there a skill for this?"
- "Can you do this better?"
- "Find a skill for X"
- "I need a safer or more maintained option"
- "What should I install for this task?"
Also activate when the user describes a missing capability, a repetitive workflow, or frustration with a current skill.
Search Sources
This skill can search two ecosystems:
| Source | Search | Install | Best for |
|---|
| INLINECODE10 | INLINECODE11 | INLINECODE12 | Curated registry search with built-in inspection |
| INLINECODE13 |
npx skills find [query] |
npx skills add <owner/repo@skill> | Broad open ecosystem from the
skills CLI |
Default mode: search both sources, then compare results together.
Configurable modes:
- -
both — recommended default - INLINECODE18 — only search ClawHub
- INLINECODE19 — only search the Skills.sh ecosystem
Store the current mode in ~/skill-finder/memory.md. If the user has no saved preference yet, explain the two sources once, recommend both, and save the explicit choice.
Security Note
This skill uses npx clawhub and npx skills to discover and install skills from two different ecosystems. Review candidates before installation, keep installs opt-in, and keep the source attached to every recommendation.
Data Storage
This skill stores local preference data in ~/skill-finder/:
- - Source mode, explicit preferences, liked skills, and passed skills in the local memory file inside INLINECODE25
- Optional recent search history in a local search log inside INLINECODE26
Create on first use: INLINECODE27
Core Rules
1. Search Both Sources by Default
Unless the user has explicitly chosen otherwise, search
ClawHub and
Skills.sh for the same need, then compare the strongest results together.
Never assume a Skills.sh result can be installed with clawhub, or the reverse. Keep the source and install command attached to every recommendation.
2. Trigger on Capability Gaps, Not Just Explicit Search Requests
Do not wait only for "find a skill." Activate when the user describes missing functionality, asks how to do a task faster, or wants a better tool for a job.
3. Search by Need, Not Name
User says "help with PDFs" - think about what they actually need:
- - Edit? ->
npx clawhub search "pdf edit" and INLINECODE33 - Create? ->
npx clawhub search "pdf generate" and INLINECODE35 - Extract? ->
npx clawhub search "pdf parse" and INLINECODE37
4. Evaluate Before Recommending
Never recommend blindly. Inspect strong candidates and check
evaluate.md criteria:
- - Description clarity
- Download count (popularity = maintenance)
- Last update (recent = active)
- Author or repository reputation
- Install scope and friction
For Skills.sh candidates, pay attention to the package source and install string the CLI returns.
5. Present a Decision, Not a Dump
Don't just list skills. Explain why each fits, who it is best for, and why the winner wins:
"Best fit: pdf-editor from ClawHub — handles form filling and annotations, 2.3k downloads, updated last week. Matches your need for editing contracts better than the Skills.sh options."
When there are multiple good fits, rank the top 1-3 and call out tradeoffs clearly.
6. Learn Preferences and Source Mode
When user explicitly states what they value, confirm and update
~/skill-finder/memory.md:
- - "Search both by default" -> set source mode to INLINECODE42
- "Only use Skills.sh for this workspace" -> set source mode to INLINECODE43
- "Only check ClawHub" -> set source mode to INLINECODE44
- "I prefer minimal skills" -> add to Preferences
- "This one is great" -> add to Liked with reason
- "Too verbose" -> add to Passed with reason
Do not infer hidden preferences from behavior-only signals.
7. Check Memory First
Before recommending, read memory.md:
- - Respect saved source mode unless the user overrides it
- Skip skills similar to Passed ones
- Favor qualities from Liked ones
- Apply stated Preferences
8. Respect Installation and Security Boundaries
If a candidate skill is marked risky by scanner output, or the install path is unclear:
- - Explain the warning or ambiguity first
- Prefer a safer alternative
- Do not run force-install flags for the user
- Do not auto-accept install prompts with INLINECODE45
- Do not choose global install scope unless the user explicitly wants it
- Install only with explicit user consent
9. Fallback Gracefully
If nothing is strong enough:
- - Say what was searched
- Say which source mode was used
- Explain why the matches are weak
- Help directly or suggest creating a purpose-built skill
Search Commands
CODEBLOCK1
Workflow
- 1. Detect - Is the user describing a capability gap or installable need?
- Load memory - Read
~/skill-finder/memory.md for source mode and preferences - Understand - What does user actually need?
- Search - Use
both by default, or the saved single-source mode - Evaluate - Check quality signals (see
evaluate.md) - Compare - Rank results across both sources by fit + quality
- Recommend - Top 1-3 with clear reasoning and a winner
- Install or fallback - Install only with consent, otherwise help directly
- Learn - Store explicit feedback in memory
Recommendation Format
When presenting results, prefer this structure:
CODEBLOCK2
Common Traps
- - Waiting for the exact phrase "find a skill" -> misses proactive discovery moments
- Searching generic terms -> gets noise. Be specific: "react testing" not "testing"
- Searching only one ecosystem when the saved mode is INLINECODE49
- Recommending by name match only -> misses better alternatives with different names
- Mixing install commands between
ClawHub and INLINECODE51 - Ignoring download counts -> low downloads often means abandoned
- Not checking last update -> outdated skills cause problems
Security & Privacy
Data that leaves your machine:
- - Search queries sent to ClawHub registry (public search)
- Search queries sent through the
skills CLI / Skills.sh ecosystem
Data that stays local:
- - All preferences in INLINECODE53
- Search history (if enabled)
This skill does NOT:
- - Install skills without user consent
- Use force-install flags to skip scanner warnings
- Auto-confirm
npx skills add with INLINECODE55 - Switch to global install scope silently
- Collect hidden behavior data
- Access files outside INLINECODE56
Related Skills
Install with
npx clawhub install <slug> if user confirms:
- -
skill-manager — manages installed skills, suggests updates - INLINECODE59 — creates new skills from scratch
- INLINECODE60 — updates existing skills
Feedback
- - If useful: INLINECODE61
- Stay updated: INLINECODE62
何时使用
用户询问如何完成某项操作、想知道是否存在某个技能、需要新功能、或询问某项任务的最佳技能。在手动解决问题之前使用,当可安装的技能可以扩展智能体、替换薄弱技能或提供更安全的替代方案时。
架构
记忆存储在 ~/skill-finder/ 中。如果 ~/skill-finder/ 不存在或为空,则运行 setup.md。
~/skill-finder/
├── memory.md # 来源模式 + 偏好 + 喜欢/跳过的技能
└── searches.md # 最近的搜索历史(可选)
迁移
如果从旧版本升级,请参阅 migration.md 了解数据迁移步骤。
智能体必须先检查旧版记忆结构,然后再继续操作。
快速参考
memory-template.md |
| 搜索策略 | search.md |
| 评估标准 | evaluate.md |
| 技能分类 | categories.md |
| 边缘情况 | troubleshooting.md |
激活信号
当用户说出以下内容时激活:
- - 我该如何做X?
- 有没有这方面的技能?
- 你能做得更好吗?
- 找一个做X的技能
- 我需要一个更安全或维护更好的选项
- 我应该为这个任务安装什么?
当用户描述缺失的功能、重复的工作流程或对当前技能感到不满时也激活。
搜索来源
该技能可以搜索两个生态系统:
| 来源 | 搜索 | 安装 | 最适合 |
|---|
| ClawHub | npx clawhub search query | npx clawhub install <slug> | 带内置检查的精选注册表搜索 |
| Skills.sh |
npx skills find [query] | npx skills add
| 来自 skills CLI 的广泛开放生态系统 |
默认模式:搜索两个来源,然后一起比较结果。
可配置模式:
- - both — 推荐默认值
- clawhub — 仅搜索 ClawHub
- skills.sh — 仅搜索 Skills.sh 生态系统
将当前模式存储在 ~/skill-finder/memory.md 中。如果用户尚未保存偏好,则解释一次两个来源,推荐 both,并保存明确选择。
安全说明
该技能使用 npx clawhub 和 npx skills 从两个不同的生态系统发现和安装技能。在安装前审查候选技能,保持安装为选择加入,并在每个推荐中附上来源信息。
数据存储
该技能将本地偏好数据存储在 ~/skill-finder/ 中:
- - 来源模式、明确偏好、喜欢的技能和跳过的技能存储在 ~/skill-finder/ 内的本地记忆文件中
- 可选的最近搜索历史存储在 ~/skill-finder/ 内的本地搜索日志中
首次使用时创建:mkdir -p ~/skill-finder
核心规则
1. 默认搜索两个来源
除非用户明确选择其他方式,否则搜索 ClawHub 和 Skills.sh 以满足相同需求,然后一起比较最强结果。
切勿假设 Skills.sh 的结果可以用 clawhub 安装,反之亦然。在每个推荐中附上来源和安装命令。
2. 在能力缺口时触发,而不仅仅是明确的搜索请求
不要只等待找技能。当用户描述缺失功能、询问如何更快完成任务或想要更好的工具时激活。
3. 按需求搜索,而非名称
用户说帮助处理PDF——思考他们实际需要什么:
- - 编辑?-> npx clawhub search pdf edit 和 npx skills find pdf edit
- 创建?-> npx clawhub search pdf generate 和 npx skills find pdf generate
- 提取?-> npx clawhub search pdf parse 和 npx skills find pdf parse
4. 推荐前先评估
切勿盲目推荐。检查强候选技能并查看 evaluate.md 标准:
- - 描述清晰度
- 下载量(流行度 = 维护度)
- 最后更新(近期 = 活跃)
- 作者或仓库声誉
- 安装范围和摩擦度
对于 Skills.sh 候选技能,注意 CLI 返回的包来源和安装字符串。
5. 呈现决策,而非数据倾倒
不要仅仅列出技能。解释每个技能为何适合、最适合谁、以及胜出者为何胜出:
最佳匹配:来自 ClawHub 的 pdf-editor——处理表单填写和注释,2.3k 下载量,上周更新。比 Skills.sh 的选项更符合您编辑合同的需求。
当有多个好的匹配时,对前 1-3 个进行排名并明确说明权衡。
6. 学习偏好和来源模式
当用户明确说明他们重视什么时,确认并更新 ~/skill-finder/memory.md:
- - 默认搜索两者 -> 将来源模式设置为 both
- 仅为此工作区使用 Skills.sh -> 将来源模式设置为 skills.sh
- 仅检查 ClawHub -> 将来源模式设置为 clawhub
- 我更喜欢最小化技能 -> 添加到偏好
- 这个很棒 -> 添加到喜欢并附上原因
- 太啰嗦 -> 添加到跳过并附上原因
不要仅从行为信号推断隐藏偏好。
7. 先检查记忆
在推荐之前,读取 memory.md:
- - 尊重保存的来源模式,除非用户覆盖
- 跳过与已跳过技能相似的技能
- 偏好来自喜欢技能的特质
- 应用声明的偏好
8. 尊重安装和安全边界
如果候选技能被扫描输出标记为有风险,或安装路径不明确:
- - 首先解释警告或歧义
- 优先选择更安全的替代方案
- 不要为用户运行强制安装标志
- 不要使用 -y 自动接受安装提示
- 除非用户明确要求,否则不要选择全局安装范围
- 仅在用户明确同意时安装
9. 优雅降级
如果没有足够强的匹配:
- - 说明搜索了什么
- 说明使用了哪种来源模式
- 解释为什么匹配较弱
- 直接提供帮助或建议创建专用技能
搜索命令
bash
ClawHub 搜索和检查
npx clawhub search query
npx clawhub inspect
npx clawhub install
npx clawhub list
Skills.sh 生态系统
npx skills find [query]
npx skills add
npx skills list
npx skills check
npx skills update
npx skills find 返回的示例安装字符串
npx skills add vercel-labs/agent-skills@vercel-react-best-practices
工作流程
- 1. 检测 - 用户是否在描述能力缺口或可安装的需求?
- 加载记忆 - 读取 ~/skill-finder/memory.md 获取来源模式和偏好
- 理解 - 用户实际需要什么?
- 搜索 - 默认使用 both,或使用保存的单来源模式
- 评估 - 检查质量信号(参见 evaluate.md)
- 比较 - 根据匹配度和质量对两个来源的结果进行排名
- 推荐 - 前 1-3 个,附上清晰的理由和胜出者
- 安装或降级 - 仅在同意时安装,否则直接提供帮助
- 学习 - 将明确反馈存储在记忆中
推荐格式
呈现结果时,优先使用此结构:
text
最佳匹配:
来源:
胜出原因:<1-2 行>
安装:<精确命令>
权衡:<它不涵盖的内容或替代方案更强的方面>
替代方案:,
下一步:立即安装或继续而不安装
常见陷阱
- - 等待确切的短语找技能 -> 错过主动发现的机会
- 搜索通用术语 -> 得到噪音。要具体:react testing 而非 testing
- 当保存的模式为 both 时只搜索一个生态系统
- 仅按名称匹配推荐 -> 错过名称不同但更好的替代方案
- 混淆 ClawHub 和 Skills.sh 的安装命令
- 忽略下载量 -> 低下载量通常意味着已废弃
- 不检查最后更新 -> 过时的技能会导致问题
安全与隐私
离开您机器的数据:
- - 发送到 ClawHub 注册表的搜索查询(公开搜索)
- 通过 skills CLI / Skills.sh 生态系统发送的搜索查询
留在本地的数据:
- - ~/skill-finder/memory.md 中的所有偏好
- 搜索历史(