---\nname: \"freeze\"\ndescription: \"/cs:freeze <decision> <days> — Lock a strategic decision for a cooldown period to prevent impulse reversal. Mirrors gstack\'s safety primitives for the business layer. Use when an irreversible decision was made under pressure — e.g. a layoff plan or multi-year contract — and deserves a cooling-off lock before execution.\"\n---\n\n# /cs:freeze — Cooldown Lock on a Decision\n\n**Command:** `/cs:freeze <decision-path> <days>`\n\nLocks a decision for a defined cooldown period. During the freeze, the chief-of-staff router refuses to re-litigate the decision unless a kill criterion explicitly triggers.\n\nInspired by gstack\'s `/freeze` and `/guard` safety primitives — adapted from code-scoping to strategic-scoping.\n\n## When to Use\n\nFounders are pattern-matchers; pattern-matching after a tough decision often produces a reversal that\'s actually just decision fatigue. The freeze enforces a discipline:\n\n- After any **irreversible** or **high-cost-to-reverse** decision (fundraise, layoff, market entry)\n- After a **split-vote boardroom** (preserve the call against second-guessing)\n- After a **founder gut-feel** override of unanimous advisor consensus (let it run)\n- During a **personnel transition** (lock the strategy so the new exec can execute, not redebate)\n\n## Default Freeze Periods\n\n| Decision type | Default freeze |\n|---|---|\n| Fundraise round size / lead choice | 30 days |\n| Pricing change | 60 days |\
| Market entry / exit | 90 days |\
| Layoff / RIF | 30 days |\
| Strategic pivot | 90 days |\
| Personnel (exec hire / fire) | 60 days |\
| M&A LOI | 30 days |\
| Custom | specify in command |\n\n## Workflow\n\n1. Read the decision record\n2. Validate it has APPROVED status\n3. Apply freeze: write `freeze_until: YYYY-MM-DD` to the decision record\n4. Add to active-freezes index at `~/.claude/freezes/active.md`\n5. cs-chief-of-staff router now refuses to re-route this topic to the boardroom until:\n   - The freeze period expires, OR\n   - A kill criterion explicitly triggers\n\n## Output\n\nThe decision record is updated in place:\n\n```markdown\n# Decision: <title>\n...\n**Status:** FROZEN\n**Frozen until:** YYYY-MM-DD\n**Reason for freeze:** <text>\n**Override condition:** Kill criterion <name> triggers OR founder issues `/cs:unfreeze` with stated reason\n```\n\nThe active-freezes index is updated:\n\n```markdown\n# Active Freezes\n**Updated:** YYYY-MM-DD\n\n| Decision | Frozen until | Override condition |\n|---|---|---|\n| <decision title> | YYYY-MM-DD | <kill criterion or /cs:unfreeze> |\n```\n\n## Override\n\nTo unfreeze before the period ends, the founder runs:\n\n```\n/cs:unfreeze <decision> <reason>\n```\n\nThe unfreeze is logged in the decision history (preserved permanently). Forced overrides create a paper trail that surfaces at post-mortem.\n\n## Auto-Override\n\nIf a kill criterion in the decision triggers, the freeze auto-releases and the chief-of-staff routes immediately to `/cs:post-mortem`. The freeze does not protect against reality; it protects against impulse.\n\n## Why This Beats \"Just Don\'t Re-Decide\"\n\nFounders have authority. Without an explicit lock + log, every wobble produces a \"let\'s discuss this again\" — which is exhausting for advisors and erodes the value of the boardroom. The freeze is **a process**, not a rule; it logs every override so the post-mortem can audit founder discipline.\n\n## Routing\n\n- `/cs:unfreeze` — explicit early release\n- `/cs:post-mortem` — auto-triggered if kill criterion fires\n- `/cs:boardroom` — blocked until unfreeze or expiry\n\n## Related\n\n- Skill: [`decision-logger`](../../../skills/decision-logger/SKILL.md)\n- Agent: [`cs-chief-of-staff`](../../agents/cs-chief-of-staff.md) — enforces freezes in routing\n\n---\n\n**Version:** 1.0.0\n