Geodi, GEODE's officielle pixelfigur
Tilbage til salen

GEODE

Autonomous Agent Harness

Fra observation til næste handling.

En lokal harness til autonome agenter, som research, filarbejde og planlagte opgaver kan overdrages til.

2026.02.21 — present

Design, vurdering, verifikation: Author · implementering: Claude · gennemgang: Codex

  • CLIUdgivet · PyPI
  • MCP-serverImplementeret

Modellens forslag om at stoppe bliver kun til fuldførelse gennem verifikation.

Ved et leverbart stop gennemgår en model, der beder om at stoppe, stadig fuldførelsesverifikation. Udfaldet er færdig, fortsæt inden for budget eller afventer gennemgang; udførelsesgrænser, annullering og fejl ender i en særskilt stoppet tilstand.

Fuldførelseskort · tegnet ud fra kodestierne ved fastlåst commit 9e2c041
GEODE's fuldførelseskortHvordan en models forslag om at stoppe bliver til en fuldførelse. Kun leverbare stop (natural, forced_text, actionable_partial) går gennem PreVerify-hooken, en strukturel kontrol og den valgte bedømmer (som standard LLM judge, Jev når den vælges) samt PostVerify- og Stop-hooks. Et bestået resultat gemmes som completed; en fejl, der kan repareres, fortsætter den samme forespørgsel inden for et standardbudget på to forsøg. En ubrugelig dom, et forsøg på at gøre en fejl til et bestået resultat eller et opbrugt budget tilbageholder kandidaten og sætter sessionen på pause. Stop ved annullering, grænser og infrastruktur samt kørsler i control workflow gemmes uden verifikation.IPC · CLI-kaldersvar · sessionstilstandEkstern reviewerpending · ikke kontaktetBedømmermodelLLM judge · Jev Choiceipc_server/poller.pycontrol workflow · spring offentlig verifikation overloop/agent_loop.pyarun · modeltur_arun_once · fortsat reparationloop/_guards.py · models.pyleverbart stop · natural osv.stop ved fejl · grænse · annulleringloop/_lifecycle.pyfinalize_and_return_asyncpolicy_action · tolkning af dommenfortsættelsesbudget · standard 2core/hooks/public.pyPreVerify · STRENGTHENPostVerify · ACCEPT · REVISE · ESCALATEStop · CONTINUEmemory · observabilitycheckpoint · sessionstilstandtimeline · beslutningsrækker i ledgercore/agent/verify.pystrukturel kontrol · empty_turnsemantisk vurdering · LLM eller Jevverification_error · lukker ved fejlGEODE's runtime-processlutningen af én AgenticLoop-turløkke · stopkandidaterfinalisering · dom1 stopforslag · arun · modeltur → leverbart stop · natural osv.12fuldførelseskandidat3 PreVerify · finalize_and_return_async → PreVerify · STRENGTHEN34verify_turn_async5vurderingsanmodning6passed · rubric_misses7 PostVerify-beslutning · policy_action · tolkning af dommen → PostVerify · ACCEPT · REVISE · ESCALATE78Stop · CONTINUE9completed · gemt10svar1passed · rubric_misses2 PostVerify-beslutning · policy_action · tolkning af dommen → PostVerify · ACCEPT · REVISE · ESCALATE23Stop · CONTINUE4reparation · forsøg +11verification_error2 PostVerify-beslutning · policy_action · tolkning af dommen → PostVerify · ACCEPT · REVISE · ESCALATE23ESCALATE · pending4dom · belægsrækker1 guards · grænser · arun · modeltur → stop ved fejl · grænse · annullering12stop ved fejl · annullering3spring offentlig verifikation over4kun gem · ingen verifikation5svar

Verificér → fuldfør

Kun et leverbart stop går gennem PreVerify → vurdering → PostVerify → Stop. Hverken modellens stopforslag eller en hook-instruks er i sig selv en fuldførelse.

  1. arun · modelturloop/agent_loop.pydata: stopforslagleverbart stop · natural osv.loop/_guards.py · models.py

    Når modellen svarer med tekst uden et værktøjskald, bliver turen en natural-stopkandidat (forced_text i den sidste tilladte runde). En models stopforslag er endnu ikke en fuldførelse.

  2. leverbart stop · natural osv.loop/_guards.py · models.pydata: fuldførelseskandidatfinalize_and_return_asyncloop/_lifecycle.py

    Kun natural, forced_text og actionable_partial er leverbare stop, og kun de går videre til offentlig verifikation.

  3. finalize_and_return_asyncloop/_lifecycle.pykøre · afgøre: PreVerifyPreVerify · STRENGTHENcore/hooks/public.py

    Med STRENGTHEN kan PreVerify-hooken kun tilføje krav og mangelkoder. Den kan gøre dommen strengere, aldrig give bestået.

  4. finalize_and_return_asyncloop/_lifecycle.pykøre · afgøre: verify_turn_asyncstrukturel kontrol · empty_turncore/agent/verify.py

    En strukturel kontrol kommer først (tom tur, model_action_required); en strukturel fejl, der ikke kan repareres, springer den semantiske vurdering over. Gamle indstillinger som off eller rule_based tolkes som llm_judge og kan ikke slå dommen fra.

  5. semantisk vurdering · LLM eller Jevcore/agent/verify.pydata: vurderingsanmodningBedømmermodel

    Den valgte bedømmer (som standard LLM judge, Jev Choice når den vælges) kaldes én gang, uden værktøjer, i højst 120 sekunder og aldrig ud over det resterende tidsbudget. En kandidat, der kan indeholde personlige observationer, sendes ikke til en hjælpebedømmer.

  6. semantisk vurdering · LLM eller Jevcore/agent/verify.pydata: passed · rubric_missespolicy_action · tolkning af dommenloop/_lifecycle.py

    Dommen indeholder bestået eller ikke bestået, mangelkoder, en refleksion til næste forsøg, og om et nyt forsøg er nyttigt. Et semantisk bestået dækker aldrig over en mislykket strukturel kontrol.

  7. policy_action · tolkning af dommenloop/_lifecycle.pykøre · afgøre: PostVerify-beslutningPostVerify · ACCEPT · REVISE · ESCALATEcore/hooks/public.py

    PostVerify-hooken afgør ACCEPT, REVISE eller ESCALATE. En ACCEPT af en kandidat, der ikke bestod verifikationen, bliver til escalate. Uden beslutning gælder runtimens standard (bestået → accept, kan prøves igen → revise, ellers escalate).

  8. policy_action · tolkning af dommenloop/_lifecycle.pykøre · afgøre: Stop · CONTINUEStop · CONTINUEcore/hooks/public.py

    Kun når der ikke eskaleres, kan Stop-hookens CONTINUE-instruks anmode om fortsat reparation. En hook-instruks er input til næste forsøg, ikke en autoritet.

  9. policy_action · tolkning af dommenloop/_lifecycle.pydata: completed · gemtcheckpoint · sessionstilstandmemory · observability

    Ved bestået og accept flettes de fortsatte forsøg sammen, resultatet gemmes, og sessionen registreres som completed.

  10. finalize_and_return_asyncloop/_lifecycle.pydata: svarIPC · CLI-kalder

    Returnerer det endelige svar ved completed; et tomt svar med EXTERNAL_VERIFICATION_REQUIRED, når der afventes gennemgang; stopårsagen ved et stop uden verifikation.

Reparation inden for budget

En fejl, der kan repareres, fortsætter den samme forespørgsel. Standardbudgettet er to forsøg; når det er opbrugt, afventer kandidaten gennemgang.

  1. semantisk vurdering · LLM eller Jevcore/agent/verify.pydata: passed · rubric_missespolicy_action · tolkning af dommenloop/_lifecycle.py

    Dommen indeholder bestået eller ikke bestået, mangelkoder, en refleksion til næste forsøg, og om et nyt forsøg er nyttigt. Et semantisk bestået dækker aldrig over en mislykket strukturel kontrol.

  2. policy_action · tolkning af dommenloop/_lifecycle.pykøre · afgøre: PostVerify-beslutningPostVerify · ACCEPT · REVISE · ESCALATEcore/hooks/public.py

    PostVerify-hooken afgør ACCEPT, REVISE eller ESCALATE. En ACCEPT af en kandidat, der ikke bestod verifikationen, bliver til escalate. Uden beslutning gælder runtimens standard (bestået → accept, kan prøves igen → revise, ellers escalate).

  3. policy_action · tolkning af dommenloop/_lifecycle.pykøre · afgøre: Stop · CONTINUEStop · CONTINUEcore/hooks/public.py

    Kun når der ikke eskaleres, kan Stop-hookens CONTINUE-instruks anmode om fortsat reparation. En hook-instruks er input til næste forsøg, ikke en autoritet.

  4. fortsættelsesbudget · standard 2loop/_lifecycle.pykøre · afgøre: reparation · forsøg +1_arun_once · fortsat reparationloop/agent_loop.py

    Med en reparationsinstruks, og kun mens forsøgsnummeret er under budgettet (som standard to), fortsætter den samme forespørgsel. Ved budgettet bliver det til escalate_budget_exhausted og afventer gennemgang.

Afventer gennemgang

En ubrugelig dom, et forsøg på at gøre en fejl til et bestået resultat eller et opbrugt budget tilbageholder kandidaten og sætter sessionen på pause.

  1. verification_error · lukker ved fejlcore/agent/verify.pyfejl · ingen dom: verification_errorpolicy_action · tolkning af dommenloop/_lifecycle.py

    En manglende bedømmer, en timeout eller et ugyldigt svar bliver til verification_error: hverken bestået eller et reparationssignal. En ubrugelig dom træder aldrig i stedet for succes.

  2. policy_action · tolkning af dommenloop/_lifecycle.pykøre · afgøre: PostVerify-beslutningPostVerify · ACCEPT · REVISE · ESCALATEcore/hooks/public.py

    PostVerify-hooken afgør ACCEPT, REVISE eller ESCALATE. En ACCEPT af en kandidat, der ikke bestod verifikationen, bliver til escalate. Uden beslutning gælder runtimens standard (bestået → accept, kan prøves igen → revise, ellers escalate).

  3. policy_action · tolkning af dommenloop/_lifecycle.pykøre · afgøre: ESCALATE · pendingEkstern reviewer

    Kandidaten bevares som pending_text og tilbageholdes fra almindelige svar, checkpointet gemmes, og sessionen sættes på pause. Ingen ekstern reviewer kontaktes automatisk.

  4. policy_action · tolkning af dommenloop/_lifecycle.pylogge · observere: dom · belægsrækkertimeline · beslutningsrækker i ledgermemory · observability

    Tidslinjen får beslutnings-, belægs- og pending-rækker, og evidence ledger en verification_policy-række. Det er best-effort-logs, ikke bevis for en ekstern effekt.

Stop uden verifikation

Stop ved annullering, grænser og infrastruktur samt kørsler i control workflow gemmes uden offentlig verifikation.

  1. arun · modelturloop/agent_loop.pykøre · afgøre: guards · grænserstop ved fejl · grænse · annulleringloop/_guards.py · models.py

    Guards som grænser for runder, tid, omkostninger og kontekst, annullering og registrering af gentagne fejl afslutter turen med ét medlem af den lukkede TerminationReason-mængde. En grænse, der er slået fra i konfigurationen, håndhæves ikke altid.

  2. stop ved fejl · grænse · annulleringloop/_guards.py · models.pyfejl · ingen dom: stop ved fejl · annulleringfinalize_and_return_asyncloop/_lifecycle.py

    Stop ved annullering, infrastruktur og grænser har ingen kandidat at verificere og gemmes derfor uden offentlig verifikation.

  3. control workflow · spring offentlig verifikation overipc_server/poller.pykøre · afgøre: spring offentlig verifikation overfinalize_and_return_asyncloop/_lifecycle.py

    Når et IPC-kald beder om at springe offentlig verifikation over, eller et control workflow er aktivt, er offentlig verifikation slået fra for netop den kørsel, og den tidligere værdi gendannes bagefter.

  4. finalize_and_return_asyncloop/_lifecycle.pydata: kun gem · ingen verifikationcheckpoint · sessionstilstandmemory · observability

    Et stop uden verifikation gemmer stadig sit resultat og checkpoint og udsender hændelserne for sessionsafslutning.

  5. finalize_and_return_asyncloop/_lifecycle.pydata: svarIPC · CLI-kalder

    Returnerer det endelige svar ved completed; et tomt svar med EXTERNAL_VERIFICATION_REQUIRED, når der afventes gennemgang; stopårsagen ved et stop uden verifikation.

Alle forbindelser med samme tykkelse. Vælg et flow for kun at fremhæve dets vej med nummererede trin.

  • Fuldt optrukket · den retning, forespørgsler, kandidater og resultater flyder
  • Stiplet · køre, afgøre, autorisere, konfigurere
  • Lang streg-prik · logs og observation, adskilt fra dommen
  • Kort streg · en fejl eller en ubrugelig dom
  • Kraftig sort linje · det valgte flow; tal angiver rækkefølgen
  • Boks · en kode- eller loggrænse med stien i overskriften
  • Indre chip · en komponent inden for grænsen
  • Stiplet boks · uden for grænsen
  • løkke · finalisering
  • stop · hooks · dom
  • lagring · logs
  • IPC-indgang

Kun kaldstier i fastlåst commit 9e2c041 er tegnet. En bedømmers bestået er adskilt fra en ekstern benchmark-verifikators succes; fuldførelse er her en beslutning inde i runtimen.

Vurderingsmotor
Standarden er LLM judge; Jev Choice bedømmer kun, når judgment_engine er sat til jev. Under alle omstændigheder giver en ubrugelig bedømmer verification_error, aldrig succes.
Hvad hooks må
PreVerify kan kun gøre dommen strengere, PostVerify kan ikke lade en mislykket kandidat bestå, og Stop kan kun anmode om fortsættelse, når der ikke eskaleres.
Afventer gennemgang
Afventer gennemgang registrerer, at der kræves en ekstern beslutning. Det giver ingen besked til nogen og betyder ikke, at resultatet er godkendt.