Skill Registry System Hub

The catalog of all Claude Code skills under ~/.claude/skills/ — covering 54 actual skill directories plus 3 loose files (skills-registry.json, _INDEX.md, ocl-pre-ship.md, ocl-post-plan.md, skill-usage-log.ndjson = 57 total ls items). CLAUDE.md documents 44 dirs with a breakdown of 36 valid + 5 orphan + 3 invalid frontmatter. Live reality (probed 2026-05-03): 54 dirs — 34 valid SKILL.md + proper frontmatter, 5 orphan no SKILL.md, 8 invalid frontmatter, 7 empty “planned” shells. SKILLS-REGISTRY.md is critically stale (last updated 2026-03-08 — 56 days behind). This hub is the current source of truth until SKILLS-REGISTRY.md is refreshed. Read before building any new skill to avoid duplication.

Quick reference

FieldValue
Canonical file/home/opsadmin/.openclaw/workspace/SKILLS-REGISTRY.md
Live state probels ~/.claude/skills/ | wc -l
Documented count44 dirs (CLAUDE.md §“44 skill dirs, 36 valid + 5 orphan + 3 invalid”)
Live count57 items (54 dirs + 3 loose files, probed 2026-05-03)
Drift+29.5% (54 dirs live vs 44 documented)
Last audit2026-05-03
Drift alertmanual (skills-registry.json tracks 10 of 54; no cron)
Governance gateG-KB-SYNC-WITH-CLAUDEMD (new skill dirs must update CLAUDE.md)
Owner agent_summary

⚠️ SKILLS-REGISTRY.md staleness alert

/home/opsadmin/.openclaw/workspace/SKILLS-REGISTRY.md was last updated 2026-03-08 — 56 days stale as of 2026-05-03. Critical gaps:

  • Lists only 9 skills in the “Existing Skills” table; live filesystem has 54 dirs
  • Lists 7 skills as “Phase 3 — Planned / 🔴 not created”; all 7 exist as dirs on disk now (agent-router, plan-router, plan-updater, mission-control-indexer, system-mapper, two-way-sync-auditor, workflow-enforcer) but they are empty shells with no SKILL.md
  • Does not document any of the 45 skills added after 2026-03-08 (acquisitions-outreach, acquisitions-followup, dispo-blast, hubspot-deal-ingest, il-marketplace-pull, etc.)
  • skills-registry.json in ~/.claude/skills/ registers only 10 skills (the 10 UI/UX skills); 44 skills are unregistered

Action required: Update SKILLS-REGISTRY.md to current state. Until then, use this hub and CLAUDE.md §“Memory & Tools” and §“Tool Trigger Conditions” as source of truth.

⚠️ Scope-change insert (Wave 2 DISPATCH-SPEC mandatory)

Pending skill dispo-buyer-match-ai (OSIL B13) NOT YET CREATED. This is a forward-reference only — the skill will implement InvestorLift AI buyer-match replication without subscription, wrapping HubSpot+InvestorBase scoring. Per osil-il-ai-replication-2026-05-03 B13a (pending Henry signoff). Do not create until B13a is ratified.

Live state snapshot (2026-05-03)

MetricDocumentedLive (probed)DriftStatus
Total ls ~/.claude/skills/ items4457+29.5%drifted
Total dirs (skills only, excl loose files)4454+22.7%drifted
Valid SKILL.md + proper frontmatter3634-5.6%drifted
Orphan dirs (no SKILL.md)550%ok
Invalid frontmatter38+166%drifted
Empty “planned” shell dirs07flagged
Registered in skills-registry.json10100%ok
Unregistered dirs3444flagged
SKILLS-REGISTRY.md freshnesscurrent56 days stalecritical

Skill catalog

Valid skills — proper SKILL.md + frontmatter (34 dirs)

Acquisitions / Deal pipeline cluster

SkillDirOwner agentKey wrapsTrigger
acquisitions-outreachacquisitions-outreach/_summaryunified-outreach-engine.js, smart-outreach-worker.js, deal-outreach-worker.js”send initial CH outreach”, “trigger Stage 1 SMS”
acquisitions-followupacquisitions-followup/_summaryfollow-up-scheduler.js, follow-up-engine.js, conversation-classifier.js (A-G), stage-sync.js”schedule follow-ups”, “handle inbound reply”
hubspot-deal-ingesthubspot-deal-ingest/_summaryworkspace/scripts/hubspot-deal-creator.js (1006 lines, 11 exports)“push deal to HubSpot”, “create HS deal”
il-marketplace-pullil-marketplace-pull/_summarysync-il-api-to-supabase.js, enrich-il-deals-detail-api.js, enrich-contacts.js, account-rollup.js”pull IL deals”, “enrich investorlift”
acq-analyzeacq-analyze/_summaryCH conversation analysis scripts”CH conversations”, “acquisitions performance”
acq-dispatch-testacq-dispatch-test/_summaryacquisitions agent dispatch prompt”test the acq agent”, “dispatch prompt”

Dispo / Buyer blast cluster

SkillDirOwner agentKey wrapsTrigger
dispo-blastdispo-blast/_summarydispo-blast-engine.js (4-channel: CRMLS, InvestorBase, PropStream, showing)“blast deal to buyers”, “send to InvestorBase”
SkillDirOwner agentPurposeTrigger
messaging-compliance-gatemessaging-compliance-gate/_summarySingle enforcement point for per-send compliance checks(auto-invoked pre-send)
messaging-vendor-kb-refreshmessaging-vendor-kb-refresh/_summaryWeekly automated pull of vendor API/webhook changelogs(cron-scheduled)
messaging-vendor-sandbox-testermessaging-vendor-sandbox-tester/_summary11 no-send-gate compliance checks(pre-deploy)
messaging-webhook-handler-templatemessaging-webhook-handler-template/_summaryScaffold new per-vendor webhook handler”scaffold webhook”
bulk-sms-split-testbulk-sms-split-test/_summaryPhase 2 randomized split test across SMS vendors”split test SMS”
vendor-sms-onboardingvendor-sms-onboarding/_summaryGuide through new SMS vendor onboarding”onboard SMS vendor”

BetterFiles / TC Operations cluster

SkillDirOwner agentPurposeTrigger
betterfiles-cdabetterfiles-cda/_summaryGenerate Commission Disbursement Allocation PDF”CDA”, “commission disbursement”
betterfiles-dispo-emailsbetterfiles-dispo-emails/_summaryManage dispo emails for TC operations”dispo email”, “TC email”

Infrastructure / Tooling cluster

SkillDirOwner agentPurposeTrigger
mcp-buildermcp-builder/_summaryHigh-quality MCP server scaffolding”build an MCP”, “MCP server”
cli-anythingcli-anything/_summaryConvert GUI/source to agent-invocable CLI (CLI-Anything methodology)“build a CLI harness”, “wrap this tool as CLI”
gstackgstack/_summaryHeadless browser for QA testing”QA test”, “dogfood”, “verify deployment”
audit-before-architectingaudit-before-architecting/_summaryRun before proposing architecture”blind spots”, “what’s missing”
openclaw-self-improvementopenclaw-self-improvement/_summaryCaptures learnings, errors, corrections into memory(auto-capture)
webapp-testingwebapp-testing/_summaryPlaywright-based web UI testing”local web app”, “playwright test”
planning-with-files (⚠️ invalid frontmatter — see below)planning-with-files/_summaryManus-style file-based planning with persistent tracking”complex planning”
aurora-model-swapaurora-model-swap/_summarySwap Quo orchestrator LLM model”swap aurora model”
perplexityperplexity/_summaryWeb-grounded research via Perplexity”web research”

Document / Media cluster

SkillDirPurposeTrigger
docxdocx/Create/edit Word documents”word document”, “Word doc”
pdfpdf/Read, merge, create PDFs”PDF”, “extract text”
xlsxxlsx/Work with spreadsheets”spreadsheet”, “excel”
video-split-testvideo-split-test/AI property walkthrough video from photos”property walkthrough”, “AI video”, “Wan 2.2”

UI/UX design cluster (10 in skills-registry.json)

SkillDirTrustPurposeTrigger
web-design-guidelinesweb-design-guidelines/verified100+ design/a11y rules”review my UI”, “a11y”
react-best-practicesreact-best-practices/verified40+ Next.js perf rules”react perf”, “bundle optimization”
composition-patternscomposition-patterns/verifiedScalable component architecture”compound component”, “render props”
ui-ux-pro-maxui-ux-pro-max/community67 styles, 161 palettes, design system”design system”, “color palette”
bencium-ux-designerbencium-ux-designer/communityFunctional UX, WCAG, error handling”UX review”, “functional design”
frontend-designfrontend-design/verifiedBold visual aesthetics”build UI”, “landing page”
21st-dev21st-dev/internalAgent deployment + component browsing”21st-dev component”

Domain-specific cluster

SkillDirOwner agentPurposeTrigger
horse-racinghorse-racing/_summaryHorse racing handicapping + betting”horse bet”, “handicap”, “EquinEdge”
betterbets-ufcbetterbets-ufc/_summaryUFC fight-night handicapping + auto-bet”UFC bet”, “fight night”
session-logs (⚠️ invalid frontmatter)session-logs/_summarySearch own session logs via jq”previous session”, “what did we do last”
model-usage (⚠️ invalid frontmatter)model-usage/_summaryCodexBar CLI per-model usage/cost”how much did I spend”, “model cost”
discorddiscord/_summaryDiscord message tool”discord”, “post to channel”, “#ops”

Orphan dirs — no SKILL.md (5 dirs)

These dirs exist on disk but have no SKILL.md. They cannot be invoked via the skill system.

DirStatusNotes
bencium-ux-designer/⚠️ OrphanNo SKILL.md — but registered in skills-registry.json as community trust. Referenced in CLAUDE.md. Needs SKILL.md authored.
betterfiles-closing-packet/⚠️ OrphanNo SKILL.md. TC workflow variant of betterfiles-cda.
betterfiles-doc-parser/⚠️ OrphanNo SKILL.md. Document parsing for BetterFiles.
betterfiles-tc-templates/⚠️ OrphanNo SKILL.md. TC template management.
openclaw-scripts/⚠️ OrphanNo SKILL.md. Unclear purpose — may be a utility wrapper stub.

Invalid frontmatter — SKILL.md exists but frontmatter unparseable (8 dirs)

CLAUDE.md documents this as 3 dirs; live audit found 8. The discrepancy (5 additional invalid) is a CLAUDE.md documentation drift that requires correction.

DirIssue
betterfiles-autolabel/SKILL.md exists; frontmatter missing second --- delimiter
betterfiles-dispo-emails/SKILL.md exists; frontmatter missing second --- delimiter
dispo-learning-rollup/SKILL.md exists; frontmatter parse error
dispo-orphan-recovery/SKILL.md exists; frontmatter parse error
gstack/SKILL.md exists; frontmatter missing second --- delimiter (also registered in skills-registry.json as verified)
model-usage/SKILL.md exists; frontmatter parse error
planning-with-files/SKILL.md exists; frontmatter parse error
session-logs/SKILL.md exists; frontmatter parse error

Governance note: CLAUDE.md says “3 invalid frontmatter” — live count is 8. This is a documentation drift of +5. G-KB-SYNC-WITH-CLAUDEMD requires CLAUDE.md to be updated to reflect accurate counts. Until corrected: treat 8 as authoritative.

Empty “planned” shell dirs — dirs exist, no SKILL.md (7 dirs)

SKILLS-REGISTRY.md (2026-03-08) listed these as ”🔴 not created”. They are now created as empty directories with no SKILL.md. Not yet functional.

DirSKILLS-REGISTRY.md statusCurrent live state
agent-router/”🔴 not created”Dir exists, empty (no SKILL.md)
plan-router/”🔴 not created”Dir exists, empty (no SKILL.md)
plan-updater/”🔴 not created”Dir exists, empty (no SKILL.md)
mission-control-indexer/”🔴 not created”Dir exists, empty (no SKILL.md)
system-mapper/”🔴 not created”Dir exists, empty (no SKILL.md)
two-way-sync-auditor/”🔴 not created”Dir exists, empty (no SKILL.md)
workflow-enforcer/”🔴 not created”Dir exists, empty (no SKILL.md)

Skill trigger registry

Per CLAUDE.md §“Tool Trigger Conditions”, skills are auto-invoked when trigger conditions match. Below is a cross-reference mapping the CLAUDE.md trigger table to physical skill dirs.

PrioritySkill triggerSkill dirProcess hub cross-link
P0”schedule follow-ups” / “handle inbound reply” / “trigger re-engagement”acquisitions-followup/followup-stages-2-3-4
P0”send initial CH outreach” / “trigger Stage 1 SMS”acquisitions-outreach/outreach-stage1
P0”push deal to HubSpot” / “create HS deal” / “sync deal candidate”hubspot-deal-ingest/deal-ingestion
P0”blast deal to buyers” / “send to InvestorBase” / “weekly w4 broadcast”dispo-blast/dispo-lifecycle
P0”pull IL deals” / “enrich investorlift” / “find IL wholesaler emails”il-marketplace-pull/acquisitions-lifecycle
P1”dispo email” / “TC email” / “upload dispo doc”betterfiles-dispo-emails/dispo-lifecycle
P1”CH conversations” / “outreach quality” / “acquisitions performance”acq-analyze/acquisitions-lifecycle
P1”discord” / “post to channel” / “#ops”discord/(no dedicated hub — cross-link: discord)
P1”review UI” / “a11y” / “check accessibility”web-design-guidelines/n/a
P1”build an MCP” / “MCP server”mcp-builder/n/a
P1”build a CLI harness” / “CLI-Anything”cli-anything/n/a
P1”QA test” / “dogfood” / “verify deployment”gstack/n/a
P2”CDA” / “commission disbursement” / “ASAP Capital”betterfiles-cda/n/a
P2”horse bet” / “Santa Anita” / “handicap” / “EquinEdge”horse-racing/n/a
P2”how much did I spend” / “model cost” / “codex usage”model-usage/n/a
P2”previous session” / “what did we do last”session-logs/n/a

Components

  • /home/opsadmin/.claude/skills/ — root skills directory (54 dirs + 3 loose files as of 2026-05-03)
  • /home/opsadmin/.claude/skills/skills-registry.json — JSON registry (10 UI/UX skills registered only; 44 unregistered)
  • /home/opsadmin/.claude/skills/_INDEX.md — vault wikilink index for skills
  • /home/opsadmin/.openclaw/workspace/SKILLS-REGISTRY.md — primary registry doc (⚠️ stale: 2026-03-08)
  • /home/opsadmin/.claude/skills/skill-usage-log.ndjson — usage log for skill invocations
  • /home/opsadmin/.claude/skills/ocl-pre-ship.md — wrapper skill (/ocl-pre-ship = plan-eng-review + review + credential check)
  • /home/opsadmin/.claude/skills/ocl-post-plan.md — wrapper skill (/ocl-post-plan = document-release + INTEGRATION-HEALTH update + POST-PLAN-ASSIMILATION)
  • Per-skill SKILL.md — invocation contract, I/O spec, trigger conditions

How it’s used

  • Trigger: before building any new script, function, or workflow — check this hub and ~/.claude/skills/ for an existing skill first (CLAUDE.md §“MANDATORY: Search Before Building”)
  • Workflow: request matches trigger keyword → skill auto-invoked per §“Tool Trigger Conditions” → skill reads own SKILL.md → skill wraps existing workspace scripts → result returned to Claude
  • Agents involved: _summary (skill invocation and authoring), any agent in-scope for the skill’s domain
  • Failure mode: building new scripts that duplicate what existing skills already wrap (past problem: multiple phone normalization functions, duplicate Supabase client inits); skill docs/HANDOFF-FOR-KIMI.md explicitly delegates to workspace scripts — never bypass directly
  • Success criteria: every new workflow check → ~/.claude/skills/ first; skill SKILL.md is the contract; no parallel implementations

Agents that own skills

  • _summary — aurora-model-swap, audit-before-architecting, discord, frontend-design, gstack, mcp-builder, openclaw-self-improvement, webapp-testing
  • _summary — acquisitions-outreach, acquisitions-followup, acq-analyze, acq-dispatch-test
  • _summary — hubspot-deal-ingest, il-marketplace-pull, cli-anything
  • _summary — dispo-blast, dispo-learning-rollup, dispo-orphan-recovery
  • _summary — betterfiles-cda, betterfiles-dispo-emails
  • _summary — messaging-compliance-gate, messaging-vendor-kb-refresh, messaging-vendor-sandbox-tester, vendor-sms-onboarding
  • _summary — horse-racing, betterbets-ufc

Process hubs that use skills

Plans that govern skill lifecycle

Feedback rules

KB / source docs

  • SKILLS-REGISTRY — stale source (2026-03-08); superseded by this hub
  • API — gateway API reference (skill dispatch via openclaw gateway)

System maps

  • agent-registry — domain ownership mapping (which agent owns which skill)
  • portkey — all skills that invoke LLMs route through Portkey
  • supabase — skills that write state (messaging-compliance-gate, hubspot-deal-ingest) write to Supabase CCP
  • 1password — skills that need API creds resolve via op://Aurora/<item>/<field>

This hub is a member of the System catalog cluster (anchor: service-registry).

Open issues / TODOs

  • SKILLS-REGISTRY.md is 56 days stale — update to reflect all 54 live dirs, categorize valid/orphan/invalid
  • CLAUDE.md documents 44 dirs / 36 valid / 5 orphan / 3 invalid — live reality is 54/34/5/8. Update CLAUDE.md §“Memory & Tools” counts (G-KB-SYNC-WITH-CLAUDEMD)
  • 8 invalid-frontmatter skills need SKILL.md frontmatter repair: betterfiles-autolabel, betterfiles-dispo-emails, dispo-learning-rollup, dispo-orphan-recovery, gstack, model-usage, planning-with-files, session-logs
  • 5 orphan dirs need either SKILL.md authored or dirs removed: bencium-ux-designer (partially registered), betterfiles-closing-packet, betterfiles-doc-parser, betterfiles-tc-templates, openclaw-scripts
  • 7 empty “planned” shell dirs need either SKILL.md authored or listed in Phase 1.5 activation plan: agent-router, plan-router, plan-updater, mission-control-indexer, system-mapper, two-way-sync-auditor, workflow-enforcer
  • skills-registry.json only registers 10 skills (UI/UX cluster) — expand to cover all 34 valid skills with trust levels
  • Forward-ref: dispo-buyer-match-ai skill NOT YET CREATED — pending osil-il-ai-replication-2026-05-03 B13a Henry signoff
  • Skill invocation audit: skill-usage-log.ndjson exists but content not audited — unknown which skills are actually being invoked vs never used

Recent activity

  • 2026-05-03: hub created (W2-S3); live probes run; drift vs CLAUDE.md documented
  • 2026-03-08: SKILLS-REGISTRY.md last updated — only 9 skills documented
  • 2026-04-28: Skill ownership map added to AGENT-REGISTRY.md (il-marketplace-pull, hubspot-deal-ingest, acquisitions-outreach, acquisitions-followup, dispo-blast)