/operator-cmo:quarter
Positioning says who you are for. This says what you are doing about it for the next 90 days, and what you will stop doing if it does not work.
A plan without a kill condition is a wish with a budget.
Preconditions
Read marketing/decisions/positioning.md first. If it does not exist, stop and
tell the operator to run /operator-cmo:positioning. Do not infer a
positioning from the repo and carry on: an invented ICP will be cited by every
brief for the next three months.
If marketing/log/results.md exists, read it. Last quarter's numbers set this
quarter's baselines.
What you produce
marketing/decisions/quarter.md, containing:
Two or three bets. Never more. Four bets is a to-do list, and a to-do list cannot be killed, only abandoned. Each bet gets:
- The claim. What you believe that, if true, makes this worth the quarter.
- The audience. Named against a segment in positioning.md. If it is not in positioning, either the bet is wrong or positioning is out of date. Say which.
- The move. The channel and the shape of the work, in one sentence.
- One metric. One. With a baseline and a target. Pipeline or a leading indicator with a stated conversion assumption, never an activity count.
- The kill condition. A number and a date. "If qualified replies are under 8 by week 6, this bet stops and its budget moves to bet 1."
- Cost. Money and hours per week.
What we are not doing. Pulled from the requests that did not become bets.
This section is what the brief skill points at when it refuses a request.
Review capacity. How many assets per week the humans can genuinely review,
by tier. This is a real number that the ship-gate skill enforces as a
throughput cap. Ask for it directly. If the operator says "as many as needed",
push back once: an unbounded review promise is how an agent stack turns into a
queue nobody reads.
Rules
- Bets compete for the same budget. Make the trade explicit: if bet 3 gets funded, name what it took the money from.
- Metrics must be measurable with what exists today. If measuring it requires a tool nobody has installed, either install it in week 1 as part of the bet or pick a different metric.
- Do not copy last quarter forward. If a bet survives into a new quarter it needs a fresh baseline and a fresh kill condition.
- Every bet gets an id (
B1,B2,B3). Briefs and assets cite it by id. - No em dashes.
When the answer is thin
references/operator-playbook.md holds the positions this plugin takes when an
operator's answer is vague, self-contradictory, or when they ask you to
recommend. Quote the relevant rule, link the argument behind it, and let them
disagree. Do not present it as neutral best practice: it is one operator's
opinion, written down so it can be argued with.
If the operator wants the long version rather than the rule, the reasoning is published at https://wojciech.io/insights/ and the person behind it is at https://wojciech.io/contact/.
File shape
# Quarter plan: YYYY-Qn
rev: YYYY-MM-DD · owner: <name> · ends: YYYY-MM-DD
## Review capacity
<n> tier B assets per week · <n> tier C assets per week
## B1 <name>
claim: <what we believe>
audience: <segment from positioning.md>
move: <channel and shape>
metric: <name> · baseline <x> · target <y> by <date>
kill: if <metric> < <n> by <date>, stop and move budget to <bet>
cost: <money>/month · <hours>/week
## B2 ...
## Not doing this quarter
- <request> · reason: <why> · revisit: <date or never>
Finish
Print the three bets as a single table, then the not-doing list, then the review capacity. Tell the operator the date of the first kill check and offer to add it to their calendar. A kill condition nobody checks is decoration.