Source profileQuality 94/100

event4u-app/agent-config/src/skills/risk-officer/SKILL.md

risk-officer

Use when surfacing and prioritising risk before commit — blast-radius framing, mitigations, residual-risk verdict — even if the user just says 'what could go wrong here?'.

Source repository stars
7
Declared platforms
0
Static risk flags
0
Last source update
2026-07-28
Source checked
2026-07-28

Decision brief

What it does—and where it fits

Surface risks the implementer or PO is likely to underweight, score them by likelihood × impact, and propose mitigations the team can actually execute. Sibling of threat-modeling (security-only) and blast-radius-analyzer (call-site only) — this skill takes the wider product, ops…

Best for

  • Pre-implementation: a roadmap, ADR, or refined ticket needs a risk
  • Pre-merge: a non-trivial diff is about to land and the team wants
  • Post-incident: surface the risks the team should track to prevent

Not for

  • Tasks that require unconfirmed production actions or broad system permissions.
  • Environments where the pinned source and install steps cannot be inspected.

Compatibility matrix

Platform support, with evidence labels

PlatformStatusEvidenceWhat to check
CodexNot declaredNo explicit evidencePortability before use
Claude CodeNot declaredNo explicit evidencePortability before use
CursorNot declaredNo explicit evidencePortability before use
Gemini CLINot declaredNo explicit evidencePortability before use
Open the compatibility checker

Installation

Inspect first. Install second.

The source command is displayed only when detected. A safe inspection prompt is always available so your agent can explain every action before execution.

Source-detected install commandSource
npx skills add https://github.com/event4u-app/agent-config --skill "src/skills/risk-officer"
Safe inspection promptEditorial

Inspect the Agent Skill "risk-officer" from https://github.com/event4u-app/agent-config/blob/0adf49a8ae84b0ff6e2de8759eea43257e020eff/src/skills/risk-officer/SKILL.md at commit 0adf49a8ae84b0ff6e2de8759eea43257e020eff. List every install step, command, network request, credential, file read/write, external action, and rollback step. Explain whether it fits my task. Do not install or execute anything until I approve.

Workflow

What the source asks the agent to do

  1. 01

    Procedure

    Read the input (roadmap step, ticket, diff, post-mortem) and identify the scope in one sentence: "This change does X for users Y, touching systems Z." If you cannot, the artefact is not reviewable — stop and ask.

    Read the input (roadmap step, ticket, diff, post-mortem) and identify the scope in one sentence: "This change does X for users Y, touching systems Z." If you cannot, the artefact is not reviewable — stop and ask.Per lens, list each risk as a single bullet. Reject vague risks — "could break things" is not a risk; "queue worker silently drops messages on retry exhaustion" is.For every risk, assign L (likelihood: low / med / high) and I (impact: low / med / high). Top-5 sort by LxI rank; cite the trigger condition for each L and I. Do NOT pad to a fixed count — three sharp risks beat ten gen…
  2. 02

    When to use

    Pre-implementation: a roadmap, ADR, or refined ticket needs a risk

    Pre-implementation: a roadmap, ADR, or refined ticket needs a riskPre-merge: a non-trivial diff is about to land and the team wantsPost-incident: surface the risks the team should track to prevent
  3. 03

    1. Inspect the change

    Read the input (roadmap step, ticket, diff, post-mortem) and identify the scope in one sentence: "This change does X for users Y, touching systems Z." If you cannot, the artefact is not reviewable — stop and ask.

    Read the input (roadmap step, ticket, diff, post-mortem) and identify the scope in one sentence: "This change does X for users Y, touching systems Z." If you cannot, the artefact is not reviewable — stop and ask.
  4. 04

    2. Enumerate risks across five lenses

    Per lens, list each risk as a single bullet. Reject vague risks — "could break things" is not a risk; "queue worker silently drops messages on retry exhaustion" is.

    Per lens, list each risk as a single bullet. Reject vague risks — "could break things" is not a risk; "queue worker silently drops messages on retry exhaustion" is.
  5. 05

    3. Score each risk

    For every risk, assign L (likelihood: low / med / high) and I (impact: low / med / high). Top-5 sort by LxI rank; cite the trigger condition for each L and I. Do NOT pad to a fixed count — three sharp risks beat ten generic ones.

    For every risk, assign L (likelihood: low / med / high) and I (impact: low / med / high). Top-5 sort by LxI rank; cite the trigger condition for each L and I. Do NOT pad to a fixed count — three sharp risks beat ten gen…

Permission review

Static risk signals and limitations

No configured static risk pattern was detected

This is not proof of safety. Runtime behavior, indirect dependencies, and hidden external systems are outside the static scan.

Evidence record

Why each signal appears

EvidenceSourceComputedTestedEditorial
SignalValueEvidence typeMeaning
Quality score94/100ComputedDocumentation, specificity, maintenance, and trust rules
Repository stars7SourceRepository attention, not individual Skill quality
Compatibility0 platformsSourceDeclared in the catalog source record
Usage guideautomated source guideEditorialGenerated or reviewed according to the visible evidence level

Pinned source

Provenance and original SKILL.md

Repository
event4u-app/agent-config
Skill path
src/skills/risk-officer/SKILL.md
Commit
0adf49a8ae84b0ff6e2de8759eea43257e020eff
License
MIT
Collected
2026-07-28
Default branch
main
View the original SKILL.md

risk-officer

Surface risks the implementer or PO is likely to underweight, score them by likelihood × impact, and propose mitigations the team can actually execute. Sibling of threat-modeling (security-only) and blast-radius-analyzer (call-site only) — this skill takes the wider product, ops, and coordination view.

When to use

  • Pre-implementation: a roadmap, ADR, or refined ticket needs a risk pass before the team commits.
  • Pre-merge: a non-trivial diff is about to land and the team wants one more risk lens beyond the four standard judges.
  • Post-incident: surface the risks the team should track to prevent recurrence (without writing the post-mortem itself).
  • German triggers: "was kann schiefgehen?", "Risiko-Check", "wo brennt es?".

Do NOT use when:

Procedure

1. Inspect the change

Read the input (roadmap step, ticket, diff, post-mortem) and identify the scope in one sentence: "This change does X for users Y, touching systems Z." If you cannot, the artefact is not reviewable — stop and ask.

2. Enumerate risks across five lenses

LensSample questions
ProductWrong outcome shipped, churn, support load, brand impact
OperationsRollback path, observability, on-call burden, alert noise
CoordinationCross-team dependencies, communication gaps, sequencing
DataLoss, corruption, leakage, retention, compliance, residency
TimeSchedule slip, opportunity cost, sunk-cost lock-in

Per lens, list each risk as a single bullet. Reject vague risks — "could break things" is not a risk; "queue worker silently drops messages on retry exhaustion" is.

3. Score each risk

For every risk, assign L (likelihood: low / med / high) and I (impact: low / med / high). Top-5 sort by LxI rank; cite the trigger condition for each L and I. Do NOT pad to a fixed count — three sharp risks beat ten generic ones.

4. Propose mitigations

For the top-5 risks, propose one mitigation that the team can own. Each mitigation has an owner role (eng, ops, PO, support), a rough size (S / M / L), and a residual-risk note (what stays after mitigation). Mitigations the team cannot execute are not mitigations — flag them as accept or escalate.

5. Issue a verdict

VerdictWhen to issue
proceedTop-5 risks have owned mitigations; residual is acceptable
proceed-with-mitigationsMitigations must land BEFORE or WITH the change
pauseOne or more high × high risks have no executable mitigation

pause is not a veto — it forces the user to decide explicitly.

6. Validate the verdict

Before emitting, verify each top-5 risk has: a concrete trigger, a scored L×I, an owned mitigation (or explicit accept), and a residual note. Ensure the verdict matches the worst residual — a high × high residual without executable mitigation must produce pause, not proceed.

Output format

The report is a single block with these ordered fields:

  1. Target: — one-sentence scope from step 1
  2. Top-5 risks: — numbered list, each with L=, I=, trigger, mitigation, owner, size, residual
  3. Other risks tracked: — count of risks below the top-5 cut
  4. Verdict: — exactly one of proceed / proceed-with-mitigations / pause
Risk-Officer
Target: <one-sentence scope>

Top-5 risks:
1. 🔴 <risk> (L=high, I=high)  Trigger: <condition>
   Mitigation: <action>  Owner: <role>  Size: <S/M/L>
   Residual: <what remains>
2. 🟡 <risk> (L=med, I=high)   ...

Other risks tracked: <count>, summarised below or omitted if low/low.

Verdict: proceed | proceed-with-mitigations | pause

Gotcha

  • A risk without a trigger is a vibe, not a risk. Reject vibes.
  • Likelihood is conditional on the change — not the universal base rate of the system. "Postgres goes down" is not a risk of this change unless the change increases that likelihood.
  • Mitigations the team will not execute are theatre. Be honest in the residual-risk note.

Do NOT

  • Do NOT enumerate every conceivable risk — top-5 with rationale is the contract.
  • Do NOT score high × high reflexively to be cautious; mis-scoring destroys the rank.
  • Do NOT propose mitigations the agent itself will own — the owner is always a human role.
  • Do NOT issue pause as a soft veto on something the user already decided; issue proceed-with-mitigations and surface the residual.