| name | propose |
| description | Converges to a recommended approach — the options, their tradeoffs against stated criteria, a pick, and the rationale (plus what would change the call). Use to decide among approaches, or /propose. Not for generating options (brainstorm) or deep-diving one (ideate). |
propose
The convergence skill. Given a set of options (from brainstorm/ideate, or stated), it weighs them against
explicit criteria, recommends one, and says why — including what evidence would change the call. It
closes a decision; it does not open the space (that is brainstorm) or develop a single concept in depth
(that is ideate).
It is read-only and advisory: it writes a PROPOSAL.md, never product code. The output is judged by
Review — are the criteria explicit and applied evenly, is the recommendation actually supported by the
tradeoffs, and is the "what would change my mind" honest?
What this does / does not do
Does: state the decision + the options in play; make the decision criteria explicit (weighted if it matters);
compare each option against them evenly; recommend one with the rationale; name the runner-up and the
condition under which it wins; state what evidence would flip the call; write PROPOSAL.md + a receipt.
Does not: generate the options (that is brainstorm), develop one option in depth (that is ideate), build
a proof-of-concept (that is prototype), or write product code.
When NOT to use
- There are no options yet to choose between — use
brainstorm to generate them.
- One direction just needs developing, not deciding — use
ideate.
- The deciding factor is an untested feasibility unknown — use
prototype to get the evidence first, then
propose.
- The decision is already made and needs specifying — go to
specify.
Inputs
- The decision to make + the candidate options (from
brainstorm/ideate, or given).
- The criteria that matter (or elicit them) + any hard constraints.
How to do it
- Frame the decision. One line: what is being chosen and why it matters now. List the options in play.
- Make criteria explicit. The factors the decision turns on (cost, time, risk, fit, reversibility, …) —
weighted if some matter more. Criteria come before the comparison, not after (no post-hoc justification).
- Compare evenly. Score each option against each criterion; apply the same lens to all — no thumb on the
scale for a favourite.
- Recommend one. State the pick and the rationale that the comparison supports. If the comparison does
not support a clear pick, say so rather than forcing one.
- Name the runner-up + the flip condition. Which option is second, and the specific condition under
which it would win — decisions are contingent, not absolute.
- State what would change the call. The evidence or change that would flip the recommendation.
- Write
PROPOSAL.md — decision + options + criteria + comparison + recommendation + flip condition.
Output
- PROPOSAL.md at the product root (or
proposals/PROPOSAL.md if that dir exists) — persistence:
Ephemeral. Decision · options · explicit criteria (weighted) · even comparison · recommendation +
rationale · runner-up + flip condition · what would change the call.
- receipt (
<workspace>/receipts/propose-receipt-<ts>.json): base schema + decision, options,
criteria, recommendation, runner_up, flip_condition, proposal_path. persistence: Ephemeral.
Completion Criteria
Done when: PROPOSAL.md states the decision, lists the options, applies explicit criteria evenly,
recommends one with supported rationale, names the runner-up + flip condition, and states what would change
the call; a receipt records the decision + recommendation.
Not done if: criteria were written after the pick to justify it (post-hoc); options were compared
unevenly (a favourite got a lighter lens); or a clear recommendation was forced where the comparison did not
support one.
Next step: prototype gets evidence for an unresolved feasibility factor; specify turns the chosen
approach into a task card.
Related Skills
- brainstorm / ideate: produce the options
propose decides among (breadth / depth). propose
converges; they open.
- prototype: answers a feasibility unknown that the decision hinges on, before proposing.
- adversary: challenges a high-stakes recommendation. Use it against a
PROPOSAL.md when the call is
high-impact and low-confidence.