diff --git a/CLAUDE.md b/CLAUDE.md index 88450b1..fa6d6b0 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -47,6 +47,7 @@ Expert OKR guidance for Norwegian public sector. Google/Doerr methodology adapte ## State Management User configuration: `.claude/okr.local.md` in the project directory (not in plugin root). +Org profile (reinstall-surviving): `~/.claude/okr/org/profil.md` — the machine-global org identity (`organisasjon:`/`program:`), written atomically (temp + `renameSync`) by `scripts/write-org-profile.mjs` during `/okr:oppsett`. Resolution is most-specific-wins: a project-local `.claude/okr.local.md` overrides the home profile; the home profile is the backwards-compatible fallback when no project config exists (read side: `hooks/scripts/inject-okr-context.mjs`). On any home-write failure the helper circuit-breaks to the gitignored project-local `.claude/okr.local.md`. Only the org *profile* migrates to home — cycle/`historikk` data stays cwd-bound. 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`) diff --git a/commands/oppsett.md b/commands/oppsett.md index 545ed79..eee0926 100644 --- a/commands/oppsett.md +++ b/commands/oppsett.md @@ -223,7 +223,26 @@ Etter alle 6 faser: 1. Skriv komplett YAML til `.claude/okr.local.md` (oppdater alle seksjoner) 2. Sett `onboarding_status: fullfort` og `Sist oppdatert: [dato]` -3. Vis oppsummering: +3. **Skriv reinstall-overlevende org-profil til hjem-stien.** Profilen + (`organisasjon:`- og `program:`-seksjonene — org-identiteten som skal overleve + reinstall og være tilgjengelig på tvers av prosjekter) skrives til en temp-fil og + sendes gjennom skrivehelperen via Bash: + + ```bash + OUT=$(node ${CLAUDE_PLUGIN_ROOT}/scripts/write-org-profile.mjs < /tmp/okr-profil.tmp) + echo "$OUT" + ``` + + Helperen skriver atomisk (temp + `renameSync`) til `~/.claude/okr/org/profil.md` og + rapporterer den **faktisk brukte stien** på stdout (`$OUT`); en eventuell + fallback-notice går til stderr. Rapporter til brukeren: «Org-profil skrevet til: $OUT». + Hvis `$OUT` peker på den prosjektlokale fallbacken (`.claude/okr.local.md` — skjer kun + ved skrivefeil mot hjem), vis i tillegg hele profil-YAML-en for manuell plassering + (jf. Feilhåndtering «Fil kan ikke skrives»), slik at brukeren kan legge + `~/.claude/okr/org/profil.md` på plass selv. Behold den prosjektlokale + `.claude/okr.local.md`-skrivingen (steg 1) for syklus- og strategisk-kontekst-data — + kun selve profilen migrerer til hjem. +4. Vis oppsummering: ``` Onboarding fullført for [organisasjon]! @@ -317,6 +336,18 @@ preferanser: --- ``` +**Skriv også reinstall-overlevende org-profil til hjem-stien.** Skriv profil-YAML-en +(`organisasjon:` + `program:`) til en temp-fil og kjør skrivehelperen via Bash: + +```bash +OUT=$(node ${CLAUDE_PLUGIN_ROOT}/scripts/write-org-profile.mjs < /tmp/okr-profil.tmp) +echo "$OUT" +``` + +Rapporter «Org-profil skrevet til: $OUT». Hvis `$OUT` er den prosjektlokale fallbacken, +vis YAML-en for manuell plassering (jf. Feilhåndtering). Syklus-/kontekstdata forblir +prosjektlokalt i `.claude/okr.local.md`. + Vis kort oppsummering og foreslå `/okr:oppsett full` for å fylle ut resten senere. --- diff --git a/templates/okr.local.md.template b/templates/okr.local.md.template index 4835434..ab7f156 100644 --- a/templates/okr.local.md.template +++ b/templates/okr.local.md.template @@ -3,6 +3,10 @@ # Plasser denne filen som .claude/okr.local.md i ditt prosjekt # Kjør /okr:oppsett for automatisk konfigurasjon # Skjemaet under speiler /okr:oppsett mvp — feltnavn er i paritet med onboarding og hook +# Org-identitet (organisasjon:/program:) kan ogsaa bo i en reinstall-overlevende +# hjem-profil: ~/.claude/okr/org/profil.md (skrevet av /okr:oppsett). En prosjektlokal +# fil her vinner over hjem-profilen (mest-spesifikk-vinner); syklus-/kontekstdata er +# alltid prosjektlokalt. onboarding_status: partial # partial | fullfort organisasjon: navn: "Din organisasjon"