okr/commands/sporing.md
Kjell Tore Guttormsen ec1abf999c
docs(okr): generiske, fiktive eksempler i kunnskapsbasen
Sektorspesifikt eksempelmateriale er erstattet med generiske, fiktive
eksempler. Det fiktive direktoratet DDT får eksempler fra digitale
tjenester, som samsvarer med navnet. Fjordvik kommune (fiktiv) får
eksempler fra vann, avløp og avfall. Strukturen, tallene og poenget i
hvert eksempel er bevart, blant annet committed-doktrinens stokastiske
samfunnsutfall, progress-regnestykkene i Oboard-eksempelet og
kaskadekjeden.

Valg:
- Én kildebelagt case er fjernet fra okr-sources.md og én virksomhetsliste er
  gjort generell («m.fl.»). Påstandene som står igjen, er fortsatt sanne.
- Standardverdien i malens domene-felt er «digitalisering». «annet»
  dekker det som er tatt ut av alternativlistene.
- De historiske evalueringsdokumentene er endret bare der de siterte det
  gamle eksempelinnholdet.

Suite 350/350 grønn, vakten har 0 treff.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-23 12:28:54 +02:00

6.6 KiB

name description allowed-tools argument-hint
okr:sporing Spor OKR-fremgang, beregn score og generer check-in rapporter Read, Bash, AskUserQuestion, Task, ToolSearch, Glob [OKR eller tall for oppdatering]

OKR Sporing - Fremgang og scoring

Hjelp brukeren med å spore OKR-fremgang, beregne score og strukturere check-ins.

Kontekstbevissthet

Hooken for-injiserer ikke lenger en fil-liste — den emitterer kun kjerne-profil

  • en peker til wikien. Oppdag OKR-konteksten direkte fra disk FØR du spør brukeren:
  • Glob .claude/okr/syklus/*/ for de OKR-filene som skal spores — les dem direkte i stedet for å be brukeren lime inn OKR-tekst.
  • Glob .claude/okr/syklus/*/status.md for forrige statusrapport i samme syklus, så fremgang måles mot sist rapporterte verdi og ikke mot baseline alene.
  • Trenger du bredere kontekst fra brukerens wiki, invoker okr-second-brain-search.
  • Kjenner du allerede organisasjon og syklus fra kjerne-profilen: hopp over de spørsmålene.

Scoring-system

Skala: 0.0 - 1.0

Score Betydning Typisk for
1.0 100% oppnådd Committed mål
≈0.7 Sweet spot — 0.7 = forventet for aspirational; 0.6-0.7 = sweet spot (Google/Doerr) Aspirational mål
0.5-0.7 Delvis suksess Trenger analyse
< 0.5 Ikke oppnådd Trenger intervensjon

Beregningsformel

Score = (Nåværende - Baseline) / (Target - Baseline)

Arbeidsflyt

Ved statusoppdatering

  1. Samle inn tall — les OKR-filer fra .claude/okr/syklus/[id]/ (hvis tilgjengelig fra system-kontekst) eller be brukeren oppgi OKR. Spør med AskUserQuestion:

    • Nåværende verdi for hver KR
    • Baseline og target (hvis ikke kjent)
    • Dato for måling

    Er /okr:rapport tertial kjørt for syklusen, finnes tallene allerede i rapport-tertial.md — les den i stedet for å spørre om dem på nytt. Confidence-kolonnen der står tom med vilje: generatoren eier aritmetikken, denne kommandoen eier vurderingen. Det er den kolonnen du fyller i steg 3.

  2. Beregn score per KR, og oppsummer per type — aldri som ett felles tall. Committed og aspirational måles mot hver sin målestokk, og et aggregat på tvers av dem er tvetydig (okr-framework.md, committed/aspirational-skillet):

    • Committed: hvor mange KR som har nådd kravet. Et committed KR er nådd eller ikke; et snitt av binære krav er ikke en størrelse.
    • Aspirational: snittet på tvers av aspirational-KR. Rundt 0.7 er forventet måloppnåelse, ikke svikt.
  3. Vurder confidence — sett nivået fra den kanoniske confidence-tabellen i okr-framework.md (On Track 🟢 / At Risk 🟡 / Off Track 🔴, sannsynlighet for å nå target). Innfør ingen egne nivåer eller terskler her. Trend er ett innspill til vurderingen: peker den mot target, flater den ut, eller har fremgangen stoppet?

  4. Skriv status.md med scriptet — aldri for hånd. Du eier vurderingen; generatoren eier tallene. Lever confidence som JSON på stdin, ett oppslag fra KR-navn (nøyaktig som i kr*_navn) til etikett:

    node ${CLAUDE_PLUGIN_ROOT}/scripts/syklus-status.mjs .claude/okr/syklus/[id] <<'JSON'
    {
      "Andel digitale søknader (prosent)": "At Risk",
      "Gjennomsnittlig saksbehandlingstid (dager)": "On Track"
    }
    JSON
    

    Etikettene er det lukkede vokabularet fra okr-framework.md: On Track, At Risk, Off Track. Alle KR i syklusen må ha en etikett — scriptet nekter å skrive en fil med tomme celler, fordi en slik fil ser vurdert ut uten å være det, og konsumentene ville lest den som grønn.

    Skriv aldri av tallene selv. Scriptet bygger radene med samme kode som /okr:rapport, så score og avvik i status.md er de samme bytene der.

    Exit-koder: 0 skrevet · 1 domenefeil (ugyldig eller manglende etikett, eller en håndholdt status.md i veien — den overskrives aldri) · 2 bruksfeil (feil argument, katalogen finnes ikke, ugyldig JSON).

  5. Presenter resultatet med anbefalte tiltak, og pek på fila som ble skrevet.

Ved ukentlig check-in

Generer en strukturert check-in:

  1. Status på hver KR (traffic light)
  2. Blokkere og støttebehov
  3. Beslutninger som trengs
  4. Fokus neste periode

Fila scriptet skriver

.claude/okr/syklus/[id]/status.md er et OKF-konsept i second-brain-treet, ikke løs markdown. Scriptet setter frontmatteren selv — type: Status (uten den feller okf-check hele roten) og kilde: sporing, provenans-nøkkelen som gjør at en senere kjøring vet at fila er generert og trygt kan erstatte den. Etikettene er ASCII, uten emoji, som resten av den maskingenererte flaten; coaching-hook matcher på ordene.

Forkortet utdrag av resultatet:

---
type: Status
title: Statusrapport T1-2026
timestamp: "2026-05-01T10:00:00.000Z"
kilde: sporing
---

# Statusrapport T1-2026

## Committed Key Results

Committed KR maales binaert mot kravet: kravet er naadd eller ikke. En score
under 1.0 er et avvik som skal forklares, ikke et godt resultat.

### Forsyningssikkerhet for drikkevann

| KR | Baseline | Target | Naa | Score | Avvik | Confidence |
|----|----------|--------|-----|-------|-------|------------|
| Høydebasseng med oppgradert sikringsutstyr (antall) | 12 | 20 | 17 | 0.63 | Ja | At Risk |

## Avvik som skal forklares

## Aspirational Key Results

| KR | Baseline | Target | Naa | Score | Avvik | Confidence |
|----|----------|--------|-----|-------|-------|------------|
| Andel digitale søknader (prosent) | 60 | 85 | 63 | 0.12 | - | At Risk |

**Snitt aspirational: 0.23** over 2 KR.

Rammeteksten om committed, avvik og aspirational kommer fra generatoren — du skal ikke skrive den om. Det du eier, og som ikke finnes i fila, er tiltakene: presenter dem i svaret ditt.

Eksempel på anbefalte tiltak:

  1. Prioriter oppgraderingen av de tre gjenstående høydebassengene — kravet er et avvik, ikke et delresultat.
  2. Kjør brukerundersøkelse på selvbetjeningsløsningen før neste måling.

Linear-integrasjon

Hvis Linear er konfigurert (sjekk med ToolSearch):

  1. Hent aktive OKR-issues
  2. Oppdater status-felt
  3. Legg til kommentar med score

Referanser

  • ${CLAUDE_PLUGIN_ROOT}/skills/okr-offentlig-sektor/references/okr-calculator.md — beregningsformler
  • ${CLAUDE_PLUGIN_ROOT}/skills/okr-offentlig-sektor/references/okr-framework.md — scoring-metodikk
  • ${CLAUDE_PLUGIN_ROOT}/skills/okr-offentlig-sektor/references/metrics-library.md — metrikkbibliotek for offentlige KR
  • ${CLAUDE_PLUGIN_ROOT}/skills/okr-offentlig-sektor/references/okr-integrations.md — Linear-/verktøyintegrasjon for statussporing