- Lead with strategy → OKR, not tildelingsbrev → OKR - Tildelingsbrev repositioned as early analysis tool for leaders - Broaden tracking: mention Azure Boards and Jira alongside Linear - Fix limitation: Linear is built-in, others work via MCP Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| .claude-plugin | ||
| agents | ||
| commands | ||
| hooks | ||
| skills/okr-offentlig-sektor | ||
| templates | ||
| .gitignore | ||
| BACKLOG.md | ||
| CHANGELOG.md | ||
| CLAUDE.md | ||
| CODE_OF_CONDUCT.md | ||
| CONTRIBUTING.md | ||
| LICENSE | ||
| README.md | ||
| SECURITY.md | ||
OKR for Public Sector
Expert OKR guidance tailored for Norwegian public sector organizations.
Solo project — bug reports welcome, PRs not accepted.
The Problem
Your organization has a strategy. Turning it into OKR that actually drive change is where it gets hard. Teams write Key Results that are just task lists. "Gjennomføre 5 kurs" is not a result — it's an activity. Tertial cycles don't match the quarterly model from Google. And nobody can trace the line from strategic intent through OKR down to what teams actually deliver.
Most OKR resources assume you're a startup. You're not. You have political steering, budget cycles tied to Stortinget, governance requirements from Riksrevisjonen, and mid-cycle priority changes from a minister who read something in Aftenposten.
This plugin gives you an OKR expert that knows Norwegian public sector governance, learns your organization's context, and works alongside you through the entire OKR process — from turning strategy into OKR candidates, through iterative quality improvement, to check-in meetings and cycle reviews.
How It Works: Onboarding First
The plugin starts by learning your context. This is the most important step — it's what transforms generic OKR advice into guidance that fits your organization.
/okr:oppsett runs an interactive interview that captures:
- Your organization — which agency, which sector, which ministry
- Your OKR maturity — first attempt, pilot phase, or scaling across teams
- Your cycle — tertial or quarterly, current phase, team count
- Your strategy — virksomhetsplan, strategic priorities, tildelingsbrev goals
- Your tools — Linear integration, meeting tools, delivery methodology
This context is saved locally and automatically injected into every conversation. You do it once. After that, the plugin knows who you are, what cycle you're in, and what your strategic priorities are.
Bring What You Have
You don't need to start from scratch. The plugin meets you where you are:
Have a strategy or virksomhetsplan? The plugin analyzes your strategic priorities and suggests OKR candidates that are outcome-focused, measurable, and scoped to a cycle.
Have a tildelingsbrev? Leaders can use it as an early analysis tool — the plugin separates what's actually an OKR candidate from what's a KPI, a compliance requirement, or a reporting routine. It's a way to build awareness of where OKR can add value:
> /okr:governance
I see from your tildelingsbrev that Samferdselsdepartementet expects:
- Reduce traffic fatalities by 50% by 2030 (vs. 2020) → OKR candidate
- Maintain 98% tunnel availability → KPI, not OKR
- Report quarterly on maintenance spend → Reporting routine
Here are 2 OKR candidates derived from the mandate:
Objective: Drive measurable progress toward Vision Zero on Norwegian roads
KR1: Reduce fatalities from 95 (2025) to 85 (2026)
Source: SSB table 08463 | Type: Committed
KR2: Reduce severe injuries from 650 to 600
Source: SSB | Type: Committed
KR3: Complete safety interventions on 100% of high-risk road segments
Source: Internal action plan | Type: Aspirational
Shall I quality-check these? Or cascade them to team level?
Have existing OKR that need improvement? Paste them in and get scored feedback with specific rewrites:
> /okr:kvalitet
Our current OKR:
Objective: Improve customer service
KR1: Complete 5 customer service training courses
KR2: Answer 90% of calls within 3 minutes
─── Quality Assessment ───
Objective: "Improve customer service" — Score: 4/10
✗ Vague — what does "improve" mean?
✗ Not inspiring — reads like a task, not a goal
→ Suggested rewrite: "Become the most responsive service unit in the agency"
KR1: "Complete 5 training courses" — Score: 2/10
✗ Activity, not outcome — measures what you do, not what changes
✗ No connection to customer experience
→ Suggested rewrite: "Increase citizen satisfaction from 3.2 to 4.5/5.0"
KR2: "Answer 90% of calls within 3 minutes" — Score: 6/10
✓ Measurable with clear target
✗ Missing baseline — what's the current level?
→ Add baseline: "Improve call response rate from [X]% to 90% within 3 minutes"
Overall: 4/10 — rewrite recommended. Shall I draft improved versions?
Starting from a vague idea? The plugin guides you through structured questioning and suggests OKR aligned with your strategic context — because it already knows your organization's priorities from onboarding.
The Development Process
OKR writing is iterative. The plugin supports the full cycle:
/okr:skriv Draft OKR — guided from idea to structured output
↓
/okr:kvalitet Score against rubric, detect antipatterns, suggest rewrites
↓
/okr:kaskade Verify alignment from organization level to team
↓
/okr:sporing Track progress scores (0.0-1.0) during the cycle
↓
/okr:møter Generate check-in agendas with actual OKR status
Each command builds on context from the others. Quality-check an OKR you just wrote. Cascade it down to team level. Track it during the cycle. Generate meeting agendas with real status data.
Quick Start
Add the marketplace:
claude plugin marketplace add https://git.fromaitochitta.com/open/ktg-plugin-marketplace.git
Or enable directly in ~/.claude/settings.json:
{
"enabledPlugins": {
"okr@ktg-plugin-marketplace": true
}
}
Then run /okr:oppsett — it takes 5–15 minutes and unlocks everything else.
All Commands
| Command | What it does |
|---|---|
/okr:oppsett |
Onboarding interview — configure org, cycle, strategy, integrations |
/okr:skriv |
Write new OKR — guided from vague idea to scored, aligned output |
/okr:kvalitet |
Score existing OKR, detect 19 antipatterns, suggest rewrites |
/okr:kaskade |
Cascade from organization to team, visualize alignment gaps |
/okr:sporing |
Track progress scores (0.0-1.0), generate check-in reports |
/okr:møter |
Generate agendas for workshops, check-ins, reviews, and 1:1s |
/okr:governance |
Analyze tildelingsbrev, ensure Riksrevisjon-ready documentation |
/okr:innføring |
Plan OKR rollout, handle resistance, assess maturity |
Public Sector Governance
| Framework | What the plugin does |
|---|---|
| Tildelingsbrev | Parse requirements, separate OKR candidates from KPIs and compliance |
| Riksrevisjonen | Generate audit-ready docs with baseline, target, data source, owner |
| Political steering | Handle mid-cycle priority changes with documented rationale |
| NTP / Stortingsmelding | Cascade from national policy down to team-level OKR |
Under the Hood
5 specialized agents, 3 context-aware hooks, and a knowledge base of 15 reference documents covering methodology, antipatterns, governance, meeting formats, and sector-specific metrics. The plugin remembers your organization context across sessions via local configuration and automatic context injection.
Tracking integration is optional. The plugin has built-in support for Linear, and the approach works with any issue tracker your organization already uses — Azure Boards, Jira, or similar. Configure through /okr:oppsett.
When Not to Use This
- Private sector — governance model, examples, and cycle structure are built for Norwegian public sector
- Individual performance reviews — OKR is a team tool; this plugin explicitly discourages individual OKR
- Replacing workshops — start with people and post-its, come back with your first draft for quality-checking
- Project management — OKR sets direction, it doesn't replace your backlog or Gantt chart
Limitations
- Not tested in a real OKR cycle beyond the author's organization
- Norwegian public sector context only
- Linear has built-in MCP integration; Azure Boards and Jira work but require their own MCP setup
See CHANGELOG.md for version history. MIT License.