84 lines
3 KiB
Markdown
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/
|