Skip to main content
ClaudeWave
EN, English
Skill1.9k repo starsupdated 5d ago

ha-find-skills

The ha-find-skills workflow discovers and installs third-party skills from external registries when the active catalog lacks a needed capability. It searches ClawHub, Skillhub, or GitHub in order, validates candidates against licensing and safety criteria, and installs vetted skills to the Hope Agent skills directory after user confirmation. Use it when users request integrations like Slack or Notion, ask explicitly to find skills, or when custom code would replace an existing published skill.

Install in Claude Code
Copy
git clone --depth 1 https://github.com/shiwenwen/hope-agent /tmp/ha-find-skills && cp -r /tmp/ha-find-skills/skills/ha-find-skills ~/.claude/skills/ha-find-skills
Then start a new Claude Code session; the skill loads automatically.

SKILL.md

# Find Skills

Hope Agent can load skills from multiple sources. When the user needs a capability the active catalog doesn't cover, this workflow finds a candidate on a public registry, confirms with the user, and installs it into `~/.hope-agent/skills/` so it's picked up on next prompt rebuild.

## Before searching — check what's already there

1. Look at the active skill catalog in the current system prompt. Many needs (notes, reminders, weather, TTS, GitHub, Slack, …) may already be covered by a bundled or user-installed skill.
2. If anything plausibly matches, **invoke it instead** — don't reinstall.
3. Only proceed to external search when the gap is real.

## Search — pick the first available source

Registries are checked in order; use the first one whose CLI is installed. If none is installed, fall back to source 3.

### 1. ClawHub (`clawhub` CLI, registry: clawhub.com)

```bash
clawhub --version            # detect
clawhub search "<query>"     # keyword search
```

Install flow:

```bash
clawhub install <slug> --dir ~/.hope-agent/skills
```

### 2. Skillhub (`skillhub` CLI, Tencent-CDN registry — better for users in China)

```bash
skillhub --version           # detect
skillhub search "<query>"
skillhub install <slug>      # installs to current workspace ./skills by default
```

After `skillhub install`, if the slug landed under `./skills/<name>/`, move it to `~/.hope-agent/skills/<name>/` so Hope Agent's extra_skills_dir picks it up.

### 3. GitHub code search (fallback, no CLI required)

Use `gh` (already available on most machines) to search public repos for `SKILL.md` files:

```bash
gh api -X GET search/code \
  -f q='filename:SKILL.md "<keyword>"' \
  --jq '.items[] | {repo: .repository.full_name, path: .path, url: .html_url}' \
  | head -20
```

For promising hits, fetch the raw SKILL.md to read the frontmatter (`name`, `description`, `license`) before recommending.

## Quality gate — before recommending

Every candidate must pass:

- **License present and permissive** (MIT / Apache-2.0 / BSD / ISC / CC-BY). If the repo has no LICENSE file, flag it — user decides whether to accept the legal gray area.
- **SKILL.md frontmatter parses cleanly** (`name` + `description` minimum).
- **No obvious red flags** in bundled scripts: `curl … | sh`, network calls to unknown hosts, credential harvesting patterns. Skim scripts before install.
- **Install count / stars** if the registry exposes them (`clawhub search` prints `installs`): prefer >1k installs or >50 stars.

## Install — always confirm with the user first

This is a **HIGH-risk** operation (arbitrary third-party code joins the agent's toolchain). Workflow:

1. Present top 1–3 candidates to the user with: name, one-line description, source URL, license, install count / stars.
2. **Ask explicitly**: "Install `<slug>` from `<source>`? This adds it to `~/.hope-agent/skills/<name>/` and runs on future turns."
3. Only after explicit "yes" / "go ahead":
   - Run the registry CLI install, or `git clone` the repo into `~/.hope-agent/skills/<slug>/`.
   - If the skill's frontmatter declares `metadata.openclaw.install` or `metadata.hope-agent.install` with `bins:`, those dependencies need separate install (via brew/npm/go/uv) — Hope Agent's Skills panel has an "Install dependency" button, or use `ha-settings` to toggle `allow_remote_install` for HTTP-mode users.
4. Verify install: `ls ~/.hope-agent/skills/<slug>/SKILL.md` — confirm the file exists.

## Post-install

Tell the user:

> Installed `<slug>` into `~/.hope-agent/skills/<slug>/`. It will appear in the skill catalog on the next turn / conversation. Open **Settings → Skills** to review, or disable it if unwanted.

The catalog rebuilds automatically when the cache version bumps (add/remove/toggle triggers a bump). If the user doesn't see the new skill in the next turn, ask them to toggle it in Settings → Skills, which forces a refresh.

## What this skill will NOT do

- It won't install skill dependencies (brew / npm / go binaries) silently — those require explicit user consent via the Skills panel or `ha-settings`.
- It won't touch bundled skills (`skills/` in the app install) — those are vendored and versioned with the release.
- It won't delete installed skills. Use Settings → Skills or tell the user to `rm -rf ~/.hope-agent/skills/<slug>/`.

## Credits

Design inspired by [`vercel-labs/skills#find-skills`](https://github.com/vercel-labs/skills), which popularised the "agent finds its own skills" pattern. ClawHub (MIT, `openclaw/clawhub`) and Skillhub (Tencent-COS installer) are the two registries this workflow speaks to; neither source file has been vendored — the CLI usage documented above is factual interoperation notes.
code-reviewSkill

>

email-draftSkill

Use when the user asks to draft, polish, translate, or reply to an email. Produces a clean draft with subject line, greeting, body, and sign-off, plus a pre-send self-check.

feishuSkill

Use when the user mentions 飞书 / Feishu / Lark workspace operations: docx (云文档) read/write, bitable (多维表格) records / views / dashboards, drive (云盘) upload/download, wiki (知识库) link resolution, approval (审批) instance create/cancel/query, calendar (日历) event create/list/update + attendees, contact (联系人) user/department lookup, hire (招聘) job/talent/application listing. Trigger on phrases like 'OKR 周报', '把这份文档发到飞书云盘', '给团队拉个评审会议', '查 [姓名] 的联系方式', '撤销那条审批', '/wiki 链接', or any request that mentions a feishu / lark URL / token (doxcn.../bascn.../wikcn.../boxcn.../om_...).

ha-browserSkill

Hope Agent browser automation — the standard `status → tabs → snapshot → act` loop, stale-ref recovery rules, and what to do when login / 2FA / captcha / camera-prompt / dialog blocks progress. Load this skill whenever you reach for the `browser` tool. Trigger on: user asks the agent to open / control / click / scrape / log into / verify something in a web app ('open X and click Y', '打开 X 然后点击 Y', 'log into my Gmail', 'scrape this page', 'fill out the form on X'); user reports a flow that requires real browser context (cookies, JS-rendered content, OAuth).

ha-code-reviewSkill

Hope-native review of uncommitted, staged, commit, branch, or PR changes: discover concrete regressions, independently verify candidates, and report actionable findings first without speculative noise.

ha-coding-commonSkill

Hope-native baseline for implementing, fixing, refactoring, and maintaining code: inspect the repository first, protect user changes, keep scope narrow, and finish with direct evidence.

ha-coding-planSkill

Hope-native implementation planning for non-trivial code changes: ground the plan in repository evidence, order dependencies, name critical files and risks, define verification, then continue execution when allowed.

ha-data-analyticsSkill

Hope-native local-first data analysis and Artifact reporting. Use for CSV/XLSX analysis, KPI readouts, metric diagnosis, product/business analysis, data-quality review, dashboards, charts, analytical reports, 数据分析, 指标诊断, 数据质量, 分析报告, or when the user wants a shareable offline HTML/ZIP/Markdown/PDF result. Produces the versioned AnalysisArtifactV1 contract and registers it with the artifact tool; never guesses missing data or requires public web deployment.