// Add a new skill to a plugin with automatic directory creation, version bumping, and metadata updates. Use when: (1) explicitly requested to add a new skill, (2) after designing a new cognitive technique that should be captured, (3) expanding a plugin's capabilities, (4) during plugin development to maintain consistency, (5) a reusable thinking pattern has been identified and should be codified.
| name | repo-add-skill |
| description | Add a new skill to a plugin with automatic directory creation, version bumping, and metadata updates. Use when: (1) explicitly requested to add a new skill, (2) after designing a new cognitive technique that should be captured, (3) expanding a plugin's capabilities, (4) during plugin development to maintain consistency, (5) a reusable thinking pattern has been identified and should be codified. |
Create a new skill with all required files and metadata updates, ensuring consistency across the repository.
1. Establish skill coordinates. Gather the four pieces that locate a skill in both conceptual and file space: plugin name determines which ecosystem the skill inhabits (thinkies for general reasoning, software for code-specific thinking), category signals the epistemic mode (analysis, creativity, decision), skill name becomes the invocation handle that Claude will use, and description communicates when to trigger—together these form a coordinate system that positions the skill precisely within the architecture while establishing its identity and purpose.
2. Create skill directory and files. Create directory at plugins/{plugin}/skills/{category}-{name}/ and generate SKILL.md from template with proper frontmatter, including all standard sections (Instructions, Examples) that establish the skill as a complete methodology rather than placeholder content.
3. Communicate expanded capabilities through version. Read current version from plugins/{plugin}/.claude-plugin/plugin.json and increment the minor version, treating version numbers as semantic communication where the middle digit signals new capabilities added without breaking changes—write the new version back so the number itself tells other systems that the plugin can now do more than before.
4. Sync version to marketplace. Update corresponding plugin entry in .claude-plugin/marketplace.json to ensure version matches the bumped plugin.json version, maintaining consistency across metadata files so the marketplace accurately reflects available capabilities.
5. Update skill count in README. Count actual SKILL.md files in plugin's skills directory and update the skill count in plugin's README.md—this prevents documentation drift where the README claims a number of skills that no longer matches reality.
6. Leave a breadcrumb in CHANGELOG. Add entry to plugins/{plugin}/CHANGELOG.md under Unreleased section with format "Add {category}-{name} skill: {description}"—this breadcrumb marks what changed before the change becomes official, creating a record that survives from development through release.
7. Refine the skill expression. Invoke Skill("refine-skill-expression") to polish the draft through systematic refinement passes that transform raw content into methodology, elevating the initial template into a well-expressed skill that reads as thinking process rather than checklist.
8. Confirm repository consistency. Run repo-preflight skill to verify that version numbers stay synchronized, skill counts remain accurate, changelog entries exist, and skill references resolve correctly—report results showing the addition maintained consistency across all metadata files.
The four coordinates that establish skill identity:
Plugin: "Which plugin should this skill belong to? (thinkies/software/expression)" — determines the reasoning ecosystem
Category: "What category? (analysis/creativity/decision/synthesis/etc.)" — signals the epistemic mode
Skill name: "What's the skill name? (use-hyphens-like-this)" — becomes the invocation handle
Description: "One-line description for frontmatter?" — communicates triggering conditions to Claude
Confirm these coordinates form a coherent location within the plugin architecture.
Create: plugins/{plugin}/skills/{category}-{name}/
Generate SKILL.md from the template below. The template includes frontmatter that Claude reads to decide when to invoke the skill, followed by standard sections that transform initial content into complete methodology:
---
name: {name}
description: {description with when-to-use triggers}
---
# {Title Case Name}
[Overview paragraph explaining what this skill does]
## Instructions
When using this skill:
1. **[First step]** - [Explanation]
2. **[Second step]** - [Explanation]
3. **[Third step]** - [Explanation]
[Continue with detailed steps]
## Examples
### Example: [Scenario name]
"[Detailed example showing the skill in action]"
### Example: [Another scenario]
"[Another example with different context]"