For å få mest mulig nytte ut av AI i ditt eksisterende prosjekt så trenger vi noe som ligger i mellom en klønete agent og full vibekoding. Vi må gi AI en struktur å jobbe rundt.
Her kommer en intro til forskjellige typer instruksjonsfiler, og den raskeste måten å komme i gang med å bruke de!

Er du nysgjerrig på hvordan AI kan hjelpe deg med å skrive bedre kode? Du har kanskje fått tilgang til Copilot eller en annen en modell på jobb, og testet den litt ut? Den har funket fint til autocomplete og litt mindre ting, men med en gang den skal gjøre noen større oppgaver i det store og komplekse prosjektet ditt så surrer den det til. Det er mest sannsynlig fordi den ikke har fått nok kontekst til å kunne løse oppgavene dine.
Du har kanskje også prøvd “vibekoding tjenester” som Lovable eller v0? Det er utrolig hvor mye kult de kan lage fra scratch på en enkelt prompt, men når du vil endre og legge til større ting for 5. gang så glemmer den featuren du originalt ville ha. Dessuten er det ikke så lett å koble disse tjenestene på ditt allerede eksisterende prosjekt.
For å få mest mulig nytte ut av AI i ditt eksisterende prosjekt så trenger vi noe som ligger i mellom en klønete agent og full vibekoding. Vi må gi AI en struktur å jobbe rundt.
Instruksjonsfiler
Du har sikkert hørt om de før. Filer som forteller litt om hva prosjektet ditt gjør, hvilke teknologier det bruker og hvordan det er satt sammen. De blir lagt til i konteksten til AI-en du bruker, enten det er i chatten i kodeeditoren, når du ber den om å gjøre code review, eller assigner den et issue. Konseptuelt ganske enkelt, men har du giddet å sette de opp? Her kommer en intro til forskjellige typer instruksjonsfiler, og den raskeste måten å komme i gang med å bruke de!
Prosjekt-instruksjonsfiler
Dette er en enkelt fil som overordnet beskriver prosjektet. Tenk på det som en readme for din AI. Det du selv hadde satt pris på at stod i en readme er ofte ganske nyttig for en AI å vite også. Dette er en type fil som, etter min mening, alle prosjekter burde ha. For Copilot er dette en copilot-instructions.md fil, i .github mappen din. I denne filen er lurt å gi en ganske overordnet beskrivelse av prosjektet. Det er altså fint å ha med generelle ting som; formålet til prosjektet, teknologistack, mappestruktur, og ofte brukte scripts/funksjoner (bygging, testing, linting, osv).
Når filen er laget vil alle fremtidige chatter få innholdet med som en del av sin kontekst! Det betyr at Copilot vil få et bedre overblikk over prosjektet og forhåpentligvis ta fler korrekte valg.
Spesifikke instruksjonsfiler
Vil du ta det et steg videre, så kan du lage én eller flere instruksjonsfiler som gjelder for kun noen deler av koden din. Har du for eksempel en components/ mappe, så kan du lage en components.instructions.md fil i .github/instructions/ mappen, som beskriver hvordan disse komponentene skal settes opp. Disse må starte med en såkalt “fontmatter” blokk, som beskriver hvilke filer de påfølgende instruksjonene skal gjelde. For komponenteksempelet ville det sett slik ut:
---
applyTo: "componens/*"
---
Write easy to use components, with a clear descriptive properties. Etc...Disse path spesifikke instruksjonfilene dine kan også gjelde for noen spesifikke filtyper. For eksempel:
---
applyTo: "**/*.ts,**/*.tsx"
---
Allways use type instead of interface. Etc...Agent instruksjonsfiler
Den siste typen instruksjonsfiler som fungerer med Copilot (i skrivende stund) er agent filer. Dette er én eller flere AGENTS.md, CLAUDE.md eller GEMINI.md filer, som kan plasseres rundt om kring i prosjektet ditt. Når Copilot jobber så vil den finne den nærmeste av disse filene og ta den med seg inn i konteksten sin. Filtypene er henholdsvis laget av OpenAI, Anthropic og Google, hvor AGENTS.md er den eneste som hevder at de skal funke med flere typer modeller. De beskriver filene som:
A simple, open format for guiding coding agents.
Selv om de spesifikke *.instructions.md filene kan gjøre det samme som disse filtypene, så blir disse agent instruksjonsfilene av erfaring mer konsekvent med som en del av AI-en sin kontekst.
Hvordan skrive disse instruksjonsfilene?
Heldigvis er det veldig lett å lage disse filene! Åpner du chat vinduet i VS Code blir du nå møtt med en veldig handy knapp. Trykker du på “Generate Agent Instructions” så får du nemlig Copilot til å lage en copilot-instructions.md fil, i .github mappen din.

Tips: Legg til en seksjon om at Copilot selv må gjøre endringer i instruksjonsfiler om det gjøres store endringer! Disse filene er som all annen dokumentasjon, ved at de fort blir utdaterte. Derfor er det greit å la AI holde de ved like selv
I samme chatten kan du be den om å fortsette arbeidet med å lage spesifikke *.instructions.md eller AGENTS.md filer. Husk å les godt over filene når de er ferdig generert, for å passe på at AIen har forstått alt riktig.
Men, selv om AI kan generere disse filene for deg så er det likevel noen ting som kan være nyttig å vite når du skriver de.
1. Instruksjonene du skriver bør være korte og selvstendige
Bruk enkle setninger som gir konkret informasjon, og ikke referer til andre filer.
2. Strukturer instruksjonen godt
Bruk riktig formatert markdown med overskrifter, underoverskrifter og punktlister.
3. Begrens lengden av instruksjonsfilene
AI har ikke evig med kontekstvindu, og hver ekstra setning og instruksjonsfil tar plass i dette vinduet. Copilot code review leser for eksempel (i skrivende stund) kun de første 4000 karakterene i en instruksjonsfil, så en tommelfingerregel er å holde seg under den grensen.
4. Gi et helhetlig overblikk
Beskriv hva prosjektet handler om, hvilke teknologier dere bruker, og hvordan dere jobber (mappe-struktur, kodepraksis osv.)
Til slutt oppfordrer jeg alle til å bare prøve det ut og iterere på filene om de ikke gjør akkurat det du vil i starten! Når AI kan skrive mye av disse filene selv så er det ikke mye innsats du trenger å gjøre selv, men det kan gjøre utvikling med AI mye mer deilig i lengden!