Blog

Hvad er AGENTS.md, og hvordan skriver du din egen på 30 minutter

Markdown

AGENTS.md-format, understøttelse i AI-værktøjer, en færdig skabelon, regler og fejl. Sådan koordinerer du AGENTS.md med CLAUDE.md og andre instruktionsfiler.

Læs hele artiklen

Praktisk materiale om vibe coding og arbejde med agenter: Ailoot-dokumentation.

AGENTS.md i ét afsnit

Det vigtigste

AGENTS.md er en almindelig Markdown-fil i projektets rodmappe, der indeholder instruktioner til en AI-agent: hvordan afhængigheder installeres, hvordan tests køres, hvilken kodestil der skal følges, og hvad man ikke må røre. Formatet er åbent, blev skabt af OpenAI i august 2025 og blev en del af Linux Foundation i december samme år. Mange kodeværktøjer kan bruge den, men indlæsningen afhænger af klient og version: Nogle finder AGENTS.md automatisk, mens andre kræver en udtrykkelig filnavnsindstilling eller konfiguration til at læse filen. Siden version 2.1.277 (september 2026) læser Claude Code også AGENTS.md, hvis projektet ikke har en CLAUDE.md. Hvis CLAUDE.md findes, læser Claude Code som standard kun den fil, og AGENTS.md inkluderes med linjen @AGENTS.md eller via et symbolsk link.

Nedenfor gennemgås formatet med udgangspunkt i agents.md, dokumentationen til OpenAI Codex, JetBrains Junie, Cursor Rules Docs, ændringsloggen for GitHub Copilot Coding Agent og Linux Foundations pressemeddelelse om Agentic AI Foundation. Alle tal og funktioner er aktuelle pr. 30. maj 2026, og understøttelsen af AGENTS.md i Claude Code beskrives på grundlag af Anthropics dokumentation, med en opdatering fra 24. september 2026.

Hvis du ikke aner, hvad denne zoologiske have af værktøjer på markedet er, eller hvorfor de har brug for en fælles fil, så læs først guiden “Hvad skal man kode med i 2026: 8 AI-værktøjer fra Claude Code til Antigravity”. Denne artikel fokuserer specifikt på AGENTS.md-formatet, og hvordan du skriver din egen på 30 minutter.

Hvad er AGENTS.md, og hvor kommer det fra?

Det vigtigste

AGENTS.md er et åbent Markdown-filformat, hvor du selv skriver instruktioner til AI-agenter. OpenAI udgav det i august 2025 sammen med Codex CLI og inviterede straks medforfattere: Cursor, Sourcegraph Amp, Google Jules og Factory. Idéen er enkel: “Lad os ikke oprette en proprietær fil til hvert værktøj; lad os blive enige om én fælles fil.” Den 9. december 2025 blev AGENTS.md sammen med Anthropics MCP og Blocks goose en del af Linux Foundation som et af de tre grundlæggende projekter i den nye Agentic AI Foundation. I december samme år indeholdt mere end 60.000 GitHub-repositorier allerede AGENTS.md i roden.

Tidligere havde hvert AI-værktøj sin egen regelfil: Anthropic havde CLAUDE.md, Cursor havde .cursorrules, GitHub havde .github/copilot-instructions.md, Aider havde .aider.conf.yml, og JetBrains havde .junie/guidelines.md. Hvis dit team havde tre forskellige agenter, betød det tre parallelle filer med det samme indhold, som ville begynde at afvige inden for en uge.

OpenAI var den første, der blev træt af det. I august 2025 udgav virksomheden Codex CLI og lancerede samtidig agents.md som et åbent format. Fra webstedet:

“Tænk på AGENTS.md som en README til agenter.”

(agents.md, oversat fra engelsk)

Hovedpointen er, at AGENTS.md supplerer README. README er skrevet til mennesker: “hvad projektet er, hvordan man kører det lokalt, hvordan man bidrager.” AGENTS.md er skrevet til agenten: præcise shell-kommandoer, verificerbare kriterier for, hvornår noget er “færdigt”, og grænser som “rør aldrig ved dette”.

Fra webstedet:

“AGENTS.md supplerer README: den indeholder yderligere, til tider detaljeret kontekst, som agenten har brug for – byggetrin, tests og konventioner, der ville fylde for meget i README, eller som menneskelige bidragydere ganske enkelt ikke har brug for.”

(agents.md, oversat fra engelsk)

I september 2025 understøttede GitHub Copilot Coding Agent formatet (ændringslog, 28.08.2025). I december havde Cursor, Junie, Gemini CLI, Aider og et dusin andre værktøjer tilsluttet sig. Den 9. december 2025 dannede Linux Foundation Agentic AI Foundation (AAIF): De tre grundlæggende projekter var AGENTS.md fra OpenAI, MCP fra Anthropic og goose fra Block. De grundlæggende medlemmer var AWS, Anthropic, Block, Bloomberg, Cloudflare, Google, Microsoft og OpenAI. Den 24. februar 2026 omfattede fonden allerede 146 organisationer, herunder Red Hat, ServiceNow, Akamai, Lenovo, JPMorgan Chase, Huawei, UiPath og Hitachi.

Fra det tidspunkt holdt AGENTS.md op med at være “endnu en ting fra OpenAI” og blev en de facto-standard.

Hvilke AI-agenter læser AGENTS.md, og hvilke gør ikke?

Det vigtigste

AGENTS.md bruges i mange kodeværktøjer, blandt andet klienterne i tabellen nedenfor. Læs tabellen som et overblik over indlæsningsmåder, ikke som et løfte om ens indbygget understøttelse: Automatisk søgning, udtrykkelig konfiguration, filnavnes forrang og håndtering af indlejrede filer kan variere. Anthropics Claude Code var længe en undtagelse: issue #6235, hvor der blev anmodet om understøttelse, forblev åben fra august 2025 til august 2026. Siden version 2.1.277 (18. september 2026) læser Claude Code selv AGENTS.md, hvis projektet ikke har en CLAUDE.md. Hvis CLAUDE.md findes, læses kun den fil som standard, og AGENTS.md inkluderes med linjen @AGENTS.md i CLAUDE.md eller via et symbolsk link.

Oversigt over understøttelse pr. 30. maj 2026; rækken om Claude Code blev opdateret den 24. september 2026:

VærktøjLæser AGENTS.mdDato / kilde
OpenAI Codex CLIJa (indbygget format)august 2025, agents.md
GitHub Copilot Coding AgentJa28.08.2025, GitHub Changelog
CursorJa, rod + indlejrede filerCursor Rules Docs
JetBrains JunieJa, projekt + global ~/.junie/AGENTS.mdJunie Docs
Gemini CLI (Google)Ja, via .gemini/settings.json med fileName: AGENTS.mdagents.md
Jules (Google)Ja, medforfatter til standardenaugust 2025
Sourcegraph AmpJa, medforfatter til standardenaugust 2025
AiderJa, via read: AGENTS.md i .aider.conf.ymlagents.md
FactoryJa, medforfatter til standardenaugust 2025
OpenCodeJa—
ZedJaagents.md
WarpJaagents.md
VS CodeJaagents.md
WindsurfJa—
Devin (Cognition)Ja, via Spec Kit Skillsapril 2026
RooCode, Kilo Code, Augment CodeJaagents.md
Claude Code (Anthropic)Ja, hvis projektet ikke har en CLAUDE.mdSiden version 2.1.277 (18.09.2026), Claude Code-dokumentation

Anthropic var den sidste af de store aktører, der tilsluttede sig. I august 2025 blev issue #6235 med ønske om understøttelse af AGENTS.md oprettet i det officielle repositorie anthropics/claude-code.

Issue’en forblev åben i næsten et år og blev lukket den 17. august 2026; version 2.1.277 med understøttelse af AGENTS.md udkom den 18. september. Anthropics logik er som følger: CLAUDE.md har forrang, og AGENTS.md læses, når der ikke findes en CLAUDE.md i arbejds- eller en overordnet mappe. Ifølge dokumentationen fungerer det sådan:

Hvad projektet indeholderHvad Claude Code læser
Kun AGENTS.mdAGENTS.md
AGENTS.md og CLAUDE.md (eller CLAUDE.local.md)Kun CLAUDE.md
CLAUDE.md med linjen @AGENTS.mdCLAUDE.md, som inkluderer AGENTS.md

Hagen er, at en personlig CLAUDE.local.md også tæller, og med den holder Claude Code op med at læse AGENTS.md. Du kan ændre denne adfærd i /config under Project instructions – for eksempel, så Claude Code læser begge filer på én gang. I versioner ældre end 2.1.277 bliver AGENTS.md ikke hentet automatisk; linjen @AGENTS.md i CLAUDE.md er stadig løsningen.

Hvordan adskiller AGENTS.md sig fra CLAUDE.md og .cursorrules?

Det vigtigste

Teknisk set er der ikke noget særligt ved dem: alle fire formater (AGENTS.md, CLAUDE.md, .cursorrules, .github/copilot-instructions.md) er almindelige Markdown-filer med instruktioner til en agent. Forskellen er, hvem der læser dem, og hvor de ligger. AGENTS.md kan rumme fælles instruktioner til flere klienter, mens klientspecifik søgning eller konfiguration holdes særskilt. CLAUDE.md er kun til Claude Code, men giver adgang til avancerede funktioner: sti-afgrænsede regler, CLAUDE.local.md til personlige tilsidesættelser, @import til at inkludere andre filer samt et hierarki for projekt + bruger + lokalt niveau. .cursorrules er forældet i Cursor – det nye system bruger .cursor/rules/*.mdc med automatisk tilknytning efter filtype. .github/copilot-instructions.md er kun nødvendig til Copilot på webben.

Sammenligning af fire formater pr. 30. maj 2026:

FormatHvem læser detHvor ligger detStyrkeSvaghed
AGENTS.mdFlere klienter, med hver deres indlæsningsreglerFælles projektfil; placering og indlejring afhænger af klientenFælles instruktioner på tværs af udbydereIndlæsning og forrang skal konfigureres eller kontrolleres pr. klient
CLAUDE.mdKun Claude CodeRod + ~/.claude/CLAUDE.md + CLAUDE.local.mdHierarki, sti-afgrænsede regler, @import, skills, hooksKun Claude. Virker ikke i Cursor / Codex / Copilot
.cursor/rules/*.mdcKun Cursor.cursor/rules/<rule>.mdcAutomatisk tilknytning efter filtype (TS, Python, specifikke stier)Kun Cursor, ikke-standardiseret .mdc-syntaks
.github/copilot-instructions.mdGitHub Copilot (web + klassisk).github/Virker direkte i browseren på GitHub.comKun Copilot, duplikerer AGENTS.md

Hovedidéen er, at AGENTS.md løser problemet med “én fil til alle agenter”, men ikke problemet med “personlige indstillinger, som jeg ikke committer”. Claude Code har CLAUDE.local.md til det, og Cursor har lokale .mdc-filer under user. AGENTS.md giver ikke den mulighed alene – du skal enten kombinere den med andre filer eller blive enige i teamet om at skrive personlige regler i afsnit, som git ignorerer.

En anden vigtig detalje handler om monorepos. Codex og Cursor følger reglen “den nærmeste AGENTS.md vinder”:

“I et monorepo skal du placere en separat AGENTS.md i hver pakke. Agenter læser automatisk den nærmeste fil i mappetræet, og den nærmeste vinder.”

(agents.md, oversat fra engelsk)

agents.md nævner, at OpenAIs primære monorepo indeholder 88 AGENTS.md-filer til forskellige underpakker. Hvis du arbejder i et monorepo, så fordel reglerne på niveauer: generelle regler i roden, specifikke regler i undermapper.

Hvad bør en god AGENTS.md indeholde?

Det vigtigste

Dispositionen for en god AGENTS.md har 8 afsnit, som findes i de fleste populære filer: projektoversigt, opsætningskommandoer, kodestil, tips til udviklingsmiljøet, testinstruktioner, PR-retningslinjer, sikkerhedsovervejelser og grænser (hvad man ikke skal gøre). Alt andet er valgfrit. Hovedreglen: Hvert punkt skal være en præcis kommando eller et konkret eksempel, ikke en generel idé som “skriv ren kode”.

Webstedet agents.md tilbyder et fleksibelt format – “vilkårlig Markdown”. Men 80% af gode filer, der findes i praksis, indeholder de samme otte afsnit. Hovedreglen: Hvert punkt bør være en præcis kommando eller et konkret eksempel. En abstrakt idé som “skriv ren kode” bliver ignoreret af agenten.

  1. Projektoversigt – 2–3 linjer. Hvad projektet er, hvem det er til, og dets hovedmål. Ingen markedsføring. Eksempel: “Telegram-bot til onboarding i en betalt workshop. Stack: Next.js 14, Prisma, PostgreSQL. Udløses af en ny post i purchases.”
  2. Opsætningskommandoer – præcise shell-kommandoer til lokal kørsel. npm install, npm run dev, npm run build. Ikke noget med “sådan plejer vi at gøre”.
  3. Kodestil / konventioner – specifikke regler med et eksempel, ikke “skriv pænt”. For eksempel: “TypeScript strict, enkelte anførselstegn, ingen default exports, komponentnavne i PascalCase, hooks begynder med use.”
  4. Tips til udviklingsmiljøet – hvor vigtige ting ligger. Hvilke variabler der er nødvendige i .env, hvor hemmeligheder opbevares, hvilke porte der bruges, og hvordan man arbejder med den lokale DB.
  5. Testinstruktioner – hvordan man kører en bestemt test, og hvad der tæller som “grønt”. For eksempel: npm test -- --testPathPattern=user-auth; 100% bestået forventes.
  6. PR- / commit-retningslinjer – format for commitbeskeder, tjekliste før PR (tests, linter, dokumentation), og hvem der godkender.
  7. Sikkerhedsovervejelser – hvad der aldrig må ske. “Commit aldrig .env. Hemmeligheder hører kun hjemme i Vault. Vis ikke brugernes personlige data i logs.”
  8. Grænser / Gør aldrig dette – forbud med et alternativ. “Brug ikke git push --force på main. Hvis du skal rulle tilbage, så brug git revert eller git reset på en feature branch.”

For hvert afsnit skal du følge princippet “kommando i stedet for idé”. Agenten ignorerer “vær forsigtig med migreringer”. Den følger “Kør alembic check før alembic upgrade head. Hvis den melder en fejl, må du ikke anvende migreringen; spørg mig.”

Klar AGENTS.md-skabelon (kopiér og tilpas)

Det vigtigste

Nedenfor er en startskabelon til AGENTS.md for et typisk webprojekt. Kopiér den til repositoriets rodmappe, erstat <project-name>, <stack>, de præcise kommandoer, og fjern afsnit, du ikke har brug for. Tilpasningen tager 20–30 minutter – eller længere, hvis det er første gang.

# AGENTS.md

## Projektoversigt

<project-name> - <one phrase describing its purpose>.
Stack: <Next.js / Python / Go / ...>.
Main entities: <users, orders, posts ...>.
Details for people are in README.md.

## Opsætningskommandoer

```bash
# første installation
npm install
cp .env.example .env  # udfyld derefter manuelt; se listen nedenfor

# kør
npm run dev           # udviklingsserver på :3000
npm run build         # produktionsbyg
npm run start         # kør produktionsbygget
```

## Udviklingsmiljø

- Node 20+ (via nvm: `nvm use 20`)
- PostgreSQL 16 lokalt på :5432 (`docker-compose up postgres`)
- Redis er valgfrit, kun nødvendigt til køer (`docker-compose up redis`)
- `.env`: `DATABASE_URL`, `STRIPE_KEY`, `RESEND_API_KEY`, `JWT_SECRET`
- Læs aldrig hele `.env`-filen. Hvis du skal bruge én variabel: `grep "^VAR=" .env`

## Kodestil

- TypeScript strict mode
- Enkelte anførselstegn, ingen semikoloner (medmindre ESLint kræver dem)
- Imports: eksterne først, derefter interne via `@/`, så relative
- Komponenter i PascalCase; hooks begynder med `use`
- Ingen `any` uden en udtrykkelig kommentar, der forklarer “hvorfor den ikke kan typesættes”

Eksempel på et godt modul:

```ts
import { z } from 'zod'

const UserSchema = z.object({
  email: z.string().email(),
  name: z.string().min(2),
})

export function parseUser(raw: unknown) {
  return UserSchema.parse(raw)
}
```

## Test

```bash
npm test                                # alle tests
npm test -- --testPathPattern=auth      # kun auth
npm test -- --watch                     # watch-tilstand
```

Alle tests skal bestås (være grønne), før der committes. Hvis en test er rød, skal du ikke committe; spørg mig, hvad du skal gøre.

## Retningslinjer for pull requests

- Commitformat: `<type>(<scope>): <description>` (`feat(auth): add magic-link`)
- Før PR: `npm run build && npm test && npm run lint`
- PR-beskrivelse = hvad der ændres, hvorfor, og hvordan det testes
- Godkend ikke din egen PR – vent altid på menneskelig gennemgang

## Sikkerhed

- Hemmeligheder kun i `.env` og Vault, aldrig i koden
- Log ikke personlige data (e-mail, telefon, navn)
- Brug kun læseforespørgsler, når du arbejder med produktionsdatabasen, medmindre du udtrykkeligt har fået tilladelse
- Hårdkod ikke API-nøgler til eksterne tjenester (Stripe, OpenAI) i tests

## Gør aldrig dette

- Kør ikke `git push --force` til main. Hvis du skal rulle tilbage, så brug `git revert` eller åbn en ny PR
- Kør ikke databasemigreringer uden `alembic check` (eller tilsvarende i din ORM)
- Brug ikke `npm install -g` eller `sudo` til projektets afhængigheder
- Tilføj ikke afhængigheder uden godkendelse (især tunge: webpack-plugins, ORM)

Skabelonen er i gennemsnit 80–120 linjer. Hvis filen overstiger 150 linjer, er det et tegn på, at den bør omstruktureres: flyt noget til docs/, link til noget, eller komprimer noget til én linje. I praksis fungerer filer på 100–150 linjer bedst; efter det punkt begynder kvalitetsgevinsterne at vende.

Hvilke 5 regler gør AGENTS.md virkelig nyttig?

Det vigtigste

En god AGENTS.md følger fem regler: kommandoer i stedet for idéer, forbud med alternativer, præcis én kilde til sandheden, verificerbare kriterier for at være færdig og en fil på færre end 150 linjer.

  1. Kommandoer i stedet for idéer. En agent forstår ikke “vær forsigtig med migreringer”. Den følger alembic check før alembic upgrade head. Agenter arbejder med kommandoer og betingelser, ikke stemninger. Formulér alle vigtige regler som “gør X, ellers Y”.

  2. Forbud med et alternativ. Et bart “foretag ikke force push” bliver stille og roligt ignoreret af agenten efter to eller tre prompts. Kombinationen “gør ikke X; gør Y i stedet” virker. Eksempel: “brug ikke git push --force på main; hvis du skal rulle tilbage, så brug git revert eller åbn en ny PR.”

  3. Præcis én kilde til sandheden. AGENTS.md i roden er kilden til sandheden for hele projektet. Hvis du har et monorepo, skal du bruge indlejrede AGENTS.md-filer i undermapper efter reglen “den nærmeste vinder”. Ingen parallelle filer med modstridende instruktioner.

  4. Verificerbare kriterier for at være “færdig”. “Tests skal bestås” er ubrugeligt. Et præcist kriterium er: npm test returnerer afslutningskode 0 og udskriver ikke FAIL til stdout. “Koden skal være pæn” er også ubrugeligt. Et præcist kriterium er: npm run lint gennemføres uden advarsler. En agent forstår kun, hvad “færdig” betyder, når du udtrykkeligt beskriver betingelsen.

  5. En fil på færre end 150 linjer. Efter 150 linjer begynder målingerne at forringes: agenten bruger mere kontekst på at læse og overser vigtige regler. Hvis det ikke kan være der, så flyt detaljerne til docs/architecture.md og link til den fra AGENTS.md, så kun kommandoer og grænser bliver tilbage i filen.

Hvilke 10 fejl gør AGENTS.md til skrald?

Det vigtigste

Den vigtigste grund til, at AGENTS.md ikke virker, er uklare formuleringer. I en undersøgelse af mere end 2.500 repositorier viste GitHub Blog, at de fleste filer fejler, fordi de er skrevet alt for generelt. For eksempel giver “You are a helpful coding assistant” agenten præcis nul nyttig information. Nedenfor er 10 typiske fejl og hvordan de viser sig i dårlige filer: gentagelse af README, ustruktureret prosa, 30+ forbud uden alternativer, modstridende prioriteter, hardkodede hemmeligheder, forældet dokumentation og arkitektonisk overkill til simple opgaver.

  1. Uklare regler uden kommandoer. Agenten ignorerer “vær forsigtig med migreringer” – den sætning betyder ingenting for den. Kun en konkret kommando med en betingelse virker: “Kør alembic check før alembic upgrade head. Hvis der er en fejl, må du ikke anvende migreringen; spørg mig.”

  2. “Ren kode.” En ubrugelig frase. Erstat den med et specifikt mønster: “Brug funktionelle komponenter med hooks. Eksempel: function LoginForm() { const [email, setEmail] = useState(''); ... }”

  3. Ustruktureret prosa. Hvis AGENTS.md er 300 linjer prosa uden overskrifter, bruger agenten 80K konteksttokens på irrelevante passager og overser det vigtige. Brug H2/H3-overskrifter, korte afsnit og punktopstillinger.

  4. En fil på mere end 150 linjer. Kvalitetsmålingerne forringes efter denne grænse. Opdel den i en hovedfil plus links til detaljer i docs/.

  5. 30+ forbud uden alternativer. Hvis filen har en lang liste med “gør ikke X, gør ikke Y” uden at forklare “gør Z i stedet”, vil agenten famle rundt i blinde.

  6. Gentagelse af README.md. Hvis du allerede har skrevet “sådan installerer og kører man” i README, skal du ikke kopiere det til AGENTS.md. Henvis i stedet til README på én linje, og beskriv i AGENTS.md, hvad agenten har brug for, men menneskelige bidragydere ikke behøver.

  7. Hardkodede hemmeligheder. AGENTS.md kan være offentlig (den ligger i git). Ingen rigtige API-nøgler, tokens eller adgangskoder. Kun henvisninger til hemmelighedslagre: “Se Vault: secret/staging/db.”

  8. Modstridende prioriteter uden rangordning. “Arbejd hurtigt” + “oprethold 90% testdækning” gør agenten usikker på, hvad den skal vælge. Rangordn dem udtrykkeligt: “Testdækning ≥80% først, derefter hastighed. Hvis de er i konflikt, har tests forrang.”

  9. Forældet dokumentation. En arkitekturbeskrivelse, der siger REST+polling, når virkeligheden allerede er WebSockets. Agenten følger den forældede beskrivelse og ødelægger arkitekturen. Regel: Opdater AGENTS.md i samme PR som koden, når arkitekturen ændres.

  10. Arkitektonisk overkill til en simpel opgave. Hvis nogen bad om at ændre to linjer i en konfiguration, skal agenten ikke være nødt til at læse hele topologien for 14 mikrotjenester. Flyt den “dybe” arkitektur til docs/architecture.md; lad AGENTS.md kun sige “hvis opgaven er arkitektonisk, så læs docs/architecture.md”.

GitHub Blogs undersøgelse af mere end 2.500 AGENTS.md-repositorier angiver hovedkonklusionen:

“De fleste agentfiler fejler, fordi de er for generelle. ‘You are a helpful coding assistant’ virker ikke.”

(GitHub Blog, oversat fra engelsk)

Hvordan holder man AGENTS.md og CLAUDE.md i samme repository?

Det vigtigste

Tre scenarier: (1) Kun Claude Code – behold CLAUDE.md; AGENTS.md er ikke nødvendig. (2) Kun værktøjer, der ikke er Claude (Codex, Cursor, Copilot, Junie) – brug AGENTS.md som den eneste kilde til sandheden. (3) Et blandet team med Claude Code og andre – gør AGENTS.md til den primære fil. Hvis du ikke har særskilte regler for Claude, kan du springe CLAUDE.md over: siden version 2.1.277 læser Claude Code selv AGENTS.md. Hvis du har særskilte regler, så forbind AGENTS.md med CLAUDE.md via et symbolsk link eller importen @AGENTS.md. Omdøb på macOS og Linux kun, når AGENTS.md ikke findes. Bevar og flet først reglerne, hvis begge filer findes, og brug derefter en kort CLAUDE.md-omslagsfil med @AGENTS.md; overskriv aldrig eksisterende AGENTS.md. På Windows kræver symbolske links Developer Mode, så det er nemmere at bruge en import.

Det vigtigste praktiske spørgsmål er, hvordan man kan have begge filer uden at duplikere indhold. Tre scenarier:

Scenarie 1: Kun Claude Code. Behold CLAUDE.md, og brug alle Claude Codes funktioner: ~/.claude/CLAUDE.md til instruktioner på brugerniveau, CLAUDE.md til projektet, CLAUDE.local.md til personlige tilsidesættelser, @import til at inkludere andre filer og .claude/skills/ til specialiserede færdigheder. AGENTS.md er ikke nødvendig.

Scenarie 2: Flere kodeklienter. Gem fælles regler i AGENTS.md, og forbind og kontrollér hver klient for sig. Gemini CLI understøtter et konfigureret kontekstfilnavn; Aider kan indlæse en fil via sin læsekonfiguration. Det er udtrykkelige indlæsningsmåder, ikke ens automatisk søgning.

IndlæsningsmådeHvad skal kontrolleres?
Automatisk søgning efter AGENTS.mdDen installerede klients dokumenterede regler for rodmappe, indlejrede filer og forrang
Udtrykkelig konfiguration, for eksempel Gemini CLI eller AiderDet konfigurerede filnavn/læsesti og klientens visning af indlæst kontekst
Betinget indlæsning eller import i Claude CodeDen installerede version og filernes forrang; se den særskilte Claude Code-guide til AGENTS.md

Start en ny session i et harmløst testrepository med en unik, harmløs instruktion, for eksempel »medtag markøren instructions-loaded i testsvaret«. Kontrollér både klientens dokumenterede visning af indlæste filer eller logs og dens svar. Gentag for hver klient og version, du faktisk bruger. Et genereret udsagn om, at filen blev læst, er ikke uafhængigt bevis; én vellykket kontrol beviser ikke understøttelse i alle andre værktøjer.

Scenarie 3: Et blandet team (Claude Code + andre). Det er den mest almindelige opsætning i 2026. Løsningen er at gøre AGENTS.md til den primære fil. Hvis du ikke har regler, der kun gælder Claude Code, skal du slet ikke oprette CLAUDE.md: siden version 2.1.277 læser Claude Code AGENTS.md, når projektet ikke har en CLAUDE.md. Hvis du har sådanne regler, skal du gøre CLAUDE.md til enten et symbolsk link eller en kort omslagsfil med importen @AGENTS.md.

Undersøg og sikkerhedskopiér begge filer før ændringer. Flet ikke-modstridende fælles instruktioner ind i AGENTS.md, hvis begge findes, og behold Claude-specifikke instruktioner i CLAUDE.md med importen @AGENTS.md. Bevar eksisterende symlinks frem for at erstatte dem.

For en almindelig CLAUDE.md kun når AGENTS.md mangler afviser denne macOS-/Linux-shellkontrol overskrivning af både et eksisterende mål og et eksisterende symlink:

if [ -e AGENTS.md ] || [ -L AGENTS.md ]; then
  printf '%s\n' 'STOP: AGENTS.md exists; merge both files first.' >&2
elif [ -f CLAUDE.md ] && [ ! -L CLAUDE.md ]; then
  mv CLAUDE.md AGENTS.md && ln -s AGENTS.md CLAUDE.md
else
  printf '%s\n' 'STOP: inspect the existing CLAUDE.md path first.' >&2
fi

Efter vellykket omdøbning er CLAUDE.md et symlink til AGENTS.md. Alle agenter, der læser AGENTS.md, ser det samme indhold. Claude Code, som læser CLAUDE.md, ser det samme via det symbolske link.

På Windows kræver det Developer Mode (eller administratorrettigheder) at oprette et symbolsk link, hvilket måske ikke er praktisk for hele teamet. Et alternativ er en kort CLAUDE.md, der importerer AGENTS.md:

# CLAUDE.md

@AGENTS.md

## Claude Code-specifikt

- Brug .claude/skills/ til specialiserede prompts
- Når du arbejder med Skills, skal du se .claude/skills/INDEX.md
- Brug Plan Mode før større ændringer (Shift+Tab)

I Claude Code henter denne syntaks AGENTS.md ind med én linje og tilføjer Claude Code-specifikke ekstra regler nedenunder. Hvis du senere vil fjerne AGENTS.md, skal du bare slette importen. Denne linje fører ikke til dobbeltaflæsning: Ifølge Claude Codes dokumentation indlæser værktøjet ikke den samme AGENTS.md to gange, selv hvis det kan læse den selv.

Kanonisk struktur for et team med flere værktøjer i 2026:

repo-root/
├── AGENTS.md                              # kilde til sandheden, ≤150 linjer
├── CLAUDE.md                              # kun hvis der er Claude-specifikke regler: symbolsk link → AGENTS.md ELLER @AGENTS.md + ekstra regler
├── .cursor/rules/                         # målrettede tilsidesættelser kun for Cursor
├── .github/copilot-instructions.md        # “Se AGENTS.md”, hvis den bruges
└── docs/architecture.md                   # dyb arkitektur, som AGENTS.md henviser til

Mere om CLAUDE.md findes i guiden “Sådan konfigurerer du CLAUDE.md korrekt”. Læs “Hvad er kontekstteknik” for mere om, hvorfor en agent har brug for en omfattende instruktionsfil.

Hvad ændrede sig i 2026: Hvorfor lagde AAIF AGENTS.md ind under Linux Foundation?

Det vigtigste

Den 9. december 2025 dannede Linux Foundation Agentic AI Foundation (AAIF) med tre grundlæggende projekter: AGENTS.md fra OpenAI, MCP fra Anthropic og goose fra Block. De grundlæggende medlemmer var AWS, Anthropic, Block, Bloomberg, Cloudflare, Google, Microsoft og OpenAI. Den 24. februar 2026 omfattede fonden 146 organisationer. Det betyder, at AGENTS.md holdt op med at være “en ting fra OpenAI” og blev en industristandard på linje med MCP. I praksis er AGENTS.md i roden grundlæggende god praksis, hvis du bygger et produkt, der skal fungere med agenter fra forskellige leverandører. Uden den skal du vedligeholde tre eller fire parallelle filer, som vil afvige inden for en måned.

Den vigtigste politiske historie inden for AI-kodning i maj 2026 var ikke endnu en modeludgivelse, men konsolideringen af formater. Tidligere havde hver leverandør sin egen regelfil, hvilket var praktisk for leverandørerne, men besværligt for teams, der arbejdede med flere værktøjer.

I en pressemeddelelse dateret 9. december 2025 annoncerede Linux Foundation Agentic AI Foundation som en paraply for tre formater:

  • AGENTS.md fra OpenAI – et format til instruktionsfiler for agenter
  • Model Context Protocol (MCP) fra Anthropic – en protokol til at forbinde eksterne værktøjer med agenter
  • goose fra Block – et open source-agentframework

Fra Linux Foundations pressemeddelelse:

“Ved at samle disse projekter under AAIF-paraplyen sikrer vi, at de kan udvikle sig med den gennemsigtighed og stabilitet, som kun åben styring giver.”

(Linux Foundations pressemeddelelse, 9. december 2025, oversat fra engelsk)

Den 24. februar 2026 tilhørte 146 organisationer AAIF (97 nye medlemmer på to måneder). Blandt de nye Gold-medlemmer var Red Hat, ServiceNow, Akamai, Lenovo, JPMorgan Chase, Huawei, Hitachi, UiPath, American Express og Autodesk. Anthropic er på Platinum-niveau og fremmer MCP. OpenAI er på Platinum-niveau og fremmer AGENTS.md. Block er på Platinum-niveau med goose.

Det ændrer AGENTS.md's position: fra et “OpenAI-format” til en industristandard. I foråret 2026 stod Claude Code stadig på sidelinjen, men i september lærte den med version 2.1.277 at læse AGENTS.md selv. CLAUDE.md er ikke forsvundet, og som standard har den stadig forrang, hvis den findes i projektet.

Et praktisk udgangspunkt er fælles projektregler i AGENTS.md suppleret med den import, omslagsfil eller udtrykkelige læsekonfiguration, hver af dine klienter kræver. I Claude Code skal du kontrollere den installerede version og instruktionsfilernes forrang, før du afgør, om en CLAUDE.md-import eller et symbolsk link er nødvendigt. Kontrollér indlæsningen i hver klient; her er ingen dækningsprocent fastslået.

Hvad sker der nu?

AGENTS.md er den første byggesten i “hvordan man bliver enige med en agent, så den arbejder forudsigeligt”. Dernæst kommer den anden byggesten – en vidensmappe for projektet, der indeholder forretningskontekst, målgruppe, produkter og priser. Den tredje byggesten er kontekstteknik, som samler det hele: hvilke filer agenten ser i hvert trin, hvordan tilstanden bevares mellem sessioner, og hvordan man skifter mellem forskellige modeller.

Praktisk materiale: Ailoot-dokumentation.

Mere materiale og værktøjer: Ailoot.

Flere oplysninger

Spørgsmål og svar

Hvad hvis AGENTS.md og CLAUDE.md allerede begge findes?

Sikkerhedskopiér og sammenlign begge filer før ændringer. Flet fælles regler ind i AGENTS.md, behold Claude-specifikke regler i CLAUDE.md, og tilføj importen @AGENTS.md. Omdøb ikke den ene oven i den anden.

Hvordan gør jeg instruktionerne verificerbare?

Skriv præcise opsætnings- og testkommandoer, definér forventet resultat, og angiv, hvad agenten ikke må ændre. Flyt detaljeret arkitektur til tilknyttede dokumenter, så hovedinstruktionerne er lette at overskue.

Alle artikler