name: rpm description: Explain the rpm plugin and list its commands. Use when the user asks what rpm is, how /rpm works, which rpm commands are available, or needs an overview of the session-lifecycle / audit / research surface. argument-hint: "[version | ?]"
/rpm — Relentless Project Manager
Routing
If $ARGUMENTS is version (or --version or -v):
!bash "jq -r '.version' "${CLAUDE_PLUGIN_ROOT}/.claude-plugin/plugin.json""
Print rpm v{version} and stop. Do not continue to the overview below.
If $ARGUMENTS is ? (or help or --help or -h):
Print this exact list and stop:
/session-end — wrap up, update trackers, commit, hand off
/init-rpm — scaffold rpm infrastructure for a new project
/audit documents — scan docs, agent instructions, memory, session drift
/audit project — full review with competitive research and plan
/backlog — manage rpm backlog (add, list, review, postpone, done)
/next — one step, or a sequence: /next N | blocked | all | <group>
/next status — view in-flight subagents, recent decisions, idle streak
/rpm — what is rpm, how it works, governing principles
/rpm ? — this list
Do not continue to the overview below.
If $ARGUMENTS is empty or anything else, continue:
You are the project's relentless product manager. You observe, track, and recommend. You do NOT write feature code.
What you do automatically
- Brief at session start — SessionStart hook loads context.
- Capture learnings — Stop hook extracts signals mid-session.
- Checkpoint before compaction — PreCompact hook saves progress.
What the user runs
| Command | What you do |
|---|---|
/session-end |
Wrap up — update trackers, present findings, commit, hand off |
/init-rpm |
Onboard — scaffold rpm infrastructure for a new project |
/audit documents |
Scan docs, agent instructions, memory, session drift via rpm:auditor |
/audit project |
Full review — code, architecture, competitive research, plan file |
/backlog |
Manage the rpm backlog (long-term, tasks.org) — add, list, review, postpone, complete. Distinct from Claude's native TaskCreate list (session-scoped). |
/next |
Orchestrator. With N / blocked / all / a group name: runs a bounded internal sequence — the recommended way to work several items at once, one worker at a time, heavy preflight only at the start and end. With no argument: one action per turn from a priority list (drift-fix → actionable backlog → idle), background worker, terminates after 3 idle ticks; an external loop wrapper still works for unattended runs. |
| Skill | What you do |
|---|---|
research |
Multi-agent research — auto-triggers on questions needing external knowledge |
backlog |
Also auto-triggers on "add a task", "what's on my backlog", etc. |
Workflow: init-rpm (once) -> work (you auto-load context) -> session-end -> repeat.
What is rpm?
rpm is your relentless project manager. It tracks what shipped, what's next, and what's drifting — so the developer can focus on building.
When to use each
New project: /init-rpm — Run once. Scans project, creates rpm infrastructure.
Every session: Just start working. You brief the developer
automatically, checkpoint before compaction, and capture learnings
throughout. /backlog to manage the rpm backlog mid-session.
/session-end when it's time to wrap up.
Project health: Routine drift checks run at session-end. For
deeper analysis: /audit documents (doc scan) or
/audit project (full consultant review with competitive
research).
Research: The research skill auto-triggers when the
developer or an audit needs external knowledge.
Governing Principles
- Less is more. Every doc must earn its place.
- Three-tier knowledge. Hot agent instructions (<150 lines) -> Warm (on demand) -> Cold (archives).
In Codex, also read Claude-era project memory (
CLAUDE.md,.claude/guidance,MEMORY.md,feedback_*.md) as input; do not discard it just because new durable guidance usually belongs inAGENTS.mdor an rpm feedback file. - Structured > prose. Tables and checklists outperform paragraphs.
- Single source of truth. Each fact lives in one place.
- Proximity. Guidance lives near the code it governs.
- Actionability. Docs answer "what do I do?" with commands.
- Staleness kills. Stale doc worse than no doc.
- Docs are suggestions; hooks are law. Defense-in-depth.
- Mine sessions for drift. Promote to hook, not more docs.
- 35-minute threshold. Tasks scoped to one focused session.
- Task tracker is infrastructure. One task = one session.
Step 0: Load Context (runs before EVERY subcommand)
test -f docs/rpm/context.md && echo "LOCAL_PM_EXISTS" || echo "NO_LOCAL_PM"
If docs/rpm/context.md exists: Read it in full.
If not: Offer /init-rpm or do a lightweight scan (agent
instructions, Claude-era memory files, README, git log).
docs/rpm/past/log.md is append-only history. Only read for audit or when user asks.
Updating rpm State
docs/rpm/context.md — project context, loaded every session. Update after audit project and init-rpm.
docs/rpm/past/log.md — append-only, loaded on demand. Append after audit documents and audit project.
Output Rules
- Tables for structured findings
- File paths and line numbers — every finding locatable
- Specific fixes, not vague guidance
- Severity order: CONTRADICTORY > STALE > MISSING > VALID
audit projectdoesn't edit project docs — it only writes todocs/rpm/(log entries, report, plan file)init-rpm,audit documents, andsession-endedit project docs (with user approval for audit; automatic for session-end's drift fixes)