Claude-debate-skills options-challenge
Compare several strategic options, force explicit trade-offs, and rank the strongest path. Use when the user has multiple plausible directions and wants a sharper decision memo.
install
source · Clone the upstream repo
git clone https://github.com/biyachuev/claude-debate-skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/biyachuev/claude-debate-skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/options-challenge" ~/.claude/skills/biyachuev-claude-debate-skills-options-challenge && rm -rf "$T"
manifest:
skills/options-challenge/SKILL.mdsource content
Options Challenge
Use this skill for decisions where at least two plausible paths exist and the user wants ranking, trade-offs, and a final recommendation.
Treat
$ARGUMENTS as the full decision brief.
Non-negotiable rules
- If Codex is not available in the current Claude Code session, say that explicitly and stop. Do not fabricate Codex output.
- Show the option framing, challenge, and ranking visibly in the chat.
- Unless the user opted out of logging, save the full visible output to a resolved log path.
- If logging is enabled, show the exact log path at the start and confirm save success or failure at the end.
Log file resolution
Accept either
Log File: or Save As: in the user brief.
Resolve the log path with these rules:
- If the user passes
,No Log
, orLog: none
, skip all file writing. Do not resolve a path, do not create directories, do not save anything.Log File: none - A bare filename such as
becomesgo-to-market-options
..claude/debate-logs/go-to-market-options.md - A filename with
stays as given under.md
..claude/debate-logs/ - A relative path with folders such as
is used relative to the project root.notes/decisions/go-to-market-options.md - If omitted, default to
..claude/debate-logs/${CLAUDE_SESSION_ID}-options-challenge.md - Create parent directories if needed.
Protocol
- Extract or infer:
- decision brief
- goal
- constraints
- selected finalizer
- resolved log path (skip if logging is disabled)
- Claude frames
.2-4 distinct options - Codex challenges each option:
- strongest upside
- major downside
- execution risk
- what must be true for it to work
- Claude revises the framing and produces a preliminary ranking.
- Codex pressure-tests the top-ranked option and the runner-up.
- The finalizer produces:
- final ranking
- recommendation
- why not the alternatives
Required chat format
(omit if logging is disabled)Log PathDecision BriefOption SetCodex ChallengeTop Options Stress TestRevised RankingFinal RecommendationWhy Not The AlternativesKey Assumptions
Logging requirements
If the user opted out of logging, skip this entire section — do not write any files and do not print log status lines.
Write the same visible output to the resolved log path.
If the file already exists, append a new entry unless the user explicitly asks to replace it.
Each saved entry must contain:
- date or session context if available
- raw user brief
- selected finalizer
- resolved log path
- every visible section from the answer
After saving, end with:
Log saved: <path> or Log failed: <reason>.
Quality bar
- Options must be materially different, not cosmetic variants.
- Ranking must follow explicit trade-offs, not vague preference.
- The final recommendation should say what to do now, not just what sounds best.
Example invocation
/options-challenge Finalizer: Claude. Log File: gtm-paths-q3. Decision Brief: Compare three GTM paths for an AI debate product: direct-to-student subscription, educator-led adoption, or partnerships with debate organizations. Constraints: tiny team, low sales capacity, need traction in one quarter.