skills/claude-command-converter/SKILL.md
Convert Claude Code commands (.claude/commands/*.md) to standard Agent Skills (skills/*/SKILL.md). Use when migrating slash commands to portable skill format, creating skills from existing commands, or standardizing command definitions across AI runtimes.
npx skillsauth add dceoy/spec-kit-agent-skills claude-command-converterInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Convert Claude Code commands to standard Agent Skills format for portability across AI coding assistants.
.claude/commands/*.md files to skills/*/SKILL.md format..claude/commands/my-command.md).If input is missing, ask for the source command file path.
Location: .claude/commands/<command-name>.md
---
description: Short description of the command
handoffs:
- label: Next Action
agent: other.command
prompt: Trigger prompt
send: true
---
## User Input
\`\`\`text
$ARGUMENTS
\`\`\`
[Command instructions...]
Location: skills/<skill-name>/SKILL.md
---
name: skill-name
description: Complete description including what the skill does and when to use it.
---
# Skill Title
## When to Use
- Scenario 1
- Scenario 2
## Inputs
- Required input 1
- Optional input 2
## Workflow
1. Step 1
2. Step 2
...
## Outputs
- Output file 1
- Output file 2
Read the source command from .claude/commands/.
Extract metadata:
description from YAML frontmatter.handoffs for related skills/next steps.$ARGUMENTS handling for inputs.Determine skill name:
command.name.md → command-name (replace dots with hyphens).Create skill directory: skills/<skill-name>/
Transform content to SKILL.md format:
name and description only.$ARGUMENTS: Document as Inputs section.Remove runtime-specific content:
## User Input section with $ARGUMENTS block.handoffs from frontmatter (move to prose)./command.name references (use skill names instead).Validate skill structure:
name and description only.$ARGUMENTS.Report conversion result:
| Claude Command | Agent Skill |
| ----------------------------- | --------------------------------------------- |
| $ARGUMENTS | Inputs section describing expected user input |
| handoffs: | Next Steps section with skill references |
| /command.name | skill-name (kebab-case) |
| agent: foo.bar | foo-bar skill reference |
| description: in frontmatter | description: expanded with triggers |
| Inline ## User Input | Removed; documented in Inputs |
Input: .claude/commands/speckit.specify.md
---
description: Create feature specification from natural language.
handoffs:
- label: Build Technical Plan
agent: speckit.plan
---
## User Input
\`\`\`text
$ARGUMENTS
\`\`\`
The text the user typed after `/speckit.specify`...
Output: skills/speckit-specify/SKILL.md
---
name: speckit-specify
description: Create or update a feature specification from a natural language feature description.
---
# Spec Kit Specify Skill
## When to Use
- The user wants a new or updated feature spec from a natural language description.
## Inputs
- Feature description from the user.
- Repo context with `.specify/` scripts and templates.
If the description is missing or unclear, ask a targeted question before continuing.
## Workflow
...
## Outputs
- `specs/<feature>/spec.md`
- `specs/<feature>/checklists/requirements.md`
## Next Steps
After generating spec.md:
- **Plan** technical implementation with speckit-plan.
- **Clarify** specification requirements with speckit-clarify.
$ARGUMENTS, handoffs, /slash-commands).After conversion:
scripts/, references/, assets/.data-ai
Convert existing tasks into actionable, dependency-ordered GitHub issues for the feature based on available design artifacts.
data-ai
Generate an actionable, dependency-ordered tasks.md for the feature based on available design artifacts.
testing
Create or update a feature specification from a natural language feature description.
content-media
Execute the implementation planning workflow using the plan template to generate design artifacts.