AI-koodaustyökalut ja projektisäännöt
Tekoäly on muuttanut ohjelmistokehityksen perustavanlaatuisesti. Tässä oppitunnissa opit valitsemaan oikeat AI-koodaustyökalut ja konfiguroimaan projektisäännöt, jotka ohjaavat AI-agentin toimintaa.
Agenttinen koodaus
Perinteinen koodaus on ihmisvetoista: kehittäjä kirjoittaa jokaisen rivin itse. Agenttisessa koodauksessa tekoäly toimii aktiivisena kehityskumppanina — se generoi, ehdottaa ja iteroi koodia ihmisen ohjauksen mukaan.
Agenttinen koodaus
Agenttinen koodaus tarkoittaa kehitystapaa, jossa AI-agentti suorittaa monimutkaisempia tehtäviä itsenäisesti: lukee koodikantaa, suunnittelee muutoksia, kirjoittaa koodia, ajaa testejä ja iteroi tuloksia. Kehittäjän rooli siirtyy koodin kirjoittajasta koodin ohjaajiksi ja laadunvalvojaksi.
AI-koodaustyökalut
Modernit AI-koodaustyökalut jakautuvat kolmeen kategoriaan:
| Kategoria | Esimerkkejä | Käyttötarkoitus |
|---|---|---|
| IDE-integraatiot | Cursor, GitHub Copilot, Windsurf | Päivittäinen koodaus editorissa |
| CLI-agentit | Claude Code, Aider, Codex CLI | Terminaalipohjainen kehitys |
| Chat-käyttöliittymät | ChatGPT, Claude.ai, Gemini | Suunnittelu ja ongelmanratkaisu |
IDE-integraatiot
IDE-integraatiot ovat yleisin tapa käyttää AI:ta koodauksessa. Ne tarjoavat:
- Automaattitäydennys — AI ehdottaa seuraavaa koodiriviä kontekstin perusteella
- Inline-chat — kysy AI:lta suoraan editorissa
- Agenttitila — AI suorittaa monivaiheisia tehtäviä itsenäisesti
Pro-vinkki
Aloita IDE-integraatiolla (esim. Cursor) ja laajenna CLI-agentteihin kun haluat automatisoida toistuvia tehtäviä. Molemmat täydentävät toisiaan — IDE päivittäiseen koodaukseen, CLI automatisointiin.
CLI-agentit
CLI-agentit ovat tehokkaimmillaan suurissa, toistuvissa tehtävissä:
# Aloita uusi keskustelu projektissa
claude
# Anna tehtävä suoraan
claude -p "Lisää virheenkäsittely kaikkiin API-reitteihin"
# Käytä tiedostoa promptina
claude -p "$(cat task-spec.md)"Projektisäännöt — AGENTS.md
Projektisäännöt kertovat AI-agentille, miten toimia projektissa. Tärkein tiedosto on AGENTS.md (tai vastaava, kuten .cursorrules).
AGENTS.md
AGENTS.md on projektitason konfiguraatiotiedosto, joka ohjaa AI-agenttien käyttäytymistä. Se sisältää projektin kontekstin, koodauskäytännöt, arkkitehtuuripäätökset ja rajoitteet. Hyvin kirjoitettu AGENTS.md vähentää virheitä ja nopeuttaa AI-avusteista kehitystä merkittävästi.
Hyvän AGENTS.md:n rakenne
# AGENTS.md
## Projektin kuvaus
NextPath AI on oppimisalusta, joka käyttää Next.js 15,
TypeScript, Supabase ja Tailwind CSS:ää.
## Tech Stack
- Framework: Next.js 15 (App Router)
- Kieli: TypeScript (strict mode)
- Tietokanta: Supabase (PostgreSQL + RLS)
- Tyylitys: Tailwind CSS + shadcn/ui
## Koodauskäytännöt
- Käytä funktionaalisia komponentteja (ei class-komponentteja)
- Kirjoita tyypit erilliseen types-kansioon
- Käytä server actions tietokantaoperaatioihin
- Nimeä tiedostot kebab-case: my-component.tsx
## Testaus
- Yksikkötestit: Vitest
- E2E-testit: Playwright
- Testikattavuustavoite: 80%
## Rajoitteet
- Älä käytä any-tyyppiä
- Älä lisää uusia riippuvuuksia ilman perustelua
- Älä muokkaa migraatiotiedostoja suoraanEri työkalut, samat säännöt
Eri AI-työkalut lukevat sääntöjä eri tiedostoista:
| Työkalu | Sääntötiedosto | Sijainti |
|---|---|---|
| Claude Code | CLAUDE.md | Projektin juuri |
| Cursor | .cursorrules | Projektin juuri |
| GitHub Copilot | .github/copilot-instructions.md | .github-kansio |
| Windsurf | .windsurfrules | Projektin juuri |
Pro-vinkki
Voit ylläpitää yhtä master-sääntötiedostoa ja generoida siitä eri formaatteja. Tai yksinkertaisemmin: käytä AGENTS.md:tä ja lisää symlinkit muille työkaluille.
Kontekstihierarkia
AI-agentti saa kontekstia useasta lähteestä. Ymmärrä hierarkia:
- Projektitason säännöt — AGENTS.md, .cursorrules (globaalit säännöt)
- Kansiontason säännöt — Alikansioiden omat AGENTS.md:t (spesifiset säännöt)
- Tiedostotason konteksti — Avoimet tiedostot, importit, tyypit
- Keskustelukonteksti — Käyttäjän antamat promptit ja aiempi keskustelu
projekti/
├── AGENTS.md # Globaalit säännöt
├── src/
│ ├── AGENTS.md # src-kansion säännöt
│ ├── components/
│ │ └── AGENTS.md # Komponenttisäännöt
│ └── lib/
│ └── AGENTS.md # Kirjastosäännöt
└── tests/
└── AGENTS.md # TestisäännötMiksi projektisäännöt (AGENTS.md) ovat tärkeitä AI-avusteisessa kehityksessä?
Luo oma AGENTS.md
Luo AGENTS.md-tiedosto omalle projektillesi tai harjoitusprojektille. Sisällytä vähintään: projektin kuvaus, tech stack, 5 koodauskäytäntöä ja 3 rajoitetta. Testaa tulosta antamalla AI:lle koodaustehtävä ja arvioi, noudattaako se sääntöjäsi.
Yhteenveto
- Agenttinen koodaus muuttaa kehittäjän roolia koodin kirjoittajasta ohjaajaksi
- AI-koodaustyökalut jakautuvat IDE-integraatioihin, CLI-agentteihin ja chat-käyttöliittymiin
- AGENTS.md on tärkein tiedosto AI-avusteisen kehityksen ohjaamiseen
- Projektisäännöt varmistavat yhdenmukaisen ja laadukkaan koodin
- Kontekstihierarkia mahdollistaa kansiokohtaiset tarkennetut säännöt
- Seuraavaksi opimme Skills-järjestelmän, joka tekee AI:n kyvykkyyksistä löydettäviä