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