CLI
Centralize your AI skills across tools and manage them from the terminal with ppie.
The Prompt Pie CLI centralizes your AI skills in one place.
When you work across different AI coding tools, each tool stores skills in its own directory. That makes skills harder to manage and keep consistent.
Prompt Pie keeps each skill in ~/.promptpie/skills/ as the source of truth, then symlinks it into the local paths used by your AI coding tools.
Before:
- add or copy a skill into Claude Code
- add or copy it again into Codex
- add or copy it again into Cursor
Now:
- add the skill once in Prompt Pie
- link it into the tools you use
Today that means:
| Directory | Purpose |
|---|---|
~/.promptpie/skills/ | Source of truth for every skill |
~/.claude/skills/ | Claude Code user-level skills |
~/.agents/skills/ | Codex user-level skills |
~/.cursor/skills/ | Cursor user-level skills |
~/.promptpie/skills/ holds the real SKILL.md file. The files in ~/.claude/skills/, ~/.agents/skills/, and ~/.cursor/skills/ are symlinks, not copies. Editing any of those paths updates the same underlying skill.
Requirements
- Node.js 18+
- npm or npx
Install
Install globally if you want the ppie command available everywhere:
npm install -g promptpie
ppie --versionThe npm package is promptpie. The main command you will use is ppie.
For one-off usage without a global install:
npx promptpie --versionSetup
Run ppie init once on a machine:
ppie initWhat it does:
- creates
~/.promptpie/skills/if it does not exist - creates
~/.claude/skills/if it does not exist - creates
~/.agents/skills/if it does not exist - creates
~/.cursor/skills/if it does not exist
Expected output on a first run looks like:
✓ Created ~/.promptpie/skills
✓ Created ~/.claude/skills
✓ Created ~/.agents/skills
✓ Created ~/.cursor/skills
Run ppie skill add <name> to create your first skill.Running ppie init again is safe. Existing directories are left alone and reported as Already exists ....
If you previously had Prompt Pie-managed Codex links under ~/.codex/skills/, ppie init migrates those links to ~/.agents/skills/.
Basic workflow
1. Create a skill
ppie skill add code-reviewThis creates:
~/.promptpie/skills/code-review/SKILL.mdThe command also prints the created path and the next suggested step.
2. Edit the skill
ppie skill edit <name> prints only the path to SKILL.md, which makes it easy to pipe into your editor:
$EDITOR "$(ppie skill edit code-review)"3. Link the skill into your tools
Link to every supported target:
ppie skill link code-reviewOr link to one target:
ppie skill link code-review claude
ppie skill link code-review codex
ppie skill link code-review cursorExpected result:
- a symlink is created in the selected target directory
- the linked file points back to
~/.promptpie/skills/code-review/SKILL.md - editing the skill from
.promptpie,.claude,.agents, or.cursorupdates the same file
4. See what is linked
ppie skill listThis shows each skill and where it is currently linked.
5. Import an existing markdown file
ppie skill import pull-request ./pull-request.mdThis copies the file into:
~/.promptpie/skills/pull-request/SKILL.md6. Unlink or remove
Remove only the symlink from one target:
ppie skill unlink code-review codexThis removes only the target link. It does not delete the source skill in ~/.promptpie/skills/.
Remove the skill entirely, including all of its links:
ppie skill rm code-reviewGlobal options
| Option | What it does |
|---|---|
--json | Prints machine-readable JSON |
--no-color | Disables ANSI color output |
--force | Allows ppie skill link to replace an existing file or symlink at the target path |
Command reference
| Command | What it does |
|---|---|
ppie init | Ensures the Prompt Pie, Claude Code, Codex, and Cursor skill directories exist |
ppie skill add <name> | Creates a new SKILL.md from the built-in template |
ppie skill import <name> <file> | Copies an existing markdown file into Prompt Pie's skills directory |
ppie skill rm <name> | Deletes the skill and removes all of its symlinks |
ppie skill remove <name> | Alias for ppie skill rm <name> |
ppie skill link <name> [targets...] | Creates symlinks for the skill in one or more targets; defaults to all targets |
ppie skill unlink <name> [targets...] | Removes symlinks from one or more targets; defaults to all targets |
ppie skill list | Shows all skills and their link status |
ppie skill ls | Alias for ppie skill list |
ppie skill edit <name> | Prints the source SKILL.md path for editor piping |
ppie help | Shows help |
ppie --help | Shows help |
ppie --version | Prints the CLI version |
Naming rules
Skill names:
- must start with a letter or number
- can include letters, numbers, hyphens, underscores, and dots
- must be 64 characters or fewer
Examples:
- valid:
code-review,pr_helper,react.v2 - invalid:
.hidden,../hack,foo/bar