risk-register

Maintains an append-only Markdown risk register tracking deferred items, shortcuts, and open decisions.

Updated Apr 9, 2014
One-click install
npx skills add https://github.com/thoroc/thoroc.github.io --skill risk-register-thoroc
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: risk-register
Source: https://github.com/thoroc/thoroc.github.io/tree/main/.agents/skills/risk-register
Command: npx skills add https://github.com/thoroc/thoroc.github.io --skill risk-register-thoroc

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires jq, and includes scripts (resource) and references (resource) and assets (resource) components.

What problem does it solve? Deferred items, interim shortcuts, and open architecture decisions get forgotten between sessions and team members when they live only in chat or gitignored scratch notes. This Skill keeps a single committed, team-visible table (docs/RISK_REGISTER.md) as the durable index of everything unresolved, with validation scripts that prevent rows from silently disappearing or becoming malformed. ## Core Features & Use Cases - Append-only row management: Add new rows with a permanent, never-reused id (last # + 1), and resolve entries by flipping Status, Date, and Decision together without touching immutable columns. - Schema and history validation: Two shell scripts enforce row shape against a JSON schema and block commits that delete previously-committed rows, wired into a pre-commit hook. - Clear boundaries: Distinguishes register-worthy risks from finalized ADRs, low-stakes tech-debt items, and ephemeral session-local scratch notes. - Use Case: While shipping a feature without a dead-letter queue, immediately file a Shortcut row with a concrete description and risk statement, run both validation scripts, and commit — so the gap survives across sessions and teammates. ## Quick Start Add a new row to docs/RISK_REGISTER.md for the shortcut we just took, then run both validation scripts to confirm they pass before committing.

Frequently Asked Questions about risk-register

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I add a new entry to a risk register?▼

Read the current last row's id and assign the new row that value plus one, never renumbering existing rows. Write a self-contained Description and concrete Risk if unaddressed, set Added to today's date, Status to Open, and Date and Decision to --, then run both validation scripts before committing.

How do I mark a risk register entry as resolved?▼

Change Status to Resolved, Date to the resolution date, and Decision to a self-contained sentence explaining the resolution, all three in the same edit. Never delete the row or edit Item, Type, Description, Risk, or Added, then re-run the schema validation script.

What belongs in a risk register versus an ADR?▼

Finalized, accepted architecture decisions belong in an ADR, not the register. The register is for open decisions, deferred items, interim shortcuts, and accepted risks — anything unresolved or carrying real cost if forgotten.

Why does the pre-commit hook block my risk register change?▼

The append-only script fails if a previously-committed row id disappeared, meaning a row was deleted instead of marked Resolved. The schema script fails on malformed fields like an invalid Type value, wrong date format, or Status flipped to Resolved while Date and Decision remain --.

Can I store confidential details in a risk register row?▼

No. The register is committed and visible to everyone with repo access, so confidential or personal data must never appear in a row. Reference an internal ticket or scratch note instead and keep the row itself generic.