Codex Skills: Skillin luominen toistuviin tehtäviin
MarkdownSKILL.md-rakenne, latauspolut, eksplisiittinen ja automaattinen kutsuminen, tuloskriteerit sekä skillin siirtäminen Claude Codeen.
Lue koko artikkeli
Jos selität saman asian Codexille viisi kertaa viikossa – esimerkiksi miten raportti muotoillaan, sähköpostit käydään läpi tai teksti laaditaan omalla tyylilläsi – voit kirjoittaa ohjeet kerran skilliksi. Sen jälkeen agentti voi löytää sen kuvauksen perusteella, kun kuvaus vastaa tehtävää, tai voit kutsua sen suoraan. Skill on tavallinen kansio, jossa on SKILL.md-niminen tekstitiedosto; yksinkertaiseen käyttötapaukseen ei tarvita ohjelmointia.
Käymme alla läpi, miten skill rakentuu, mistä Codex etsii sitä, miten luot sellaisen vaihe vaiheelta ja miten valitset mallin kustannusten perusteella. Komennot ja hinnat perustuvat OpenAI:n viralliseen dokumentaatioon 20. syyskuuta 2026. Emme kertaa tässä Codexin asennusohjeita; ne löytyvät oppaasta Codex by OpenAI: mikä se on ja miten se asennetaan ja käynnistetään.
Käytännön tietoa Ailootin käytöstä on dokumentaatiossa.
Mikä skill on Codexissa?
Tärkein huomio
Codex-skill on kansio, jossa on SKILL.md-tiedosto ja joka kuvaa prosessin: mitä tehdään, mihin sen tulee perustua ja miltä hyvä tulos näyttää. Aluksi Codex pitää kontekstissa vain skillien nimet ja kuvaukset ja lataa täydet ohjeet, kun se päättää käyttää jotakin niistä.
Formaattia kutsutaan nimellä Agent Skills. Se on avoin standardi, jonka Anthropic alun perin kehitti ja julkaisi agentskills.io-sivustolla. Sitä tukevat monet agentit, kuten Codex, Claude Code ja muut yhteensopivat asiakkaat. Pelkistä tekstiohjeista koostuvan yksinkertaisen skillin voi siirtää niiden välillä kopioimalla kansion. Jos siinä on skriptejä, riippuvuuksia tai agents/openai.yaml-tiedosto, tarkista skill siirron jälkeen: jotkin asetukset ovat asiakaskohtaisia.
Tätä lataustapaa kutsutaan vaiheittaiseksi tiedon avaamiseksi. Agentti päättelee skillin nimen ja kuvauksen perusteella, milloin se on tarpeellinen. Kun tehtävä vastaa kuvausta, agentti lukee koko SKILL.md-tiedoston ja noudattaa sitä. Näin voit pitää Codexissa kymmeniä skillejä lataamatta jokaista ohjetta kontekstiin: alustava luettelo vie enintään 2 % konteksti-ikkunasta (tai 8 000 merkkiä, jos ikkunan kokoa ei tunneta). Jos skillejä on paljon, Codex lyhentää ensin niiden kuvauksia; hyvin suuressa joukossa se voi jättää osan luettelosta pois ja ilmoittaa siitä.
Skill on helppo sekoittaa AGENTS.md-tiedostoon. Codex lukee tämän tiedoston jokaisessa projektisessiossa. Se sisältää pysyvät säännöt: teknologiapinon, käytännöt ja koodaustyylin. Skill ladataan tarvittaessa, kun tehtävä vastaa sen kuvausta. Sijoita siis pysyvät säännöt AGENTS.md-tiedostoon ja toistuva, vaiheittainen prosessi skilliin.
Hermes Agent -skillit toimivat samalla tavoin, mutta ne tallennetaan eri kansioihin ja asennetaan eri tavalla. Niitä käsitellään erillisessä oppaassa: Hermes Agent Skills: asennus ja luominen. Tämä artikkeli käsittelee vain Codexia.
Mistä skill koostuu?
Tärkein huomio
Vähintään skill sisältää yhden SKILL.md-tiedoston, jossa on kaksi pakollista kenttää: name ja description. Voit halutessasi lisätä scripts/, references/ ja assets/-kansiot sekä asetuksia sisältävän agents/openai.yaml-tiedoston.
Skill-kansio näyttää tältä:
my-skill/
SKILL.md - required: metadata and instructions
scripts/ - optional: executable code
references/ - optional: documents to load as needed
assets/ - optional: templates and resources
agents/
openai.yaml - optional: appearance and dependencies
SKILL.md-tiedosto alkaa kolmen yhdysmerkin väliin sijoitetulla metatietolohkolla, jota seuraa Markdown-muotoinen ohjeteksti:
---
name: weekly-sales-report
description: Kokoa viikoittainen myyntiraportti CSV-viennistä. Käytä, kun pyydetään viikoittaista myyntiraporttia tai yhteenvetoa esihenkilöittäin.
---
1. Lue vientitiedosto käyttäjän ilmoittamasta polusta.
2. Ryhmittele rivit esihenkilöittäin ja laske kokonaissumma sekä kauppojen määrä.
3. Vertaa edelliseen viikkoon, jos edellisen viikon tiedosto on lähellä. Jos sitä ei ole, kerro siitä selvästi raportissa.
4. Tallenna tulos tiedostoon report.md: taulukko esihenkilöittäin, kokonaissumma ja enintään kolme tärkeää muutosta lukuineen, siinä laajuudessa kuin aineisto mahdollistaa.
Kolme sääntöä OpenAI:n virallisista suosituksista:
- Yksi skill, yksi tehtävä. Valitse täsmällinen tehtävä sen sijaan, että pyytäisit ”Hoida kaikki markkinointini”, esimerkiksi ”kokoa myyntiraportti tästä viennistä”. Jaa suurempi prosessi erillisiksi skilleiksi, jotka voidaan kutsua peräkkäin.
- Kirjoita vaiheet suoraan ja määritä syötteet ja tulosteet selvästi: mitä käytetään, mitä tehdään ja minne tulos sijoitetaan.
- Aloita tekstiohjeilla. Käytä
scripts/-hakemiston skriptejä, kun jokin vaihe on suoritettava joka kerta täsmälleen samalla tavalla – esimerkiksi tiedoston muuntamiseen tai ulkoisen järjestelmän kutsumiseen.
Codex valitsee tehtävään sopivan skillin description-kentän perusteella, joten aloita kuvaus tehtävästä ja sanoista, joilla yleensä kuvailet sitä.
Mistä Codex etsii skillejä?
Tärkein huomio
Codex etsii skillejä neljältä tasolta: projektin .agents/skills-kansiosta (se tarkistaa nykyisen kansion ja jokaisen ylätason kansion repositoryn juureen asti), henkilökohtaisesta $HOME/.agents/skills-kansiosta, järjestelmän /etc/codex/skills-kansiosta ja OpenAI:n sisäänrakennettujen skillien joukosta.
| Taso | Polku | Tarkoitus |
|---|---|---|
| Projekti | .agents/skills nykyisessä kansiossa ja sen ylätason kansioissa repositoryn juureen asti | Tietyn projektin skillit, jotka voi tallentaa koodin kanssa samaan git-repositoryyn |
| Käyttäjä | $HOME/.agents/skills | Henkilökohtaiset skillisi, jotka ovat käytettävissä kaikissa koneen projekteissa |
| Järjestelmä | /etc/codex/skills | Skillit, jotka jaetaan koneen tai säilön kaikille käyttäjille |
| Sisäänrakennettu | Sisältyy Codexiin | OpenAI:n perusskillit, kuten skillien luontiin tarkoitettu skill |
Projektiskillejä on kätevää säilyttää gitissä koodin kanssa, jotta koko tiimi saa saman valikoiman. Henkilökohtaiset skillit sopivat hyvin omiin prosesseihisi, kuten sähköpostityyliisi. Jos kahdella eri tason skillillä on sama nimi, Codex ei yhdistä niitä: molemmat näkyvät luettelossa, mikä vaikeuttaa valintaa. Pidä nimet yksilöllisinä.
Vertailun vuoksi Claude Code -skillit tallennetaan .claude/skills-kansioon, kullakin oma SKILL.md, ja niissä käytetään samaa avointa standardia. Yksinkertaisen skillin voi siirtää sinne kopioimalla sen kansion. Suorita se sen jälkeen ja tarkista, että se kutsutaan. Claude Code -laajennusten vertailu löytyy oppaasta Skills, Subagents, MCP vai Plugins.
Miten Codex päättää, mikä skill kutsutaan?
Tärkein huomio
Voit kutsua skillin eksplisiittisesti: kirjoita Codex CLI:ssä tai IDE-laajennuksessa pyyntöösi $skill-name tai valitse skill /skills-komennon kautta. Implisiittisessä kutsumisessa Codex valitsee skillin automaattisesti, jos tehtäväsi vastaa sen kuvausta. Skillin täytyy olla käytettävissä, ja automaattisen kutsumisen on oltava sallittua.
Eksplisiittinen kutsuminen on aluksi luotettavampaa: kirjoita Codex CLI:ssä $weekly-sales-report, kun haluat valita juuri kyseisen prosessin. Implisiittinen kutsuminen on kätevämpää arkityössä. Kun olet kirjoittanut skillin, testaa sitä tavallisilla sanamuodoilla: pyydä Codexia tekemään tehtävä omin sanoin ilman $-merkkiä ja katso, valitseeko se skillin. Jos se ei valitse sitä, tarkista ensin, näkeekö Codex skillin /skills-komennossa, sijaitseeko skill yhdessä latauskansioista ja onko skill tai sen automaattinen kutsuminen poistettu käytöstä. Jos skill on käytettävissä ja asetukset ovat oikein, tarkenna description-kuvausta: kerro tehtävä ja tyypillisiä tapoja esittää pyyntö.
Jos haluat skillin olevan käytettävissä vain eksplisiittisellä komennolla, voit määrittää senkin: agents/openai.yaml-tiedoston allow_implicit_invocation: false-parametri poistaa automaattisen kutsumisen käytöstä, mutta $name toimii edelleen. Voit poistaa skillin kokonaan käytöstä poistamatta sitä tiedostosta ~/.codex/config.toml:
[[skills.config]]
path = "/full/path/to/the/skill/SKILL.md"
enabled = false
Käynnistä Codex uudelleen muokattuasi config.toml-tiedostoa. Codex havaitsee skill-kansioiden muutokset automaattisesti, mutta jos uusi skill ei tule näkyviin, käynnistä Codex uudelleen.
Oman skillin luominen vaihe vaiheelta
Tärkein huomio
Valitse yksi toistuva tehtävä, luo skill sisäänrakennetulla $skill-creator-avustajalla tai manuaalisesti, kirjoita ohjeet ja määritä tulos selkeästi, testaa kutsumista tavallisilla sanamuodoilla ja tarkenna skillia jokaisen suorituksen jälkeen.
Valitse yksi tehtävä
Valitse säännöllisesti toistuva prosessi, jolla on selkeä tulos: raportti, taulukko, kirje tai analyysi. Jos et ole aiemmin saanut tällaista tulosta, tee tehtävä ensin manuaalisesti agentin kanssa. Käytä saamaasi tulosta ohjeiden vertailukohtana.
Luo skill
Luo skill sisäänrakennetulla avustajalla kirjoittamalla Codex-istunnossa
$skill-creator. Avustaja kysyy, mitä skill tekee, milloin se pitäisi kutsua ja tarvitaanko skriptejä, ja kokoaa sitten rakenteen puolestasi. Luo skill manuaalisesti tekemällä projektiin.agents/skills-kansio ja sen sisään skillille oma alikansio, esimerkiksi.agents/skills/weekly-sales-report. Lisää alikansioonSKILL.md-tiedosto edellä olevan esimerkin pohjalta.Kirjoita ohjeet
Kirjoita vaiheet numeroituna luettelona ja määritä syöte ja tuloste selvästi. Jos prosessi vaatii tarkkuutta (tietojen siirto, uudelleennimeäminen, laskeminen), erittele kaikki vaiheet. Luovissa tehtävissä (tekstin kirjoittaminen, perustelujen valinta) määritä rajat ja hyvän tuloksen kriteerit mutta jätä mallille työskentelyvaraa.
Testaa kutsuminen
Pyydä Codexia tekemään tehtävä omin sanoin nimeämättä skillia. Jos se valitsee oikean skillin, kuvaus toimi kyseisellä sanamuodolla. Testaa sitten eksplisiittistä kutsumista komennolla
$name. Jos skillia ei kutsuta, tarkista kansio, näkyykö se/skills-komennossa, sekä yllä kuvatut käytöstä poistamisen asetukset. Jos uusi skill ei näy luettelossa, käynnistä Codex uudelleen. Jos eksplisiittinen kutsuminen toimii ja automaattinen kutsuminen on sallittu, mutta Codex ei reagoi omin sanoin esitettyyn pyyntöön, tarkennadescription-kuvauksen alkua: kerro ensin tehtävä ja sen jälkeen tyypillisiä tapoja esittää se. Testaa uudelleen.Tarkenna suoritusten jälkeen
Tarkista tulos jokaisen suorituksen jälkeen ja kerro agentille, mitä skillissä pitää muuttaa: ”Lisää ensi kerralla yhteenvetotaulukkoon sarake, joka näyttää osuuden.” Jos luovaan työhön tarkoitettu skill ei ensimmäisellä kerralla tuota tarvitsemaasi tulosta, tarkenna sitä palautteen perusteella.
OpenAI:n ja yhteisön valmiita skillejä asennetaan komennolla $skill-installer ja skillin nimellä. Jos haluat jakaa oman skillisi muille, toimita se pluginina – kyseessä on erillinen paketointitapa, jota ei tarvita henkilökohtaiseen käyttöön.
Näin tarkistat agentin tuloksen
Tärkein huomio
Kirjoita hyväksymiskriteerit suoraan skilliin: mitä tuloksen pitää sisältää ja miten agentin tulee tarkistaa työnsä ennen luovutusta. Tämä ei takaa oikeellisuutta; sinun on silti tarkistettava tulos itse.
Tarkistukset voivat olla objektiivisia tai subjektiivisia. Objektiiviset tarkistukset ovat mitattavia: ”Raportissa ovat kaikki viennin 12 esihenkilöä” tai ”Taulukon summa vastaa CSV:n kokonaissummaa.” Kirjaa ne ehdottomiksi vaatimuksiksi. Subjektiiviset tarkistukset koskevat laatua: ”Teksti kuulostaa minulta” tai ”Johtopäätökset ovat lyhyitä.” Niistäkin voi tehdä täsmällisempiä: lisää skilliin esimerkki hyvästä tekstikappaleesta ja pyydä agenttia vertaamaan tulostaan siihen.
Hyödyllinen menetelmä on tarkistuskierros: tuloksen valmistuttua agentti käy kriteeriluettelon läpi, korjaa löytämänsä puutteet ja näyttää tuloksen vasta sitten sinulle. Anthropic käyttää samankaltaisesta toimintatavasta nimeä evaluator-optimizer: yksi agentti tekee työn, erillinen arvioija tarkistaa sen ja antaa palautetta, ja prosessi toistuu hyväksyntään asti. Yksittäisessä skillissä tämä on yleensä yksinkertaistettu versio – lopputarkistus luetteloa vasten. Muista sen rajoitus: se on heikompi kuin riippumaton arvioija, koska työn tehnyt agentti ei välttämättä huomaa omaa virhettään.
Esimerkki raportin tarkistuslohkosta:
## Tarkista ennen lähettämistä
- Taulukossa ovat mukana kaikki viennin esihenkilöt; ketään ei ole jätetty pois.
- Kokonaissumma vastaa CSV:n summaa sentin tarkkuudella.
- Jokainen tärkeä muutos perustuu lukuun; jos vertailutietoja ei ole, raportissa sanotaan se selvästi.
- Tiedosto on tallennettu nimellä report.md ja polku on jaettu käyttäjän kanssa.
Minkä mallin skillille kannattaa valita?
Tärkein huomio
Aloita mallilla, jolla skill toimi, ja kokeile sitten edullisempia malleja: valitse halvempi, jos laatu pysyy ennallaan. Alla ovat API-hinnat ja lähtökohdat ensimmäisiin suorituksiin – tilanteen mukaan 20. syyskuuta 2026.
| Malli | Syöte, $/miljoona tokenia | Tuloste, $/miljoona tokenia | Mihin sitä kannattaa ensin kokeilla |
|---|---|---|---|
| GPT-6 Astra | 10 | 50 | Skillit, joissa tarvitaan pitkällistä päättelyä, kuvia ja selaimen käyttöä |
| GPT-5.6 Sol | 4 | 20 | Keskivaikeat tekstiskillit |
| GPT-5.6 Terra | 2.50 | 15 | Yksinkertaiset prosessit, joilla on selkeä tulos |
| GPT-5.6 Luna | 0.20 | 1.20 | Mekaaniset tehtävät: uudelleenmuotoilu, laskeminen, luettelon kokoaminen |
Oikeanpuoleinen sarake ehdottaa tehtäviä ensimmäisiin kokeiluihin. Se ei ole paremmuusjärjestys eikä vertailun tulos: voit valita skillillesi sopivan mallin vasta ajettuasi sen ja verrattuasi tulosta vertailutulokseen.
Taulukon hinnat ovat mallisivujen API-hintoja 20. syyskuuta 2026, eivät ChatGPT-tilausten hintoja. Tilausta käytettäessä käyttö kuluu sen käyttörajoista. Solin kampanjahinta on tämän artikkelin päiväyksenä $4/$20 vähintään 21. marraskuuta 2026 asti; normaalihinta on $5/$30. Tarkista hinnoittelusivu ennen suurta toistuvaa ajoa: OpenAI:n kampanjat muuttuvat.
Aja sama skill seuraavaksi edullisemmalla mallilla ja vertaa tulosta vertailutulokseen. Jos laatu pysyy ennallaan, kokeile seuraavaksi vielä edullisempaa mallia. Jos laatu heikkenee, palaa edelliseen malliin. Malleissa on myös eri päättelytasot: Astran tasot vaihtelevat low-tasosta max-tasoon ja 5.6-perheen none-tasosta max-tasoon. Testaa myös niitä samaa vertailukohtaa vasten: valitse ensin malli ja sitten päättelytaso.
Skillin säännöllinen käyttö aiheuttaa toistuvia kustannuksia. Astran syötehinta on 50 kertaa Lunan hinta, joten eri mallien käyttäminen samaan toistuvaan tehtävään voi aiheuttaa huomattavan kustannuseron. Näyttökuvia ja asiakirjoja analysoivassa skillissä heikompi malli voi tulla kalliimmaksi, jos tulosta joudutaan työstämään uudelleen.
Tavallisia virheitä skillin luonnissa ja käytössä
- Skill ”kaikkeen”. Yksi prosessi, yksi skill – tämä on myös OpenAI:n suositus. Yleispätevää kymmenen sivun skilliä on vaikea kuvata täsmällisesti, ja Codex valitsee tehtävään skillin sen kuvauksen perusteella.
- Epämääräinen kuvaus. ”Auttaa raporttien kanssa” ei kerro, millaisiin raportteihin skill on tarkoitettu. Sijoita tehtävä ja tyypilliset tavat pyytää sitä
description-kentän alkuun. - Ohjeista puuttuu määritelty tulos. Jos et kerro, mitä pitää tuottaa ja minne se pitää sijoittaa, tulokset voivat vaihdella ajosta toiseen.
- Tarkistukset puuttuvat kokonaan. Ilman kriteerit sisältävää viimeistä vaihetta tuloksena voi olla keskeneräinen luonnos, joka sinun on tarkistettava kokonaan itse.
- Oletuksena käytetään kyvykkäintä mallia. Selvitä ensin, pystyykö edullisempi malli tehtävään: aja sama skill ja vertaa tulosta vertailukohtaan. Vaihda mallia vain, jos laatu pysyy ennallaan.
- Sama nimi eri kansioissa. Codex ei yhdistä samannimisiä skillejä, joten oikean valitseminen vaikeutuu.
Näin pääset alkuun ja siirrät skillin Claude Codeen
Tärkein huomio
Valitse yksi toistuva prosessi, luo skill $skill-creator-komennolla, testaa kutsumista omilla sanamuodoillasi ja lisää viimeiseksi hyväksymiskriteerit tarkistava vaihe. Muutaman ajon jälkeen tarkenna kuvausta ja ohjeita löytämiesi virheiden perusteella.
Jos työskentelet useiden agenttien kanssa, voit siirtää Claude Codeen kansion, jossa on vain tekstiohjeet ja SKILL.md-tiedosto. Skillit tallennetaan siellä .claude/skills-kansioon ja kutsutaan komennolla /name. Tarkista skill siirron jälkeen, jos se sisältää skriptejä, riippuvuuksia tai agents/openai.yaml-tiedoston. Claude Coden skill-kirjaston ohje löytyy oppaasta Claude Code Skills: Näin rakennat oman valikoimasi, ja Codexin ja Claude Coden vertailu oppaasta Codex vs. Claude Code.
Lähteet
- OpenAI Developers: Rakenna skillejä – Codex-dokumentaatio
- OpenAI Developers: Codex-yleiskatsaus
- OpenAI Platform: Mallit ja API-hinnat
- Agent Skills: Avoin standardi ja määrittely
- Anthropic Docs: Laajenna Clauden toimintoja skilleillä
- Anthropic Engineering: Tehokkaiden agenttien rakentaminen
- OpenAI Developers: Rakenna plugineja
Lisätietoja
Kysymyksiä tästä oppaasta: Codex Skills: Skillin luominen toistuviin tehtäviin
Miksi skillin suora kutsuminen toimii mutta automaattinen valinta ei?
Tarkista skillin näkyminen /skills-listassa ja epäsuoran kutsumisen olevan käytössä. Jos molemmat ovat kunnossa, tarkenna kuvausta alkamaan tehtävästä ja sisällytä tavallisesti käyttämäsi sanat. Testaa sitten sama tavallinen pyyntö uudelleen.
Mitä varmistan myyntiraporttiskillin tuloksesta?
Tarkista jokaisen lähdeviennin myyjän olevan mukana, kokonaismäärän vastaavan lähdedataa, jokaisen muutosväitteen tueksi löytyvän luvut ja pyydetyn raporttitiedoston tallentuneen. Jos edellinen jakso puuttuu, raportin pitää sanoa se.