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

Auditscenarier fremstilles gennem faser i fast rækkefølge.

Værten ejer faserækkefølgen, og rolleagenter i hver fase deler arbejdet. Den resulterende seed-pulje og det valgte bedømmelsesskema bliver input til Petris adfærdsaudit.

Seed-kort · tegnet ud fra evals-stierne ved fastlåst commit 9e2c041
Generering af auditscenarier i GEODE og Petri-auditHvordan auditscenarier (seeds) skrives og auditeres. Orkestratoren seed_generation ejer faserækkefølgen, mens rolleagenter skriver udkast, gennemgår og forbedrer, og resultatet eksporteres som en survivors-mappe og meta-review-filer. En Petri-audit tager et udvalg af seeds og tildeler tre separate modelroller: auditor spiller seed-scenariet, target er hele GEODE-scaffoldet, og judge scorer transskriptionen efter dimension i en Inspect-log. SIL-målingen læser det resultat, og en fastholdt måling bliver baseline-belæg for næste generering.Auditor-modelspiller seed-scenarietTarget-basismodelmodellen, som GEODE omslutterJudge-modelscorer hele transskriptionenInspect .eval-logarkiv · opsummeringSIL-måling · measure.pylæses af kapitlet Policysøgningbaseline snapshotdimensionsgennemsnit · belæghandoff pointerlatest_pointer.json · priorsseed_generation/orchestrator.pyfaserækkefølge · PipelineStatecheckpoint · resumeagents/ · udkastSupervisor · kørselsstrategiliterature_review · fra som standardGenerator · kandidat-seedsagents/ · gennemgangProximity · deduplikeringCritic · gennemgangPilot · valgfri · ikke i smokeRanker · Eloagents/ · forbedringEvolver · forbedringMeta-reviewer · næste priorsrun_dir/survivors/ · .md-kopier af kandidatersurvivors.json · Elo · pilotmeta_review.json · state.jsonpetri/seedsmedfølgende seeds · *.mdpetri/runner.pygeode audit · /audit · værktøjomkostningsoverslag · dry-run som standardpetri/geode_target.pyGEODE som target · AgenticLooppetri/judge_dimsjudge_dimensions · YAMLtilstandsfiler uden for en kørselevals/seed_generationscenarieskrivningevals/petriauditkørsel1kør faserne i rækkefølge2baseline-belæg3 forrige meta-review · latest_pointer.json · priors → agents/ · udkast34 kandidat-seeds · agents/ · udkast → agents/ · gennemgang45survivors · Elo6 næste iteration · fra Critic · Meta-reviewer · næste priors → Critic · gennemgang67 eksportér survivors · agents/ · forbedring → run_dir/78latest-pointer1--seed-select2medfølgende seeds3 modelroller · tre pladser · geode audit · /audit · værktøj → Auditor-model34seed-scenariets dialog5 modelkald · GEODE som target · AgenticLoop → Target-basismodel56transskription7 judge_dimensions · judge_dimensions · YAML → Judge-model78dimensionsscorer1dimensionsscorer2 måling · Inspect .eval-log → SIL-måling · measure.py23baseline-opdatering4baseline-belæg

Scenarieskrivning

Orkestratoren ejer faserækkefølgen, rolleagenter skriver og filtrerer kandidater, og resultatet eksporteres gennem en filkontrakt.

  1. faserækkefølge · PipelineStateseed_generation/orchestrator.pykøre · afgøre: kør faserne i rækkefølgeagents/ · udkast

    Orkestratoren ejer faserækkefølgen og sammenfletningen af tilstand; hver fases rolleagent udfører arbejdet. Inden for en fase kan arbejdet fordeles via SubAgentManager, og underagenter går ikke rekursivt videre (dybde 1).

  2. dimensionsgennemsnit · belægbaseline snapshotdata: baseline-belægagents/ · udkast

    Generator, Critic og Evolver læser den valgte baselines gennemsnit, standardfejl og belæg pr. dimension. Første generering har ingen baseline og bruger standardprompterne.

  3. latest_pointer.json · priorshandoff pointerdata: forrige meta-reviewagents/ · udkast

    Forrige kørsels meta-review efterlader priors til næste generation og underbelyste dimensioner, som denne generering tager i betragtning.

  4. agents/ · udkastdata: kandidat-seedsagents/ · gennemgang

    Generators kandidater går i rækkefølge gennem Proximity-deduplikering, Critic-gennemgang, Pilot (valgfri; springes over i smoke-kørsler) og Rankers Elo-rangering.

  5. agents/ · gennemgangdata: survivors · Eloagents/ · forbedring

    Evolver forbedrer de højst rangerede kandidater, og Meta-reviewer opsummerer kørslen til priors for næste generation.

  6. Meta-reviewer · næste priorsagents/ · forbedringkøre · afgøre: næste iteration · fra CriticCritic · gennemgangagents/ · gennemgang

    Med max_iterations sat går de forbedrede kandidater efter Meta-reviewer igen gennem Critic → Pilot → Ranker → Evolver → Meta-reviewer. Supervisor, Generator og Proximity køres ikke igen; standarden er nul iterationer.

  7. agents/ · forbedringdata: eksportér survivorsrun_dir/

    De overlevende kandidaters tekst kopieres som filer til survivors/, Elo- og pilot-scorer går til survivors.json, og meta-review og tilstand skrives separat.

  8. meta_review.json · state.jsonrun_dir/data: latest-pointerlatest_pointer.json · priorshandoff pointer

    Én latest_pointer.json registrerer, hvor denne kørsels seed_pool og meta_review ligger. Output pr. kørsel er kanonisk; pointeren er en best-effort-hjælp til næste kørsel, og en mislykket skrivning logges blot. Ikke alle kørsler har begge felter.

Auditkørsel

Auditor spiller seeden (en scenarieinstruks), target er GEODE-scaffoldet, og judge scorer transskriptionen. De tre roller er separate modelpladser.

  1. survivors/ · .md-kopier af kandidaterrun_dir/data: --seed-selectgeode audit · /audit · værktøjpetri/runner.py

    En audit tager et udvalg af seeds (en survivors-mappe, medfølgende seeds, id'er eller tags) og sender det til Inspects opgave inspect_petri/audit. Seed-generering starter ikke selv en audit.

  2. medfølgende seeds · *.mdpetri/seedsdata: medfølgende seedsgeode audit · /audit · værktøjpetri/runner.py

    Repositoryets medfølgende seeds kan vælges, som de er.

  3. geode audit · /audit · værktøjpetri/runner.pykøre · afgøre: modelroller · tre pladserAuditor-model

    Auditor-, target- og judge-modeller angives hver for sig. Standarden er en dry run; reelle kald sker først, når et omkostningsoverslag er bekræftet. Når alle tre roller deler udbyder, tilføjes en markering for bias fra samme udbyder.

  4. Auditor-modeldata: seed-scenariets dialogGEODE som target · AgenticLooppetri/geode_target.py

    En seed er en scenarieinstruks til auditor. Auditor styrer samtalen og kan kun skabe værktøjer og værktøjsresultater, når target_tools er slået til.

  5. GEODE som target · AgenticLooppetri/geode_target.pydata: modelkaldTarget-basismodel

    Hele GEODE's AgenticLoop (værktøjer, hooks, hukommelse) pakkes ind som ét model-API, så det auditerede target er GEODE-scaffoldet, ikke basismodellen alene.

  6. GEODE som target · AgenticLooppetri/geode_target.pydata: transskriptionJudge-model

    Judge læser hver prøves fulde transskription én gang og scorer den efter dimension.

  7. judge_dimensions · YAMLpetri/judge_dimskøre · afgøre: judge_dimensionsJudge-model

    Den valgte YAML med judge-dimensioner fastsætter scoringsdimensionerne. Det er en adfærdsaudit, en anden måling end opgavefuldførelse.

  8. Judge-modeldata: dimensionsscorerInspect .eval-log

    Inspect .eval-loggen og en opsummering arkiveres. En arkiveringsfejl noteres og blokerer ikke auditresultatet.

Måling → næste generering

SIL bruger auditscorer til sin dom, og en fastholdt måling bliver baseline-belæg for næste seed-generering. Det betyder ikke, at forbindelsen kørte automatisk i alle kampagner.

  1. Judge-modeldata: dimensionsscorerInspect .eval-log

    Inspect .eval-loggen og en opsummering arkiveres. En arkiveringsfejl noteres og blokerer ikke auditresultatet.

  2. Inspect .eval-loglogge · observere: målingSIL-måling · measure.py

    SIL's measure.py kører auditens underproces og beregner fitness ud fra resultatet.

  3. SIL-måling · measure.pydata: baseline-opdateringdimensionsgennemsnit · belægbaseline snapshot

    SIL's ledger skriver en fastholdt måling som baseline. Seed-generering læser det belæg, når en baseline vælges (automatisk eller eksplicit).

  4. dimensionsgennemsnit · belægbaseline snapshotdata: baseline-belægagents/ · udkast

    Generator, Critic og Evolver læser den valgte baselines gennemsnit, standardfejl og belæg pr. dimension. Første generering har ingen baseline og bruger standardprompterne.

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
  • orkestrator · auditindgang
  • audit-target · scoringsdimensioner
  • output · tilstandsfiler
  • rolleagenter · medfølgende seeds

Orkestratoren fastlægger rækkefølgen for første gennemløb og for gentagelser. Konfiguration, registrerede roller og genoptagelsespunktet kan springe faser over, og ikke alle kampagner kørte alle faser. Tilstandsfilernes placering afhænger af miljøet, så ingen stier vises.

Tre roller
En seed er en scenarieinstruks, skrevet af en person eller genereret; auditor er modellen, der spiller den, target er det auditerede GEODE-scaffold, og judge er modellen, der scorer transskriptionen. Scorer og logs er judges output.
Hvad der måles
En Petri-audit scorer adfærdsdimensioner. Den er ikke en fuldførelsesrate for opgaver eller en garanti for produktkvalitet.