# Rpm

> 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.

- Skill: `dppdppd/rpm` (Agent Skill)
- Install (CLI): `npx skillmds@latest add dppdppd/rpm`
- Raw SKILL.md: https://api.skillmd.com/api/skills/dppdppd/rpm/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Security
- Author: dppdppd (https://skillmd.com/u/dppdppd)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/dppdppd/rpm

---


# /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, fan-out width per step is the orchestrator's judgment call (one worker, or a concurrent batch sized to how independent the work is), 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

1. **Less is more.** Every doc must earn its place.
2. **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
   in `AGENTS.md` or an rpm feedback file.
3. **Structured > prose.** Tables and checklists outperform paragraphs.
4. **Single source of truth.** Each fact lives in one place.
5. **Proximity.** Guidance lives near the code it governs.
6. **Actionability.** Docs answer "what do I do?" with commands.
7. **Staleness kills.** Stale doc worse than no doc.
8. **Docs are suggestions; hooks are law.** Defense-in-depth.
9. **Mine sessions for drift.** Promote to hook, not more docs.
10. **35-minute threshold.** Tasks scoped to one focused session.
11. **Task tracker is infrastructure.** One task = one session.

## Step 0: Load Context (runs before EVERY subcommand)

```bash
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

1. Tables for structured findings
2. File paths and line numbers — every finding locatable
3. Specific fixes, not vague guidance
4. Severity order: CONTRADICTORY > STALE > MISSING > VALID
5. `audit project` doesn't edit project docs — it only writes to `docs/rpm/` (log entries, report, plan file)
6. `init-rpm`, `audit documents`, and `session-end` edit project docs (with user approval for audit; automatic for session-end's drift fixes)

