fix(okr): saner oppsett.md — UTF-8, rm-rf-gardering, kommandonavn, DDT
Fase 0 Step 1/10 (circuit-breaker). Restaurerer norske tegn i prosa
(0→55å/67ø/5æ), garderer rm -rf med regex ^[TQ][1-4]-[0-9]{4}$ + non-empty,
retter /okr:moter→/okr:møter + oppstartsmate→oppstartsmøte, merker 2 DDT
som fiktiv eksempeletat. YAML-schema-nøkler bevart (Fase 2-scope).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LSVEbrrahcSVoNG4WG3NrP
This commit is contained in:
parent
16ae8d3db3
commit
4231ccf513
1 changed files with 98 additions and 93 deletions
|
|
@ -5,18 +5,18 @@ allowed-tools: Read, Write, Bash, AskUserQuestion, ToolSearch, Glob
|
|||
argument-hint: "[full|mvp|arkiver|oppdater|vis]"
|
||||
---
|
||||
|
||||
# OKR Oppsett - Onboarding, konfigurasjon og syklushandtering
|
||||
# OKR Oppsett - Onboarding, konfigurasjon og syklushåndtering
|
||||
|
||||
Interaktiv konfigurasjon av OKR-pluginen. Bygger en persistent organisasjonsprofil
|
||||
som alle andre kommandoer bruker automatisk via hook-injeksjon.
|
||||
|
||||
## Ruting basert pa argument
|
||||
## Ruting basert på argument
|
||||
|
||||
| Argument | Handling |
|
||||
|----------|----------|
|
||||
| _(ingen)_ | Detekter eksisterende konfig, tilby meny |
|
||||
| `full` | Kjor 6-fase dyp onboarding (15-20 min) |
|
||||
| `mvp` | Kjor minimum viable onboarding (6 sporsmaal, ~5 min) |
|
||||
| `full` | Kjør 6-fase dyp onboarding (15-20 min) |
|
||||
| `mvp` | Kjør minimum viable onboarding (6 spørsmål, ~5 min) |
|
||||
| `arkiver` | Arkiver gjeldende syklus med retrospektiv |
|
||||
| `oppdater` | Oppdater spesifikke felt i eksisterende profil |
|
||||
| `vis` | Vis gjeldende konfigurasjon |
|
||||
|
|
@ -31,15 +31,15 @@ Les `.claude/okr.local.md` (relativt til brukerens prosjekt-cwd).
|
|||
|
||||
Bruk AskUserQuestion:
|
||||
```
|
||||
Ser ut som du ikke har konfigurert OKR-pluginen enna.
|
||||
Vil du kjore onboarding-intervjuet?
|
||||
Ser ut som du ikke har konfigurert OKR-pluginen ennå.
|
||||
Vil du kjøre onboarding-intervjuet?
|
||||
|
||||
1. Full onboarding (6 faser, 15-20 min) — anbefalt for beste resultat
|
||||
2. MVP onboarding (6 sporsmaal, ~5 min) — rask start
|
||||
2. MVP onboarding (6 spørsmål, ~5 min) — rask start
|
||||
3. Avbryt
|
||||
```
|
||||
|
||||
Kjor `full` eller `mvp` basert pa valg.
|
||||
Kjør `full` eller `mvp` basert på valg.
|
||||
|
||||
**Hvis filen finnes OG `onboarding_status: partial`:**
|
||||
|
||||
|
|
@ -47,8 +47,8 @@ Kjor `full` eller `mvp` basert pa valg.
|
|||
Fant ufullstendig onboarding. Du kom til fase [N] forrige gang.
|
||||
|
||||
1. Fortsett fra fase [N]
|
||||
2. Start pa nytt (full)
|
||||
3. Start pa nytt (mvp)
|
||||
2. Start på nytt (full)
|
||||
3. Start på nytt (mvp)
|
||||
4. Avbryt
|
||||
```
|
||||
|
||||
|
|
@ -56,13 +56,13 @@ Hvis fortsett: les YAML, finn siste utfylte fase-seksjon, fortsett fra neste.
|
|||
|
||||
**Hvis filen finnes OG `onboarding_status: fullfort`:**
|
||||
|
||||
Vis kort oppsummering av gjeldende profil (org, syklus, modenhet, verktoy).
|
||||
Vis kort oppsummering av gjeldende profil (org, syklus, modenhet, verktøy).
|
||||
Bruk AskUserQuestion:
|
||||
```
|
||||
Konfigurasjon funnet for [organisasjon.navn].
|
||||
|
||||
1. Oppdater konfigurasjon (endre spesifikke felt)
|
||||
2. Kjor intervju pa nytt (full)
|
||||
2. Kjør intervju på nytt (full)
|
||||
3. Vis full konfigurasjon
|
||||
4. Avslutt
|
||||
```
|
||||
|
|
@ -71,15 +71,15 @@ Konfigurasjon funnet for [organisasjon.navn].
|
|||
|
||||
## Full onboarding — 6-fase dyp intervju
|
||||
|
||||
Skriv `onboarding_status: partial` til `.claude/okr.local.md` for hver fase
|
||||
er fullfort. Oppdater til `fullfort` etter siste fase.
|
||||
Skriv `onboarding_status: partial` til `.claude/okr.local.md` for hver fase er
|
||||
fullført. Oppdater til `fullfort` etter siste fase.
|
||||
|
||||
### Fase 1 — Identitet (2 min)
|
||||
|
||||
Still alle sporsmaal med AskUserQuestion (grupper 2-3 sammen der naturlig):
|
||||
Still alle spørsmål med AskUserQuestion (grupper 2-3 sammen der naturlig):
|
||||
|
||||
1. **Organisasjonsnavn og kortform?**
|
||||
Eksempel: "Direktoratet for digital tjenesteutvikling" / "DDT"
|
||||
Eksempel (fiktiv eksempeletat): «Direktoratet for digital tjenesteutvikling» / «DDT»
|
||||
|
||||
2. **Type organisasjon?**
|
||||
Alternativer: statlig etat | direktorat | kommune | fylkeskommune
|
||||
|
|
@ -101,30 +101,30 @@ Still alle sporsmaal med AskUserQuestion (grupper 2-3 sammen der naturlig):
|
|||
### Fase 2 — Modenhet (5 min)
|
||||
|
||||
7. **OKR-historikk?**
|
||||
Alternativer: aldri provd | prover na (forste syklus) | erfaren (2+ sykluser)
|
||||
Alternativer: aldri prøvd | prøver nå (første syklus) | erfaren (2+ sykluser)
|
||||
|
||||
8. **Hvis erfaren: Antall gjennomforte sykluser?**
|
||||
(Hopp over hvis "aldri provd" eller "prover na")
|
||||
8. **Hvis erfaren: Antall gjennomførte sykluser?**
|
||||
(Hopp over hvis "aldri prøvd" eller "prøver nå")
|
||||
|
||||
9. **Hvem er OKR-sponsor (navn og rolle)?**
|
||||
Personen som gir mandat og synlighet. Eksempel: "Divisjonsdirektor Kari Holm"
|
||||
Personen som gir mandat og synlighet. Eksempel: "Divisjonsdirektør Kari Holm"
|
||||
|
||||
10. **Hvem er OKR-champion (navn og rolle)?**
|
||||
Personen som driver det operative arbeidet. Eksempel: "Seniorradgiver Per Lund"
|
||||
Personen som driver det operative arbeidet. Eksempel: "Seniorrådgiver Per Lund"
|
||||
|
||||
11. **Er OKR eksplisitt koblet fra lonnssamtale og medarbeidersamtale?**
|
||||
11. **Er OKR eksplisitt koblet fra lønnssamtale og medarbeidersamtale?**
|
||||
Alternativer: ja | nei | usikkert
|
||||
|
||||
**VIKTIG:** Hvis "nei" eller "usikkert" — sett `okr_frikoblet_fra_loenn: false` og
|
||||
legg til advarsel i Markdown-body:
|
||||
> **ADVARSEL:** OKR koblet til lonn er et av de farligste antipatternene.
|
||||
> Nar medarbeidere vet at OKR-score pavirker lonn, setter de trygge, lave mal
|
||||
> i stedet for ambisiose stretch goals. Anbefaler sterkt a dekoblere for utrulling.
|
||||
> **ADVARSEL:** OKR koblet til lønn er et av de farligste antipatternene.
|
||||
> Når medarbeidere vet at OKR-score påvirker lønn, setter de trygge, lave mål
|
||||
> i stedet for ambisiøse stretch goals. Anbefaler sterkt å dekoble før utrulling.
|
||||
|
||||
12. **Hva er alignment-tilnaermingen?**
|
||||
12. **Hva er alignment-tilnærmingen?**
|
||||
Alternativer: top-down | bottom-up | bidireksjonell
|
||||
Forklar kort: "Bidireksjonell betyr at ledelsen setter retning og teamene foreslaar
|
||||
egne OKR som kobles opp. Dette er anbefalt tilnaerming."
|
||||
Forklar kort: "Bidireksjonell betyr at ledelsen setter retning og teamene foreslår
|
||||
egne OKR som kobles opp. Dette er anbefalt tilnærming."
|
||||
|
||||
**Etter fase 2:** Oppdater `.claude/okr.local.md` med program-seksjonen.
|
||||
|
||||
|
|
@ -133,21 +133,21 @@ Still alle sporsmaal med AskUserQuestion (grupper 2-3 sammen der naturlig):
|
|||
13. **Har dere et tildelingsbrev for 2026?**
|
||||
Alternativer: ja | nei
|
||||
|
||||
Hvis ja: "Vil du lagre nokkelmal fra tildelingsbrevet? Lim inn de viktigste malene
|
||||
(stikkpunkter, ikke hele brevet) sa kan pluginen bruke dem til alignment."
|
||||
Hvis ja: "Vil du lagre nøkkelmål fra tildelingsbrevet? Lim inn de viktigste målene
|
||||
(stikkpunkter, ikke hele brevet) så kan pluginen bruke dem til alignment."
|
||||
|
||||
Hvis brukeren limer inn tekst: skriv til
|
||||
`.claude/okr/strategisk-kontekst/tildelingsbrev-2026.md` med YAML-frontmatter
|
||||
og innlimt innhold. Opprett mappene med Write-tool.
|
||||
|
||||
14. **Har dere en virksomhetsplan eller strategiplan?**
|
||||
Eventuelt lenke eller nokkelpunkter. Hvis innhold gis: skriv til
|
||||
Eventuelt lenke eller nøkkelpunkter. Hvis innhold gis: skriv til
|
||||
`.claude/okr/strategisk-kontekst/virksomhetsplan.md`.
|
||||
|
||||
15. **Har dere org-niva OKR for 2026?**
|
||||
15. **Har dere org-nivå OKR for 2026?**
|
||||
Alternativer: ja | nei | planlegges
|
||||
|
||||
Hvis ja: "Lim inn org-OKR (Objectives og Key Results) sa pluginen kan bruke dem
|
||||
Hvis ja: "Lim inn org-OKR (Objectives og Key Results) så pluginen kan bruke dem
|
||||
til kaskadering og alignment-sjekk."
|
||||
|
||||
Hvis innhold gis: skriv til `.claude/okr/strategisk-kontekst/overordnede-okr.md`.
|
||||
|
|
@ -156,31 +156,31 @@ Still alle sporsmaal med AskUserQuestion (grupper 2-3 sammen der naturlig):
|
|||
|
||||
### Fase 4 — Struktur (3 min)
|
||||
|
||||
16. **Hvilke OKR-nivaer bruker dere?**
|
||||
16. **Hvilke OKR-nivåer bruker dere?**
|
||||
Alternativer (flervalg): etat | divisjon | avdeling | seksjon | team
|
||||
|
||||
17. **Din rolle i OKR-programmet?**
|
||||
Alternativer: leder | produkteier | seksjonsleder | koordinator | annet
|
||||
|
||||
18. **Antall team som kjorer OKR denne syklusen (ca.)?**
|
||||
18. **Antall team som kjører OKR denne syklusen (ca.)?**
|
||||
Tall
|
||||
|
||||
19. **Bruker dere bidireksjonell kaskadering?**
|
||||
Forklaring: "Teamene foreslaar egne OKR som kobles til org-OKR, i stedet for at
|
||||
Forklaring: "Teamene foreslår egne OKR som kobles til org-OKR, i stedet for at
|
||||
alt kommer ovenfra."
|
||||
Alternativer: ja | nei | planlegger det
|
||||
|
||||
**Etter fase 4:** Oppdater gjeldende_syklus-seksjonen.
|
||||
|
||||
### Fase 5 — Verktoy (2 min)
|
||||
### Fase 5 — Verktøy (2 min)
|
||||
|
||||
20. **Oppgavestyringsverktoy?**
|
||||
20. **Oppgavestyringsverktøy?**
|
||||
Alternativer: Linear | Jira | Azure DevOps | Planner | ingen | annet
|
||||
|
||||
21. **OKR-sporingsverktoy?**
|
||||
21. **OKR-sporingsverktøy?**
|
||||
Alternativer: Oboard | Quantive | regneark | ingen | annet
|
||||
|
||||
22. **Moteverktoy?**
|
||||
22. **Møteverktøy?**
|
||||
Alternativer: Microsoft Teams | Zoom | annet
|
||||
|
||||
23. **Leveransemetodikk?**
|
||||
|
|
@ -189,27 +189,27 @@ Still alle sporsmaal med AskUserQuestion (grupper 2-3 sammen der naturlig):
|
|||
24. **Vil du koble Linear til OKR-pluginen?**
|
||||
Alternativer: ja | nei
|
||||
|
||||
Hvis ja: Kjor Linear-oppsett:
|
||||
Hvis ja: Kjør Linear-oppsett:
|
||||
1. Sjekk om Linear MCP er konfigurert — les `~/.claude/settings.json`
|
||||
2. Hvis ikke: veilede oppsett av MCP-server (referer til Linear MCP docs)
|
||||
3. Bruk ToolSearch for a finne Linear-tools, hent teams og projects
|
||||
3. Bruk ToolSearch for å finne Linear-tools, hent teams og projects
|
||||
4. La bruker velge team og project for OKR-tracking
|
||||
|
||||
**Etter fase 5:** Oppdater verktoy- og integrasjoner-seksjonen.
|
||||
**Etter fase 5:** Oppdater verktøy- og integrasjoner-seksjonen.
|
||||
|
||||
### Fase 6 — Kultur (3 min)
|
||||
|
||||
25. **Hva er check-in-rytmen (eller onsket rytme)?**
|
||||
Alternativer: ukentlig | annenhver uke | maanedlig
|
||||
Anbefaling: "Annenhver uke er et godt utgangspunkt. Ukentlig for team i utfoerelsesfase."
|
||||
25. **Hva er check-in-rytmen (eller ønsket rytme)?**
|
||||
Alternativer: ukentlig | annenhver uke | månedlig
|
||||
Anbefaling: "Annenhver uke er et godt utgangspunkt. Ukentlig for team i utførelsesfase."
|
||||
|
||||
26. **Psykologisk trygghet for a sette stretch goals?**
|
||||
Alternativer: lav | middels | hoy
|
||||
Forklaring: "Kan teammedlemmer trygt foreslaa ambisiose mal uten a frykte konsekvenser
|
||||
om de ikke naar 100%?"
|
||||
26. **Psykologisk trygghet for å sette stretch goals?**
|
||||
Alternativer: lav | middels | høy
|
||||
Forklaring: "Kan teammedlemmer trygt foreslå ambisiøse mål uten å frykte konsekvenser
|
||||
om de ikke når 100%?"
|
||||
|
||||
27. **Kjente utfordringer eller antipatterns dere har sett?**
|
||||
Fritekst, ENTER for a hoppe over.
|
||||
Fritekst, ENTER for å hoppe over.
|
||||
Eksempler: "set-and-forget", "aktivitetsfokus i KR", "for mange Objectives"
|
||||
|
||||
28. **Er tillitsvalgte involvert i OKR-prosessen?**
|
||||
|
|
@ -217,7 +217,7 @@ Still alle sporsmaal med AskUserQuestion (grupper 2-3 sammen der naturlig):
|
|||
|
||||
**Etter fase 6:** Oppdater kultur-seksjonen. Sett `onboarding_status: fullfort`.
|
||||
|
||||
### Fullforingssteg
|
||||
### Fullføringssteg
|
||||
|
||||
Etter alle 6 faser:
|
||||
|
||||
|
|
@ -226,13 +226,13 @@ Etter alle 6 faser:
|
|||
3. Vis oppsummering:
|
||||
|
||||
```
|
||||
Onboarding fullfort for [organisasjon]!
|
||||
Onboarding fullført for [organisasjon]!
|
||||
|
||||
Profil:
|
||||
- Organisasjon: [navn] ([type])
|
||||
- Modenhet: [niva] ([N] sykluser gjennomfort)
|
||||
- Modenhet: [nivå] ([N] sykluser gjennomført)
|
||||
- Gjeldende syklus: [id] ([fase])
|
||||
- Verktoy: [oppgavestyring], [okr_tracking]
|
||||
- Verktøy: [oppgavestyring], [okr_tracking]
|
||||
- Check-in: [rytme]
|
||||
|
||||
Lagrede kontekstfiler:
|
||||
|
|
@ -241,34 +241,34 @@ Lagrede kontekstfiler:
|
|||
[- .claude/okr/strategisk-kontekst/overordnede-okr.md]
|
||||
|
||||
Anbefalte neste steg:
|
||||
- /okr:skriv — skriv forste OKR for denne syklusen
|
||||
- /okr:skriv — skriv første OKR for denne syklusen
|
||||
- /okr:kvalitet — sjekk eksisterende OKR
|
||||
- /okr:moter — planlegg OKR-workshop eller kick-off
|
||||
- /okr:møter — planlegg OKR-workshop eller kick-off
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## MVP onboarding — 6 sporsmaal
|
||||
## MVP onboarding — 6 spørsmål
|
||||
|
||||
For brukere som vil komme raskt i gang. Samle alle sporsmaal i en AskUserQuestion
|
||||
For brukere som vil komme raskt i gang. Samle alle spørsmål i en AskUserQuestion
|
||||
eller maks 2 runder:
|
||||
|
||||
1. **Organisasjonsnavn og type?**
|
||||
Eksempel: "Direktoratet for digital tjenesteutvikling, statlig etat"
|
||||
Eksempel (fiktiv eksempeletat): «Direktoratet for digital tjenesteutvikling, statlig etat»
|
||||
|
||||
2. **Fagdomene?**
|
||||
Alternativer: transport | helse | justis | digitalisering | utdanning | annet
|
||||
|
||||
3. **OKR-modenhet?**
|
||||
Alternativer: aldri provd | prover na (forste syklus) | erfaren (2+ sykluser)
|
||||
Alternativer: aldri prøvd | prøver nå (første syklus) | erfaren (2+ sykluser)
|
||||
|
||||
4. **Gjeldende syklusfase?**
|
||||
Alternativer: planlegging | utfoerelse | review | mellom sykluser
|
||||
Alternativer: planlegging | utførelse | review | mellom sykluser
|
||||
|
||||
5. **Primaere verktoy?**
|
||||
5. **Primære verktøy?**
|
||||
Fritekst. Eksempel: "Linear og Microsoft Teams"
|
||||
|
||||
6. **Er OKR frikoblet fra lonnssamtale?**
|
||||
6. **Er OKR frikoblet fra lønnssamtale?**
|
||||
Alternativer: ja | nei | usikkert
|
||||
|
||||
**Etter svar:** Skriv YAML med disse 6 feltene pluss fornuftige defaults for alle andre:
|
||||
|
|
@ -285,7 +285,7 @@ organisasjon:
|
|||
domene: "[svar 2]"
|
||||
geografi: "nasjonal"
|
||||
program:
|
||||
modenhetsnivaa: "[utledet fra svar 3: aldri provd→ikke-startet, prover na→utforsker, erfaren→pilot]"
|
||||
modenhetsnivaa: "[utledet fra svar 3: aldri prøvd→ikke-startet, prøver nå→utforsker, erfaren→pilot]"
|
||||
sykluser_gjennomfort: 0
|
||||
sponsor: ""
|
||||
champion: ""
|
||||
|
|
@ -317,7 +317,7 @@ preferanser:
|
|||
---
|
||||
```
|
||||
|
||||
Vis kort oppsummering og foreslaa `/okr:oppsett full` for a fylle ut resten senere.
|
||||
Vis kort oppsummering og foreslå `/okr:oppsett full` for å fylle ut resten senere.
|
||||
|
||||
---
|
||||
|
||||
|
|
@ -328,7 +328,7 @@ Trigger: `/okr:oppsett oppdater` eller valg 1 fra ingen-argument-menyen.
|
|||
1. Les `.claude/okr.local.md`
|
||||
2. Vis gjeldende verdier gruppert per seksjon
|
||||
3. Bruk AskUserQuestion: "Hvilken seksjon vil du oppdatere?"
|
||||
Alternativer: Organisasjon | Program | Syklus | Verktoy | Kultur | Integrasjoner | Preferanser
|
||||
Alternativer: Organisasjon | Program | Syklus | Verktøy | Kultur | Integrasjoner | Preferanser
|
||||
4. Vis feltene i valgt seksjon med gjeldende verdier
|
||||
5. La bruker endre ett eller flere felt
|
||||
6. Skriv oppdatert YAML tilbake
|
||||
|
|
@ -354,10 +354,10 @@ Les `.claude/okr.local.md` og vis innholdet formatert:
|
|||
|
||||
### Program
|
||||
- Modenhet: [modenhetsnivaa]
|
||||
- Sykluser gjennomfort: [tall]
|
||||
- Sykluser gjennomført: [tall]
|
||||
- Sponsor: [sponsor]
|
||||
- Champion: [champion]
|
||||
- OKR frikoblet fra lonn: [ja/nei]
|
||||
- OKR frikoblet fra lønn: [ja/nei]
|
||||
|
||||
### Gjeldende syklus
|
||||
- ID: [id]
|
||||
|
|
@ -365,7 +365,7 @@ Les `.claude/okr.local.md` og vis innholdet formatert:
|
|||
- Fase: [fase]
|
||||
- Antall team: [tall]
|
||||
|
||||
### Verktoy
|
||||
### Verktøy
|
||||
[liste]
|
||||
|
||||
### Kultur
|
||||
|
|
@ -391,7 +391,7 @@ Sjekk at `.claude/okr/syklus/[id]/` finnes. Hvis ikke:
|
|||
|
||||
```
|
||||
Ingen aktiv syklusmappe funnet for [id].
|
||||
Opprett `.claude/okr/syklus/[id]/` med OKR-filer for a bruke arkivering.
|
||||
Opprett `.claude/okr/syklus/[id]/` med OKR-filer for å bruke arkivering.
|
||||
```
|
||||
|
||||
### Arkiveringsflyt
|
||||
|
|
@ -400,10 +400,10 @@ Opprett `.claude/okr/syklus/[id]/` med OKR-filer for a bruke arkivering.
|
|||
og `status.md` hvis den finnes.
|
||||
|
||||
2. **Samle endelige scorer** — hvis `status.md` har endelige scorer, bruk dem.
|
||||
Ellers spor med AskUserQuestion:
|
||||
Ellers spør med AskUserQuestion:
|
||||
```
|
||||
Hva ble de endelige scorene for [syklus]?
|
||||
Oppgi score per KR (0.0-1.0) eller ENTER for a bruke siste kjente status.
|
||||
Oppgi score per KR (0.0-1.0) eller ENTER for å bruke siste kjente status.
|
||||
```
|
||||
|
||||
3. **Generer retrospektiv** — skriv til `.claude/okr/syklus/[id]/retrospektiv.md`:
|
||||
|
|
@ -424,74 +424,79 @@ Opprett `.claude/okr/syklus/[id]/` med OKR-filer for a bruke arkivering.
|
|||
|
||||
## Hva gikk bra
|
||||
|
||||
[Basert pa KR som scoret 0.7+]
|
||||
[Basert på KR som scoret 0.7+]
|
||||
|
||||
## Hva var utfordrende
|
||||
|
||||
[Basert pa KR som scoret <0.5, noter monstere]
|
||||
[Basert på KR som scoret <0.5, noter mønstre]
|
||||
|
||||
## Laering til neste syklus
|
||||
## Læring til neste syklus
|
||||
|
||||
[Identifiser 2-3 konkrete forbedringer]
|
||||
|
||||
## Antipatterns observert
|
||||
|
||||
[Sjekk mot antipatternene fra referansemateriale —
|
||||
nevn kun de som er relevante basert pa scoremansteret.
|
||||
nevn kun de som er relevante basert på scoremønsteret.
|
||||
Les ${CLAUDE_PLUGIN_ROOT}/skills/okr-offentlig-sektor/references/okr-antipatterns.md]
|
||||
```
|
||||
|
||||
4. **Arkiver til historikk** — opprett `.claude/okr/historikk/[id]/` med Write-tool
|
||||
og kopier alle filer fra syklusmappen dit (les innhold, skriv til ny sti).
|
||||
|
||||
Opprett ogsa `.claude/okr/historikk/[id]-resultater.md` med sammendrag:
|
||||
endelige scorer, topp-laeringer, og lenke til full retrospektiv.
|
||||
Opprett også `.claude/okr/historikk/[id]-resultater.md` med sammendrag:
|
||||
endelige scorer, topp-læringer, og lenke til full retrospektiv.
|
||||
|
||||
5. **Bekreft sletting** — bruk AskUserQuestion:
|
||||
```
|
||||
Slett syklusmappen `.claude/okr/syklus/[id]/`?
|
||||
Den er na arkivert i `historikk/[id]/`.
|
||||
Den er nå arkivert i `historikk/[id]/`.
|
||||
Alternativer: ja | nei (behold begge)
|
||||
```
|
||||
|
||||
Hvis ja og Bash-tool er tilgjengelig: `rm -rf .claude/okr/syklus/[id]/`
|
||||
Hvis Bash ikke tilgjengelig: vis kommando brukeren kan kjore manuelt:
|
||||
`rm -rf .claude/okr/syklus/[id]/`
|
||||
Hvis ja og Bash-tool er tilgjengelig: **valider FØRST at `[id]` ikke er tom OG
|
||||
matcher mønsteret `^[TQ][1-4]-[0-9]{4}$`** (f.eks. `T1-2026`). Kun hvis
|
||||
valideringen passerer, kjør: `rm -rf .claude/okr/syklus/[id]/`. Ved tom eller
|
||||
malformert `[id]`: AVVIS slettingen og be om en gyldig syklus-id — kjør ALDRI
|
||||
`rm -rf` med tom verdi (det ville blitt `rm -rf .claude/okr/syklus//` og slettet
|
||||
hele syklus-treet).
|
||||
Hvis Bash ikke er tilgjengelig: vis kommandoen brukeren kan kjøre manuelt (samme
|
||||
validering gjelder): `rm -rf .claude/okr/syklus/[id]/`
|
||||
|
||||
6. **Oppdater profil** — i `.claude/okr.local.md`:
|
||||
- Inkrementer `sykluser_gjennomfort` med 1
|
||||
- Oppdater `gjeldende_syklus.id` til neste syklus:
|
||||
- Tertial: T1→T2→T3→T1 (med aarsoppdatering)
|
||||
- Kvartal: Q1→Q2→Q3→Q4→Q1 (med aarsoppdatering)
|
||||
- Tertial: T1→T2→T3→T1 (med årsoppdatering)
|
||||
- Kvartal: Q1→Q2→Q3→Q4→Q1 (med årsoppdatering)
|
||||
- Sett `gjeldende_syklus.fase` til `planlegging`
|
||||
- Oppdater `gjeldende_syklus.periode` til neste periodestreng
|
||||
|
||||
7. **Opprett ny syklusmappe** — skriv `.claude/okr/syklus/[ny-id]/status.md` med
|
||||
tom mal (tabellstruktur med KR-kolonner, ingen data enna).
|
||||
tom mal (tabellstruktur med KR-kolonner, ingen data ennå).
|
||||
|
||||
8. **Bekreft** — vis oppsummering:
|
||||
```
|
||||
Syklus [id] er arkivert i `.claude/okr/historikk/[id]/`.
|
||||
Gjeldende syklus er na [ny-id] (planleggingsfase).
|
||||
Gjeldende syklus er nå [ny-id] (planleggingsfase).
|
||||
|
||||
Anbefalte neste steg:
|
||||
- /okr:moter — planlegg oppstartsmate for [ny-id]
|
||||
- /okr:møter — planlegg oppstartsmøte for [ny-id]
|
||||
- /okr:skriv — skriv nye OKR for [ny-id]
|
||||
- /okr:kaskade — kaskader org-OKR til team-niva
|
||||
- /okr:kaskade — kaskader org-OKR til team-nivå
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Feilhandtering
|
||||
## Feilhåndtering
|
||||
|
||||
- **Fil kan ikke skrives:** Vis YAML som kan kopieres manuelt
|
||||
- **Bruker avbryter midt i intervju:** `onboarding_status: partial` allerede lagret — neste kjoring tilbyr a fortsette
|
||||
- **Bruker avbryter midt i intervju:** `onboarding_status: partial` allerede lagret — neste kjøring tilbyr å fortsette
|
||||
- **Linear API feiler:** Gi tydelig feilmelding, fortsett uten Linear-integrasjon
|
||||
- **Mappeopprettelse feiler:** Vis `mkdir -p .claude/okr/strategisk-kontekst/` kommando brukeren kan kjore manuelt
|
||||
- **Mappeopprettelse feiler:** Vis `mkdir -p .claude/okr/strategisk-kontekst/` kommando brukeren kan kjøre manuelt
|
||||
|
||||
## Syklusberegning
|
||||
|
||||
Beregn gjeldende syklus-ID basert pa dagens dato:
|
||||
Beregn gjeldende syklus-ID basert på dagens dato:
|
||||
- **Tertial:** Jan-Apr = T1, Mai-Aug = T2, Sep-Des = T3
|
||||
- **Kvartal:** Jan-Mar = Q1, Apr-Jun = Q2, Jul-Sep = Q3, Okt-Des = Q4
|
||||
- Format: `T[1-3]-YYYY` eller `Q[1-4]-YYYY`
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue