Miksi lopetin tekoälyn käskyttämisen ja aloin rakentaa silmukoita

Miksi lopetin tekoälyn käskyttämisen ja aloin rakentaa silmukoita

Hei 09, 2026 ai agents coding automation claude code codex prompt engineering developer productivity autonomous workflows ai tooling

Älä enää promptaa – rakenna silmukoita

Viime kuussa tapahtui jotain mielenkiintoista. Peter Steinberger heitti Twitteriin viestin, joka keräsi kahdeksan miljoonaa näyttökertaa: "Älä enää promptaa koodaavia agentteja. Rakenna silmukoita, jotka promptaavat niitä puolestasi." Samaan aikaan Boris Cherny, Claude Code'n luoja, sanoi käytännössä saman Asian Acquired Unplugged -podcastissa: "En enää promptaa Claudea. Minulla on silmukoita pyörimässä. Ne promptaavat Claudea."

Ja sitten internet teki sen, mitä internet aina tekee: kaikki alkoivat väitellä, kukaan ei nähnyt yhtään silmukkaa, ja keskustelu muuttui sekasorroksi.

Itse olen pyöritellyt oikeita silmukoita useamman kuukauden ajan. En siksi, että olisin ollut ajan hermoilla – kunhan kyllästyin manuaaliseen triage-työhön tarpeeksi ja automatisoin sen. Se, mitä huomasin, yllätti: silmukka-ajattelu ei ole mikään edistynyt tekniikka AI-guruseille. Se on luonnollinen kehitysaskel, kun lakkaat ajattelemasta AI-agentteja hienostuneina copy-paste-koneina ja alat ajatella niitä järjestelminä, jotka voivat seurata, päättää ja toimia puolestasi.

Kolme "silmukkaa", joista kukaan ei ole samaa mieltä

Tässä piileekin keskustelun ongelma: kun ihmiset sanovat "silmukka", he voivat tarkoittaa mitä tahansa kolmesta asiasta, ja erot ovat merkityksellisiä.

Ensimmäinen on autonominen tehtävä-silmukka – käytännössä "jatka kunnes valmista". Ajattele Geoffrey Huntleyn Ralph-skriptiä (while :; do cat PROMPT.md | claude-code; done) tai /goal-komentoa, jotka Codex ja Claude Code tarjoavat natiivisti. Tämä on "aseta ja unohda" -moodi.

Toinen on ajastettu tai tapahtumapohjainen silmukka – työtä, jotka pyörivät silloin kun et ole paikalla. Peter Steinbergerin oma HEARTEBEAT.md OpenClawissa on tässä klassinen esimerkki: checklista, jonka agentti käy läpi 30 minuutin välein. Tämän kuvion jälkeläisiä ovat Codex automaatiot ja Claude Code'n ajastetut rutiinit.

Kolmas on orkestroinnin fan-out – dynaamisia työnkulkuja, joissa useita agentteja pyörii samanaikaisesti. Claude Code'n map/reduce-tyyppiset operaatiot kuuluvat tänne. Tämä on lähempänä actor-mallia kuin mitään yksinkertaista silmukkaa.

Oma näkemykseni? Steinberger ja Cherny kuvaavat toista tyyppiä, joka on kytketty ensimmäiseen. Silmukkani ovat ulospäin ajastettuja ja tapahtumapohjaisia, ja monet niistä suorittavat kokeilutyyppisiä sisäisiä silmukoita kun ne laukaisevat. Juuri tuo yhdistelmä tuo oikean hyödyn.

PR-babysitter: Porttini silmukkamaailmaan

Minulla oli jo AI-koodikatselmointi jokaisessa pull requestissa. Claude arvioi ensin, sitten Codexin sisäänrakennettu arviointi, ja sitten oma GitHub Action, jossa kontrolloin tarkasti mitä malli näki – vetämällä mukaan koko keskustelukontekstin sekä patch-diffin.

Todellinen työnkulkuni oli absurdi: lähetä PR, odota arviointeja, sitten copy-pastaa kommentit agenttiin. Joskus liitteinä oli kuvakaappauksia. Manuaalista, toistuvaa ja sielua nakertavaa.

Eräänä päivänä kysyin agentiltani: "Etkö voisi käyttää gh-clienttiä ja tarkistaa arvioinnin tilaa itse?" Se pystyi. Joten luonnollisesti kysyin: "Etkö voisi jatkaa tarkistamista ja kertoa kun on valmista?"

Yksi kysymys muutti koko työnkulun. Agentti nyt seuraa arvioinnin tilan muutoksia, hakee uuden kontekstin, analysoi palautteen ja tekee varsinaisen työn sen käsittelemiseksi. Silmukka päättyy kun se saavuttaa triage-päätöksen: hyväksy palaute, työnnä sitä takaisin, tai eskaloi minulle.

Kuvio yleistyy hienosti: seuraa ulkoisten järjestelmien tilan muutoksia, herää kun niitä tapahtuu, hae tuore konteksti, analysoi, toimi ja triajaa. Kun näet tämän muodon, alat bongata sitä kaikkialta. Codex-tiimi toimittaa oman babysit-pr-taidon, ja Claude Code'n dokumentaatio mainitsee PR-babysittingin nyt /loop-komennon ykköskäyttötapauksena.

Sisäiset silmukat: Agentti omien kokeidensa veturina

On toinenkin silmukkakuvio, jonka arvostaminen kesti pidempään: kokeilusilmukka. Andrej Karpathyn autoresearch-konsepti sai minut ajattelemaan tätä – monta iterointia, tulosten mittaamista, toimivien pitämistä. Suuntasin sen hitaaseen Python-polkuun ja ajoin 49 koetta tunnissa, painaen p95-latenssin 339ms:stä 34ms:ään noin 24 dollarilla.

Sama kuvio toimii kovemmissa ongelmissa: agentin käyttäytymisen debuggaus tuotannossa. Kun jotain menee pieleen – outo trace Braintrustissa, käyttäjäpalaute Slackissa, tai jotain jonka kohtaan itse – avaan worktreen, liitän tracen ja kutsun testisilmukan.

Tässä on se, mikä tekee silmukasta erilaisen: se pakottaa kurinalaisuuteen, jota mallin naiivi intuitio vastustaa. Yksinään malli kovakoodaa "älä koskaan tee X, Y, Z" system-promptiin ja ylisovittaa yhteen näyttöön. Taidon referenssit tiivistävät tutkimuksen siitä, miksi tuo lähestymistapa epäonnistuu, ja silmukkasopimus vaatii hypoteesin ja testimatriisin.

Tarvitsen kolme tapausta: alkuperäinen epäonnistunut tapaus, viereinen positiivinen joka pitäisi kulkea samaa polkua, ja vastaesimerkki joka pitäisi kulkea eri polkua. Kolme tai neljä koetta pyörii samanaikaisesti paikallisessa dev-ympäristössä, palauttaen tracen täsmälleen saman käyttäjäkontekstin. Jokainen ajo pisteytetään tool-kutsujen, latenssin, input-token-muutoksen ja oikeellisuuden perusteella. Malli ei voi huijata muistamalla – sen täytyy oikeasti ymmärtää.

Mitä oikeasti muuttuu kun rakennat silmukoita

Suurin muutos ei ole tekninen – se on käsitteellinen. Kun promptaat agenttia, olet edelleen kuski. Olet kaasupoljin, navigaattori, laadunvalvoja. Silmukat kääntävät tämän päälaelleen. Sinusta tulee järjestelmien arkkitehti, jotka ajavat itse itseään.

Tämä ei tarkoita, että täysi autonomisuus olisi tavoite. Olen edelleen triage-portilla kaikessa tärkeässä. Silmukat hoitavat puurtamisen, seurannan, toiston. Minä hoidan päätökset, jotka oikeasti merkitsevät.

Toinen muutos on, että silmukat pakottavat sinut eksplisiittiseksi onnistumiskriteereistä. Hyvällä silmukalla on selkeät lopetusehdot, selkeät päätöspisteet, selkeät eskalointipolut. Et voi rakentaa silmukkaa määrittelemättä mitä "valmis" tarkoittaa. Tuo kurinalaisuus leviää kaikkeen muuhunkin.

Kolmanneksi silmukat ovat komposoitavia. PR-babysitter toimii rinnakkain kokeilusilmukan kanssa. Ajastetut tarkistukset laukaisevat on-call-vasteita. Alat rakentaa kirjastoa käyttäytymisistä, jotka toimivat yhdessä, sen sijaan että sinulla olisi kasa kertakäyttöisiä prompteja.

Käytännön lähtökohta

Jos haluat kokeilla silmukoita, ala jostain jonka olet jo automatisoinut huonosti. Sinulla on luultavasti GitHub Action joka tekee jotain ajastetusti, tai Claude Code -sessio jonka käytät manuaalisesti uudelleen, tai katselmointiprosessi joka vaatii outputtien copy-pastea työkalujen välillä.

Valitse ärsyttävin. Kysy itseltäsi: mitä tilanmuutosta olen oikeasti odottamassa? Mitä kontekstia agentti tarvitsee kun tuo muutos tapahtuu? Mitä päätöksen sen täytyy tehdä?

Sitten rakenna silmukka. Sen ei tarvitse olla elegantti. Sen täytyy toimia, ja sen täytyy palauttaa sinulle oman aikasi hallinta.

Keskustelu AI-agenteista hukkuu abstraktioon. Tässä konkreettinen versio: lopeta promptaaminen, ala rakentamaan silmukoita, ja katso mitä tapahtuu kun annat koneen hoitaa seurannan ja sinun hoitaa merkityksen.

Read in other languages:

RU BG EL CS UZ TR SV RO PT PL NB NL HU IT FR ES DE DA ZH-HANS EN