Guider
Agentpakka i navikt/copilot endres jevnlig. Hold repoet ditt oppdatert med en ukentlig pull request eller med nav-pilot sync.
Legg denne workflowen i repoet. Den åpner en pull request når noe er endret, som Dependabot. Pull requesten viser hvilke filer som er oppdatert, med lenker til kilderepoet.
name: Copilot Customization Sync
on:
schedule:
- cron: '0 7 * * 1' # mandager kl. 07.00
workflow_dispatch:
jobs:
sync:
uses: navikt/copilot/.github/workflows/copilot-customization-sync.yml@main
permissions:
contents: write
pull-requests: writenav-pilot sync sammenligner SHA-256 for filene dine med kilderepoet. Uten flagg sjekker den alle stedene der du har installert.
nav-pilot sync # sjekk om det finnes oppdateringer (kode 1 hvis ja) nav-pilot sync --apply # oppdater filene; spør før den sletter noe nav-pilot sync --json # resultatet som JSON
Har du installert med nav-pilot install, står hver fil i tilstandsfila. Har teamet kopiert filene for hånd, ser nav-pilot etter filer som også finnes i kilderepoet:
.github/agents/*.agent.md.github/instructions/*.instructions.md.github/prompts/*.prompt.md.github/skills/*/ (hele mapper)AGENTS.md og .github/copilot-instructions.md oppdateres aldri. De hører til repoet.
Vil du fjerne filer for et rammeverk du ikke bruker, for eksempel instruksjonene for Next.js i et Astro-prosjekt? Legg dem i overrides i .github/copilot-sync.json:
{
"overrides": [
".github/instructions/nextjs-aksel.instructions.md",
".github/instructions/performance.instructions.md",
".github/prompts/nextjs-api-route.prompt.md"
]
}Sync hopper helt over filene i overrides. Du kan slette dem, og de kommer ikke tilbake. Du kan også velge dem bort i velgeren når du installerer.
Har teamet en egen fil med samme navn som en i kilden, for eksempel en egen skill kotlin-app-config, avhenger det av når den kom:
nav-pilot install, hopper install over den og sier fra, og sync rører den ikke.overrides.Filer med navn som ikke finnes i kilden, rører sync aldri. Varsler om nye komponenter stopper du med nav-pilot ignore.
Nei. Workflowen bruker GITHUB_TOKEN og leser offentlige kildefiler.
Oppdateringen tar kildens versjon, lagrer kopien din som <fil>.orig ved siden av og sier fra. I CI står fila under «Changed» i pull requesten, merket med at den har lokale endringer. Du kan gå gjennom, flette det du vil ha eller lukke pull requesten. Workflowen tvinger aldri gjennom noe.
nav-pilot sync --apply fjerner kopien din i repoet, i ~/.copilot og i mappa til opencode. Uten --apply lister sync bare filene. Har du endret fila, lagres kopien din som <fil>.orig før den fjernes, og i CI er den merket i pull requesten. En hook du har endret, blir stående og kjører videre, og sync sier fra. Vil du beholde fila, legg den i overrides før du kjører --apply.
Fila blir merket som ignorert og kommer ikke tilbake ved neste sync. Vil du ha den tilbake, kjør nav-pilot install <navn>.
Samme idé, en pull request med oppdateringer, men for Copilot-filer. nav-pilot sammenligner SHA-256 i stedet for versjonsnumre.