Claude Command Converter

dceoy/speckit-agent-skills/skills/claude-command-converter

by dceoy52e6e7d8e03dNo license146 starsListed Oct 8, 2026Updated Oct 8, 2026Repository updated 10 days ago

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.

Instructions onlyAI & Agents
AI-generated overview

Converts Claude Code slash-command files into portable Agent Skills SKILL.md documents.

What it does
This skill reads a Claude Code command file from .claude/commands/ and rewrites it as a standard Agent Skill at skills/ /SKILL.md. It extracts frontmatter metadata, derives a kebab-case skill name, and restructures the content into When to Use, Inputs, Workflow, Outputs and Next Steps sections. It also strips runtime-specific constructs such as $ARGUMENTS blocks, handoffs and slash-command references, then reports the conversion result and review recommendations.
When to use it
Use it when migrating existing .claude/commands/*.md files to the skills/*/SKILL.md format. It also fits creating portable skills from Claude Code-specific commands or standardizing command definitions across runtimes such as Claude Code, Codex CLI and GitHub Copilot.
Requirements
No scripts or packages; it is an instructions-only skill. It needs access to the source command file path, and optionally a target skill name.

Claude Command Converter

Convert Claude Code commands to standard Agent Skills format for portability across AI coding assistants.

When to Use

  • Migrating existing .claude/commands/*.md files to skills/*/SKILL.md format.
  • Creating portable skills from Claude Code-specific commands.
  • Standardizing command definitions for use with Claude Code, Codex CLI, GitHub Copilot, and other runtimes.

Inputs

  • Source command file path (e.g., .claude/commands/my-command.md).
  • Optional: target skill name (defaults to command filename without extension).

If input is missing, ask for the source command file path.

Format Differences

Claude Code Command Format

Location: .claude/commands/<command-name>.md

yaml
---description: Short description of the commandhandoffs:  - label: Next Action    agent: other.command    prompt: Trigger prompt    send: true---## User Input
\`\`\`text$ARGUMENTS\`\`\`
[Command instructions...]

Standard Agent Skill Format

Location: skills/<skill-name>/SKILL.md

yaml
---name: skill-namedescription: 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 12. Step 2...
## Outputs
- Output file 1- Output file 2

Conversion Workflow

  1. Read the source command from .claude/commands/.

  2. Extract metadata:

    • description from YAML frontmatter.
    • handoffs for related skills/next steps.
    • $ARGUMENTS handling for inputs.
  3. Determine skill name:

    • Convert command.name.md → command-name (replace dots with hyphens).
    • Use kebab-case for multi-word names.
  4. Create skill directory: skills/<skill-name>/

  5. Transform content to SKILL.md format:

    • Frontmatter: Keep name and description only.
    • Enhance description: Expand to include when to use the skill.
    • Convert $ARGUMENTS: Document as Inputs section.
    • Structure workflow: Extract steps into numbered Workflow section.
    • Add "When to Use": Derive from command context and description.
    • Add "Outputs": List generated files/artifacts.
    • Convert handoffs: Add "Next Steps" section referencing related skills.
  6. Remove runtime-specific content:

    • Remove ## User Input section with $ARGUMENTS block.
    • Remove handoffs from frontmatter (move to prose).
    • Remove /command.name references (use skill names instead).
  7. Validate skill structure:

    • Frontmatter has name and description only.
    • Body has clear sections (When to Use, Inputs, Workflow, Outputs).
    • No TODO placeholders remain.
    • No runtime-specific variables like $ARGUMENTS.
  8. Report conversion result:

    • Source command path.
    • Generated skill path.
    • Key transformations applied.
    • Manual review recommendations.

Transformation Rules

Claude CommandAgent Skill
$ARGUMENTSInputs section describing expected user input
handoffs:Next Steps section with skill references
/command.nameskill-name (kebab-case)
agent: foo.barfoo-bar skill reference
description: in frontmatterdescription: expanded with triggers
Inline ## User InputRemoved; documented in Inputs

Example Conversion

Input: .claude/commands/speckit.specify.md

yaml
---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

yaml
---name: speckit-specifydescription: 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.

Key Rules

  • Preserve all workflow logic and instructions.
  • Remove runtime-specific constructs ($ARGUMENTS, handoffs, /slash-commands).
  • Expand terse descriptions to include usage triggers.
  • Use imperative voice in workflow steps.
  • Keep skills self-contained and portable.
  • Don't add extraneous documentation files (README, CHANGELOG, etc.).

Next Steps

After conversion:

  • Review generated SKILL.md for completeness.
  • Delete unused example files in scripts/, references/, assets/.
  • Update AGENTS.md/CLAUDE.md skill inventory if applicable.
  • Create symlinks for runtime integration if needed.

Source and attribution

Source:dceoy/speckit-agent-skillsinskills/claude-command-converterat commit52e6e7d

License: No license

Content belongs to its original authors. SourceWeft indexes it from a public repository.

Report or request removal

Claude Command Converter · skills/claude-command-converter Agent Skill | SourceWeft