skill-create
$
npx mdskill add popup-studio-ai/bkit-claude-code/skill-createCreates project-local skills through an interactive workflow
- Guides users through skill creation with targeted prompts and decisions
- Uses file system operations and project context analysis
- Infers project conventions from CLAUDE.md and code patterns
- Generates scaffolded skill files with interactive confirmation
SKILL.md
.github/skills/skill-createView on GitHub ↗
---
name: skill-create
classification: workflow
classification-reason: "Interactive skill creation workflow with user prompts, file generation, and eval scaffolding. Multi-step process requiring user decisions."
deprecation-risk: none
effort: low
description: |
Interactive skill creation workflow for project-local skills.
Triggers: skill-create, create skill, 스킬 생성, 스킬 만들기.
argument-hint: "/skill-create [name] | /skill-create from-btw {btw-id}"
user-invocable: true
allowed-tools:
- Read
- Write
- Edit
- Glob
- Grep
- Bash
---
# skill-create - Interactive Skill Creation Workflow
프로젝트 컨텍스트를 분석하여 project-local 스킬을 생성하는 워크플로우.
## Workflow Steps
### Step 1: Gather Information
If `/skill-create` (no args):
1. Ask user for skill name (kebab-case)
2. Ask user for skill purpose/description
3. Ask user for classification: workflow or capability
If `/skill-create {name}`:
1. Use provided name
2. Analyze project context to infer purpose
3. Ask user to confirm/modify
If `/skill-create from-btw {btw-id}`:
1. Read btw suggestion from `.bkit/btw-suggestions.json`
2. Use suggestion text as seed for skill description
3. Use suggestion context for project context
### Step 2: Analyze Project Context
1. Read `CLAUDE.md` for project conventions
2. Scan project structure:
- Identify tech stack (Java/Spring, Next.js, Python, etc.)
- Find relevant patterns in source code
- Check existing project-local skills for overlap
3. Determine appropriate:
- Allowed tools for the skill
- Trigger keywords (Korean + English)
- Related files/patterns to reference
### Step 3: Generate SKILL.md
Create `.claude/skills/project/{name}/SKILL.md` with:
```yaml
---
name: {name}
classification: {workflow|capability}
classification-reason: "{reason based on analysis}"
deprecation-risk: none
effort: low
description: |
{Generated description}
Triggers: {trigger commands}
Keywords: {keywords in Korean and English}
argument-hint: "{usage hint}"
user-invocable: true
allowed-tools:
- Read
- Write
- Edit
- Glob
- Grep
- Bash
---
```
Body content includes:
- Purpose and when to use
- Step-by-step instructions for workflow skills
- Pattern reference for capability skills
- Code examples from actual project files
- Integration points with other skills
### Step 4: Generate Eval Files (optional)
Create `evals/{name}/` directory with:
```
evals/{name}/
eval.yaml - Test configuration
prompt.txt - Test prompt
expected.txt - Expected behavior description
```
**eval.yaml format:**
```yaml
name: "{name} skill eval"
skill: ".claude/skills/project/{name}/SKILL.md"
tests:
- name: "basic trigger"
prompt: "{trigger command}"
expected:
- "{expected behavior 1}"
- "{expected behavior 2}"
- name: "edge case"
prompt: "{edge case prompt}"
expected:
- "{expected behavior}"
```
### Step 5: Confirm and Report
1. Show generated file paths
2. Show skill summary (name, classification, triggers)
3. Suggest: "Test with `/{name}` or review at `.claude/skills/project/{name}/SKILL.md`"
## Project-Local Skill Location
All generated skills go to: `.claude/skills/project/{name}/SKILL.md`
This location:
- Is git-trackable for team sharing
- Takes precedence over bkit core skills (2-layer architecture)
- Is auto-loaded by Claude Code's skill discovery
## Naming Conventions
| Pattern | Example | Use When |
|---------|---------|----------|
| `{project}-{domain}` | `hunikflow-model` | Domain-specific capability |
| `{action}-{target}` | `validate-entity` | Action-oriented workflow |
| `{tool}-{purpose}` | `proxy-guide` | Tool/pattern guide |
## From-BTW Integration
When creating from a /btw suggestion:
1. Read the suggestion's `context.file` to understand what code was being worked on
2. Read the suggestion's `context.feature` to understand the PDCA feature context
3. Use suggestion text as the primary description seed
4. After creation, update the btw suggestion's `promotedTo` field with the new skill name
More from popup-studio-ai/bkit-claude-code