Mikä AGENTS.md on ja miten kirjoitat oman tiedostosi 30 minuutissa
MarkdownAGENTS.md-tiedostomuoto, tuki AI-työkaluissa, valmis mallipohja, säännöt ja virheet. Näin sovitat AGENTS.md:n yhteen CLAUDE.md:n ja muiden ohjetiedostojen kanssa.
Lue koko artikkeli
Käytännön materiaalia vibe codingista ja agenttien kanssa työskentelystä: Ailoot-dokumentaatio.
AGENTS.md yhdessä kappaleessa
Tärkeintä
AGENTS.md on tavallinen Markdown-tiedosto projektisi juuressa. Se sisältää AI-agentille annettavat ohjeet: miten riippuvuudet asennetaan, miten testit ajetaan, mitä koodaustyyliä noudatetaan ja mihin ei saa koskea. Tiedostomuoto on avoin. OpenAI loi sen elokuussa 2025, ja joulukuussa samana vuonna se liittyi Linux Foundationiin. Monet koodaustyökalut voivat käyttää sitä, mutta tiedoston löytäminen riippuu ohjelmasta ja versiosta: osa lataa AGENTS.md:n automaattisesti, osa tarvitsee erillisen tiedostonimiasetuksen tai lukuasetuksen. Versiosta 2.1.277 (syyskuu 2026) lähtien myös Claude Code lukee AGENTS.md-tiedoston, jos projektissa ei ole CLAUDE.md-tiedostoa. Jos CLAUDE.md on olemassa, Claude Code lukee oletusarvoisesti vain sen, ja AGENTS.md sisällytetään mukaan rivillä @AGENTS.md tai symbolisen linkin kautta.
Seuraavassa tiedostomuotoa tarkastellaan agents.md-sivuston, OpenAI Codexin dokumentaation, JetBrains Junien, Cursor Rules Docsin, GitHub Copilot Coding Agentin muutoslokin sekä Linux Foundationin Agentic AI Foundationia koskevan lehdistötiedotteen pohjalta. Kaikki luvut ja ominaisuudet ovat tilanteen mukaisia 30. toukokuuta 2026, ja Claude Coden AGENTS.md-tukea käsitellään Anthropicin dokumentaation sekä 24. syyskuuta 2026 tehdyn päivityksen perusteella.
Jos et tiedä, mitä tämä markkinoiden työkalusirkus on tai miksi ne tarvitsevat yhteisen tiedoston, lue ensin opas ”Millä koodata vuonna 2026: 8 AI-työkalua Claude Codesta Antigravityyn”. Tämä artikkeli keskittyy nimenomaan AGENTS.md-tiedostomuotoon ja siihen, miten kirjoitat oman tiedostosi 30 minuutissa.
Mikä AGENTS.md on ja mistä se sai alkunsa?
Tärkeintä
AGENTS.md on avoin Markdown-tiedostomuoto, jossa kirjoitat itse ohjeita AI-agenteille. OpenAI julkaisi sen elokuussa 2025 Codex CLI:n yhteydessä ja kutsui heti muita kirjoittajia mukaan: Cursorin, Sourcegraph Ampin, Google Julesin ja Factoryn. Ajatus on yksinkertainen: ”ei luoda jokaiselle työkalulle omaa tiedostoa, vaan sovitaan yhdestä yhteisestä.” Joulukuun 9. päivänä 2025 AGENTS.md liittyi yhdessä Anthropicin MCP:n ja Blockin goosen kanssa Linux Foundationiin yhtenä uuden Agentic AI Foundationin kolmesta perustajaprojektista. Saman vuoden joulukuuhun mennessä yli 60 000 GitHub-repositoriossa oli jo AGENTS.md-tiedosto juuressa.
Aiemmin jokaisella AI-työkalulla oli oma sääntötiedostonsa: Anthropicilla oli CLAUDE.md, Cursorilla .cursorrules, GitHubilla .github/copilot-instructions.md, Aiderilla .aider.conf.yml ja JetBrainsilla .junie/guidelines.md. Jos tiimilläsi oli kolme eri agenttia, se tarkoitti kolmea rinnakkaista tiedostoa, joissa oli sama sisältö ja jotka alkoivat erota toisistaan viikon kuluessa.
OpenAI kyllästyi tähän ensimmäisenä. Elokuussa 2025 se julkaisi Codex CLI:n ja käynnisti samalla avoimen agents.md-tiedostomuodon. Sivustolta:
”Ajattele AGENTS.md-tiedostoa agenttien README-tiedostona.”
(agents.md, käännetty englannista)
Pääasia on, että AGENTS.md täydentää README-tiedostoa. README on kirjoitettu ihmisille: ”mikä projekti on, miten sitä ajetaan paikallisesti ja miten siihen voi osallistua”. AGENTS.md on kirjoitettu agentille: tarkat komentotulkin komennot, todennettavat ”valmis”-kriteerit ja rajat, kuten ”älä koske tähän koskaan”.
Sivustolta:
”AGENTS.md täydentää README-tiedostoa: se sisältää lisäkontekstia, joskus yksityiskohtaista, jota agentti tarvitsee – rakennusvaiheet, testit ja käytännöt, jotka kuormittaisivat README-tiedostoa tai joita ihmiskäyttäjät eivät yksinkertaisesti tarvitse.”
(agents.md, käännetty englannista)
Syyskuuhun 2025 mennessä GitHub Copilot Coding Agent tuki tiedostomuotoa (muutosloki, 28.08.2025). Joulukuuhun mennessä Cursor, Junie, Gemini CLI, Aider ja tusina muuta työkalua olivat liittyneet mukaan. Joulukuun 9. päivänä 2025 Linux Foundation perusti Agentic AI Foundationin (AAIF): sen kolme perustajaprojektia olivat OpenAI:n AGENTS.md, Anthropicin MCP ja Blockin goose. Perustajajäseniä olivat AWS, Anthropic, Block, Bloomberg, Cloudflare, Google, Microsoft ja OpenAI. Helmikuun 24. päivään 2026 mennessä säätiöön kuului jo 146 organisaatiota, muun muassa Red Hat, ServiceNow, Akamai, Lenovo, JPMorgan Chase, Huawei, UiPath ja Hitachi.
Sen jälkeen AGENTS.md lakkasi olemasta ”taas yksi OpenAI:n juttu” ja siitä tuli de facto -standardi.
Mitkä AI-agentit lukevat AGENTS.md-tiedoston ja mitkä eivät?
Tärkeintä
AGENTS.md:tä käytetään monissa koodaustyökaluissa, myös alla luetelluissa ohjelmissa. Taulukko kuvaa lataustapoja eikä lupaa yhtenäistä natiivitukea: automaattinen löytäminen, erilliset asetukset, tiedostonimien etusijajärjestys ja sisäkkäisten tiedostojen käsittely voivat erota. Anthropicin Claude Code oli pitkään poikkeus: tukea pyytänyt issue #6235 pysyi avoinna elokuusta 2025 elokuuhun 2026. Versiosta 2.1.277 (18. syyskuuta 2026) lähtien Claude Code lukee AGENTS.md-tiedoston itse, jos projektissa ei ole CLAUDE.md-tiedostoa. Jos CLAUDE.md on olemassa, oletusarvoisesti luetaan vain se, ja AGENTS.md sisällytetään CLAUDE.md-tiedostoon rivillä @AGENTS.md tai symbolisen linkin kautta.
Tukitaulukko 30. toukokuuta 2026 tilanteen mukaan; Claude Codea koskeva rivi päivitettiin 24. syyskuuta 2026:
| Työkalu | Lukee AGENTS.md-tiedoston | Päiväys / lähde |
|---|---|---|
| OpenAI Codex CLI | Kyllä (natiivi tiedostomuoto) | elokuu 2025, agents.md |
| GitHub Copilot Coding Agent | Kyllä | 28.08.2025, GitHub Changelog |
| Cursor | Kyllä, juuri + sisäkkäiset tiedostot | Cursor Rules Docs |
| JetBrains Junie | Kyllä, projekti + yleinen ~/.junie/AGENTS.md | Junie Docs |
| Gemini CLI (Google) | Kyllä, .gemini/settings.json-tiedoston kautta asetuksella fileName: AGENTS.md | agents.md |
| Jules (Google) | Kyllä, standardin toinen kirjoittaja | elokuu 2025 |
| Sourcegraph Amp | Kyllä, standardin toinen kirjoittaja | elokuu 2025 |
| Aider | Kyllä, .aider.conf.yml-tiedoston read: AGENTS.md -asetuksen kautta | agents.md |
| Factory | Kyllä, standardin toinen kirjoittaja | elokuu 2025 |
| OpenCode | Kyllä | — |
| Zed | Kyllä | agents.md |
| Warp | Kyllä | agents.md |
| VS Code | Kyllä | agents.md |
| Windsurf | Kyllä | — |
| Devin (Cognition) | Kyllä, Spec Kit Skillsin kautta | huhtikuu 2026 |
| RooCode, Kilo Code, Augment Code | Kyllä | agents.md |
| Claude Code (Anthropic) | Kyllä, jos projektissa ei ole CLAUDE.md-tiedostoa | Versiosta 2.1.277 lähtien (18.09.2026), Claude Code -dokumentaatio |
Anthropic liittyi mukaan suurista toimijoista viimeisenä. Elokuussa 2025 virallisessa anthropics/claude-code-repositoriossa avattiin issue #6235, jossa pyydettiin AGENTS.md-tukea.
Issue pysyi avoinna lähes vuoden ja suljettiin 17. elokuuta 2026; AGENTS.md-tukea sisältävä versio 2.1.277 julkaistiin 18. syyskuuta. Anthropicin toimintaperiaate on seuraava: CLAUDE.md on etusijalla, ja AGENTS.md luetaan, kun työkansiossa tai missään sen yläpuolisessa kansiossa ei ole CLAUDE.md-tiedostoa. Dokumentaation mukaan se toimii näin:
| Mitä projektissa on | Mitä Claude Code lukee |
|---|---|
| Vain AGENTS.md | AGENTS.md |
| AGENTS.md ja CLAUDE.md (tai CLAUDE.local.md) | Vain CLAUDE.md |
CLAUDE.md, jossa on rivi @AGENTS.md | CLAUDE.md, joka sisällyttää AGENTS.md-tiedoston |
Tässä on yksi koukku: myös henkilökohtainen CLAUDE.local.md lasketaan mukaan, ja silloin Claude Code lakkaa lukemasta AGENTS.md-tiedostoa. Voit muuttaa tätä toimintaa kohdassa /config, Project instructions -asetuksissa – esimerkiksi niin, että Claude Code lukee molemmat tiedostot samalla kertaa. Versioissa, jotka ovat vanhempia kuin 2.1.277, AGENTS.md-tiedostoa ei löydetä automaattisesti; @AGENTS.md-rivi CLAUDE.md-tiedostossa toimii edelleen kiertotapana.
Miten AGENTS.md eroaa CLAUDE.md-tiedostosta ja .cursorrules-tiedostosta?
Tärkeintä
Teknisesti niissä ei ole mitään erityistä: kaikki neljä tiedostomuotoa (AGENTS.md, CLAUDE.md, .cursorrules, .github/copilot-instructions.md) ovat tavallisia Markdown-tiedostoja, joissa annetaan agentille ohjeita. Ero on siinä, kuka niitä lukee ja missä ne sijaitsevat. AGENTS.md voi sisältää usean ohjelman yhteiset ohjeet, kun ohjelmakohtainen tiedoston löytäminen tai määritys pidetään erillään. CLAUDE.md on vain Claude Codea varten, mutta se tarjoaa edistyneitä ominaisuuksia: polkukohtaiset säännöt, CLAUDE.local.md henkilökohtaisia yliajoja varten, @import muiden tiedostojen sisällyttämiseen sekä projekti-, käyttäjä- ja paikallistason hierarkian. .cursorrules on Cursorissa vanhentunut – uusi järjestelmä käyttää .cursor/rules/*.mdc-tiedostoja, jotka liitetään automaattisesti tiedostotyypin perusteella. .github/copilot-instructions.md tarvitaan vain verkkopohjaiseen Copilotiin.
Neljän tiedostomuodon vertailu 30. toukokuuta 2026 tilanteen mukaan:
| Tiedostomuoto | Kuka lukee sitä | Missä se sijaitsee | Vahvuus | Heikkous |
|---|---|---|---|---|
| AGENTS.md | Useita ohjelmia; lataus riippuu ohjelmasta/versiosta | Repositorion juuri ja sisäkkäiset tiedostot ohjelman sääntöjen mukaan | Yhteinen ohjesisältö ja ohjelmakohtainen latausmääritys | Tarkista löytäminen, hierarkia ja etusijat jokaiselle ohjelmalle erikseen |
| CLAUDE.md | Vain Claude Code | Juuri + ~/.claude/CLAUDE.md + CLAUDE.local.md | Hierarkia, polkukohtaiset säännöt, @import, skills, hooks | Vain Claude. Ei toimi Cursorissa / Codexissa / Copilotissa |
.cursor/rules/*.mdc | Vain Cursor | .cursor/rules/<rule>.mdc | Automaattinen liittäminen tiedostotyypin mukaan (TS, Python, tietyt polut) | Vain Cursor, epästandardi .mdc-syntaksi |
.github/copilot-instructions.md | GitHub Copilot (verkko + perinteinen) | .github/ | Toimii suoraan GitHub.comin selaimessa | Vain Copilot, kopioi AGENTS.md:n sisältöä |
Keskeinen ajatus: AGENTS.md voi sisältää yhteiset projektiohjeet, mutta kunkin ohjelman lataustapa ja henkilökohtaiset asetukset tarvitsevat silti erillisen määrityksen. Claude Codessa sitä varten on CLAUDE.local.md, ja Cursorissa on paikallisia .mdc-tiedostoja käyttäjän alla. Pelkkä AGENTS.md ei tarjoa tätä – sinun on joko yhdistettävä se muihin tiedostoihin tai sovittava tiiminä, että henkilökohtaiset säännöt kirjoitetaan gitin ohittamiin osioihin.
Toinen tärkeä yksityiskohta liittyy monorepoihin. Codex ja Cursor noudattavat sääntöä ”lähin AGENTS.md voittaa”:
”Monorepossa sijoita jokaiseen pakettiin oma AGENTS.md-tiedosto. Agentit lukevat automaattisesti lähimmän tiedoston hakemistopuusta, ja lähin voittaa.”
(agents.md, käännetty englannista)
agents.md mainitsee, että OpenAI:n päämonorepossa on 88 AGENTS.md-tiedostoa eri alipaketteja varten. Jos työskentelet monorepossa, jaa säännöt eri tasoille: yleiset säännöt juureen ja erityiset alikansioihin.
Mitä hyvän AGENTS.md-tiedoston pitäisi sisältää?
Tärkeintä
Hyvän AGENTS.md-tiedoston rungossa on 8 osiota, jotka löytyvät useimmista suosituista tiedostoista: projektin yleiskuvaus, asennuskomennot, koodaustyyli, kehitysympäristön vinkit, testausohjeet, PR-ohjeet, tietoturvaan liittyvät näkökohdat ja rajat (mitä ei pidä tehdä). Kaikki muu on valinnaista. Pääsääntö: jokaisen kohdan pitää olla tarkka komento tai konkreettinen esimerkki, ei yleinen ajatus, kuten ”kirjoita siistiä koodia”.
agents.md-sivusto tarjoaa joustavan muodon – ”mitä tahansa Markdownia”. Silti 80% käytännössä hyvistä tiedostoista sisältää samat kahdeksan osiota. Pääsääntö: jokaisen kohdan pitäisi olla tarkka komento tai konkreettinen esimerkki. Agentti sivuuttaa abstraktin ajatuksen, kuten ”kirjoita siistiä koodia”.
- Projektin yleiskuvaus – 2–3 riviä. Mikä projekti on, kenelle se on tarkoitettu ja mikä on sen päätavoite. Ei markkinointia. Esimerkki: ”Telegram-botti maksulliseen työpajaan perehdyttämiseen. Stack: Next.js 14, Prisma, PostgreSQL. Käynnistyy, kun
purchases-tauluun tulee uusi tietue.” - Asennuskomennot – tarkat komentotulkin komennot paikallista käyttöä varten.
npm install,npm run dev,npm run build. Ei ”näin meillä yleensä tehdään”. - Koodaustyyli / käytännöt – täsmällisiä sääntöjä esimerkin kanssa, ei ”kirjoita siististi”. Esimerkiksi: ”TypeScript strict, yksinkertaiset lainausmerkit, ei default exporteja, komponenttien nimet PascalCasella, hookien nimet alkavat
use-sanalla.” - Kehitysympäristön vinkit – missä tärkeät asiat sijaitsevat. Mitä muuttujia
.envtarvitsee, missä salaisuuksia säilytetään, mitkä portit ovat käytössä ja miten paikallisen DB:n kanssa työskennellään. - Testausohjeet – miten tietty testi ajetaan ja mikä lasketaan ”vihreäksi”. Esimerkiksi:
npm test -- --testPathPattern=user-auth; odotuksena on 100% läpäisy. - PR- / commit-ohjeet – commit-viestien muoto, PR:ää edeltävä tarkistuslista (testit, linter, dokumentaatio) ja hyväksyjä.
- Tietoturvaan liittyvät näkökohdat – mitä ei saa koskaan tapahtua. ”Älä koskaan commitoi
.env-tiedostoa. Salaisuudet kuuluvat vain Vaultiin. Älä näytä käyttäjien henkilötietoja lokeissa.” - Rajat / Älä tee näin koskaan – kiellot ja niiden vaihtoehdot. ”Älä käytä
git push --force-komentoa main-haarassa. Jos sinun täytyy perua muutoksia, käytägit revert- taigit reset-komentoa feature-haarassa.”
Käytä jokaisessa osiossa periaatetta ”komento ajatuksen sijaan”. Agentti sivuuttaa ohjeen ”ole varovainen migraatioiden kanssa”. Se noudattaa ohjetta ”Aja alembic check ennen alembic upgrade head -komentoa. Jos se ilmoittaa virheestä, älä suorita migraatiota vaan kysy minulta.”
Valmis AGENTS.md-mallipohja (kopioi ja mukauta)
Tärkeintä
Alla on aloitusmalli tavalliseen verkkoprojektiin. Kopioi se repositoriosi juureen, korvaa <project-name>, <stack> ja tarkat komennot sekä poista osiot, joita et tarvitse. Mukauttaminen vie 20–30 minuuttia – tai kauemmin, jos teet sen ensimmäistä kertaa.
# AGENTS.md
## Projektin yleiskuvaus
<project-name> - <one phrase describing its purpose>.
Stack: <Next.js / Python / Go / ...>.
Main entities: <users, orders, posts ...>.
Details for people are in README.md.
## Asennuskomennot
```bash
# ensimmäinen asennus
npm install
cp .env.example .env # täytä sitten käsin; katso alla oleva luettelo
# käynnistys
npm run dev # kehityspalvelin portissa :3000
npm run build # tuotantorakennus
npm run start # suorita tuotantorakennus
```
## Kehitysympäristö
- Node 20+ (nvm:n kautta: `nvm use 20`)
- PostgreSQL 16 paikallisesti portissa :5432 (`docker-compose up postgres`)
- Redis on valinnainen, ja sitä tarvitaan vain jonoihin (`docker-compose up redis`)
- `.env`: `DATABASE_URL`, `STRIPE_KEY`, `RESEND_API_KEY`, `JWT_SECRET`
- Älä koskaan lue koko `.env`-tiedostoa. Jos tarvitset yhden muuttujan: `grep "^VAR=" .env`
## Koodaustyyli
- TypeScript strict mode
- Yksinkertaiset lainausmerkit, ei puolipisteitä (ellei ESLint niitä vaadi)
- Importit: ensin ulkoiset, sitten sisäiset `@/`-polun kautta ja lopuksi suhteelliset
- Komponenttien nimet PascalCasella; hookien nimet alkavat `use`-sanalla
- Ei `any`-tyyppiä ilman nimenomaista kommenttia, jossa selitetään ”miksi sitä ei voi tyypittää”
Esimerkki hyvästä moduulista:
```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)
}
```
## Testaus
```bash
npm test # kaikki testit
npm test -- --testPathPattern=auth # vain auth-testit
npm test -- --watch # watch-tila
```
Kaikkien testien on läpäistävä (oltava vihreitä) ennen committia. Jos testi on punainen, älä commitoi; kysy minulta, mitä tehdä.
## Pull request -ohjeet
- Commit-muoto: `<type>(<scope>): <description>` (`feat(auth): add magic-link`)
- Ennen PR:ää: `npm run build && npm test && npm run lint`
- PR-kuvaus = mitä muuttuu, miksi ja miten se testataan
- Älä hyväksy omaa PR:ääsi – odota aina ihmisen tekemää tarkistusta
## Tietoturva
- Salaisuudet vain `.env`-tiedostossa ja Vaultissa, ei koskaan koodissa
- Älä lokita henkilötietoja (sähköposti, puhelin, nimi)
- Käytä tuotantotietokannan kanssa työskennellessäsi vain lukukyselyitä, ellet ole saanut nimenomaista lupaa
- Älä kovakoodaa ulkoisten palveluiden API-avaimia (Stripe, OpenAI) testeihin
## Älä tee näin koskaan
- Älä käytä `git push --force` -komentoa main-haaraan. Jos sinun täytyy perua muutoksia, käytä `git revert` -komentoa tai avaa uusi PR
- Älä suorita tietokantamigraatioita ilman `alembic check` -komentoa (tai ORM:n vastaavaa komentoa)
- Älä käytä `npm install -g`- tai `sudo`-komentoa projektin riippuvuuksiin
- Älä lisää riippuvuuksia ilman hyväksyntää (etenkään raskaita, kuten webpack-pluginien tai ORM:n kaltaisia)
Mallipohjassa on keskimäärin 80–120 riviä. Jos tiedosto ylittää 150 riviä, se on merkki siitä, että rakenne kannattaa tarkistaa: siirrä jotain docs/-kansioon, linkitä sisältöön tai tiivistä se yhdeksi riviksi. Käytännössä 100–150-riviset tiedostot toimivat parhaiten; tämän jälkeen laatuhyödyt alkavat kääntyä laskuun.
Mitkä 5 sääntöä tekevät AGENTS.md-tiedostosta todella hyödyllisen?
Tärkeintä
Hyvä AGENTS.md noudattaa viittä sääntöä: komentoja ideoiden sijaan, kieltoja vaihtoehtoineen, täsmälleen yksi totuuden lähde, todennettavat valmistumiskriteerit ja alle 150 riviä.
Komentoja ideoiden sijaan. Agentti ei ymmärrä ohjetta ”ole varovainen migraatioiden kanssa”. Se noudattaa komentoa
alembic checkennen komentoaalembic upgrade head. Agentit toimivat komentojen ja ehtojen, eivät tunnelmien, mukaan. Muotoile kaikki keskeiset säännöt näin: ”tee X, muuten Y”.Kielto ja vaihtoehto. Pelkkä ”älä tee force pushia” jää agentilta huomaamatta kahden tai kolmen promptin jälkeen. Ohje ”älä tee X:ää, vaan tee Y” toimii. Esimerkki: ”älä käytä
git push --force-komentoa main-haarassa; jos sinun täytyy perua muutoksia, käytägit revert-komentoa tai avaa uusi PR.”Täsmälleen yksi totuuden lähde. Juuren AGENTS.md on koko projektin totuuden lähde. Jos sinulla on monorepo, käytä sisäkkäisiä AGENTS.md-tiedostoja alikansioissa ja noudata sääntöä ”lähin voittaa”. Ei rinnakkaisia tiedostoja, joissa on ristiriitaisia ohjeita.
Todennettavat ”valmis”-kriteerit. ”Testien on läpäistävä” on hyödytön ohje. Tarkka kriteeri on:
npm testpalauttaa poistumiskoodin 0 eikä tulostaFAIL-tekstiä stdout-virtaan. ”Koodin pitää olla siistiä” on niin ikään hyödytöntä. Tarkka kriteeri on:npm run lintmenee läpi ilman varoituksia. Agentti ymmärtää ”valmiin” vasta, kun kuvailet ehdon nimenomaisesti.Alle 150-rivinen tiedosto. Yli 150 rivin jälkeen mittarit alkavat heikentyä: agentti käyttää enemmän kontekstia lukemiseen ja ohittaa tärkeitä sääntöjä. Jos sisältö ei mahdu, siirrä tiedot tiedostoon
docs/architecture.mdja linkitä siihen AGENTS.md-tiedostosta, jotta jäljelle jäävät vain komennot ja rajat.
Mitkä 10 virhettä tekevät AGENTS.md-tiedostosta roskaa?
Tärkeintä
Yleisin syy siihen, ettei AGENTS.md toimi, on epämääräinen sanamuoto. Yli 2 500 repositoriota käsittäneessä tutkimuksessa GitHub Blog osoitti, että useimmat tiedostot epäonnistuvat, koska ne on kirjoitettu liian yleisellä tasolla. Esimerkiksi ”You are a helpful coding assistant” ei anna agentille yhtään hyödyllistä tietoa. Alla on 10 tavallista virhettä ja esimerkkejä siitä, miten ne näkyvät huonoissa tiedostoissa: README:n sisällön toistaminen, jäsentymätön proosa, yli 30 kieltoa ilman vaihtoehtoja, ristiriitaiset prioriteetit, kovakoodatut salaisuudet, vanhentunut dokumentaatio ja yksinkertaisiin tehtäviin nähden ylimitoitettu arkkitehtuuri.
Epämääräiset säännöt ilman komentoja. Agentti sivuuttaa ohjeen ”ole varovainen migraatioiden kanssa” – lause on sille tyhjä. Vain täsmällinen komento ja siihen liittyvä ehto toimivat: ”Aja
alembic checkennenalembic upgrade head-komentoa. Jos löytyy virhe, älä suorita migraatiota vaan kysy minulta.””Siisti koodi.” Hyödytön ilmaus. Korvaa se täsmällisellä mallilla: ”Käytä funktiokomponentteja ja hookeja. Esimerkki:
function LoginForm() { const [email, setEmail] = useState(''); ... }”Jäsentymätön proosa. Jos AGENTS.md sisältää 300 riviä proosaa ilman otsikoita, agentti käyttää 80K kontekstitokenia epäolennaisten kohtien lukemiseen ja ohittaa tärkeät asiat. Käytä H2/H3-otsikoita, lyhyitä osioita ja luetteloita.
Yli 150-rivinen tiedosto. Laatua kuvaavat mittarit heikkenevät tämän rajan jälkeen. Jaa sisältö päätiedostoon ja linkkeihin
docs/-kansion yksityiskohtiin.Yli 30 kieltoa ilman vaihtoehtoja. Jos tiedostossa on pitkä luettelo ”älä tee X:ää, älä tee Y:tä” selittämättä, mitä sen sijaan pitäisi tehdä, agentti hapuilee pimeässä.
README.md:n sisällön toistaminen. Jos olet jo kirjoittanut README-tiedostoon ”näin asennat ja käynnistät”, älä kopioi sitä AGENTS.md-tiedostoon. Viittaa sen sijaan README-tiedostoon yhdellä rivillä ja kuvaile AGENTS.md:ssä asiat, joita agentti tarvitsee mutta joita ihmiskäyttäjät eivät tarvitse.
Kovakoodatut salaisuudet. AGENTS.md voi olla julkinen (se on gitissä). Älä laita siihen oikeita API-avaimia, tokeneita tai salasanoja. Lisää vain viittauksia salaisuuksien säilytyspaikkoihin: ”Katso Vault:
secret/staging/db.”Ristiriitaiset prioriteetit ilman järjestystä. ”Etene nopeasti” + ”pidä testikattavuus 90%:ssa” jättää agentin epävarmaksi siitä, mitä sen pitäisi valita. Aseta prioriteetit selvästi: ”Testikattavuus ≥80% ensin, sitten nopeus. Jos ne ovat ristiriidassa, testit menevät nopeuden edelle.”
Vanhentunut dokumentaatio. Arkkitehtuurikuvaus kertoo REST+pollingista, vaikka todellisuudessa käytössä ovat jo WebSocketsit. Agentti seuraa vanhentunutta kuvausta ja rikkoo arkkitehtuurin. Sääntö: päivitä AGENTS.md samaan PR:ään koodimuutoksen kanssa aina, kun arkkitehtuuri muuttuu.
Liiallinen arkkitehtuuri yksinkertaiseen tehtävään. Jos joku pyysi muuttamaan kahta riviä konfiguraatiossa, agentin ei pitäisi joutua lukemaan 14 mikropalvelun koko topologiaa. Siirrä ”syvällinen” arkkitehtuurikuvaus tiedostoon
docs/architecture.md; jätä AGENTS.md-tiedostoon vain ohje ”jos tehtävä koskee arkkitehtuuria, luedocs/architecture.md”.
Yli 2 500 AGENTS.md-repositoriota kattavan GitHub Blogin tutkimuksen pääjohtopäätös on:
”Useimmat agenttitiedostot epäonnistuvat, koska ne ovat liian yleisluontoisia. ’You are a helpful coding assistant’ ei toimi.”
(GitHub Blog, käännetty englannista)
Miten pidät AGENTS.md- ja CLAUDE.md-tiedostot samassa repositoriossa?
Tärkeintä
Kolme tilannetta: (1) Vain Claude Code – säilytä CLAUDE.md; AGENTS.md:tä ei tarvita. (2) Vain muita työkaluja (Codex, Cursor, Copilot, Junie) – käytä AGENTS.md:tä ainoana totuuden lähteenä. (3) Sekatiimi, jossa on Claude Code ja muita – tee AGENTS.md:stä ensisijainen tiedosto. Jos sinulla ei ole erillisiä Claudea koskevia sääntöjä, voit jättää CLAUDE.md:n pois: versiosta 2.1.277 lähtien Claude Code lukee AGENTS.md-tiedoston itse. Jos sinulla on erillisiä sääntöjä, yhdistä AGENTS.md CLAUDE.md-tiedostoon symbolisella linkillä tai @AGENTS.md-tuonnilla. macOS:ssä ja Linuxissa nimeä uudelleen vain AGENTS.md:n puuttuessa. Jos molemmat tiedostot ovat jo olemassa, säilytä ja yhdistä säännöt ensin ja käytä lyhyttä CLAUDE.md-käärettä @AGENTS.md-tuonnilla. Älä koskaan ylikirjoita olemassa olevaa AGENTS.md:tä. Windowsissa symbolisten linkkien luominen edellyttää Developer Modea, joten tuonnin käyttö on helpompaa.
Käytännössä tärkein kysymys on, miten molempia tiedostoja voi käyttää sisältöä kopioimatta. Kolme tilannetta:
Tilanne 1: Vain Claude Code. Säilytä CLAUDE.md ja hyödynnä kaikkia Claude Coden ominaisuuksia: ~/.claude/CLAUDE.md käyttäjätason ohjeille, CLAUDE.md projektille, CLAUDE.local.md henkilökohtaisille yliajoille, @import muiden tiedostojen sisällyttämiseen ja .claude/skills/ erikoistuneille taidoille. AGENTS.md:tä ei tarvita.
Tilanne 2: Useita koodausohjelmia. Säilytä yhteiset säännöt AGENTS.md:ssä ja kytke sekä tarkista jokainen ohjelma erikseen. Gemini CLI tukee määritettävää kontekstitiedoston nimeä; Aider voi ladata tiedoston lukuasetuksensa kautta. Nämä ovat erikseen määritettyjä lataustapoja, eivät yhtenäistä automaattista löytämistä.
| Lataustapa | Mitä tarkistetaan |
|---|---|
| Automaattinen AGENTS.md:n löytäminen | Asennetun ohjelman dokumentoidut juuri-, sisäkkäisyys- ja etusijasäännöt |
| Erillinen määritys, kuten Gemini CLI tai Aider | Määritetty tiedostonimi/lukupolku ja ohjelman ladatun kontekstin näkymä |
| Claude Coden ehdollinen lataus tai tuonti | Asennettu versio ja tiedostojen etusijajärjestys; katso Claude Coden AGENTS.md-opas |
Aloita uusi istunto vaarattomassa testirepositoriossa. Lisää yksilöllinen vaaraton ohje, esimerkiksi ”sisällytä testivastaukseen merkki instructions-loaded”, ja tarkista vastauksen lisäksi ohjelman dokumentoitu ladattujen tiedostojen näkymä tai lokit. Toista jokaiselle käyttämällesi ohjelmalle ja versiolle. Mallin oma väite tiedoston lukemisesta ei ole riippumaton todiste lataamisesta; yhden onnistuneen tarkistuksen perusteella ei voi päätellä muiden työkalujen tukea.
Tilanne 3: Sekatiimi (Claude Code + muut). Tämä on yleisin kokoonpano vuonna 2026. Ratkaisu on tehdä AGENTS.md:stä ensisijainen. Jos sinulla ei ole vain Claude Codea koskevia sääntöjä, älä luo CLAUDE.md-tiedostoa lainkaan: versiosta 2.1.277 alkaen Claude Code lukee AGENTS.md-tiedoston, jos projektissa ei ole CLAUDE.md:tä. Jos tällaisia sääntöjä on, tee CLAUDE.md-tiedostosta joko symbolinen linkki tai lyhyt kääretiedosto, joka sisältää @AGENTS.md-tuonnin.
Tarkista ja varmuuskopioi molemmat tiedostot ennen muutoksia. Jos molemmat ovat olemassa, yhdistä ristiriidattomat yhteiset ohjeet AGENTS.md:hen ja säilytä Claude-kohtaiset ohjeet CLAUDE.md:ssä @AGENTS.md-tuonnilla. Säilytä olemassa olevat symboliset linkit korvaamatta niitä.
Tavalliselle CLAUDE.md-tiedostolle vain AGENTS.md:n puuttuessa tämä macOS/Linux-komentotulkin tarkistus kieltäytyy ylikirjoittamasta kohdetta tai sen olemassa olevaa symbolista linkkiä:
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
Onnistuneen uudelleennimeämisen jälkeen CLAUDE.md on symbolinen linkki AGENTS.md:hen. Kaikki AGENTS.md:tä lukevat agentit näkevät saman sisällön. Claude Code, joka lukee CLAUDE.md-tiedostoa, näkee saman sisällön symbolisen linkin kautta.
Windowsissa symbolisen linkin luominen edellyttää Developer Modea (tai järjestelmänvalvojan oikeuksia), mikä ei ehkä ole kätevää koko tiimille. Vaihtoehtona on lyhyt CLAUDE.md, joka tuo AGENTS.md-tiedoston sisällön mukaan:
# CLAUDE.md
@AGENTS.md
## Claude Code -kohtaiset ohjeet
- Käytä erikoistuneisiin prompteihin .claude/skills/-kansiota
- Kun työskentelet Skills-toimintojen kanssa, tutustu tiedostoon .claude/skills/INDEX.md
- Käytä Plan Modea ennen suuria muutoksia (Shift+Tab)
Claude Code tuo tällä syntaksilla AGENTS.md-tiedoston mukaan yhdellä rivillä ja lisää sen alle Claude Code -kohtaiset lisäohjeet. Jos haluat myöhemmin poistaa AGENTS.md:n, poista vain tuontirivi. Tämä rivi ei aiheuta sisällön lukemista kahteen kertaan: Claude Coden dokumentaation mukaan se ei lataa samaa AGENTS.md-tiedostoa kahdesti, vaikka se pystyisi lukemaan sen myös itsenäisesti.
Useita työkaluja käyttävän tiimin kanoninen hakemistorakenne vuonna 2026:
repo-root/
├── AGENTS.md # totuuden lähde, ≤150 riviä
├── CLAUDE.md # vain jos on Claude-kohtaisia sääntöjä: symbolinen linkki → AGENTS.md TAI @AGENTS.md + lisäohjeet
├── .cursor/rules/ # kohdennetut yliajot vain Cursorille
├── .github/copilot-instructions.md # ”Katso AGENTS.md”, jos käytössä
└── docs/architecture.md # AGENTS.md-tiedostossa viitattu laaja arkkitehtuurikuvaus
Lisää tietoa CLAUDE.md-tiedostosta on oppaassa ”Näin määrität CLAUDE.md:n oikein”. Lue ”Mitä kontekstisuunnittelu tarkoittaa”, jos haluat lisätietoa siitä, miksi agentti tarvitsee laajan ohjetiedoston.
Mikä muuttui vuonna 2026: miksi AAIF toi AGENTS.md:n Linux Foundationin alaisuuteen?
Tärkeintä
Joulukuun 9. päivänä 2025 Linux Foundation muodosti Agentic AI Foundationin (AAIF), jonka kolme perustajaprojektia olivat OpenAI:n AGENTS.md, Anthropicin MCP ja Blockin goose. Perustajajäseniä olivat AWS, Anthropic, Block, Bloomberg, Cloudflare, Google, Microsoft ja OpenAI. Helmikuun 24. päivään 2026 mennessä säätiöön kuului 146 organisaatiota. Tämä tarkoittaa, että AGENTS.md lakkasi olemasta ”OpenAI:n juttu” ja siitä tuli MCP:n rinnalla alan standardi. Käytännössä AGENTS.md projektin juuressa on perushygieniaa, jos rakennat tuotetta, jonka pitäisi toimia eri toimittajien agenttien kanssa. Ilman sitä joudut ylläpitämään kolmea tai neljää rinnakkaista tiedostoa, jotka erkanevat toisistaan kuukaudessa.
Toukokuun 2026 merkittävin AI-koodauksen poliittinen kehitys ei ollut uusi mallijulkaisu vaan tiedostomuotojen yhdistyminen. Aiemmin jokaisella toimittajalla oli oma sääntötiedostonsa. Se oli toimittajille kätevää mutta hankalaa tiimeille, jotka käyttivät useita työkaluja.
Joulukuun 9. päivänä 2025 päivätyssä lehdistötiedotteessa Linux Foundation ilmoitti Agentic AI Foundationista kolmen tiedostomuodon sateenvarjona:
- AGENTS.md OpenAI:lta – agenttien ohjetiedoston tiedostomuoto
- Model Context Protocol (MCP) Anthropicilta – protokolla ulkoisten työkalujen yhdistämiseen agentteihin
- goose Blockilta – avoimen lähdekoodin agenttikehys
Linux Foundationin lehdistötiedotteesta:
”Näiden projektien kokoaminen AAIF:n sateenvarjon alle varmistaa, että ne voivat kehittyä läpinäkyvästi ja vakaasti, minkä avoin hallintomalli yksin mahdollistaa.”
(Linux Foundationin lehdistötiedote, 9. joulukuuta 2025, käännetty englannista)
Helmikuun 24. päivänä 2026 AAIF:ään kuului 146 organisaatiota (97 uutta jäsentä kahdessa kuukaudessa). Uusia Gold-jäseniä olivat muun muassa Red Hat, ServiceNow, Akamai, Lenovo, JPMorgan Chase, Huawei, Hitachi, UiPath, American Express ja Autodesk. Anthropic on Platinum-tasolla ja edistää MCP:tä. OpenAI on Platinum-tasolla ja edistää AGENTS.md:tä. Block on Platinum-tasolla goosen kanssa.
Tämä muuttaa AGENTS.md:n asemaa: se ei ole enää ”OpenAI:n tiedostomuoto” vaan alan standardi. Keväällä 2026 Claude Code oli yhä sivussa, mutta syyskuussa se oppi version 2.1.277 myötä lukemaan AGENTS.md:n itse. CLAUDE.md ei ole kadonnut, ja jos se on projektissa, sillä on edelleen oletusarvoisesti etusija.
Käytännöllinen lähtökohta on yhteiset projektiohjeet AGENTS.md:ssä sekä kunkin ohjelman tarvitsema tuonti, käärintätiedosto tai erillinen lukumääritys. Tarkista Claude Coden asennettu versio ja ohjetiedostojen etusijajärjestys ennen CLAUDE.md-tuonnin tai symbolisen linkin valintaa. Varmista lataaminen jokaisessa ohjelmassa; tässä ei ole osoitettu kattavuusprosenttia.
Mitä seuraavaksi?
AGENTS.md on ensimmäinen rakennuspalikka siinä, ”miten agentin kanssa sovitaan asioista niin, että se toimii ennustettavasti”. Seuraava on projektin tietokansio, joka sisältää liiketoimintakontekstin, kohderyhmän, tuotteet ja hinnat. Kolmas rakennuspalikka on kontekstisuunnittelu, joka tuo kaiken yhteen: mitä tiedostoja agentti näkee kussakin vaiheessa, miten tila säilytetään istuntojen välillä ja miten eri mallien välillä vaihdetaan.
Käytännön materiaalia: Ailoot-dokumentaatio.
Lähteet
- agents.md — standardin virallinen sivusto
- Linux Foundation: Agentic AI Foundationin perustaminen (9. joulukuuta 2025)
- AAIF toivottaa tervetulleeksi 97 uutta jäsentä (24. helmikuuta 2026)
- OpenAI on mukana perustamassa Agentic AI Foundationia
- GitHub Changelog: Copilot-koodausagentti tukee AGENTS.md:tä (28. elokuuta 2025)
- GitHub Blog: oppeja yli 2500 AGENTS.md-repositoriosta
- Claude Code -dokumentaatio: miten Claude lukee AGENTS.md-tiedostoa
- JetBrains Junien ohjedokumentaatio
- Cursor Rules Docs
Lisää materiaalia ja työkaluja: Ailoot.
Lisätietoja
Kysymyksiä tästä oppaasta: Mikä AGENTS.md on ja miten kirjoitat oman tiedostosi 30 minuutissa
Mitä teen AGENTS.md:n ja CLAUDE.md:n ollessa jo molemmat olemassa?
Varmuuskopioi ja vertaa tiedostot ennen muuttamista. Yhdistä yhteiset säännöt AGENTS.md:hen, säilytä Claude-kohtaiset CLAUDE.md:ssä ja lisää @AGENTS.md-tuonti. Älä nimeä toista toisen päälle.
Miten teen ohjeista todennettavia?
Kirjoita täsmälliset asennus- ja testikomennot, määritä odotettu tulos ja kerro, mitä agentti ei saa muuttaa. Siirrä yksityiskohtainen arkkitehtuuri linkitettyihin dokumentteihin, jotta pääohjeet pysyvät silmäiltävinä.