agentsclimarketplace

Add skill

Skill phucbm/skills/skills/meta/add-skill

Claude Plugin - Personal knowledge base for Claude Code — patterns and integrations across projects

Install
npx -y skills add phucbm/skills --skill add-skill

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

2 things to look at

  • no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
  • 2 stars2 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Add a new skill or knowledge entry to phucbm/skills repo. Use when the user says "add this to my skills", "save this as a skill", "push this knowledge to phucbm/skills", or wants to preserve a pattern from the current project.

SKILL.md

5.3 KB, as published. Nobody here has run it

Structure

Each skill is a folder with a single SKILL.md — all content inlined directly, no separate knowledge files.

  • skills/<topic>/SKILL.md — frontmatter + full content
  • One skill per topic, kebab-case: skills/vercel-ai-gateway/, skills/dexie/, skills/learn/
  • Complex skills (like wp-blocks-dev) may have sub-skills and additional files co-located inside the skill folder

Steps

  1. Read the prompt — if arguments were passed with the slash command (e.g. /add-skill I want to save the Stripe webhook pattern from this project), treat them as the user's description of what to add and proceed to step 1. If no arguments were given, ask: "What skill or knowledge do you want to add?" and wait for the answer before continuing.

  2. Check existing skills — pull latest and scan all files in skills/:

    gh repo clone phucbm/skills /tmp/phucbm-skills 2>/dev/null || git -C /tmp/phucbm-skills pull
    find /tmp/phucbm-skills/skills -name "SKILL.md" | sort
    

    If a related skill exists, tell the user before proceeding:

    "I found a related skill: skills/groq/SKILL.md — update that instead, or add a new skill?"

  3. Determine path:

    • Skill: skills/<topic>/SKILL.md — flat, one level only
    • Use lowercase kebab-case. Ask if unclear.
  4. Draft the SKILL.md and show it to the user:

    • Correct frontmatter (name, description, when_to_use, allowed-tools)
    • Full content inlined — env vars, code patterns, gotchas, source references
    • Generic patterns only; cite specific projects as examples, never hardcode project-specific data
  5. Wait for confirmation before writing anything.

  6. Write the file, update README.md (add row to skills table), bump patch version in .claude-plugin/plugin.json, commit and push:

    git -C /tmp/phucbm-skills add .
    git -C /tmp/phucbm-skills commit -m "skill: add <topic>"
    git -C /tmp/phucbm-skills push
    
  7. Confirm the push URL to the user.

Rules

  • Follow Anthropic's official skill writing best practices: https://github.com/anthropics/skills/blob/main/skills/skill-creator/SKILL.md Key points: description is the primary trigger mechanism — be specific and slightly pushy to avoid undertriggering; keep SKILL.md under 500 lines
  • Never include real API keys or secrets — keep env blocks with empty values as templates
  • Always show the file and wait for confirmation before pushing
  • All content goes directly in SKILL.md — no separate knowledge files
  • Knowledge files are generic — mention specific projects only as examples, never hardcode project-specific data

Plugin Marketplace Management

Claude Code plugins discovered via marketplaces — GitHub repo with .claude-plugin/marketplace.json listing plugins. Can't install plugin without marketplace listing.

Two-step flow (marketplace added once):

/plugin marketplace add phucbm/skills    # register catalog once
/plugin install claudify@phucbm          # install individual plugins
/plugin install skills@phucbm

See newly added plugins after marketplace update:

/plugin marketplace update phucbm

Or enable auto-update: /plugin UI → select marketplace → toggle auto-update.

phucbm marketplace

phucbm/skills is canonical marketplace for all phucbm plugins.

One repo acts as both marketplace AND plugin host — skills is local ("source": "./") while other plugins (claudify, etc.) are external sources.

Current plugins in .claude-plugin/marketplace.json:

PluginSourceDescription
claudifyhttps://github.com/phucbm/claudifyBootstrap .claude/ for any repo
skills./Personal knowledge base
registry-systemhttps://github.com/phucbm/registry-systemManage shadcn-compatible component registry

Adding a new phucbm plugin

Option A — Plugin in own repo:

  1. Create plugin repo with correct structure
  2. Add entry to phucbm/skills/.claude-plugin/marketplace.json:
    { "name": "my-plugin", "source": "https://github.com/phucbm/my-plugin", "description": "..." }
    
  3. Do NOT add marketplace.json to plugin repo — only plugin.json
  4. Commit and push phucbm/skills

Option B — Plugin inside phucbm/skills:

  1. Create plugins/my-plugin/ with correct structure
  2. Add entry with "source": "./plugins/my-plugin"

Required plugin structure

my-plugin/
├── .claude-plugin/
│   └── plugin.json
└── skills/
    └── my-skill/
        └── SKILL.md

plugin.json:

{
  "name": "my-plugin",
  "displayName": "My Plugin",
  "version": "1.0.0",
  "description": "...",
  "author": { "name": "phucbm", "url": "https://github.com/phucbm" },
  "repository": "https://github.com/phucbm/my-plugin",
  "license": "MIT"
}

Do NOT add marketplace.json to individual plugin repos — only canonical marketplace repo should have one. Multiple repos with same "name" conflict and overwrite each other.

Docs: https://code.claude.com/docs/en/plugin-marketplaces.md

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.