Skip to content

Commit bfeb486

Browse files
committed
feat: add open-claw-skills plugin — 4,957 remote OpenClaw skills
Lightweight plugin that registers a remote_repo provider pointing to github.com/javimosch/open-claw-skills. On install, the post_install hook auto-registers the provider. Skills are indexed from GitHub's Tree API on 'supercli skills sync'. Author: Javier Leandro Arancibia
1 parent 920b1c4 commit bfeb486

5 files changed

Lines changed: 134 additions & 0 deletions

File tree

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
#!/usr/bin/env node
2+
/**
3+
* post-install.js — Registers the open-claw-skills remote_repo provider
4+
* after plugin installation. Called by supercli's post_install hook.
5+
*
6+
* Env vars set by supercli:
7+
* SUPERCLI_PLUGIN_NAME — "open-claw-skills"
8+
* SUPERCLI_PLUGIN_DIR — path to this hook's directory
9+
*/
10+
11+
const path = require("path");
12+
13+
// Resolve skills-catalog from the supercli project (3 levels up from hooks/)
14+
const catalogPath = path.resolve(__dirname, "..", "..", "..", "cli", "skills-catalog");
15+
const catalog = require(catalogPath);
16+
17+
const PROVIDER_NAME = "open-claw-skills";
18+
const SOURCE_REPO = "https://github.com/javimosch/open-claw-skills";
19+
20+
// Check if provider already exists
21+
const existing = catalog.getProvider(PROVIDER_NAME);
22+
if (existing) {
23+
// Update to remote_repo type if it's currently local_fs
24+
if (existing.type !== "remote_repo") {
25+
catalog.addProvider({
26+
name: PROVIDER_NAME,
27+
type: "remote_repo",
28+
source_repo: SOURCE_REPO,
29+
root: "skills",
30+
ref: "main",
31+
enabled: true,
32+
});
33+
console.log(JSON.stringify({ ok: true, action: "updated", provider: PROVIDER_NAME }));
34+
} else {
35+
console.log(JSON.stringify({ ok: true, action: "already_configured", provider: PROVIDER_NAME }));
36+
}
37+
} else {
38+
catalog.addProvider({
39+
name: PROVIDER_NAME,
40+
type: "remote_repo",
41+
source_repo: SOURCE_REPO,
42+
root: "skills",
43+
ref: "main",
44+
enabled: true,
45+
});
46+
console.log(JSON.stringify({ ok: true, action: "registered", provider: PROVIDER_NAME }));
47+
}
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
{
2+
"plugin": "open-claw-skills",
3+
"binary": null,
4+
"check": null,
5+
"install_steps": [
6+
"No binary dependencies — pure remote skill library",
7+
"supercli plugins install ./plugins/open-claw-skills --on-conflict replace",
8+
"supercli skills sync # Index skills from GitHub"
9+
],
10+
"note": "This plugin registers a remote_repo provider. Skills are fetched from GitHub's Tree API on sync."
11+
}

plugins/open-claw-skills/meta.json

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
{
2+
"description": "open-claw-skills — 4,957 curated OpenClaw skills. Remote skill library from GitHub covering 30 categories: AI, DevOps, Web, CLI, and more.",
3+
"tags": ["skills", "openclaw", "clawhub", "remote", "library", "curated", "discovery"],
4+
"has_learn": true,
5+
"discover_keywords": "skills,openclaw,clawhub,remote,library,curated,search,browse,discover"
6+
}
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
{
2+
"name": "open-claw-skills",
3+
"version": "1.0.0",
4+
"description": "open-claw-skills — 4,957 curated OpenClaw skills from GitHub. Auto-registers a remote provider on install.",
5+
"source": "https://github.com/javimosch/open-claw-skills",
6+
"checks": [],
7+
"install_guidance": {
8+
"plugin": "open-claw-skills",
9+
"binary": null,
10+
"check": null,
11+
"install_steps": [
12+
"No binary dependencies — pure remote skill library",
13+
"supercli plugins install ./plugins/open-claw-skills --on-conflict replace",
14+
"Skills are auto-indexed from GitHub on first sync"
15+
],
16+
"note": "Registers a remote_repo provider pointing to github.com/javimosch/open-claw-skills. Run 'supercli skills sync' after install."
17+
},
18+
"post_install": {
19+
"script": "./hooks/post-install.js",
20+
"runtime": "node",
21+
"timeout_ms": 10000
22+
},
23+
"learn": {
24+
"file": "skills/quickstart/SKILL.md"
25+
},
26+
"commands": []
27+
}
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
---
2+
name: open-claw-skills
3+
description: Use this skill when the user needs to discover, browse, or learn about OpenClaw agent capabilities. Provides access to 4,957 curated skills across 30 categories via a remote GitHub repository.
4+
---
5+
6+
# open-claw-skills
7+
8+
A remote skill library with 4,957 curated OpenClaw skills, pulled directly from GitHub.
9+
10+
## What's Inside
11+
12+
Skills are sourced from [clawskills.sh](https://clawskills.sh) across 30 categories:
13+
14+
- **Coding Agents & IDEs** (1,162) — Development tools, code editors, CI/CD
15+
- **Web & Frontend** (902) — Web development, frameworks, design
16+
- **DevOps & Cloud** (375) — Infrastructure, containers, deployment
17+
- **Search & Research** (340) — Web search, API discovery
18+
- **Browser & Automation** (310) — Web automation, scraping
19+
- **AI & LLMs** (159) — AI model usage, prompt engineering
20+
- And 24 more categories...
21+
22+
## How It Works
23+
24+
This plugin registers a `remote_repo` provider. On `supercli skills sync`, it fetches the GitHub Tree API to discover all SKILL.md files — no local clone needed.
25+
26+
## Commands
27+
28+
```bash
29+
# Search skills
30+
supercli skills search "docker"
31+
supercli skills search "git"
32+
33+
# Get a specific skill
34+
supercli skills get open-claw-skills:runeweaverstudios.docker-skill
35+
36+
# List all providers
37+
supercli skills providers list
38+
```
39+
40+
## Source
41+
42+
GitHub: [javimosch/open-claw-skills](https://github.com/javimosch/open-claw-skills)
43+
Author: Javier Leandro Arancibia

0 commit comments

Comments
 (0)