Blogg

Slik lar du Claude Code og Codex kjøre gjennom natten via /goal i 2026: 14-timers autonom modus

Markdown

Kommandoen /goal i Claude Code 2.1.139 og Codex CLI lar en AI-agent jobbe autonomt i timevis. Jeg forklarer oppsettet, gir eksempler fra virkeligheten og beskriver hvor mange tokens det koster.

Les hele artikkelen

Viktige punkter

Kommandoen /goal dukket opp i Claude Code 2.1.139 (11. mai 2026) og Codex CLI 0.128.0 (30. april 2026, stabil siden 21. mai). Du definerer kriteriet for når arbeidet er «ferdig» én gang, og agenten veksler på egen hånd mellom planlegging, handling og verifisering til kriteriet er oppfylt eller den går tom for tokens. OpenAI viste offentlig en 25-timers kjøring med 13 millioner tokens. Dette egner seg for migreringer, benchmarks og refaktorering med målbare kriterier. Det egner seg ikke for UI-oppgaver, produksjonsdatabaser eller vage forespørsler som «gjør det bedre».

Informasjon om hvordan du jobber med Ailoot, finner du i dokumentasjonen.

Hva er /goal, og hvorfor dukket det opp i 2026?

Viktige punkter

Før /goal krevde hver agenttur at du manuelt skrev «fortsett». Agenten åpnet en fil, leste den, skrev noe, stoppet og ventet. Med kommandoen /goal angir du et kriterium for fullføring én gang; agenten avgjør selv når oppgaven er ferdig og gir ikke kontrollen tilbake før den har fullført.

Situasjonen vi alle kjente før april 2026: Jeg gir Claude oppgaven «migrer prosjektet fra Pydantic v1 til v2». Den begynner, stopper etter 30 sekunder, jeg ser på hva den gjorde og skriver «fortsett». Den tar neste steg, stopper, og jeg skriver «fortsett» igjen. Ved en stor migrering betyr det 200–300 manuelle «fortsett», og jeg ender i praksis med å passe på agenten i stedet for å skrive annen kode parallelt.

OpenAIs analyse var at problemet ikke var modellens «dumhet», men arkitekturen til løkken. Modellen visste ikke når den skulle stoppe, så den bremset ved hver tur. Gi den et kriterium for når den er «ferdig», så avgjør den selv.

Slik oppsto /goal — en mekanisme som er bygget inn i harnessen, ikke i modellen.

Uttalelsen ble gitt på konferansen Code with Claude i London 19.–20. mai 2026. Den beskriver det som faktisk skjedde måneden etter at /goal ble lansert i begge verktøyene.

Hvordan setter du opp Goal-modus i Claude Code?

Viktige punkter

Claude Code 2.1.139 ble utgitt 11. mai 2026 med kommandoen /goal. En liten modell (Haiku som standard) sjekker kriteriet etter hver tur. Hvis kriteriet ikke er oppfylt, tar Claude en ny tur. Kriteriet kan være opptil 4,000 tegn langt, og det er ett mål per økt.

Et minimalt eksempel fra Anthropics offisielle dokumentasjon:

claude -p "/goal CHANGELOG.md has an entry for every PR merged this week"

Denne kommandoen starter agenten i bakgrunnen med ett mål. Claude finner PR-ene, sjekker dem mot CHANGELOG.md, legger til eventuelle manglende linjer og stopper når kriteriet er oppfylt.

I interaktiv modus skriver du bare /goal etterfulgt av betingelsen:

/goal all pytest tests pass and mypy strict reports zero errors

Dette gjør Claude videre:

  • Etter hver tur får en separat, rask modell (Haiku som standard) den gjeldende betingelsen og samtalehistorikken
  • Denne modellen svarer «ja» eller «nei» med en kort begrunnelse
  • Hvis svaret er «nei», tar Claude automatisk en ny tur uten å gi kontrollen tilbake til deg
  • Hvis svaret er «ja», fjernes målet, og kontrollen går tilbake til deg

Etter hver tur sjekker en liten, rask modell om betingelsen er oppfylt. Hvis den ikke er det, starter Claude en ny tur uten å gi kontrollen tilbake til deg.

— Offisiell dokumentasjon for Claude Code, https://code.claude.com/docs/en/goal

Harde begrensninger du ikke hører om før du støter på dem:

  • /goal fungerer bare i arbeidskataloger der du har godtatt tillitsdialogen. Hvis du bruker en ny maskin og Claude ennå ikke har lagret den katalogen, vil kommandoen mislykkes
  • I bedriftsmiljøer med disableAllHooks eller allowManagedHooksOnly er kommandoen utilgjengelig
  • Betingelsen kan være opptil 4,000 tegn lang
  • Bare ett mål kan være aktivt per økt. En ny /goal tilbakestiller det gamle
  • Med --resume bevares betingelsen, men tellerne for turer, tid og tokens tilbakestilles

Kontrollkommandoer:

  • /goal uten argument — viser gjeldende status
  • /goal clear (eller stop, off, reset, none, cancel) — fjerner målet

Ifølge Anthropic er kostnaden for evaluatoren «vanligvis ubetydelig sammenlignet med kostnaden for hovedturen». Haiku evaluerer kriteriet og samtaleteksten uten å bruke verktøy, så kontrollen er billig; det dyre er hovedmodellens turer.

Hvordan setter du opp /goal i Codex CLI?

Viktige punkter

Codex CLI 0.128.0 la til /goal 30. april 2026 som en eksperimentell funksjon. 21. mai ble modusen stabil i versjon 26.519 / npm 0.133.0. Den fungerer med to promptmaler — continuation.md («fortsett») og budget_limit.md («stopp»). Målet er knyttet til tråden og overlever omstarter.

Kommandoen ser ut som i Claude:

codex
> /goal all vitest tests pass and there are no eslint errors

Codex tilbyr flere kontroller for mål:

KommandoHva den gjør
/goal conditionangir et mål
/goalviser status
/goal pausesetter på pause
/goal resumefortsetter
/goal editendrer betingelsen (med GA)
/goal clearfjerner målet

Hovedforskjellen fra Claude er at Codex selv sjekker om arbeidet er «ferdig», i stedet for at en separat modell gjør det. Etter hver tur setter Codex automatisk inn malen continuation.md fra repositoriet openai/codex i konteksten. En ordrett oversettelse:

«Fortsett å arbeide mot det aktive målet for tråden. Ikke gjenta arbeid som allerede er gjort. Velg neste konkrete handling på veien mot målet. Marker målet som oppnådd først når en kontroll viser at det faktisk er nådd og det ikke gjenstår nødvendig arbeid.»

Når tokenene nærmer seg grensen, settes en annen mal inn — budget_limit.md:

«Målet har nådd tokenbegrensningen. Ikke start omfattende nytt arbeid. Avslutt denne turen så snart som mulig: oppsummer nyttig fremgang, identifiser gjenværende arbeid og hindringer, og gi brukeren et tydelig neste steg.»

Logikken er den samme: «ikke lyv om det du har gjort». Fortsett bare hvis målet faktisk ikke er nådd. Budget_limit krever at arbeidet stoppes, men at det som gjenstår beskrives ærlig.

I motsetning til Claude knytter Codex målet til tråden, ikke økten. Du kan lukke terminalen og åpne den igjen om morgenen, og /goal resume fortsetter med samme mål og de samme faktaene i minnet. Dette er nyttig for kjøringer du deler opp etter din egen timeplan.

Hvordan skiller /goal i Claude Code seg fra /goal i Codex?

Viktige punkter

Claude skiller mellom skriveren og dommeren: hovedmodellen skriver kode, og en separat liten modell vurderer arbeidet. Codex er én agent som sjekker sitt eget arbeid og minner seg selv på: «ikke lyv om det du har gjort». Arkitekturene er ulike, men risikoen for å havne i en løkke er den samme.

Dette er det vanligste hullet i sammenligninger, så la oss se nærmere på det.

AspektClaude Code /goalCodex /goal
Utgivelsev2.1.139, 11. mai 2026v0.128.0, 30. april 2026 (eksperimentell) → v0.133.0 / 26.519, 21. mai 2026 (stabil)
MålomfangØktTråd (overlever omstarter)
Kontrollerset, clear (+ aliaser)set, view, pause, resume, edit, clear
Hvem sjekker om arbeidet er «ferdig»Separat modell (Haiku som standard)Samme agent, via en innsatt prompt
Evaluatorens tilgang til filerNei; den vurderer bare samtaletekstenJa; den kan undersøke filer, tester og logger
BudsjettI betingelsesteksten: «eller stopp etter 20 turer»Innebygd tokenbegrensning + automatisk innsetting av budget_limit.md
Hard kostnadsgrenseIngen; bare abonnementsgrensenIngen; bare abonnementsgrensen
Lengde på betingelsenOpptil 4,000 tegnIkke spesifisert
Hvor det fungererInteraktiv modus, -p, skrivebordsapp, Remote ControlApp, IDE-utvidelse, CLI, ACP-klienter

Den konseptuelle forskjellen er at Claude behandler løkken som en kvalitetskontrakt (en ekstern evaluator), mens Codex behandler den som en utføringsmekanisme (agenten styrer seg selv).

I praksis betyr det følgende: Hvis du vil at kriteriet for «ferdig» skal være upartisk, velger du Claude. Hvis du vil at agenten skal kunne sjekke filer og logger under evalueringen, velger du Codex.

Les mer om verktøyene i veiledningen om Codex versus Claude Code.

Virkelig eksempel: Migrering fra Pydantic v1 til v2 på 31 timer

Viktige punkter

Codex /goal fullførte migreringen av 14,000 linjer i en intern tjeneste fra Pydantic v1 til v2 på 31 timer i virkelig tid, fordelt på fire økter. Kostnaden var omtrent $44 med gpt-5.3-codex.

Oppgaven ble formulert slik: «migrer fra Pydantic v1 til v2, alle pytest-tester må bestå, og mypy strict må rapportere null feil».

Dette skjedde:

  • Økt 1 (8 timer)—Codex analyserte importene, skrev om BaseModel-deklarasjoner og satte opp mypy
  • Økt 2 (10 timer)—skrev om validatorer og fikk omtrent 200 tester til å feile
  • Økt 3 (7 timer)—rettet testene og fant sirkulære avhengigheter
  • Økt 4 (6 timer)—løste de gjenværende mypy-feilene og regresjonene

Tokenkostnad:

«Total tid på klokken: omtrent 31 timer fordelt på fire økter. Totale tokenkostnader for Codex med prisene til gpt-5.3-codex: omtrent $44.»

Prisen domineres av outputtokens fra gpt-5.3-codex, som koster $14 per million. Det betyr at 31 timers autonomt arbeid koster omtrent det samme som flere uker med ChatGPT Plus-abonnement.

Dette gjorde ikke agenten på egen hånd:

  • Den skrev ikke migreringsdokumentasjon for teamet (Codex forsto ikke at dette var en del av «migreringen»)
  • Den oppdaterte ikke konfigurasjonsfiler for publisering med den nye versjonen av Pydantic
  • Den overså en produksjonsregresjon, som først ble oppdaget en dag senere

Med andre ord gjorde /goal 95% av arbeidet; de resterende 5% må fortsatt utføres manuelt. Det er normalt for dagens generasjon og ingen grunn til å la være å bruke det.

14 timer med en macOS-driver gjennom natten

Hvilke oppgaver passer for lange kjøringer over natten

Viktige punkter

Drivere som oppgavetype egner seg dårlig for interaktivt arbeid, men passer svært godt for langvarige løkker.

Oppgavene der denne tilnærmingen gir størst gevinst:

  • Lavnivåarbeid der en iterasjon og kontroll tar minutter (kompilering, kjøring av tester)
  • Migreringer med tydelige formelle kriterier (typer, tester, lint)
  • Benchmarks og optimaliseringer med målbare resultater
  • Dokumentasjon og changeloger med tydelig struktur

Claude /goal gjør dette like bra, men Codex velges oftere til drivere fordi det selv sjekker filer og logger i stedet for å støtte seg på en ekstern dommer.

Hva koster det, og hvordan unngår du å bruke opp tokens gjennom natten?

Viktige punkter

/goal har ingen hard øvre grense for pengebruk — bare grensene i abonnementet ditt. En faktisk time med Codex koster omtrent $1.50–$3 på gpt-5.3-codex. Claude koster mer å kjøre og mindre å evaluere. Den eneste sikkerhetsmekanismen er å skrive «eller stopp etter N turer» i selve betingelsen.

Tall fra offentlige omtaler:

KjøringVarighetTokensKostnad
Demo av OpenAIs designverktøy25 timer13M(intern kjøring)
Pydantic v1→v231 timer, 4 økter~3.1M output~$44
System for taleintervjuertotalt 6 timer og 44 minutter (41 minutter beregningstid)6.8 millioner input, 94% bufret-
Font-smoketest5 minutter188,832mindre enn 5% av ukeskvoten

Det viktigste å forstå: Verken Claude Code eller Codex tilbyr en hard grense som sier «stopp pengebruken ved $N». Det finnes tre sikkerhetsmekanismer:

  1. Abonnementsgrenser—Pro, Max eller Enterprise. På Anthropics Max-abonnement ($100 per måned) holder en 14-timers nattkjøring seg godt innenfor ukeskvoten
  2. Tekstgrense i betingelsen—skriv «eller stopp etter 20 turer» direkte i /goal. Claude-dommeren leser det og avslutter målet
  3. Tokenbegrensning i Codex—innebygd mekanisme som setter inn budget_limit.md når tokenene tar slutt

Dette øker regningen gjennom natten:

  • Et vagt kriterium som «gjør det mer praktisk» — agenten stopper aldri fordi evaluatoren ikke vet hva «bedre» betyr
  • Tilgang til eksterne API-er uten stubs — hvert nytt forsøk koster tokens
  • Lang kontekst — etter 6.7M tokens starter komprimering av konteksten, og noe av minnet går tapt

Les mer om kostnadsbesparelser i veiledningene hvor Claude Code-tokenene tar veien og hvordan du unngår å bruke opp grensene dine.

Når du IKKE bør kjøre /goal: 5 situasjoner

Viktige punkter

Vage kriterier som «få det til å se pent ut», endringer på én linje, produksjonsdatabaser med brukerdata, sikkerhetskritiske endringer og oppgaver med uklare eksterne avhengigheter. I alle fem situasjonene vil agenten enten sette seg fast i en løkke eller bruke tokens uten grunn.

OpenAIs dokumentasjon sier uttrykkelig hva du IKKE skal gjøre:

  1. Endringer på én linje—å bruke /goal til å endre navnet på en variabel koster mer enn å gjøre det for hånd
  2. Vage mål—«forbedre ytelsen», «gjør koden renere», «gjør den mer praktisk». Evaluatoren har ingen kriterier, så agenten vil fortsette å spinne for alltid
  3. Produksjonsdatabaser med brukerdata—agenten kan ødelegge en migrering, og gjenoppretting fra en sikkerhetskopi koster mer enn du sparer
  4. Sikkerhetsendringer—autentisering, kryptering, betalingsbehandling. En person må kontrollere hver commit her
  5. Eksterne API-er uten stubs—hver nettverksfeil koster tokens og er utenfor din kontroll

Hva bør du gjøre hvis agenten setter seg fast?

Viktige punkter

Et tegn på en løkke er at agenten redigerer det samme stedet i 3–4 turer og deretter tilbakestiller endringene. Avbryt med Ctrl+C, sjekk loggen, og gjør deretter kriteriet strengere eller avgrens oppgaven til én del. I Claude hjelper /goal clear; i Codex bruker du /goal pause og redigerer betingelsen.

Slik oppdager du raskt en løkke:

  • Agenten berører de samme filene i 3+ turer og setter dem tilbake til den forrige tilstanden
  • De samme feilene dukker stadig opp i loggen, feil den allerede har svart på
  • Du mener at betingelsen er oppfylt, men agenten sier «ikke oppfylt»
  • Tokenbruken per tur øker, men det skjer ingen fremgang i koden

Dette gjør du videre:

  • I Claude Code: /goal clear, og gjør deretter betingelsen mer spesifikk
  • I Codex: /goal pause, undersøk den gjeldende tråden, rediger betingelsen med /goal edit, og kjør deretter /goal resume
  • I begge: Sjekk at kriteriet faktisk kan verifiseres (en kommando returnerer exit 0 eller gir en bestemt utdata)

Ofte er årsaken til løkken selve oppgaven, ikke agenten. Betingelsen «alle tester består» forutsetter at testene faktisk kan bestå. Hvis det finnes et dypt arkitekturproblem i koden, vil agenten fortsette å kretse rundt symptomet.

Kriterier for «ferdig»: Oppgavedisiplin for /goal

Viktige punkter

Et godt kriterium er en kommando som returnerer exit 0 eller gir en bestemt utdata. «Alle tester bestått» fungerer. «Koden er renere» fungerer ikke. Det beste er å kombinere en formell kontroll med et målbart mål — for eksempel tester pluss en minimumsdekning.

OpenAI uttrykker denne regelen tydelig i sin offisielle Codex Cookbook:

Et mål regnes ikke som fullført bare fordi modellen mener det. Målet er fullført først når resultatet er kontrollert mot filer, tester, logger, benchmarks eller andre konkrete artefakter.

— OpenAI Codex Cookbook, Bruke mål i Codex, https://developers.openai.com/cookbook/examples/codex/using_goals_in_codex

Kriteriemaler som faktisk fungerer:

KriterietypeSlik formulerer du det
Tester«pytest tests/ returnerer exit 0 og dekningen er minst 80%»
Typer«mypy strict rapporterer null feil på src/»
Lint«eslint . returnerer exit 0 for alle endrede filer»
Build«npm run build fullføres uten feil, uten TypeScript-feil»
Benchmark«k6 run perf test viser p95 under 200 ms»
Diff«git diff viser endringer bare i filene X, Y, Z»
Kombinasjon«pytest er grønn OG mypy strict rapporterer null feil OG ruff check består»

Kombinasjonsraden bruker tester, mypy og lint. Hvis bare én kontroll fortsatt feiler, lukkes ikke målet. Evaluatoren får ingen mulighet til å jukse.

Antimønstre:

  • «Koden er bedre»
  • «Brukervennligheten er forbedret»
  • «Ytelsen er forbedret»
  • «Dokumentasjonen er komplett»

Forskjellen mellom «fungerer» og «fungerer ikke» er om det kan verifiseres. Hvis et kriterium ikke kan kontrolleres med en kommando, kan det ikke kontrolleres i det hele tatt. Det er også dette OpenAI mener med «langsiktig sammenheng»: En agent kan tenke lenge, men kan ikke selv avgjøre hva som er «godt nok».

Du kan prøve ideen om «én prompt — ett resultat» i et ekte prosjekt: angi /goal, formuler et kriterium, kjør det og analyser hva som gikk galt.

Bli kjent med Ailoot.

Flere detaljer

Spørsmål om denne veiledningen: Slik lar du Claude Code og Codex kjøre gjennom natten via /goal i 2026: 14-timers autonom modus

Hva er et nyttig fullføringskriterium for /goal?

Bruk et kontrollerbart resultat: Navngi testen, typekontrollen, bygget eller benchmarken og nødvendig utfall. Kombiner nødvendige kontroller uttrykkelig og ta med tillatt filomfang. «Gjør det bedre» gir ingen målbar stoppbetingelse.

Hva gjør jeg når agenten gjentar samme mislykkede redigeringer?

Avbryt kjøringen og undersøk loggen. Hvis den stadig endrer og tilbakestiller de samme filene, avgrenser du oppgaven eller presiserer kriteriet. Verifiser at nødvendige kontroller faktisk kan bestå før du fortsetter.

Alle artikler