pm-skills
alirezarezvani/claude-skills
Orchestrate project delivery across 8 PM sub-skills—sprint analytics, portfolio health, Jira, Confluence, admin, templates, meetings, and team comms.
What is pm-skills?
A domain orchestrator that routes project-management inquiries to specialized sub-skills (scrum-master, jira-expert, confluence-expert, etc.) via deterministic signal routing, and can drive full goal→plan→execute→verify→close delivery loops with live Jira data and machine-checkable gates. Use when coordinating sprints, auditing permissions, analyzing meetings, or running bounded agentic delivery workflows.
- Routes PM inquiries deterministically to one of 8 sub-skills (senior-pm, scrum-master, jira-expert, confluence-expert, atlassian-admin, atlassian-templates, meeting-analyzer, team-communications)
- Pulls live Jira data via Atlassian MCP and bridges it into flow-metrics analytics (WIP, throughput, cycle time, velocity forecasts)
- Executes bounded delivery loops with Observe→Choose→Act→Verify→Record steps, enforcing machine-checkable gates and human ownership
- Forecasts delivery using Monte Carlo percentiles (p50/p70/p85/p95) on ≥10-sprint history
- Enforces hard governance rules: named human owners/reviewers, reversible-first writes, no self-judging gates, max 3 attempts per task, 12 iterations per goal
How to install pm-skills
npx skills add https://github.com/alirezarezvani/claude-skills --skill pm-skills- Claude Code, Cursor, or compatible agent harness installed
- Atlassian cloud instance (Jira and/or Confluence) with OAuth credentials
- Bundled .mcp.json wired to Atlassian Remote MCP (https://mcp.atlassian.com/v1/sse)
- Python 3.7+ for routing and analytics scripts
- ≥10 completed sprints of historical data for reliable velocity forecasts
How to use pm-skills
- 1.Install the skill: npx skills add https://github.com/alirezarezvani/claude-skills --skill pm-skills
- 2.State your goal or question (e.g., 'project health report', 'audit our Jira permissions', 'when will sprint 14 close')
- 3.The skill runs pm_goal_router.py to classify and route to one sub-skill; if ambiguous, it asks a clarifying question with a recommended answer
- 4.For routing-only requests: the sub-skill executes and returns a digest; confirm before chaining a second sub-skill
- 5.For delivery-loop goals: the skill pulls live Jira state, bridges it to flow metrics, executes the loop (Observe→Choose→Act→Verify→Record), and escalates if it hits attempt/iteration caps or a gate blocks
Use cases
- Route a question like 'our sprints feel off' to scrum-master for velocity and ceremony analysis
- Generate a portfolio health report by pulling live Jira, deriving schedule variance and aging WIP, and diffing against self-reported RAG status
- Audit Jira permissions and SSO configuration by routing to atlassian-admin with approval-required terminal states for destructive changes
- Run a full delivery loop to close sprint 14: observe state, choose next task, act via sub-skills, verify with gates, record evidence, repeat until done or escalate
- Analyze meeting transcripts for action items and talk-time distribution, then route follow-through tasks to team-communications
- Scrum masters and delivery leads coordinating multi-team sprints
- Senior PMs managing portfolio health and risk
- Atlassian admins auditing permissions and workflows
- Agile coaches measuring flow metrics and forecasting delivery
- Engineering managers running bounded agentic delivery loops with human oversight
pm-skills FAQ
Use pm-skills when you have a PM question or goal but don't know which sub-skill owns it (routing), or when you need a full delivery loop with live Jira data and machine-checkable gates. Use a sub-skill directly if you already know the lane (e.g., 'I need a velocity forecast' → scrum-master).
The pm_goal_router.py script analyzes your goal text and exits with a sub-skill name (exit 0), a clarifying question (exit 2), or a request to restate (exit 3). It never guesses silently or chains sub-skills without confirmation.
No. Destructive or org-wide changes (permission updates, deletes, transitions to Done) are approval-required terminal states in the delivery loop. All writes are auditable and reversible-first per the Rovo discipline.
The skill runs Monte Carlo simulation on ≥10 completed sprints to generate p50/p70/p85/p95 percentiles for 'when will N items be done'. It refuses to forecast on thin history (< 10 items) because single-date promises are noise.
The loop escalates to the named human owner with a full evidence log. Max 3 attempts per task and 12 iterations per goal; exhausted budgets are escalations, never success reports.
Full instructions (SKILL.md)
Source of truth, from alirezarezvani/claude-skills.
name: "pm-skills" description: "Use when coordinating project-delivery work across the 8 project-management sub-skills — sprint/velocity analytics, portfolio health, Jira/JQL, Confluence, Atlassian admin, templates, meeting analysis, team comms. Triggers on 'our sprints feel off', 'project health report', 'audit our Jira permissions', 'when will it be done', 'run the delivery loop'. Forks context to route to one sub-skill via a deterministic signal router and returns a digest; can also drive a full goal→plan→execute→verify→close delivery loop through the repo-wide agent-harness with Jira MCP data bridged into the domain's analytics tools. Distinct from product-team (what to build vs how to deliver it), business-operations (internal ops), and engineering/agent-harness (the generic loop engine this orchestrator plugs into)." context: fork version: 2.11.1 author: Alireza Rezvani license: MIT tags: [project-management, orchestrator, jira, confluence, atlassian, scrum, agile, flow-metrics, agent-harness] compatible_tools: [claude-code, codex-cli, cursor, antigravity, opencode, gemini-cli]
Project Management — Domain Orchestrator & Delivery Loop
This orchestrator does two jobs. Routing: fork context, classify a PM inquiry with
scripts/pm_goal_router.py, run exactly one of the 8 sub-skills, return a digest.
Looping: turn a delivery goal into a bounded agentic loop — pull live Jira data via the
bundled Atlassian MCP, bridge it into the domain's deterministic analytics tools, verify
every step with machine-run gates, and refuse to close until everything is verified or a
human waives it. The bundled .mcp.json wires the Atlassian Remote MCP
(https://mcp.atlassian.com/v1/sse, OAuth handled by Claude Code).
When to invoke
| Symptom | Sub-skill |
|---|---|
| "Project/portfolio health, risk EMV, capacity" | senior-pm |
| "Sprint velocity, retro follow-through, ceremony health, when-will-it-be-done" | scrum-master |
| "JQL, Jira workflows, boards, automation" | jira-expert |
| "Confluence spaces, page trees, content audits" | confluence-expert |
| "Users, groups, permissions, SSO" | atlassian-admin |
| "Reusable Jira/Confluence templates" | atlassian-templates |
| "Meeting transcripts, talk time, action items" | meeting-analyzer |
| "Status updates, 3P updates, stakeholder comms" | team-communications |
Routing logic (deterministic)
Run the router — do not eyeball the table when a script can decide:
python3 scripts/pm_goal_router.py --text "<the goal>" --output json
Exit 0 → route_to names the sub-skill: load its SKILL.md and follow its workflow.
Exit 2 → ask ONE clarifying question naming the listed candidates, with a recommended
answer. Exit 3 → no signal: ask the user to restate the goal with the deliverable named.
Never guess silently; never silently chain a second sub-skill — digest first, confirm, then
chain.
The delivery loop (agentic)
For goals (not questions) — "get sprint 14 to a verified close", "produce a portfolio health report from live Jira", "make our flow metrics visible weekly" — run the loop-library contract (Observe → Choose → Act → Verify → Record → Repeat-or-stop):
- Observe — pull fresh state:
mcp__atlassian__searchJiraIssuesUsingJql(getcloudIdviagetAccessibleAtlassianResourcesfirst), save the result JSON, then bridge it:
Addpython3 scripts/jira_snapshot_bridge.py --input snapshot.json --to flow # WIP, throughput, cycle time p50/85/95, work-item age, SLE, aging alerts python3 scripts/jira_snapshot_bridge.py --input snapshot.json --to sprint > s.json # scrum-master schema python3 ../scrum-master/scripts/velocity_analyzer.py s.json # velocity + volatility + forecast--forecast Nfor a seeded Monte Carlo "when will N items be done" answer (refuses on < 10 completed items — thin history forecasts are lies). - Choose — route the next task with
pm_goal_router.py; one task at a time. - Act — execute with the routed sub-skill's own tools per its SKILL.md.
- Verify — gate the plan and every close with:
Plus each sub-skill's own gates (scrum-master's ≥ 3-sprints rule, atlassian-admin's VERIFY steps). Never adjudicate your own verification.python3 scripts/delivery_loop_gate.py --plan plan.json --mode plan # exit 2 = blocked python3 scripts/delivery_loop_gate.py --plan plan.json --mode close # exit 4 = close refused - Record / Repeat-or-stop — for multi-task goals, run the state through the repo-wide
harness (it enforces attempt caps, iteration budgets, and evidence logging):
Terminal states: success, clean no-op, blocked, approval-required, exhausted, stagnated. An exhausted budget is an escalation — never a success report.python3 engineering/agent-harness/skills/agent-harness/scripts/goal_compiler.py \ --goal "<goal>" --manifest engineering/agent-harness/skills/agent-harness/assets/harnesses/project-management.json \ --out .agent-harness/plan.json python3 engineering/agent-harness/skills/agent-harness/scripts/loop_controller.py init|next|record|verify|close ...
Hard rules (agentic delegation governance)
- Agents are contributors, never owners (Linear model): every loop task carries a
named human owner; agent-executed tasks also carry a named human reviewer.
delivery_loop_gate.pyenforces this (G1/G2). - Acceptance must be machine-checkable — a command, or a criterion with a threshold. "Looks good" is not a gate (G3).
- Every Jira/Confluence write is auditable and reversible-first (Rovo discipline):
never
transitionJiraIssueto Done without verify evidence; destructive/irreversible actions (deletes, permission changes, org-wide admin) are approval-required terminal states, not loop steps. - Never modify a gate you are judged by — same locked-evaluator invariant as autoresearch-agent.
- Forecasts are ranges with confidence, never dates — Monte Carlo percentiles (p50/p70/p85/p95), per Vacanti. Single-date promises are the anti-pattern.
- Max 3 attempts per task, 12 loop iterations per goal — then escalate to the named human with the evidence log.
Forcing-question library (grill-with-docs pattern)
One per turn, recommended answer, canon citation. Never run a sub-skill or start a loop until the lane-defining decision is locked:
- SPRINT lane: "Do you want to measure flow (cycle time, WIP, throughput, age) or forecast delivery? Recommended: measure first — a forecast off unmeasured flow is noise. Canon: Kanban Guide (May 2025) four mandatory flow measures; Vacanti, Actionable Agile Metrics."
- HEALTH lane: "Is your project status self-reported RAG or derived from signals? Recommended: derive it (schedule variance, aging WIP, scope churn) and diff against the self-report — that diff finds watermelon projects. Canon: Kanban Guide 2025; DORA 2025 (AI amplifies, doesn't fix, weak signals)."
- JIRA lane: "Is this configuration change deployable to a test project first? Recommended: always stage in a test project; jira-expert's workflow validator must exit 0 before production. Canon: jira-expert validation workflow."
- ADMIN lane: "Is this action reversible, and who approves it? Recommended: name the approver before touching permissions — admin actions are approval-required terminal states in any loop. Canon: atlassian-admin VERIFY discipline; loop-library stop states."
- LOOP intake: "What single observable outcome means DONE, and which command proves it? Recommended: a named artifact + a command that exits 0 against it. Canon: agent-harness verifier's law; Anthropic, Building Effective Agents (evaluator needs clear criteria)."
- MEETINGS/COMMS lanes: "Could this meeting be an async written update? Recommended: status-broadcast meetings convert to async 3P updates; decision meetings keep sync. Canon: GitLab async-first handbook."
Assumptions
- The user has (or is preparing analysis for someone with) delivery authority.
- Jira/Confluence access goes through the bundled MCP; capabilities NOT in
project-management/references/atlassian-mcp-tools.md(project/sprint/board/space creation, admin config) are done in the web UI — never invent tool names. - Inputs may be partial — every tool ships
--sampleso the shape is visible first.
Non-goals
- Not a replacement for the sub-skills — the orchestrator routes and loops; the sub-skills do the work.
- Not the generic loop engine — that is
engineering/agent-harness; this orchestrator is the PM-domain adapter (data bridge + governance gate + lane router). - Does not decide what to build — that's
product-team.
Output artifacts
| Mode | Artifact |
|---|---|
| Route | Sub-skill's own artifact + ≤ 200-word digest with one canon-cited challenge |
| Flow report | flow_metrics.json (bridge output) with SLE conformance + aging alerts |
| Delivery loop | .agent-harness/plan.json + state.json + gate verdicts + close handoff |
Anti-patterns (do not)
- ❌ Run all 8 sub-skills "to be thorough" — route to one, digest, chain on confirmation
- ❌ Report sprint health or forecasts from hand-typed numbers when a Jira snapshot is one MCP call away — bridge real data
- ❌ Close a loop with unverified tasks, or report an exhausted budget as success
- ❌ Let an agent be the assignee of record — humans own, agents contribute
- ❌ Auto-transition Jira issues or touch permissions inside a loop without the named approver
References
- references/flow_forecasting_canon.md — Kanban Guide 2025, Vacanti Monte Carlo, DORA 2025, EBM, SPACE
- references/agentic_delivery_governance.md — Linear/Rovo delegation models, Anthropic agent patterns, audit discipline
- references/pm_loop_playbook.md — the five reusable PM loops (sprint, health, retro-action, RAID-hygiene, comms) mapped to the loop contract
- Canonical MCP tool list:
project-management/references/atlassian-mcp-tools.md - Loop engine:
engineering/agent-harness· Loop vocabulary:loop-library
Related skills
More from alirezarezvani/claude-skills and the wider catalog.

postmortem
Blameless 5-Whys analysis to extract learning from failures and build a change register.

product-manager-toolkit
Comprehensive toolkit for product managers including RICE prioritization, customer interview analysis, PRD templates, discovery frameworks, and go-to-market strategies. Use when prioritizing features, synthesizing user research, writing requirement documentation, or developing product strategy.

product-skills
Orchestrator for 16 product sub-skills: route inquiries to RICE, OKRs, UX research, discovery, analytics, experiments, and more.

product-strategist
Strategic product leadership toolkit for Head of Product covering OKR cascade generation, quarterly planning, competitive landscape analysis, product vision documents, and team scaling proposals. Use when creating quarterly OKR documents, defining product goals or KPIs, building product roadmaps, running competitive analysis, drafting team structure or hiring plans, aligning product strategy across engineering and design, or generating cascaded goal hierarchies from company to team level.

promote
Graduate proven patterns from auto-memory to permanent project rules.

qms-audit-expert
ISO 13485 internal audit expertise for medical device QMS. Covers audit planning, execution, nonconformity classification, and CAPA verification. Use when planning internal audits, executing audits, classifying findings, preparing for external audits, or managing an audit program.