Decision Log
Document a decision for "$ARGUMENTS" with full context, alternatives considered, and rationale. Capture the decision question, constraints, options evaluated, final choice, and conditions for revisiting.
Prerequisites
None — this is a utility skill. It can be run at any time, with or without existing project artifacts.
If .project/$ARGUMENTS/ exists, read any available artifacts for context. If it does not exist, proceed based on information the user provides.
Process
Gather context:
- If
.project/$ARGUMENTS/decision-log.md exists, read it for previous decisions and established patterns
- If
.project/$ARGUMENTS/ exists, read available artifacts for project scope and constraints
- Understand what decision needs to be made — ask the user if not clear
Capture the decision question clearly:
- Frame the decision as a specific question: "Should we X or Y?" or "How should we approach Z?"
- A vague decision question leads to a vague decision — sharpen it until it is precise
- Note the urgency: is this blocking work? can it wait for more information?
- Identify who needs to be involved in making this decision
Document context and constraints:
- Why is this decision needed now? — what triggered it (new requirement, technical discovery, timeline pressure, team feedback)
- What constraints apply? — budget, timeline, technical limitations, team skills, organizational policies, compliance requirements
- What assumptions are we making? — state them explicitly so they can be challenged
- What do we already know? — relevant data, prior experience, industry standards, previous decisions that constrain this one
- What don't we know? — gaps in information, uncertainties that affect the decision
List alternatives considered (minimum 2-3):
- Always include at least 2-3 genuine alternatives — if there is only one option, the decision is already made
- Include "do nothing" or "defer" as an explicit option when applicable
- For each alternative, provide a brief description of what it entails
- Ensure alternatives are meaningfully different, not just minor variations
Evaluate each alternative with pros and cons:
- For each alternative, list:
- Pros — benefits, advantages, what it enables
- Cons — drawbacks, risks, what it costs or constrains
- Effort — rough estimate of implementation cost (time, money, complexity)
- Reversibility — how easy is it to change course later? (one-way door vs. two-way door)
- Use consistent evaluation criteria across all alternatives for fair comparison
- Note any strong opinions or preferences from team members or stakeholders
Record the final decision and rationale:
- State the decision clearly in one sentence
- Explain why this option was chosen over the others — what tipped the balance?
- Acknowledge trade-offs: what are we giving up with this choice?
- If the decision was contentious, note dissenting views respectfully
- Record the decision-making method used (consensus, leader decides, majority vote, delegation)
Note who made or approved the decision and when:
- Decision maker(s) — who had the final say
- Consulted — who provided input
- Informed — who needs to know about this decision
- Date — when the decision was made
- Effective date — when the decision takes effect (if different from decision date)
Define review and revisit conditions:
- Under what circumstances should this decision be reconsidered?
- Examples: "If X assumption proves wrong," "If costs exceed Y," "After Z months of experience," "If the team grows beyond N people"
- Set a review date if applicable (e.g., "Revisit in 3 months")
- Note any one-way-door aspects: after what point is this decision effectively irreversible?
Tag with relevant area:
- Categorize the decision: architecture, process, product, team, tooling, vendor, security, compliance, or other relevant area
- Tags help when searching for related decisions later
Write the artifact — append to .project/$ARGUMENTS/decision-log.md:
- Use a numbered decision format:
## Decision [N]: [Decision Title]
- Date — when the decision was made
- Status — decided, superseded, or under review
- Area — category tag
- Question — the decision question
- Context — constraints and background
- Alternatives Considered — each option with pros, cons, effort, and reversibility
- Decision — the chosen option and rationale
- Decision Makers — who decided, consulted, and informed
- Revisit Conditions — when to reconsider
Output
Decision appended to .project/$ARGUMENTS/decision-log.md. Present a summary highlighting:
- Decision question and chosen option
- Key rationale (why this over alternatives)
- Main trade-off acknowledged
- Revisit conditions
1---2name: decision-log3description: Document decisions with context, alternatives considered, and rationale4---56# Decision Log78Document a decision for "$ARGUMENTS" with full context, alternatives considered, and rationale. Capture the decision question, constraints, options evaluated, final choice, and conditions for revisiting.910## Prerequisites1112None — this is a utility skill. It can be run at any time, with or without existing project artifacts.1314If `.project/$ARGUMENTS/` exists, read any available artifacts for context. If it does not exist, proceed based on information the user provides.1516## Process17181. **Gather context:**19 - If `.project/$ARGUMENTS/decision-log.md` exists, read it for previous decisions and established patterns20 - If `.project/$ARGUMENTS/` exists, read available artifacts for project scope and constraints21 - Understand what decision needs to be made — ask the user if not clear22232. **Capture the decision question clearly:**24 - Frame the decision as a specific question: "Should we X or Y?" or "How should we approach Z?"25 - A vague decision question leads to a vague decision — sharpen it until it is precise26 - Note the urgency: is this blocking work? can it wait for more information?27 - Identify who needs to be involved in making this decision28293. **Document context and constraints:**30 - **Why is this decision needed now?** — what triggered it (new requirement, technical discovery, timeline pressure, team feedback)31 - **What constraints apply?** — budget, timeline, technical limitations, team skills, organizational policies, compliance requirements32 - **What assumptions are we making?** — state them explicitly so they can be challenged33 - **What do we already know?** — relevant data, prior experience, industry standards, previous decisions that constrain this one34 - **What don't we know?** — gaps in information, uncertainties that affect the decision35364. **List alternatives considered (minimum 2-3):**37 - Always include at least 2-3 genuine alternatives — if there is only one option, the decision is already made38 - Include "do nothing" or "defer" as an explicit option when applicable39 - For each alternative, provide a brief description of what it entails40 - Ensure alternatives are meaningfully different, not just minor variations41425. **Evaluate each alternative with pros and cons:**43 - For each alternative, list:44 - **Pros** — benefits, advantages, what it enables45 - **Cons** — drawbacks, risks, what it costs or constrains46 - **Effort** — rough estimate of implementation cost (time, money, complexity)47 - **Reversibility** — how easy is it to change course later? (one-way door vs. two-way door)48 - Use consistent evaluation criteria across all alternatives for fair comparison49 - Note any strong opinions or preferences from team members or stakeholders50516. **Record the final decision and rationale:**52 - State the decision clearly in one sentence53 - Explain why this option was chosen over the others — what tipped the balance?54 - Acknowledge trade-offs: what are we giving up with this choice?55 - If the decision was contentious, note dissenting views respectfully56 - Record the decision-making method used (consensus, leader decides, majority vote, delegation)57587. **Note who made or approved the decision and when:**59 - **Decision maker(s)** — who had the final say60 - **Consulted** — who provided input61 - **Informed** — who needs to know about this decision62 - **Date** — when the decision was made63 - **Effective date** — when the decision takes effect (if different from decision date)64658. **Define review and revisit conditions:**66 - Under what circumstances should this decision be reconsidered?67 - Examples: "If X assumption proves wrong," "If costs exceed Y," "After Z months of experience," "If the team grows beyond N people"68 - Set a review date if applicable (e.g., "Revisit in 3 months")69 - Note any one-way-door aspects: after what point is this decision effectively irreversible?70719. **Tag with relevant area:**72 - Categorize the decision: architecture, process, product, team, tooling, vendor, security, compliance, or other relevant area73 - Tags help when searching for related decisions later747510. **Write the artifact** — append to `.project/$ARGUMENTS/decision-log.md`:76 - Use a numbered decision format: `## Decision [N]: [Decision Title]`77 - **Date** — when the decision was made78 - **Status** — decided, superseded, or under review79 - **Area** — category tag80 - **Question** — the decision question81 - **Context** — constraints and background82 - **Alternatives Considered** — each option with pros, cons, effort, and reversibility83 - **Decision** — the chosen option and rationale84 - **Decision Makers** — who decided, consulted, and informed85 - **Revisit Conditions** — when to reconsider8687## Output8889Decision appended to `.project/$ARGUMENTS/decision-log.md`. Present a summary highlighting:90- Decision question and chosen option91- Key rationale (why this over alternatives)92- Main trade-off acknowledged93- Revisit conditions