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

Ændr én policy ad gangen; hold målingen fast.

En separat løkke, der kører uden for harnessen. Fra baseline anvender den én typet policyændring, og samme Petri-audit og gate afgør mellem KEEP og gendannelse.

SIL-kort · tegnet ud fra evolve-stierne ved fastlåst commit 9e2c041 og kørselsloggen fra juni 2026
Kort over GEODE's policysøgning (SIL)En policysøgningsløkke, der kører uden for runtimen. En godkendt kørselskontrakt fastlåser budget, seeds, bedømmelsesskema og modeller, og mutatoren ændrer én policy blandt syv tilladte flader. measure.py auditerer GEODE med samme apparat via Petri; fitness.py og gate.py afgør KEEP eller tilbagerulning med regler for kritisk regression og forfremmelse; ledger.py skriver baseline- og resultatrækker. Kørslen i juni 2026 adskilte auditstøj fra mutationseffekt med en never-arm uden ændring, en K=5-baseline og gentagen måling.Operatørgodkendelselive-kald · budgetPetri-auditauditor · GEODE target · judgeprogram.mdkørselskontrakt · modeller · budgetstopregler · kørsel efter godkendelsetrain.pyløkke med fast budget--replicate K · genmålingloop/mutatemutator · én kandidat7 flader · ingen hyperparametrestate/policiesfilbaseret policyprepare.pyseed-pulje · bedømmelsesskema fastlåstmeasure.pyaudit-underproces · fast timeoutOVERRIDE pr. policy · STRICTfitness.pykritisk regression · fradragledger.pybaseline · provenancerækker i results · mutationsgate.py_should_promote · KEEP_reject_and_revertcore · policy-loadereprompt-gren · system_prompt.py6 policy-loadere · tool, skill…run-2606-broken-tool-usegen-0-baseline · gennemsnit af 5 auditsnever-arm · kontrol uden ændringarme: random · gatereplicate · genmål en enkelt KEEPevolve/scaffold_searchekstern søgeløkke · uden for runtimenkandidatændringén pr. kørselmåleapparatfast under en sammenligningrun-2606 · 3.–4. juni 2026broken_tool_useGEODE, der auditereskun tilladte policyer ændres1 godkendelse · Operatørgodkendelse → kørselskontrakt · modeller · budget12 kørselskontrakt · kørselskontrakt · modeller · budget → løkke med fast budget23 bed om én kandidat · løkke med fast budget → mutator · én kandidat34policyændring · mutations-id5 seeds · bedømmelsesskema fastlåst · seed-pulje · bedømmelsesskema fastlåst → audit-underproces · fast timeout56valgt policy7override-stier pr. policy8audit subprocess9auditdialog1dimensionsscorer2 baseline · provenance · baseline · provenance → kritisk regression · fradrag23 fitness · regressionsårsager · kritisk regression · fradrag → _should_promote · KEEP34KEEP · næste baseline5REJECT · gendan tidligere6resultat · domsrække1tre arme2baseline som gennemsnit af K=53mål uden ændring4--replicate K5genmåling → tilbagerulning

Én ændring → audit

Med kørselskontrakten fastlåst ændres én tilladt policy, og GEODE auditeres med samme apparat. Det er ikke det kørende produkt, der omskriver sig selv.

  1. Operatørgodkendelsekøre · afgøre: godkendelsekørselskontrakt · modeller · budgetprogram.md

    En kørsel starter først, når live-kald og det faste budget er godkendt. Uden godkendelse forberedes kun kontrakten, og den kontrolleres offline.

  2. kørselskontrakt · modeller · budgetprogram.mdkøre · afgøre: kørselskontraktløkke med fast budgettrain.py

    Revisioner af seeds og bedømmelsesskema, rollemodeller og kilder til legitimationsoplysninger, måleindstillinger, budgetter for iterationer, tid og omkostninger, forfremmelsespolicyen og stopbetingelserne fastlåses før kørslen.

  3. løkke med fast budgettrain.pykøre · afgøre: bed om én kandidatmutator · én kandidatloop/mutate

    Én hypotese med belæg ændrer én tilladt policyflade.

  4. 7 flader · ingen hyperparametreloop/mutatedata: policyændring · mutations-idfilbaseret policystate/policies

    Kun syv flader må ændres: wrapper-prompt, værktøjspolicy, råd om opdeling, refleksion, metadata i skill-kataloget, agentkontrakt (role, system_prompt, tools) samt værktøjsbeskrivelser og hints. Ændringer af hyperparametre afvises både ved parsing og anvendelse. Anvendelse af en policy, genmåling og et valgfrit commit er separate trin, så en anvendelse er ikke i sig selv en audit.

  5. seed-pulje · bedømmelsesskema fastlåstprepare.pykøre · afgøre: seeds · bedømmelsesskema fastlåstaudit-underproces · fast timeoutmeasure.py

    prepare.py er den faste reference for seed-puljen og bedømmelsesskemaet; kandidater ændrer den ikke. At ændre et målemodul ændrer målingen, ikke det system, der testes.

  6. filbaseret policystate/policiesdata: valgt policyOVERRIDE pr. policy · STRICTmeasure.py

    measure.py læser den aktuelt valgte policyfil og sender den ind i auditmiljøet.

  7. OVERRIDE pr. policy · STRICTmeasure.pykøre · afgøre: override-stier pr. policycore · policy-loadere

    measure.py sender wrapperen samt override- og strict-stier pr. policy til audit-underprocessen, og runtimens tilsvarende policy-loader læser hver af dem. Wrapperen (GEODE_WRAPPER_OVERRIDE → system_prompt) er én gren; ekstra miljønøgler udvider ikke de syv ændrbare flader. En redigeret fil alene beviser ikke, at kandidaten nåede target; diagnostikken i auditbelægget bekræfter det.

  8. audit-underproces · fast timeoutmeasure.pykøre · afgøre: audit subprocessPetri-audit

    Auditen kører med fast timeout og budget, som aldrig ændres midt i en sammenligning. Manglende output er et hul i diagnostikken, ikke en score på nul.

  9. Petri-auditdata: auditdialogcore · policy-loadere

    Auditor taler med GEODE gennem seed-scenariet, og judge scorer transskriptionen.

Dom → behold · gendan

Sammenlignet med baselinen under samme kontrakt afgør kritiske regressioner og forfremmelsesreglen KEEP; en afvist ændring gendannes til sin registrerede tidligere værdi.

  1. Petri-auditdata: dimensionsscorerkritisk regression · fradragfitness.py

    Scorer leveres med manglende dimensioner og antal prøver. En dimension, der ikke er målt, læses ikke som en observation.

  2. baseline · provenanceledger.pydata: baseline · provenancekritisk regression · fradragfitness.py

    Sammenligning bruger kun en baseline med samme registrerede kontrakt og epoch. En ny Git-gren isolerer ikke baseline-tilstanden.

  3. kritisk regression · fradragfitness.pydata: fitness · regressionsårsager_should_promote · KEEPgate.py

    Regressioner i kritiske dimensioner og hjælpefradrag kontrolleres først, derefter margin- eller måldimensionstesten. En positiv skalar alene giver aldrig forfremmelse.

  4. _should_promote · KEEPgate.pydata: KEEP · næste baselinebaseline · provenanceledger.py

    En beholdt kandidat bliver næste baseline. En kandidat, der beholdes lokalt, er ikke en merge i repositoryet eller en release.

  5. _reject_and_revertgate.pykøre · afgøre: REJECT · gendan tidligerefilbaseret policystate/policies

    For en kandidat lavet af runneren gendannes det policyafsnit, der er registreret under dens mutations-id, og en mislykket gendannelse markeres. Manuelle ændringer gendannes ikke automatisk, og en usikker gendannelse standser den næste kandidat.

  6. _should_promote · KEEPgate.pylogge · observere: resultat · domsrækkerækker i results · mutationsledger.py

    Måling, dom og oprindelse skrives én gang som resultatrækker; historiske rækker omskrives aldrig.

Kontroller · gentagen måling

Kørslen i juni 2026: en never-arm uden ændring og en K=5-baseline målte auditstøj separat, og en KEEP fra en enkelt audit blev efterprøvet med gentagelser.

  1. run-2606-broken-tool-usekøre · afgøre: tre armeløkke med fast budgettrain.py

    Kørslen 3.–4. juni 2026 adskilte drift fra mutationseffekt med tre arme: never (ingen ændring), random (tilfældig accept) og gate (accepteret af dommen). Target var GPT-5.5; auditor og judge var Claude Opus 4.8.

  2. gen-0-baseline · gennemsnit af 5 auditsrun-2606-broken-tool-usedata: baseline som gennemsnit af K=5baseline · provenanceledger.py

    Gen-0-baselinen var gennemsnittet af fem audits (Petri broken_tool_use, lavere er bedre, gennemsnit 2.667).

  3. never-arm · kontrol uden ændringrun-2606-broken-tool-usekøre · afgøre: mål uden ændringaudit-underproces · fast timeoutmeasure.py

    Never-armen drev til et gennemsnit på 3.38 uden nogen policyændring (10 audits, lavere er bedre): direkte belæg for, at auditstøjen oversteg mutationseffekten.

  4. --replicate K · genmålingtrain.pykøre · afgøre: --replicate Kaudit-underproces · fast timeoutmeasure.py

    Den samme kandidat måles K gange mere under samme betingelser for at frasortere en heldig enkelt audit.

  5. replicate · genmål en enkelt KEEPrun-2606-broken-tool-usekøre · afgøre: genmåling → tilbagerulning_reject_and_revertgate.py

    En kandidat, der blev beholdt på én enkelt gate-audit (1.6), målte 3.0–3.8 ved gentagelser, dårligere end baseline, så championen 2.667 blev gendannet. Kørslen konkluderede ingen klar forbedring.

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
  • 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 · målekørsel
  • kontrakt · dom
  • policy · logs
  • ændring · auditeret target · kørselslog

GEODE's SIL-driver hedder autoresearch; dens prepare/train/program-form og faste budget er inspireret af Karpathys autoresearch. Ingen modelvægte ændres, og apparat og budget forbliver faste under en sammenligning.

Hvad der må ændres
Syv flader: wrapper-prompt, værktøjspolicy, råd om opdeling, refleksion, metadata i skill-kataloget, agentkontrakt samt værktøjsbeskrivelser og hints. Evaluator, budget, seeds og bedømmelsesskema forbliver faste under en sammenligning.
Kørselslogens omfang
Værdierne for run-2606 er den kørsels gennemsnit for Petri broken_tool_use (lavere er bedre). De er ikke belæg for kumulativ forbedring af SIL eller generalisering.