/risk
Run the 5-area risk scan on a feature or plan. Surface which risks have no hypothesis, draft stubs for the gaps.
$ npx -y skills add phuryn/pm-brain --agent claude-codeHow it fires
How this command gets triggered: by you, by Claude, or both.
- Fires itselfClaude auto-loads it when your prompt matches the work.
- You can call itInvoke it directly when you want it.
- Slash command
/risk
Context preview
What this command does when you run it.
Run the 5-area risk scan on a feature or plan. Surface which risks have no hypothesis, draft stubs for the gaps.
Command definition
risk.md/risk
Run the 5-area risk scan on a feature or plan. Surface which risks have no hypothesis, draft stubs for the gaps.
Input
A feature slug (`/risk weekly-digest`), a plan name, or a draft PRD pasted into the call.
Loads
- `knowledge/product/features/<slug>.md` if the feature exists
- All `hypotheses/<slug>.md` files linked to it
- `knowledge/users/insights.md` (value and usability evidence)
- `knowledge/strategy.md § Non-goals` (does this violate one?)
- `decisions/` filtered to ones that constrain this feature
- `rules/discovery.md` for any risk-area discovery rules
Updates
`/risk` is not read-only. For any of the 5 risk areas with no hypothesis, it drafts a stub (status: `candidate`) with the open question and the suggested first test. Behavior depends on autonomy mode (`CLAUDE.md § Operating preferences § Autonomy mode`):
- **Act and tell (default).** Stubs are saved to `hypotheses/<slug>.md` and the feature file's `## Linked § Hypotheses` is updated to reference them. The operator triages on next `/review` or earlier.
- **Propose and wait.** Stubs are presented as drafts. Nothing saved until the operator confirms.
Risks with active hypotheses and fresh evidence are not touched.
**Hard constraints when drafting stubs:**
- Every Evidence-row in a new stub must carry a provenance tag from the enum in `hypotheses/_SCHEMA.md`. If the stub is opening a risk area with no concrete artifact yet, tag the row honestly: `(intuition, PM, <YYYY-MM-DD>)` or `(industry-knowledge)`. If you are citing a strategy clause, the row must include a working path-typed link like `[knowledge/strategy.md]` — not a bare paraphrase. Untagged rows fail the `no_orphan_evidence` audit.
- New stubs are status `candidate` (or `active` with confidence `low`) — never `promoted` or `partially-validated` at creation.
- Update `hypotheses/INDEX.md` in the SAME turn for every new stub. A new hypothesis file without an INDEX row is half-saved.
Surfaces
The five risk areas, each with status and the top item:
1. **Value** — will it solve a real, frequent, valuable problem? Evidence for / against / gap 2. **Usability** — can the target user complete the core flow? Evidence for / against / gap 3. **Feasibility** — can the team build it given current capability? Evidence for / against / gap 4. **Viability** — does it work for the business (revenue, ops, legal, regulatory)? Evidence for / against / gap 5. **Other** — anything not in the canonical four (partnership, ecosystem, timing)
Format per area: `[have hypothesis | stub drafted | confirmed | demoted]` + one line on what's missing.
- 1-3 highest-leverage tests across all five areas
- Any non-goal this feature might violate
Read more
/risk
Run the 5-area risk scan on a feature or plan. Surface which risks have no hypothesis, draft stubs for the gaps.
Input
A feature slug (`/risk weekly-digest`), a plan name, or a draft PRD pasted into the call.
Loads
- `knowledge/product/features/<slug>.md` if the feature exists
- All `hypotheses/<slug>.md` files linked to it
- `knowledge/users/insights.md` (value and usability evidence)
- `knowledge/strategy.md § Non-goals` (does this violate one?)
- `decisions/` filtered to ones that constrain this feature
- `rules/discovery.md` for any risk-area discovery rules
Updates
`/risk` is not read-only. For any of the 5 risk areas with no hypothesis, it drafts a stub (status: `candidate`) with the open question and the suggested first test. Behavior depends on autonomy mode (`CLAUDE.md § Operating preferences § Autonomy mode`):
- **Act and tell (default).** Stubs are saved to `hypotheses/<slug>.md` and the feature file's `## Linked § Hypotheses` is updated to reference them. The operator triages on next `/review` or earlier.
- **Propose and wait.** Stubs are presented as drafts. Nothing saved until the operator confirms.
Risks with active hypotheses and fresh evidence are not touched.
**Hard constraints when drafting stubs:**
- Every Evidence-row in a new stub must carry a provenance tag from the enum in `hypotheses/_SCHEMA.md`. If the stub is opening a risk area with no concrete artifact yet, tag the row honestly: `(intuition, PM, <YYYY-MM-DD>)` or `(industry-knowledge)`. If you are citing a strategy clause, the row must include a working path-typed link like `[knowledge/strategy.md]` — not a bare paraphrase. Untagged rows fail the `no_orphan_evidence` audit.
- New stubs are status `candidate` (or `active` with confidence `low`) — never `promoted` or `partially-validated` at creation.
- Update `hypotheses/INDEX.md` in the SAME turn for every new stub. A new hypothesis file without an INDEX row is half-saved.
Surfaces
The five risk areas, each with status and the top item:
1. **Value** — will it solve a real, frequent, valuable problem? Evidence for / against / gap 2. **Usability** — can the target user complete the core flow? Evidence for / against / gap 3. **Feasibility** — can the team build it given current capability? Evidence for / against / gap 4. **Viability** — does it work for the business (revenue, ops, legal, regulatory)? Evidence for / against / gap 5. **Other** — anything not in the canonical four (partnership, ecosystem, timing)
Format per area: `[have hypothesis | stub drafted | confirmed | demoted]` + one line on what's missing.
- 1-3 highest-leverage tests across all five areas
- Any non-goal this feature might violate
A second brain for product managers. Plain markdown files in a folder on your laptop. Claude reads them before answering, writes to them after, sweeps them every Friday. No vector DB. No cloud. No agent memory tricks. You manage one product.
Repo: phuryn/pm-brain
Other commands on pm-brain.
- /decide
Log a decision. Drafts a complete decision file from the existing evidence trail and surfaces it for PM sign-off.
Open command - /hypothesize
Generate or refresh hypotheses for a feature. Works **pre-ship** (proactive, organized by the 5 risk areas) or **post-ship** (data-derived from analytics / interviews / churn — "why is retention dropping?"). Same schema either way; the `Origin` field distinguishes them.
Open command - /ideate
Generate solution directions for a problem, grounded in what the brain already knows. Not a brainstorm. A synthesis.
Open command - /ingest
Route a new artifact into the brain. Four shapes, one verb.
Open command - /plan
Turn a new team objective into a concrete plan: what we know, what we assume, who to interview, which hypotheses to open, which experiments to run, what decision would unlock execution.
Open command - /prep
Surface what to ask, raise, or watch for in an upcoming conversation.
Open command

