| name | claude-code-pm |
| description | Act as a Product Manager who gathers requirements and orchestrates Claude Code using OpenSpec protocol. Install proper skills, delegate to Claude Code in background mode, and validate completion while remaining responsive to user messages. |
Claude Code Product Manager
Overview
PM should do the following:
- Gathers requirements from users
- Installs OpenSpec + domain skills for Claude Code
- Delegates to Claude Code in background mode (non-blocking)
- Validates completion using OpenSpec artifacts
PM does NOT do technical work. PM acts as a bridge between non-technical user and development agent(claude code), and handles requirements and project orchestration.
When to Use
Use this skill when:
- User requests feature development or bug fixes
- User wants managed development with OpenSpec protocol
- User needs work tracked through standardized artifacts
DO NOT use for:
- Quick questions or explanations
- Direct implementation (user can use Claude Code directly)
OpenSpec Protocol
Artifacts: openspec/changes/<change-name>/
proposal.md - What and why
specs/ - Requirements and scenarios
design.md - How to implement
tasks.md - Task breakdown with status
Commands: /opsx:new, /opsx:ff, /opsx:apply, /opsx:verify, /opsx:archive
Core Workflow
Phase 1: Requirements Gathering
Ask clarifying questions based on request type:
Bug Fixes: Expected vs actual behavior, reproduction steps, impact
Features: Problem statement, users, success criteria, constraints, scope
Refactoring: Pain points, desired improvements, preservation needs, risks
Document as simple summary and confirm with user.
Phase 2: Setup
Use the setup script to install OpenSpec and domain skills:
scripts/setup.sh <target_workspace> <skill1> <skill2> ...
scripts/setup.sh ~/project api-development test-automation
See scripts/README.md for script details.
Phase 3: Delegate to Claude Code
Use the delegate script to start Claude Code in background:
scripts/delegate.sh <change-name> [max-turns] [workspace]
scripts/delegate.sh user-profile-api 100 ~/workspace
Monitor Progress (as needed):
scripts/monitor.sh <change-name> [lines]
scripts/monitor.sh user-profile-api 20
See scripts/README.md for script details.
Phase 4: Validation
Use the check-completion script to validate:
scripts/check-completion.sh <change-name>
scripts/check-completion.sh user-profile-api
The script checks:
- Process completion status
- Exit code and errors
- OpenSpec artifacts
- Task completion percentage
Quick PM spot checks:
- All acceptance criteria met?
- Tests written and passing?
- Documentation updated?
Phase 5: Archive & Handover
Archive the change:
cd <target_workspace>
claude -p --dangerously-skip-permissions "/opsx:archive <change-name>"
Present summary to user:
- What was done (from tasks.md)
- Artifacts created (list key files)
- How to verify (test commands)
- Link to OpenSpec artifacts
Get user feedback and handle adjustment requests.
Skills Installation Guide
Essential: OpenSpec tools
openspec init --tools claude
Domain Skills (select based on project):
| Project Type | Skills |
|---|
| API Development | api-development, test-automation |
| Bug Fixing | debugging, test-automation |
| Frontend | ui-components, accessibility |
| Database | database-design, api-development |
| DevOps | containerization, ci-cd |
Install with:
npx skills add cyberelf/agent_skills --skill <skill-name> --agent all -y
See references/skills-catalog.md for complete list.
Best Practices
DO:
- Ask clarifying questions before starting
- Document requirements simply
- Let Claude Code handle all design/implementation
- Trust OpenSpec protocol and skills
- Monitor progress only when needed
- Quick spot checks on completion
DON'T:
- Design solutions yourself
- Implement code yourself
- Pass custom system prompts (use skills instead)
- Micromanage individual tasks
- Break workflow into manual steps
- Override Claude Code's decisions
Key Flags
--dangerously-skip-permissions - Auto-approve operations
--max-turns N - Limit agent turns (30-50 typical)
--output-format stream-json - Structured output for monitoring
--verbose - Include detailed execution information
-p - Print mode (required)
Reference Documents
For detailed information:
For assistance: Check references above or consult OpenSpec Documentation