Cascade company OKRs to team-level OKRs — with a gap registry for objectives no team credibly owns, and a causal metric tree connecting each team KR to the north-star it's supposed to move. Use when the user wants to set or cascade OKRs, align team goals to company goals, "turn strategy into quarterly objectives", or audit existing OKRs for gaps and vanity metrics.
Pack product-managerTier standardJob Decide what to buildv0.1.1
In Claude Code, with the product-manager plugin installed, invoke it as:
/product-manager:okr-cascade
Try it
A realistic prompt from the skill's acceptance evals:
Cascade these company OKRs to our three teams (platform, growth, mobile). O1: Become the default choice for mid-market DevOps teams — KR1: net revenue retention 115%, KR2: launch the v2 platform. O2: Operational excellence — KR1: 99.95% availability. Cycle: Q4.
What a good result looks like
Company OKRs appear verbatim, and every restated one is marked as restated with the reason.
Every team KR has its causal sentence naming the company KR it feeds and the mechanism. "Aligns with company goals" is not a mechanism.
Every team KR is scorable 0.0–1.0 and measurable at the team's own scope. Binary deliverables are tasks — they can live under a KR, not as one.
Output KRs are flagged at every level, each with the outcome it presumably serves.
The gap registry is present and ranked — even when its honest content is "none found; here's why that's suspicious".
The metric tree has one north-star, and every KR is attached, labeled guardrail, or explicitly cut.
How it's checked
Measured against plain Claude Code (2026-10-23): it met 71% of its checks, against 67% without it, and a blind judge had no preference. How skills are checked
24 assertions across 4 acceptance evals, and 9 trigger queries. Every skill's checks
What the output must do
Company OKRs appear verbatim; 'launch the v2 platform' is flagged as an output KR with the outcome it presumably serves
Each team KR has a written causal sentence naming the company KR it feeds and the mechanism
Each team KR has baseline → target and is scorable 0.0–1.0 — no binary 'complete the migration' KRs
Not every team is forced under every objective — teams with no credible contribution are omitted from that objective
A ranked gap registry is present (or explicitly states none found and why that is suspicious)
A causal metric tree with exactly one north-star is emitted; every team KR is attached, labeled guardrail, or explicitly cut
The north-star is user-behavioral, not 'features shipped' or another output
Next steps route team KRs to success-metrics for measurement design and gaps to a named decision owner
No company OKRs are invented — the output is BLOCKED: need the company OKRs, verbatim
The BLOCKED output states what to rerun with (the top 3-5 objectives and their KRs, plus teams in scope)
No cascade tables, gap registry, or metric tree appear
Flags that the 16–24 sign-up key result has no team that credibly owns it (the Teen Services post was eliminated), rather than quietly assigning it to a team that lacks the capacity
Catches that the branch visit targets add up to 1.28M, short of the system target of 1.38M
Catches that Eastgate is closed March through August 2027 yet its draft target is unchanged at 200,000 visits
Flags the social media impressions key result as not moving e-book and audiobook lending (or as a vanity metric) and replaces or drops it
Catches that 120 sessions in 4-session courses of 10 seats allows at most about 300 completions, far short of the 1,500 target, or otherwise shows the Adult Learning draft cannot deliver it
Does not invent teams, staff, budgets, or baseline figures not in the input
Keeps each team to at most 3 objectives and the whole within roughly two pages
Delivers the OKRs without stopping to ask clarifying questions first
The reply is essentially just a table, with at most a line or two of text around it
Covers both goals the user named: opening on Sundays and winning more wholesale café customers
Key results are measurable results (for example Sunday takings or number of wholesale accounts) rather than tasks such as making a flyer
Does not invent current figures (revenue, customer counts) as facts; missing baselines are left to fill in or labelled as assumptions
Sized for a four-person business — a small number of objectives, not a multi-department corporate cascade
When it should and shouldn't activate
Should activate:
Cascade our company OKRs down to team level
Help me set quarterly OKRs for the platform team that align to company goals
Audit our existing OKRs — which ones are vanity metrics?
Leadership set five objectives; which have no team owner?
Turn our strategy into Q4 objectives for the org
Should leave to another skill:
How do we know this feature worked? Define its success metrics