| name | copy-command |
| description | Copy a command from Product Forge to user or project level |
| argument-hint | [<plugin>:<command-name>] [--user | --project] |
Copy Command
Copy a command from Product Forge plugins to your user-level (~/.claude/) or project-level (.claude/) directory.
Usage
/copy-command
/copy-command product-design:create-prd
/copy-command git-workflow:commit --user
/copy-command devops-data:create-rfc --project
Arguments
<plugin>:<command-name> - The command to copy in plugin:name format
--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}
-
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
plugin and command-name from <plugin>:<command-name> format
- Determine destination:
--user or --project (default)
-
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:
-
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