Skip to main content
SkillKit is a cross-agent skill translator that converts Pro Workflow skills to formats compatible with Claude Code, Cursor, Codex, Gemini CLI, and 32+ other agents.

What is SkillKit?

SkillKit reads skill definitions in a standard format and translates them to agent-specific configurations:
skillkit translate pro-workflow --agent cursor
skillkit translate pro-workflow --agent codex
skillkit translate pro-workflow --agent gemini-cli
Pro Workflow skills are designed to be SkillKit-compatible out of the box.

Installation

npm install -g skillkit

Translating Pro Workflow

To Cursor

cd your-project
skillkit translate pro-workflow --agent cursor
Output:
  • .cursor/rules/ — Translated skills as .mdc rules
  • .cursor/agents/ — Agent instructions
  • .cursor/skills/ — Skill references

To Codex

skillkit translate pro-workflow --agent codex
Output:
  • .codex/context/ — Skills as context files
  • .codex/rules.md — Combined rules

To Gemini CLI

skillkit translate pro-workflow --agent gemini-cli
Output:
  • .gemini/skills/ — Skill definitions
  • .gemini/system.md — System prompt with Pro Workflow patterns

Skill Format

Pro Workflow skills use a standard format compatible with SkillKit:
---
name: skill-name
description: What this skill does
user-invocable: true
allowed-tools: ["Read", "Bash"]
model: opus
context: fork
---

# Skill Name

Detailed instructions here.

## Workflow

1. Step one
2. Step two

## Output

Expected output format.

Frontmatter Fields

name
string
required
Skill identifier. Used for invocation (/skill-name).
description
string
required
Short description. Used for skill discovery and agent invocation.
user-invocable
boolean
default:"true"
Whether the skill can be invoked by users directly.
allowed-tools
string[]
Tool whitelist for skill execution. Example: ["Read", "Glob", "Grep"].
model
string
Model override. Example: "opus", "sonnet", "haiku".
context
string
Execution context. fork for isolated subagent execution.
agent
string
Delegate to a specific agent. Example: "planner", "reviewer".

Translation Mappings

Claude CodeCursor
/commandCustom scripts in .cursor/tasks/
Agent frontmatter.mdc rules in .cursor/agents/
Skill frontmatter.mdc rules in .cursor/skills/
HooksGit hooks in .git/hooks/
allowed-toolsIgnored (no tool restrictions)
context: forkSeparate rule file
Claude CodeCodex
/commandContext files in .codex/context/
Agent frontmatterCombined in .codex/rules.md
Skill frontmatterContext files in .codex/skills/
HooksNot supported
allowed-toolsNot supported
context: forkSeparate context file
Claude CodeGemini CLI
/commandShell functions in .gemini/commands.sh
Agent frontmatterSystem prompt sections
Skill frontmatterSkill files in .gemini/skills/
HooksNot supported
allowed-toolsNot supported
context: forkSeparate skill file

Custom Translation

Create a skillkit.config.js to customize translation:
module.exports = {
  agent: 'cursor',
  input: './skills/',
  output: './.cursor/',
  transform: {
    // Remove frontmatter for Cursor
    frontmatter: false,
    
    // Flatten directory structure
    flatten: true,
    
    // Rename files
    rename: (name) => `${name}.mdc`
  },
  exclude: ['node_modules', 'dist']
};
Run with config:
skillkit translate --config skillkit.config.js

Supported Agents

SkillKit supports 32+ agents. Pro Workflow is tested with:

Claude Code

Native support (no translation needed)

Cursor

Via .mdc rules

Codex

Via context files

Gemini CLI

Via system prompt

Aider

Via .aider.md

GitHub Copilot

Via .github/copilot-instructions.md
Full list: https://github.com/skillkit/skillkit#supported-agents

Verifying Translation

After translation, verify output:
ls .cursor/rules/
ls .cursor/skills/
cat .cursor/rules/pro-workflow.mdc

Database Compatibility

The Pro Workflow database works across all agents:
// Same API, any agent
import { createStore } from 'pro-workflow';

const store = createStore();
const results = store.getAllLearnings();
store.close();
Use ~/.pro-workflow/data.db as a shared database across all agents.

Bidirectional Sync

SkillKit supports bidirectional translation:
# Cursor → Claude Code
skillkit translate .cursor/rules/ --agent claude-code --output .claude/

# Codex → Cursor
skillkit translate .codex/context/ --agent cursor --output .cursor/

Advanced Usage

Selective Translation

# Translate only specific skills
skillkit translate pro-workflow/skills/wrap-up --agent cursor
skillkit translate pro-workflow/skills/orchestrate --agent codex

Dry Run

# Preview translation without writing files
skillkit translate pro-workflow --agent cursor --dry-run

Watch Mode

# Auto-translate on file changes
skillkit translate pro-workflow --agent cursor --watch

Creating Custom Skills

Write skills in Pro Workflow format for automatic translation:
1

Create skill directory

mkdir -p skills/my-skill
2

Add SKILL.md

---
name: my-skill
description: Does something useful
---

# My Skill

Instructions here.
3

Translate

skillkit translate skills/my-skill --agent cursor

Troubleshooting

Check that your skill has valid frontmatter:
skillkit validate skills/my-skill/SKILL.md
Ensure output directory exists:
mkdir -p .cursor/rules
skillkit translate pro-workflow --agent cursor --output .cursor/rules
Check supported agents:
skillkit list-agents

API Reference

skillkit.translate
function
Translate skills to another agent format.Parameters:
  • source (string): Path to skills directory
  • agent (string): Target agent name
  • options (object): Translation options
Returns: Promise<TranslationResult>
skillkit.validate
function
Validate skill frontmatter and structure.Parameters:
  • skillPath (string): Path to SKILL.md
Returns: Promise<ValidationResult>
skillkit.listAgents
function
List all supported agents.Returns: Promise<string[]>

Next Steps

Cursor Plugin

Use translated skills in Cursor

Skills API

Learn skill frontmatter syntax

Custom Skills

Build your own skills

SkillKit Docs

Full SkillKit documentation

Build docs developers (and LLMs) love