decision

Write a product-mode decision record for a choice made in this conversation and save it to .product-mode/decisions/. Use when the user types /decision.

SKILL.md

GitHub

Decision record

Record the decision the user names. Use the text after the command as the decision title. If there is no text, use the most recent non-trivial decision in the conversation, and confirm the title with the user.

  1. Check .product-mode/decisions/ for an entry about the same decision. If one exists, update it instead of writing a new one, and tell the user its path.
  2. Draft each field from the conversation and the code:
    • Context: the problem and the constraints
    • Options considered: every option that was discussed, including the rejected ones
    • Choice: the option chosen, and the reason
    • Reversibility: one-way door or two-way door
    • Revisit trigger: the metric, date, or condition that reopens this decision
  3. Never invent options, reasons, or evidence that the conversation does not contain. If the reason or the revisit trigger is missing, ask for it.
  4. If the decision is a one-way door (public API, data schema, pricing, brand, core UX), confirm that the user signed off and that the tradeoffs are written down.
  5. Show the draft. When the user confirms, save the file as .product-mode/decisions/<UTC timestamp>-<title-slug>.md. Use the timestamp format 2026-01-31T09-05-00-000Z and a lowercase, hyphenated slug. Use this content:
## Decision: <title>
Date: <YYYY-MM-DD>
Context: <context>
Options considered: [<A>, <B>, <C>]
Choice: <X>, because <reason>
Reversibility: <one-way door | two-way door>
Revisit trigger: <trigger>

---
*Generated by product-mode /decision*
  1. Tell the user the saved path.