Geodi, GEODEs offisielle pikselfigur
Tilbake til salen

GEODE

Autonomous Agent Harness

Fra observasjon til neste handling.

En lokal harness for autonome agenter, som research, filarbeid og planlagte oppgaver kan overlates til.

2026.02.21 — present

Design, vurdering, verifisering: Author · implementering: Claude · gjennomgang: Codex

  • CLIPublisert · PyPI
  • MCP-serverImplementert

Endre én policy om gangen; hold målingen fast.

En separat løkke som kjører utenfor harnessen. Fra baseline bruker den én typet policyendring, og den samme Petri-auditen og porten avgjør mellom KEEP og gjenoppretting.

SIL-kart · tegnet ut fra evolve-stiene ved fastlåst commit 9e2c041 og kjøreloggen fra juni 2026
Kart over GEODEs policysøk (SIL)En policysøkløkke som kjører utenfor runtimen. En godkjent kjørekontrakt låser budsjett, seeds, vurderingsrubrikk og modeller, og mutatoren endrer én policy blant sju tillatte flater. measure.py auditerer GEODE med det samme apparatet via Petri; fitness.py og gate.py avgjør KEEP eller tilbakerulling med regler for kritisk regresjon og forfremmelse; ledger.py skriver baseline- og resultatrader. Kjøringen i juni 2026 skilte auditstøy fra mutasjonseffekt med en never-arm uten endring, en K=5-baseline og gjentatt måling.Operatørgodkjenninglive-kall · budsjettPetri-auditauditor · GEODE target · judgeprogram.mdkjørekontrakt · modeller · budsjettstoppregler · kjøring etter godkjenningtrain.pyløkke med fast budsjett--replicate K · ny målingloop/mutatemutator · én kandidat7 flater · ingen hyperparameterestate/policiesfilbasert policyprepare.pyseed-pool · vurderingsrubrikk fastlåstmeasure.pyaudit-underprosess · fast tidsavbruddOVERRIDE per policy · STRICTfitness.pykritisk regresjon · trekkledger.pybaseline · provenancerader i results · mutationsgate.py_should_promote · KEEP_reject_and_revertcore · policylastereprompt-gren · system_prompt.py6 policylastere · tool, skill…run-2606-broken-tool-usegen-0-baseline · gjennomsnitt av 5 auditernever-arm · kontroll uten endringarmer: random · gatereplicate · mål en enkelt KEEP på nyttevolve/scaffold_searchekstern søkeløkke · utenfor runtimenkandidatendringén per kjøringmåleapparatfast under en sammenligningrun-2606 · 3.–4. juni 2026broken_tool_useGEODE som auditeresbare tillatte policyer endres1 godkjenning · Operatørgodkjenning → kjørekontrakt · modeller · budsjett12 kjørekontrakt · kjørekontrakt · modeller · budsjett → løkke med fast budsjett23 be om én kandidat · løkke med fast budsjett → mutator · én kandidat34policyendring · mutasjons-ID5 seeds · vurderingsrubrikk fastlåst · seed-pool · vurderingsrubrikk fastlåst → audit-underprosess · fast tidsavbrudd56valgt policy7override-stier per policy8audit subprocess9auditdialog1dimensjonsscorer2 baseline · provenance · baseline · provenance → kritisk regresjon · trekk23 fitness · regresjonsårsaker · kritisk regresjon · trekk → _should_promote · KEEP34KEEP · neste baseline5REJECT · gjenopprett tidligere6resultat · domsrad1tre armer2baseline som gjennomsnitt av K=53mål uten endring4--replicate K5ny måling → tilbakerulling

Én endring → audit

Med kjørekontrakten låst endres én tillatt policy, og GEODE auditeres med det samme apparatet. Dette er ikke det kjørende produktet som skriver om seg selv.

  1. Operatørgodkjenningkjøre · avgjøre: godkjenningkjørekontrakt · modeller · budsjettprogram.md

    En kjøring starter først når live-kall og det faste budsjettet er godkjent. Uten godkjenning forberedes bare kontrakten, og den kontrolleres offline.

  2. kjørekontrakt · modeller · budsjettprogram.mdkjøre · avgjøre: kjørekontraktløkke med fast budsjetttrain.py

    Revisjoner av seeds og vurderingsrubrikk, rollemodeller og kilder til påloggingsinformasjon, måleinnstillinger, budsjetter for iterasjoner, tid og kostnad, forfremmelsespolicyen og stoppbetingelsene låses før kjøringen.

  3. løkke med fast budsjetttrain.pykjøre · avgjøre: be om én kandidatmutator · én kandidatloop/mutate

    Én hypotese med belegg endrer én tillatt policyflate.

  4. 7 flater · ingen hyperparametereloop/mutatedata: policyendring · mutasjons-IDfilbasert policystate/policies

    Bare sju flater kan endres: wrapper-prompt, verktøypolicy, råd om oppdeling, refleksjon, metadata i skill-katalogen, agentkontrakt (role, system_prompt, tools) samt verktøybeskrivelser og hint. Endringer av hyperparametere avvises både ved parsing og bruk. Å bruke en policy, måle på nytt og en valgfri commit er separate steg, så en anvendelse er ikke i seg selv en audit.

  5. seed-pool · vurderingsrubrikk fastlåstprepare.pykjøre · avgjøre: seeds · vurderingsrubrikk fastlåstaudit-underprosess · fast tidsavbruddmeasure.py

    prepare.py er den faste referansen for seed-poolen og vurderingsrubrikken; kandidater endrer den ikke. Å endre en målemodul endrer målingen, ikke systemet som testes.

  6. filbasert policystate/policiesdata: valgt policyOVERRIDE per policy · STRICTmeasure.py

    measure.py leser den valgte policyfilen og sender den inn i auditmiljøet.

  7. OVERRIDE per policy · STRICTmeasure.pykjøre · avgjøre: override-stier per policycore · policylastere

    measure.py sender wrapperen og override- og strict-stier per policy til audit-underprosessen, og runtimens tilsvarende policylaster leser hver av dem. Wrapperen (GEODE_WRAPPER_OVERRIDE → system_prompt) er én gren; ekstra miljønøkler utvider ikke de sju endringsbare flatene. En redigert fil alene beviser ikke at kandidaten nådde target; diagnostikken i auditbelegget bekrefter det.

  8. audit-underprosess · fast tidsavbruddmeasure.pykjøre · avgjøre: audit subprocessPetri-audit

    Auditen kjører med fast tidsavbrudd og budsjett, som aldri endres midt i en sammenligning. Manglende output er et hull i diagnostikken, ikke en score på null.

  9. Petri-auditdata: auditdialogcore · policylastere

    Auditor snakker med GEODE gjennom seed-scenariet, og judge scorer transkripsjonen.

Dom → behold · gjenopprett

Sammenlignet med baselinen under samme kontrakt avgjør kritiske regresjoner og forfremmelsesregelen KEEP; en avvist endring gjenopprettes til den registrerte tidligere verdien.

  1. Petri-auditdata: dimensjonsscorerkritisk regresjon · trekkfitness.py

    Scorer leveres med manglende dimensjoner og antall prøver. En dimensjon som ikke er målt, leses ikke som en observasjon.

  2. baseline · provenanceledger.pydata: baseline · provenancekritisk regresjon · trekkfitness.py

    Sammenligningen bruker bare en baseline med samme registrerte kontrakt og epoch. En ny Git-gren isolerer ikke baseline-tilstanden.

  3. kritisk regresjon · trekkfitness.pydata: fitness · regresjonsårsaker_should_promote · KEEPgate.py

    Regresjoner i kritiske dimensjoner og hjelpetrekk kontrolleres først, deretter margin- eller måldimensjonstesten. En positiv skalar alene gir aldri forfremmelse.

  4. _should_promote · KEEPgate.pydata: KEEP · neste baselinebaseline · provenanceledger.py

    En beholdt kandidat blir neste baseline. En kandidat som beholdes lokalt, er ikke en merge i repositoryet eller en release.

  5. _reject_and_revertgate.pykjøre · avgjøre: REJECT · gjenopprett tidligerefilbasert policystate/policies

    For en kandidat laget av runneren gjenopprettes policyavsnittet som er registrert under mutasjons-ID-en, og en mislykket gjenoppretting flagges. Manuelle endringer gjenopprettes ikke automatisk, og en usikker gjenoppretting stopper neste kandidat.

  6. _should_promote · KEEPgate.pylogge · observere: resultat · domsradrader i results · mutationsledger.py

    Måling, dom og opprinnelse skrives én gang som resultatrader; historiske rader skrives aldri om.

Kontroller · gjentatt måling

Kjøringen i juni 2026: en never-arm uten endring og en K=5-baseline målte auditstøy separat, og en KEEP fra én enkelt audit ble kontrollert på nytt med gjentakelser.

  1. run-2606-broken-tool-usekjøre · avgjøre: tre armerløkke med fast budsjetttrain.py

    Kjøringen 3.–4. juni 2026 skilte drift fra mutasjonseffekt med tre armer: never (ingen endring), random (tilfeldig aksept) og gate (akseptert av dommen). Target var GPT-5.5; auditor og judge var Claude Opus 4.8.

  2. gen-0-baseline · gjennomsnitt av 5 auditerrun-2606-broken-tool-usedata: baseline som gjennomsnitt av K=5baseline · provenanceledger.py

    Gen-0-baselinen var gjennomsnittet av fem auditer (Petri broken_tool_use, lavere er bedre, gjennomsnitt 2.667).

  3. never-arm · kontroll uten endringrun-2606-broken-tool-usekjøre · avgjøre: mål uten endringaudit-underprosess · fast tidsavbruddmeasure.py

    Never-armen drev til et gjennomsnitt på 3.38 uten noen policyendring (10 auditer, lavere er bedre): direkte belegg for at auditstøyen oversteg mutasjonseffekten.

  4. --replicate K · ny målingtrain.pykjøre · avgjøre: --replicate Kaudit-underprosess · fast tidsavbruddmeasure.py

    Den samme kandidaten måles K ganger til under samme betingelser for å sile bort en heldig enkeltaudit.

  5. replicate · mål en enkelt KEEP på nyttrun-2606-broken-tool-usekjøre · avgjøre: ny måling → tilbakerulling_reject_and_revertgate.py

    En kandidat som ble beholdt på én enkelt gate-audit (1.6), målte 3.0–3.8 ved gjentakelser, dårligere enn baseline, så championen 2.667 ble gjenopprettet. Kjøringen konkluderte med ingen tydelig forbedring.

Alle forbindelser med samme tykkelse. Velg en flyt for å fremheve bare dens vei, med nummererte steg.

  • Heltrukket · retningen forespørsler, kandidater og resultater flyter
  • Stiplet · kjøre, avgjøre, autorisere, konfigurere
  • Lang strek-prikk · logger og observasjon, atskilt fra dommen
  • Kraftig svart linje · den valgte flyten; tallene angir rekkefølgen
  • Boks · en kode- eller logggrense, stien i overskriften
  • Indre chip · en komponent innenfor grensen
  • Stiplet boks · utenfor grensen
  • løkke · målekjøring
  • kontrakt · dom
  • policy · logger
  • endring · auditert target · kjørelogg

SIL-driveren i GEODE heter autoresearch; prepare/train/program-formen og det faste budsjettet er inspirert av Karpathys autoresearch. Ingen modellvekter endres, og apparat og budsjett forblir faste under en sammenligning.

Hva som kan endres
Sju flater: wrapper-prompt, verktøypolicy, råd om oppdeling, refleksjon, metadata i skill-katalogen, agentkontrakt samt verktøybeskrivelser og hint. Evaluator, budsjett, seeds og vurderingsrubrikk forblir faste under en sammenligning.
Kjøreloggens omfang
Verdiene for run-2606 er gjennomsnittene for Petri broken_tool_use i den kjøringen (lavere er bedre). De er ikke belegg for kumulativ forbedring av SIL eller generalisering.