feat(skills): add ClawHub registry catalog parser and loader

This commit is contained in:
William Valentin
2026-02-16 00:10:41 -08:00
parent 4c6d1d724d
commit 4391c6e5b3
5 changed files with 298 additions and 13 deletions
@@ -27,22 +27,22 @@
Checklist:
- [ ] Add registry types + parser module (`src/skills/registrySource.ts` or equivalent).
- [ ] Support one source shape:
- [ ] local JSON file path (for deterministic tests and offline use)
- [ ] optional HTTPS URL source (fetch + timeout + parse)
- [ ] Validate required fields for each skill entry:
- [ ] `id`, `name`, `version`, `source`, `summary`
- [ ] optional trust metadata (`publisher`, `homepage`, `sha256`)
- [ ] Reject malformed registry entries with actionable errors.
- [x] Add registry types + parser module (`src/skills/registrySource.ts` or equivalent).
- [x] Support one source shape:
- [x] local JSON file path (for deterministic tests and offline use)
- [x] optional HTTPS URL source (fetch + timeout + parse)
- [x] Validate required fields for each skill entry:
- [x] `id`, `name`, `version`, `source`, `summary`
- [x] optional trust metadata (`publisher`, `homepage`, `sha256`)
- [x] Reject malformed registry entries with actionable errors.
Acceptance:
- `flynn skills` internals can load a normalized registry catalog.
- [x] `flynn skills` internals can load a normalized registry catalog.
Tests:
- [ ] Unit tests for parser/validation edge cases.
- [x] Unit tests for parser/validation edge cases.
---
+13 -3
View File
@@ -213,10 +213,20 @@
},
"clawhub-registry": {
"file": "2026-02-16-clawhub-registry-checklist.md",
"status": "planned",
"status": "in_progress",
"date": "2026-02-16",
"updated": "2026-02-16",
"summary": "Scoped the next OpenClaw-gap milestone as a phased ClawHub-style registry implementation: catalog source + validation, CLI discovery, install-by-id via existing scanner pipeline, and docs/doctor visibility."
"summary": "Started ClawHub registry milestone with Phase 1 complete: added validated registry catalog loader/parser with local file + HTTPS source support and tests. Next step is CLI registry discovery UX.",
"files_created": [
"docs/plans/2026-02-16-clawhub-registry-checklist.md",
"src/skills/registrySource.ts",
"src/skills/registrySource.test.ts"
],
"files_modified": [
"src/skills/index.ts",
"docs/plans/state.json"
],
"test_status": "pnpm test:run src/skills/registrySource.test.ts + pnpm typecheck passing"
},
"credential-system-v2-api-and-oauth": {
"file": "2026-02-15-credential-system-v2-api-and-oauth-checklist.md",
@@ -2757,7 +2767,7 @@
"gmail_auth_cli": "flynn gmail-auth command implemented with OAuth2 flow, doctor check, config routed to Telegram",
"native_audio_support": "completed — smart routing for native audio (Gemini/OpenAI/GitHub) vs Whisper transcription fallback",
"remaining_phases_completion": "Phase 1: 3/3 (100%) — context levels, command registry, memory structure. Phase 2: 3/3 (100%) — component registry, confidence routing, history index. Phase 3: 2/2 (100%) — adaptive memory/compaction, truthfulness/autonomy hardening",
"next_up": "Implement ClawHub registry milestone checklist (Phase 1: registry source/types and validation)"
"next_up": "ClawHub registry Phase 2: add CLI discovery commands (registry list/show with JSON + filtering)"
},
"soul_md_and_cron_create": {
"date": "2026-02-11",