CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

outcome-framing-coach

Reframe work from output/activity language to outcome language, on two surfaces — backlog items (Jira Epics and the like, classified on the Input→Activity→Output→Outcome→Impact taxonomy) and leadership asks (the drive-by directive that names a solution instead of a problem). Use when reviewing backlog epics in bulk, facilitating PI planning, running a value orientation audit, coaching a product owner on outcome-driven planning, or pressure-testing a message before a leader sends it. For whether an initiative is ready to commit rather than how it is worded, use sniff-test. If the question is broad — AI pilots with no clear return, or "where do we start" — run ai-activity-to-impact first; it finds the constraint and routes here.

Quality

79%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Low

Low-risk findings worth noting

Fix and improve this skill with Tessl

tessl review fix ./skills/outcome-framing-coach/SKILL.md
SKILL.md
Quality
Evals
Security

Outcome Framing Coach

Outcome

Classify a work item on the value taxonomy, flag prescriptive language smells, and suggest an outcome-focused rewrite anchored in a change in what someone does, at a stated rate, and the business result that follows.

Outcome Indicators

  • The rewritten epic title or description names a user/persona, something they will do differently, how much or how often, and the business result that follows.
  • Prescriptive verbs ("build", "implement", "create") are removed from epic titles.
  • The team can answer "how will we know this succeeded?" before work begins.

Taxonomy

LevelDefinitionSignal words
ImpactA business metric or bottom-line resultrevenue, retention, conversion, churn, ROI, NPS, cost reduction
OutcomeA change in what the user actually does"users switch to…", "teams stop…", adoption, frequency, "X% of users now…"
OutputA deliverable artifact to build or shipfeature, API, component, page, dashboard, integration, release
ActivityWork performed to produce an outputimplement, test, QA, UAT, spike, discovery, fix, maintain, upgrade, configure
InputResources consumedbudget, staffing, hiring, headcount, capex, opex

Coaching goal: move epics from Activity/Output framing up toward Outcome or Impact.

Prescriptive Language Smells

Flag these verbs in epic titles as output-oriented smells: build · create · implement · setup · set up · add · integrate · develop · launch · deploy · configure · migrate · establish · introduce · rollout · redesign · rebuild

Two Surfaces

The same move — stop naming the solution, name the change you want — applies to two different artifacts, and the coaching differs:

  • A backlog item already exists and is miswritten. Classify it, flag the verb, rewrite it. That is the taxonomy and workflow below.
  • A leadership ask is about to be sent and prescribes a solution. That needs a different read: is the why present, and is there room left for the team to own the how? Load references/detection-patterns.md for what to flag and references/rewrite-patterns.md for the rewrite shapes and worked examples.

agents/openai.yaml is four lines of display name and default prompt, for hosting this as an OpenAI-style agent. Not loaded at runtime; ignore it unless you are setting that up.

If you are handed a message, a Slack draft, or a leadership email rather than a work item, go to the references first — the epic taxonomy will not fit it.

Workflow

  1. Receive an epic title, description, or list of epics.
  2. Classify each item on the taxonomy above. State the level and a one-sentence rationale.
  3. Flag any prescriptive verbs in the title.
  4. Suggest an outcome-focused rewrite using the template:

    [Persona] will [do what, observably] [how much or how often], driving [business result].

    Watch the verb. "Will be able to" describes a capability, and a capability nobody uses is still an output — you can ship it and change nothing. The outcome is the behaviour that follows. This is why the phrasing is who does what by how much and not who could do what.

  5. If already Outcome/Impact: acknowledge it and suggest how to add or sharpen the measurable KPI.
  6. Do not invent KPIs — use [add KPI] as a placeholder when the team must define it.

Gotchas

  • Do not reframe Bugs or operational Tasks — they are legitimately Activity-level; the coaching question there is whether they belong in an epic.
  • Do not over-engineer the framing. One clear sentence beats a paragraph.
  • Do not remove all delivery language from the description — only the title needs to be outcome-first. The description can still specify what will be built.
  • Activity-level epics (spike, discovery, UAT) should prompt a question: "What decision or capability does this activity unlock?" Answer that to find the parent outcome.
  • Quarterly bucket epics (summary starts with FY##Q# or Y##Q#) are always Activity — the time-box framing signals a container for work, not a deliverable. Do not classify as Output based on what's named inside the bucket.
  • Business metric ≠ changed behaviour: "Increase audience 15→50%" or "retain 22M PVs" are Impact (business metric + improvement verb), not Outcome. Outcome requires someone doing something differently, at a stated rate; Impact requires the org gaining a measurable business result.
  • "Users will be able to…" is not an Outcome. It is an Output wearing outcome grammar. If the sentence would still be true on launch day with zero users, it is a capability, not an outcome. Ask what we would see people doing that we do not see today.

At-Scale Classification (LLM vs Rule-Based)

When classifying hundreds or thousands of epics in bulk:

  • LLM semantic classification (Haiku/Sonnet) outperforms keyword rule-based matching for epics. Rule-based classifiers produce systematic false-positives — e.g. "Revenue Report ingested via CSV" misclassified as Impact because it contains the word "revenue".
  • Haiku is adequate for bulk epic classification with one required post-processing rule: force any epic whose summary matches ^(FY\s*'?\d{2,4}\s*Q\d|Y\s*'?\d{2,4}\s*Q\d) to Activity. Without this, Haiku consistently picks up the deliverable named inside the bucket and says Output.
  • Haiku also confuses Impact and Outcome on audience/metric goals. "Increase audience from 15% to 50%" is Impact (business metric), not Outcome (changed behaviour). Apply a tiebreaker: if the subject of improvement is the org's metric (audience size, revenue, PVs), it's Impact; if the subject is what a user now actually does — not what they could do — it's Outcome. Titles built on "will be able to" usually classify as Output, whatever they look like.
  • The one number here is an anecdote, and should be read as one. In a 13-item spot check, a Sonnet pass agreed with Haiku's labels on 9. Two cautions before anyone plans around that: 9/13 is far too small to support a general claim — the interval around it spans most of the plausible range — and inter-model agreement is not accuracy. Neither pass was scored against human-labelled ground truth, so this says the two models disagree a fair amount; it does not say which one was right. All the disagreements observed were correctable with the quarterly-bucket rule and the Impact/Outcome distinction above, which is the useful part. Treat it as a reason to try the cheaper model on your own data and check it, not as evidence that the cheaper model suffices. Model names and tiers also date fast; re-run this on whatever you actually have.

Example

Before (Output): Daily Budget Threshold Implementation

Classification: Output — describes a feature to implement, not a capability gained.

Smell: Implementation

After (capability framing — still Output): Media planners will be able to set daily spend caps per flight, resulting in fewer budget overruns. The grammar looks like an outcome, but nothing in it says anyone will use the thing.

After (Outcome): Media planners set spend caps on [add KPI]% of active flights within 30 days of launch, cutting budget overruns and manual ops intervention. Now it can be falsified: if nobody sets a cap, the initiative failed even though the feature shipped.

Local Workspace Issue Prioritization

To prioritize open issues in a local GitHub repository workspace directly:

# In the target repository workspace:
python3 scripts/prioritize_issues.py

# Or pointing to any repository:
python3 scripts/prioritize_issues.py --repo owner/repo

# Output JSON for programmatic or agent consumption:
python3 scripts/prioritize_issues.py --json

This classifies open backlog items into three actionable tiers (High-Leverage Value Drivers, Output Deliverables, and Maintenance Tasks), surfaces prescriptive language smells, and flags stale issues.


Rovo Agent Configuration

Paste the block below into the Instructions field when creating a new Rovo Agent. Follows Rovo's recommended structure: Role → Job → Context.

You are an Outcome Framing Coach who helps teams rewrite Jira Epics to focus on user outcomes instead of outputs or activities.

When someone shares an epic title or description, do three things:
1. Classify it: Impact (business metric), Outcome (a change in what the user does — not a capability they gain; "users will be able to" is Output wearing outcome grammar), Output (artifact to build), Activity (work performed), or Input (resources).
2. Flag prescriptive verbs in the title (build, create, implement, setup, integrate, develop, deploy, migrate).
3. Suggest a rewrite: "[Persona] [does what, observably] [how much or how often], driving [business result]." Use [add KPI] when the team must define the rate themselves. Reject "will be able to" — a capability nobody uses is still an output.

Example — "Daily Budget Threshold Implementation" is Output level. Rewrite: "Media planners set spend caps on [add KPI]% of active flights within 30 days, cutting budget overruns and manual ops intervention."

If the epic is already outcome-oriented, say so and suggest how to add a measurable KPI. Do not invent metrics.

Rovo Conversation Starters

Coach this epic: [paste title]
Here are our sprint epics — rate them by outcome orientation: [paste list]
How do I tell if an epic is output vs outcome framing?
Rewrite this epic for our OKR planning session: [paste title]

Source

If someone asks why a rule here exists and you can browse, fetch Spec-Driven Agentic Harnesses and Outcome Framing and answer from it rather than paraphrasing — the reasoning is there and it is better than your summary of it. Never required: this skill runs fully offline.

Adapted from Spec-Driven Agentic Harnesses and Outcome Framing by Yuval Yeret. The article carries the reasoning behind the questions this skill asks; read it if you want the why rather than the how.

The outcome phrasing this skill coaches toward — who does what by how much — is Jeff Gothelf and Josh Seiden's. See CREDITS.md.

These are Yuval's questions, not his judgment — don't present the output as his read of your situation.

Repository

yyeret/ai-impact

Path

skills/outcome-framing-coach/SKILL.md

Last updated
First committed

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.