Skip to main content

Overview

PRPM supports automatic format conversion - you can install a package designed for one AI tool (like Cursor) and use it in another (like Claude). The registry handles conversion server-side, ensuring packages work across different editors.

Supported Formats

PRPM supports conversion between these AI coding tool formats:

How Conversion Works

Installing with Format Conversion

Use the --as flag to convert a package to your preferred format:

Server-Side Conversion

When you request a different format:
  1. Package Request: CLI requests the package in your desired format
  2. Format Detection: Registry checks if package exists in target format
  3. Automatic Conversion: If not, registry converts on-the-fly using format converters
  4. Quality Check: Converted output is validated for correctness
  5. Delivery: Converted package is returned to CLI
  6. Installation: CLI installs in the appropriate directory for your tool

Conversion Types

1. Rule-to-Rule Conversion

Converting between rule-based formats (Cursor ↔ Windsurf ↔ Kiro):
What’s converted:
  • ✅ Content and guidelines
  • ✅ Code examples
  • ✅ Frontmatter metadata
  • ⚠️ Format-specific features may be adapted

2. Rule-to-Skill Conversion

Converting rules to Claude skills:
What’s converted:
  • ✅ Content becomes skill documentation
  • ✅ Examples mapped to skill patterns
  • ✅ Frontmatter adapted to skill structure
  • ✅ “When to Use” section generated

3. Skill-to-Rule Conversion

Converting Claude skills to rules:
What’s converted:
  • ✅ Skill content becomes rule guidelines
  • ✅ Patterns become rule examples
  • ✅ “When to Use” becomes rule description
  • ✅ MDC frontmatter generated

4. Multi-File to Single-File Conversion

Some formats (Claude skills) support multiple files, others (Cursor rules) are single-file:
What happens:
  • ✅ Multiple files consolidated into one
  • ✅ Cross-references preserved as sections
  • ✅ Examples merged logically
  • ⚠️ Some structure flattened

Format Subtypes

Different formats support different subtypes:

Claude Subtypes

  • skill - Reference documentation (.claude/skills/)
  • agent - Task-specific automation (.claude/agents/)
  • slash-command - Quick actions (.claude/commands/)

Cursor Subtypes

  • rule - Project guidelines (.cursor/rules/)
  • slash-command - Custom commands (.cursor/commands/)
  • hook - Event-triggered scripts (hooks.json)
  • plugin - Bundles of rules, skills, agents, commands, hooks, and MCP servers (.cursor-plugin/plugin.json)

Continue Subtypes

  • prompt - Custom prompts (.continue/config.json)
When converting, PRPM intelligently maps subtypes:

Conversion Best Practices

1. Choose the Right Source Format

For best conversion results, install from the format closest to your target: Good conversions (high fidelity):
  • ✅ Cursor ↔ Windsurf ↔ Kiro (all rule-based)
  • ✅ Claude skill → Cursor rule (skill docs map well to rules)
  • ✅ Cursor rule → Claude skill (rules expand nicely to skills)
Okay conversions (some adaptation):
  • ⚠️ Claude agent → Cursor rule (task automation flattened to guidelines)
  • ⚠️ Claude slash-command → Cursor rule (quick actions become examples)
Limited conversions (lossy):
  • ⚠️ agents.md → Other formats (complex agent workflows simplified)

2. Specify Subtype When Needed

For formats with multiple subtypes, specify the subtype:

3. Review Converted Content

After installation, review the converted file to ensure quality:
If conversion quality is poor, consider:
  • Installing from a different source format
  • Manually editing the converted file
  • Requesting the author publish in your target format

4. Publish in Multiple Formats

If you’re a package author, publish native versions for maximum quality:
Users get native versions instead of conversions when available.

Conversion Limitations

What’s Preserved

  • ✅ Core content and guidelines
  • ✅ Code examples
  • ✅ Documentation structure
  • ✅ Metadata (author, description, tags)

What May Be Lost

  • ❌ Format-specific features
  • ❌ Complex cross-file references
  • ❌ Interactive elements
  • ❌ Tool-specific configuration

Format-Specific Features

Some features don’t translate across formats: Cursor-specific:
  • MDC headers with ruleType and alwaysApply
  • Cursor-specific markdown extensions
  • Plugin manifest fields (logo, component paths, MCP servers)
Claude-specific:
  • Multi-file skill structure
  • Agent tool specifications
  • Slash command arguments/options
Continue-specific:
  • Slash command JSON configuration
  • Context provider settings
When these features are encountered, PRPM:
  1. Preserves the content in the converted format
  2. Adapts the feature where possible
  3. Includes a comment noting the original feature

Technical Details

Conversion Pipeline

  1. Parse Source: Extract content, metadata, and structure
  2. Normalize: Convert to intermediate representation
  3. Map Features: Translate format-specific features
  4. Generate Target: Create output in target format
  5. Validate: Ensure output meets format requirements
  6. Return: Deliver converted package to CLI

Caching

Converted packages are cached to improve performance:
  • First conversion: Takes ~100-500ms
  • Subsequent requests: Retrieved from cache instantly
  • Cache invalidation: When package is updated

Troubleshooting

Conversion Failed

If conversion fails:
Solutions:
  1. Check if the source format is supported
  2. Try a different target format
  3. Install without --as flag (original format)
  4. Report the issue on GitHub

Poor Conversion Quality

If converted content is low quality:
  1. Check source quality: Some packages convert better than others
  2. Try native format: Install without --as flag
  3. Manual editing: Edit the converted file after installation
  4. Request native version: Ask author to publish in your format

Missing Features

If features are missing after conversion:
  • Expected: Format-specific features don’t always translate
  • Workaround: Manually add missing features to converted file
  • Best practice: Use native format when possible

Examples

Example 1: Cross-Format Team

Your team uses different editors:
Everyone gets the same guidelines in their preferred format.

Example 2: Trying Different Tools

Testing different AI coding tools:

Example 3: Format-Agnostic Publishing

As a package author, let users choose their format:
Publish in one format, PRPM handles conversions:
  • Cursor users get native .mdc file
  • Claude users get auto-converted skill
  • Continue users get auto-converted prompt

Deep Dives by Format

Want to understand how each format works? Read our technical deep dives: