copy-command
SKILL.md
Copy Command
Copy a command from Product Forge plugins to your user-level (~/.claude/) or project-level (.claude/) directory.
Usage
# List available commands
/copy-command
# Copy to project (default)
/copy-command product-design:create-prd
# Copy to user level
/copy-command git-workflow:commit --user
# Explicit project level
/copy-command devops-data:create-rfc --project
Arguments
<plugin>:<command-name>- The command to copy inplugin:nameformat--user- Copy to~/.claude/{plugin}/commands/{name}.md--project- Copy to.claude/{plugin}/commands/{name}.md(default)
What Gets Copied
Commands are single markdown files (.md) containing:
- YAML frontmatter with description and argument hints
- Documentation and usage examples
- Execution instructions for Claude Code
Directory Structure
# Project-level (default)
.claude/
└── git-workflow/
└── commands/
└── commit.md
# User-level (--user)
~/.claude/
└── git-workflow/
└── commands/
└── commit.md
Execution Instructions
When the user runs this command:
No Arguments - List Available Commands
-
Scan Product Forge plugins cache for all available commands:
ls ~/.claude/plugins/cache/product-forge-marketplace/*/commands/*.md 2>/dev/null -
For each plugin with commands, list them with descriptions:
- Read command file frontmatter to get
description - Format as:
{plugin}:{command-name} - {description}
- Read command file frontmatter to get
-
Display formatted list:
Available commands from Product Forge: product-design: create-prd - Interactive PRD creation wizard create-qa-test - Create a new QA test procedure task-focus - Focus on a specific task with context ... git-workflow: commit - Guided git commit with atomic commit analysis rebase - Rebase local changes on remote updates code-review - Review code changes for issues ... devops-data: create-rfc - Create a new RFC technical specification create-tech-spec - Create a new Technical Specification ... Usage: /copy-command <plugin>:<command-name> [--user | --project]
With Arguments - Copy Command
-
Parse arguments:
- Extract
pluginandcommand-namefrom<plugin>:<command-name>format - Determine destination:
--useror--project(default)
- Extract
-
Locate source command:
SOURCE=~/.claude/plugins/cache/product-forge-marketplace/{plugin}/commands/{command-name}.md- If not found, show error with available commands from that plugin
-
Determine destination path:
--project:.claude/{plugin}/commands/{command-name}.md--user:~/.claude/{plugin}/commands/{command-name}.md
-
Check if destination exists:
- If exists, use AskUserQuestion to prompt:
Command '{command-name}' already exists at {destination}. Options: - Overwrite: Replace existing command - Rename: Save as {command-name}-copy.md - Cancel: Abort operation
- If exists, use AskUserQuestion to prompt:
-
Create destination directory structure:
mkdir -p {destination_dir} -
Copy command file:
cp {source} {destination} -
Confirm success:
Command copied successfully! Source: ~/.claude/plugins/cache/product-forge-marketplace/{plugin}/commands/{command-name}.md Destination: {destination} The command is now available as /{command-name} in your {project|user} configuration.
Error Handling
- Plugin not found: Show list of available plugins
- Command not found: Show list of commands in that plugin
- Invalid format: Show usage example with correct format
- Copy failed: Show error and suggest checking permissions
Weekly Installs
1
Repository
jpoutrin/product-forgeGitHub Stars
8
First Seen
6 days ago
Security Audits
Installed on
zencoder1
amp1
cline1
openclaw1
opencode1
cursor1