Standardize named-markdown-link guidance across all plugins so file:// references render as independently clickable links in terminals like Ghostty (bare file:// URLs only make the first clickable). Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
4.2 KiB
OKR Offentlig Sektor v1.3.0
Expert OKR guidance for Norwegian public sector. Google/Doerr methodology adapted for 4-month tertial cycles.
Commands
| Command | Description |
|---|---|
/okr:skriv |
Write new OKR with guided Objective and KR creation |
/okr:kvalitet |
Quality check OKR against rubric and antipatterns |
/okr:kaskade |
Cascade OKR from org to team, visualize alignment |
/okr:sporing |
Track progress, calculate scores, generate check-ins |
/okr:møter |
Plan OKR workshops, check-ins, reviews, 1:1s |
/okr:innføring |
OKR adoption planning, resistance handling, maturity |
/okr:governance |
Tildelingsbrev translation, Riksrevisjon compliance |
/okr:gap |
Automatic gap analysis between tildelingsbrev and current OKR |
/okr:analyse |
Cross-cycle analytics with Mermaid trend visualizations |
/okr:oppsett |
Configure plugin: onboarding interview (full/mvp), cycle archival, profile update. Args: full|mvp|arkiver|oppdater|vis |
Agents
| Agent | Model | Color | Tools | Role |
|---|---|---|---|---|
| kvalitetssjekker | sonnet | blue | Read, Glob | Score OKR quality against rubric |
| kaskadebygger | sonnet | green | Read, Glob | Build OKR cascades between levels |
| fremdriftssporer | sonnet | yellow | Read, Glob, ToolSearch | Calculate scores and generate reports |
| møtefasilitator | sonnet | magenta | Read, Glob | Generate meeting agendas and materials |
| styringsrådgiver | opus | cyan | Read, Glob | Tildelingsbrev analysis, governance |
| gapanalytiker | sonnet | red | Read, Glob | Tildelingsbrev gap analysis and coverage matrix |
| trendanalytiker | sonnet | purple | Read, Glob | Cross-cycle trend analysis and Mermaid visualization |
Hooks
| Event | Type | Purpose |
|---|---|---|
| SessionStart | command | Proactive coaching based on cycle position and OKR status |
| UserPromptSubmit | command | Inject org profile (expanded YAML), current cycle, .claude/okr/ summary, and archived cycle count |
| PreCompact | prompt | Preserve OKR draft state during compaction |
| Stop | prompt | Remind user to save OKR work to tracking system |
Skill
| Component | Location |
|---|---|
| SKILL.md | skills/okr-offentlig-sektor/SKILL.md |
| References (15) | skills/okr-offentlig-sektor/references/ |
State Management
User configuration: .claude/okr.local.md in the project directory (not in plugin root).
Template: templates/okr.local.md.template
Context tree: .claude/okr/ — strategisk-kontekst/, syklus/[id]/, historikk/, dokumenter/
Onboarding state: onboarding_status field in okr.local.md (partial | fullfort)
Cycle archival: /okr:oppsett arkiver — moves syklus/ to historikk/, generates retrospektiv.md
Language Policy
- Commands, agents, user-facing text: Norwegian
- Code, config, technical identifiers: English
- SKILL.md: English (for broader LLM comprehension)
Architecture
/okr:skriv ──→ kvalitetssjekker (auto)
/okr:kvalitet ──→ kvalitetssjekker
/okr:kaskade ──→ kaskadebygger
/okr:sporing ──→ fremdriftssporer ──→ Linear MCP (optional)
/okr:møter ──→ møtefasilitator
/okr:governance ──→ styringsrådgiver
/okr:innføring ──→ (inline, no agent)
/okr:gap ──→ gapanalytiker
/okr:analyse ──→ trendanalytiker
/okr:oppsett ──→ (inline wizard: full/mvp/arkiver/oppdater/vis)
/okr:oppsett arkiver ──→ cycle archival + retrospektiv-generering
SessionStart ──→ coaching-hook.mjs (proactive coaching)
Communication patterns
Linking to local files
When pointing to local files in responses, always use markdown link syntax with a descriptive name:
- Use
[Human-friendly name](file:///absolute/path)— never barefile:///...URLs or autolinks<file://...>. - Always use absolute paths. Never
~/or relative paths. - For multiple files, render as a bullet list of named markdown links.
Why: bare file:// URLs only render the first as clickable across multiple lines. Named markdown links make each entry independently clickable and look cleaner.
Example: