Sjekk navikt/copilot for nye mønstre, instructions og skills som er verdt å adoptere i hovmester
Strukturert gjennomgang av navikt/copilot-repoet for å finne oppdateringer verdt å ta inn i hovmester.
Les references/upstream-state.md først. Den inneholder siste sjekket commit-SHA og hva som ble adoptert/droppet. Hent kun commits etter den SHA-en fra navikt/copilot. Etter fullført gjennomgang, oppdater filen med ny SHA, dato og beslutninger.
Hent nye commits fra navikt/copilot (etter siste synced SHA fra state-filen). Sammenlign også filstrukturen:
# Sammenlign instruksjoner
diff <(ls navikt-copilot/.github/instructions/) <(ls hovmester/instructions/)
# Sammenlign skills
diff <(ls navikt-copilot/.github/skills/) <(ls hovmester/skills/)
# Sammenlign agenter
diff <(ls navikt-copilot/.github/agents/) <(ls hovmester/agents/)
For hvert nytt element i navikt/copilot, vurder:
| Spørsmål | Ja → | Nei → |
|---|---|---|
| Er det relevant for Nav-team generelt? | Gå videre | Hopp over |
| Er det generelt nok for alle team-repos? | Legg i hovmester | Legg i backend/frontend |
| Bør det alltid gjelde for en filtype? | Lag instruction med applyTo | Lag skill |
| Har det referansefiler? | Skill med references/ | Instruction (inline eksempler) |
For filer som finnes i begge repos, sammenlign dybde:
.github/copilot-instructions.md for retningslinjerFør adopsjon: still begge spørsmål (se copilot-instructions.md → Lean-filter). Konkret, dropp:
Behold innhold som binder LLM til Nav-spesifikke gotchas (Nais, Wonderwall, accessPolicy, TokenX, Rapids & Rivers, Aksel, HikariCP-i-containere, team-koordineringspraksis).
Alle nye skills må formuleres slik at de leser repoets faktiske stack før de gir råd — ikke anta Nav-default som universelt. Eksempel: en kafka-topic-skill ber LLM sjekke build.gradle.kts for Rapids & Rivers vs plain Kafka og følge eksisterende stil. Migrasjoner mellom stiler skal aldri sneakes inn som del av uavhengige oppgaver.
Hold SKILL.md under ~200 linjer. Større innhold → split til references/-filer (f.eks. references/lean-filter.md, references/regression-checks.md) og pek til dem fra SKILL.md. Eat-your-own-dog-food: denne skillen er selv splittet når den passerer taket.
Ingen ekte personopplysninger eller interne detaljer i references/:
00000000000 (11 nuller).Før PR merges, verifiser at adopterte filer ikke reintroduserer droppede mønstre:
@nais-agent / @auth-agent / @kafka-agent / @nav-pilot-agent-referanser i adopterte skills (spesialistagentene er avviklet til fordel for skills).actions/*@v<N>, @main, @master-eksempler i CI/CD-snutter — SHA-pinning kreves (actions/checkout@<40-char-sha> # v4.2.2).Før merge: kjør en realistisk prompt mot både Claude (Opus) og GPT (den consumer-team faktisk bruker i Copilot) for den adopterte skillen. Verifiser at begge:
@nais-agent når nais-deploy-skillen dekker samme).@v4, @main, @master).Fokuser på disse kategoriene i denne rekkefølgen:
collections.yml med nye filer i riktig collectioncd scripts && python3 -m pytest test_sync.py -vpython3 scripts/sync.py --source . --target /tmp/test-repo --output /tmp/result.jsonhovmester er Nav-bredt, men kan avvike fra upstream ved bevisste valg:
navikt/copilot har bredere dekning med: