The product management toolkit for Claude Code. Built for PMs who code.
20 skills, 5 rules, 5 agents, 4 slash commands. Everything a technical PM needs to ship faster with AI.
# As a Claude Code plugin (recommended)
claude plugin install pm-pilot
# Or clone and configure manually
git clone https://github.com/mshadmanrahman/pm-pilot.git
cd pm-pilot
# Copy skills/rules/agents to your ~/.claude/ directory- Claude Code installed and working (get it here)
- A terminal (macOS Terminal, iTerm2, Warp, VS Code terminal, etc.)
- An Anthropic API key or Claude Max subscription (you need this for Claude Code itself)
That's it. No Node.js, no Python, no build step. PM Pilot is pure markdown.
# Option A: As a Claude Code plugin (recommended)
claude plugin install pm-pilot
# Option B: Clone and install manually
git clone https://github.com/mshadmanrahman/pm-pilot.gitIf you used Option B, copy the pieces to your Claude Code directory:
# Copy skills, rules, agents, and commands to user-level
cp -r pm-pilot/skills/* ~/.claude/skills/
cp -r pm-pilot/rules/* ~/.claude/rules/
cp -r pm-pilot/agents/* ~/.claude/agents/
cp -r pm-pilot/commands/* ~/.claude/commands/
# Create your memory directory
mkdir -p ~/.claude/memory
cp pm-pilot/memory/MEMORY-TEMPLATE.md ~/.claude/memory/MEMORY.mdPM Pilot works best when Claude Code has MCP servers connected. These are the most impactful:
| Priority | MCP Server | What it unlocks |
|---|---|---|
| High | Atlassian (Jira + Confluence) | meeting-prep, weekly-status, deep-context, ask-company |
| High | Slack | meeting-prep, weekly-status, deep-context |
| High | GitHub | weekly-status, search-first, code-review |
| Medium | Gmail/Calendar | meeting-prep |
| Medium | Playwright | dogfood (browser-based QA) |
You can add MCP servers in Claude Code settings or via claude mcp add.
No MCP servers? PM Pilot still works. Skills like market-sizing, writing-style, tdd-workflow, and security-review work with zero external connections.
Run the interactive setup wizard:
/configure-pm-pilot
Or configure manually:
- Set your company name: Edit
skills/pm-core/ask-company/SKILL.mdand replace[YOUR_COMPANY]in the Configuration section - Seed your memory: Open
~/.claude/memory/MEMORY.mdand add your current projects and key stakeholders (seeexamples/memory-example.mdfor format) - Set your writing voice (optional): Run the
writing-styleskill with 2-3 sample posts
Open Claude Code in any project and try these:
"prep for my meeting with Sarah" → meeting briefing from Jira/Slack/Calendar
"weekly status" → auto-generated accomplishment report
"size the market for AI code assistants" → TAM/SAM/SOM analysis
"dogfood https://myapp.com" → systematic QA with bug reports
"/plan" → implementation plan for any feature
"tell me everything about Project X" → cross-channel research synthesis
The more you use PM Pilot, the smarter it gets:
Day 1: Memory is empty. You explain your projects.
Day 5: Memory has your projects, people, preferences. Less explaining.
Day 15: Memory has your process, lessons, patterns. Almost zero re-explaining.
Day 30: New sessions start with full context. You just say what to do.
The key is corrections compound. When you correct Claude, it saves a feedback memory. That correction persists forever. You never repeat yourself.
| Skill | Trigger | What it does |
|---|---|---|
meeting-prep |
"prep for my meeting with X" | Pulls context from Jira, Slack, Confluence, Calendar into a briefing |
weekly-status |
"weekly status" | Generates accomplishment report from connected systems |
deep-context |
"tell me everything about X" | Cross-channel research across all MCP tools |
market-sizing |
"size the market for X" | TAM/SAM/SOM analysis with data sources and assumptions |
ask-company |
"who owns X" | Enterprise knowledge assistant (configure for your org) |
dogfood |
"dogfood this app" | Systematic QA with Playwright: finds bugs, produces repro steps |
lenny-podcast |
"what does Lenny say about X" | Search 269+ PM podcast episodes for advice |
| Skill | Trigger | What it does |
|---|---|---|
session-init |
"resume" | Reads memory + handoffs to restore context |
handoff-doc |
"handoff" | Captures decisions, blockers, next steps for session continuity |
strategic-compact |
(proactive) | Suggests context compaction at logical milestones |
orchestrator |
"orchestrate" | Decomposes work into parallel waves of sub-agents |
manifest-reader |
"what did agents find" | Summarizes sub-agent results |
meta-observer |
"observe skills" | Tracks skill performance and emerging patterns |
| Skill | Trigger | What it does |
|---|---|---|
tdd-workflow |
writing new code | Enforces test-first development, 80%+ coverage |
verification-loop |
"verify" or before commits | Lint, type-check, test, security scan |
search-first |
before implementing | Research existing solutions before writing code |
security-review |
after writing auth/API code | OWASP checklist with severity ratings |
| Skill | Trigger | What it does |
|---|---|---|
market-research |
"competitive analysis of X" | Source-attributed market and competitor research |
writing-style |
writing long-form content | Applies your configured voice profile to drafts |
writing-substack |
"write a Substack Note" | Platform-optimized short-form content |
| Command | What it does |
|---|---|
/plan |
Create implementation plan, wait for approval before coding |
/code-review |
Review staged changes for quality, security, maintainability |
/verify |
Run full verification loop (lint + test + security) |
/tdd |
Enforce test-driven development for a feature |
| Agent | Dispatched by | Purpose |
|---|---|---|
| planner | /plan |
Phased implementation planning with risk analysis |
| code-reviewer | /code-review |
Code quality and security review |
| build-error-resolver | build failures | Fix build errors with minimal diffs |
| tdd-guide | /tdd |
Enforce RED-GREEN-REFACTOR cycle |
| file-analyzer | large file analysis | Summarize logs and verbose outputs |
After installing, run the configuration wizard:
/configure-pm-pilot
This will:
- Detect your available MCP tools (Jira, Slack, Confluence, etc.)
- Set your company name for the
ask-companyskill - Create your initial
MEMORY.mdfrom the template - Validate that everything is connected
PM Pilot uses a file-based memory system that compounds learning across sessions:
memory/
MEMORY.md # Index file (always loaded, under 200 lines)
project_*.md # Project context
user_*.md # People context
feedback_*.md # Corrections and preferences
reference_*.md # Pointers to external systems
The key insight: MEMORY.md is always in context. Every session starts with full knowledge of your projects, people, and preferences. No re-explaining needed.
See examples/ for populated examples.
MORNING
Open Claude Code → MEMORY.md auto-loaded
"Continue the matchmaker redesign" → full context from memory
(or "read the latest handoff" → exact pickup from yesterday)
DURING SESSION
Work normally
Corrections saved as feedback memories
New project info updates memory entries
END OF DAY
"Create a handoff" → saves decisions + next steps
Learnings saved to memory → next session starts smarter
PM Pilot optimizes the input side (compressed rules, lazy-loaded skills, structured memory). For the output side, pair it with RTK (Rust Token Killer), which strips noise from tool outputs before they hit context.
brew install rtk
rtk init -g --hook-onlyTogether: ~50% fewer input tokens + ~70% fewer output tokens. Significantly longer sessions before hitting limits or compaction.
Five compressed rules that load with every message (~600 tokens total):
coding-style.md- Immutability, file organization, error handlinggit-workflow.md- Conventional commits, PR processtesting.md- TDD, 80% coverage minimumsecurity.md- Pre-commit security checklistsession-workflow.md- Memory and learning protocol
Edit skills/pm-core/ask-company/SKILL.md and configure:
- Your company name
- Available MCP tools (Confluence, Jira, Slack, etc.)
- Team structure and ownership areas
Run the writing-style skill with 2-3 sample posts to extract your voice profile. The skill stores it and applies it to all future drafts.
Create a new skill directory:
skills/your-skill/SKILL.md
Follow the SKILL.md format from any existing skill as a template.
- Memory over transcripts. A 200-line MEMORY.md beats a 50K-token session replay.
- Skills load on demand. 20 skills, zero startup cost.
- Rules are compressed. 600 tokens, not 6,000.
- Research before coding. Search first, build second.
- Every session compounds. Corrections become rules. Patterns become skills.
PRs welcome. To add a skill:
- Create
skills/category/your-skill/SKILL.md - Follow the frontmatter format (name, description, origin, version)
- Include clear triggers, step-by-step procedure, and output format
- Keep under 200 lines
Skills need a SKILL.md file in their directory. Verify the path:
ls ~/.claude/skills/meeting-prep/SKILL.mdIf missing, re-copy from the pm-pilot repo. Restart Claude Code after adding skills.
These skills need MCP servers (Jira, Slack, etc.) to pull data. Check your connected tools:
claude mcp listIf no MCP servers are connected, these skills will tell you what's missing.
MEMORY.md must be in the right location for your project:
- User-level (all projects):
~/.claude/memory/MEMORY.md - Project-level (one project):
.claude/memory/MEMORY.mdin your project root
Claude Code automatically loads MEMORY.md from these locations.
PM Pilot's rules use only ~950 tokens. If context is filling up:
- Use
strategic-compactto compact at logical milestones - Use
handoff-docto save state, then/clearand resume - Offload research to sub-agents with
orchestrator
Create a directory under skills/ with a SKILL.md inside:
skills/my-category/my-skill/SKILL.md
Use any existing skill as a template. The frontmatter (name, description, triggers) is what Claude Code uses to match your requests to the right skill.
Open-source tools for PMs who ship with AI:
| Tool | What it does |
|---|---|
| PM Pilot | You are here |
| Bug Shepherd | Zero-code bug triage with parallel AI agents |
| Tech-to-PM Translator | Convert developer docs into PM-friendly knowledge bases |
| Morning Digest | AI-powered daily briefing from calendar, email, and Slack |
MIT
Built by a PM, for PMs. Pure markdown, no build step, no dependencies.