okr/commands/export.md

84 lines
3 KiB
Markdown

---
name: okr:export
description: Eksporter OKR-dokumenter (kvalitetsvurdering, gap-matrise, statusrapport, retrospektiv) til print-klar PDF
allowed-tools: Read, Bash
argument-hint: "[dokumenttype eller filsti]"
---
# OKR Export - Eksporter OKR-leveranser til PDF
Generer en print-klar A4-PDF av et OKR-dokument for deling med ledelse,
Riksrevisjon eller styringsdialog. Konverterer Markdown til PDF via
`scripts/export-pdf.py` (weasyprint), med tabell-striping og fargekodede
score-celler (`.score-green` / `.score-yellow` / `.score-red`).
## Kontekstbevissthet
OKR-kontekst injiseres automatisk via hook. Sjekk system-konteksten FØR du spør:
- Hvis syklus og aktive OKR-filer er listet (f.eks. `.claude/okr/syklus/T1-2026/`):
tilby å eksportere dem direkte.
- Hvis `.claude/okr/dokumenter/` inneholder genererte rapporter: tilby disse.
- Spør kun om dokumenttype når konteksten ikke gjør valget åpenbart.
## Arbeidsflyt
1. **Velg dokumenttype** — hvilken leveranse skal eksporteres:
- **kvalitetsvurdering** — output fra `/okr:kvalitet`
- **gap-matrise** — output fra `/okr:gap`
- **statusrapport** — output fra `/okr:sporing`
- **retrospektiv** — `retrospektiv.md` fra `/okr:oppsett arkiver`
- eller en vilkårlig Markdown-fil brukeren oppgir.
2. **Sørg for Markdown-kilde** — hvis dokumentet finnes som fil, bruk filstien.
Hvis det kun finnes i samtalen, skriv det til en `.md`-fil først (f.eks.
`.claude/okr/dokumenter/kvalitetsvurdering-T1-2026.md`).
3. **Kjør eksporten** via Bash:
```bash
python3 ${CLAUDE_PLUGIN_ROOT}/scripts/export-pdf.py <input.md> <output.pdf>
```
Eksempel:
```bash
python3 ${CLAUDE_PLUGIN_ROOT}/scripts/export-pdf.py \
.claude/okr/dokumenter/kvalitetsvurdering-T1-2026.md \
.claude/okr/dokumenter/kvalitetsvurdering-T1-2026.pdf
```
4. **Bekreft resultatet** — skriptet skriver `Skrev PDF: <sti>` til stderr ved
suksess. Rapporter filstien til brukeren.
**Tips for fargekoding:** I Markdown-tabellen kan score-celler tagges med
`attr_list`-syntaks slik at de blir fargelagt i PDF-en:
```markdown
| KR | Score |
|----|-------|
| KR1 | 0.9 {: .score-green} |
| KR2 | 0.5 {: .score-yellow} |
| KR3 | 0.2 {: .score-red} |
```
## Feilhåndtering
Eksporten har to dokumenterte forutsetninger (ikke bundlet med pluginet):
- **Manglende Python-pakker** (`markdown`, `weasyprint`) → skriptet avslutter med
exit 1 og hintet:
```
pip install markdown weasyprint
```
- **Manglende native bibliotek** (Pango/cairo/gdk-pixbuf) → feiler ved rendring
med exit 1 og hintet:
```
brew install pango
```
Begge feil gir en tydelig instruks (ikke en traceback). Når en forutsetning
mangler: rapporter instruksen til brukeren, ikke prøv å installere noe selv.
## Referanser
- `${CLAUDE_PLUGIN_ROOT}/scripts/export-pdf.py` — selve eksport-skriptet
- `${CLAUDE_PLUGIN_ROOT}/commands/kvalitet.md` — produserer kvalitetsvurdering
- `${CLAUDE_PLUGIN_ROOT}/commands/gap.md` — produserer gap-matrise
- weasyprint: https://doc.courtbouillon.org/weasyprint/stable/