okr-writer
Skill0 starsChanged 27 days agoMITView on GitHub
Generate or review OKRs for a product team. Drafts well-structured objectives and key results from strategic context, or reviews and rewrites existing OKRs to fix common failures (task KRs, vanity metrics, output-focused results, too many KRs per objective). Use when the user asks to write, draft, review, fix, or improve OKRs. Also triggers for: "help me write OKRs", "review my OKRs", "are these OKRs good", "my KRs feel like tasks", "OKR planning", "quarterly goals", or when the user pastes OKRs and asks for feedback. Invoke immediately — gather context as part of the skill flow.
5 other projects use a version of this.
Adopted by
Most recently taken up by
- jaskirat1616/grok-skillstheir own version, first seen Nov 1, 2026
- JayRHa/agent-skillstheir own version, first seen Oct 15, 2026
- JayRHa/AgentSkillstheir own version, first seen Jun 9, 2026
- hamzafarooq/claude-code-startertheir own version, first seen May 8, 2026
- Mehdibargach/claude-code-pm-skillstheir own version, first seen Mar 18, 2026
Other versions5 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 5
- hamzafarooq/claude-code-starter★ 145same name
- Mehdibargach/claude-code-pm-skills★ 97same name
- jaskirat1616/grok-skills★ 22same name
- JayRHa/agent-skills★ 12same name
- JayRHa/AgentSkills★ 12same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository12 other files it gives its agents.
- ai-quality-scorecardSkill
- competitive-teardownSkill
- cover-letterSkill
- eval-framework-builderSkill
- linkedin-reviewerSkill
- pm-case-study-builderSkill
- pm-take-home-caseSkill
- prd-reviewerSkill
- prd-writerSkill
- resume-reviewSkill
- take-home-reviewerSkill
- user-interview-synthesisSkill
The file
We split this skill into the rules it gives an agent
8 rules. 0 are common, 8 are distinctive, and 0 are very specific to this project.
0
Common
Most of the 5 edited versions we read keep these.
8
Distinctive
This author's own choices. Worth a look.
0
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 97
After drafting, add a short calibration note:
- Distinctive: line 124
If verdict is Rewrite, rewrite it immediately:
- Distinctive: line 128
After reviewing all OKRs, give an overall verdict:
- Distinctive: line 137
After generating or reviewing, offer:
- Distinctive: line 141
If the user asks for a specific iteration, make only that change — don't regenerate the full set unless asked.
- Distinctive: line 149
If a KR is a task dressed up as a result, say so plainly — "this is a task, not a key result"
- Distinctive: line 150
If the team's strategic priorities are vague, write OKRs that expose that vagueness: "I've had to make assumptions about X — you'll want to …
- Distinctive: line 151
If the set is over-committed or unrealistic, say so
“Common” is measured: kept by at least 6 in 10 of the 5 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
OKR Writer
What this skill does
Two modes:
Generate — Drafts OKRs from strategic context. Takes what the team is trying to accomplish and turns it into well-structured objectives and key results.
Review — Takes existing OKRs, scores them against clear criteria, rewrites the weak ones on the spot, and explains what made them weak.
In both modes, the output should be OKRs a team can actually use — not corporate filler dressed up as goals.
Step 1: Gather context
Collect in one prompt. Skip anything already in context:
- Mode — generate new OKRs, or review existing ones (default to generate if unclear)
- Team and product context — what does this team own? What problem are they solving for which users?
- Timeframe — quarter, half-year, annual
- Strategic priorities or bets — what does the company or leadership expect from this team right now? (e.g., "grow activation," "reduce churn," "expand into enterprise," "ship the AI features on the roadmap")
- Existing OKRs — required for review mode; optional for generate mode (paste if they have a starting draft)
- Constraints — anything the team can't or won't own (e.g., "we don't control pricing," "eng capacity is limited this quarter")
Once you have what you need, proceed. Don't ask follow-up questions.
Step 2: OKR quality standards
Apply these in both modes. These are the criteria an OKR is evaluated against.
What makes a good Objective
- Qualitative and directional — describes a desired state, not a metric
- Aspirational but grounded — should feel like a stretch, not a fantasy
- Time-bound by the cycle — implicit in the quarterly/half framing
- Answers "what do we want to achieve?" not "what will we do?"
- One clear idea — not a compound sentence with two goals
Bad: "Improve the product and grow revenue this quarter" Good: "Become the go-to tool for onboarding new enterprise accounts"
What makes a good Key Result
- Measurable — has a number. No number = not a KR.
- Outcome-focused — measures a change in user behavior, business metric, or system state. Not a task or deliverable.
- Time-bound — has a baseline and a target, or is anchored to the cycle
- Independently verifiable — could someone else look it up and confirm it?
- 3–4 per objective maximum — more than 4 means the objective is too broad or the team is over-committed
Common failures — name them explicitly when they appear
| Anti-pattern | Example | Why it fails |
| Task KR | "Launch the onboarding redesign" | Binary, no measurement of whether it worked |
| Vanity metric | "Increase page views by 20%" | Doesn't connect to user or business outcome |
| Output masquerading as outcome | "Ship 3 new features" | Measures activity, not impact |
| Too many KRs | 6+ KRs per objective | Signals lack of prioritization, not ambition |
| Unmeasurable objective | "Make the product more delightful" | Can't tell if you got there |
| Stretch target without baseline | "Achieve 90% NPS" with no current NPS stated | Unanchored, can't evaluate success |
Step 3A: Generate mode
Draft 1–3 objectives based on the strategic context provided. For each:
Objective: [clear, qualitative, directional statement]
Key Results:
- KR1: [metric] from [baseline] to [target] by end of [period]
- KR2: [metric] from [baseline] to [target] by end of [period]
- KR3: [metric] from [baseline] to [target] by end of [period]
Why this objective: 1–2 sentences connecting it to the strategic priority. Why this, why now.
Assumptions: Note any baseline metrics that are estimated or unknown and would need to be confirmed before committing to this OKR.
After drafting, add a short calibration note:
- Are these 1–3 objectives the right number for this team's capacity?
- Are the KRs measurable with what this team likely has access to?
- Is there a risk that any of these OKRs are fully outside the team's control?
Step 3B: Review mode
For each existing objective, assess:
[Objective as written]
| Criterion | Assessment | Score |
| Qualitative and directional | [finding] | Pass / Needs work |
| Aspirational but grounded | [finding] | Pass / Needs work |
| Single clear idea | [finding] | Pass / Needs work |
For each key result under that objective, assess:
[KR as written]
- Anti-pattern present? [Yes/No — name it if yes]
- Measurable? [Yes/No]
- Outcome-focused? [Yes/No]
- Verdict: Keep / Rewrite
If verdict is Rewrite, rewrite it immediately:
Rewritten: [improved KR with baseline → target format] What changed: [one sentence on what was wrong and what the rewrite fixes]
After reviewing all OKRs, give an overall verdict:
- How many objectives are well-structured?
- What's the most common failure pattern across the KRs?
- Is the overall set achievable for this team in this timeframe?
Step 4: Offer iterations
After generating or reviewing, offer:
"Want me to adjust any of these? I can tighten a specific objective, reframe KRs around different metrics, add a missing objective, or trim if the set is over-committed. Just say what needs work."
If the user asks for a specific iteration, make only that change — don't regenerate the full set unless asked.
Tone guidance
Honest about quality.
- If a KR is a task dressed up as a result, say so plainly — "this is a task, not a key result"
- If the team's strategic priorities are vague, write OKRs that expose that vagueness: "I've had to make assumptions about X — you'll want to confirm these baselines before committing"
- If the set is over-committed or unrealistic, say so
- Good OKRs are specific enough that it's obvious whether you hit them at the end of the quarter — write toward that standard
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

