Geodi, ο επίσημος χαρακτήρας pixel του GEODE
Επιστροφή στην αίθουσα

GEODE

Autonomous Agent Harness

Από την παρατήρηση στην επόμενη ενέργεια.

Ένα τοπικό πλαίσιο αυτόνομου πράκτορα στο οποίο ανατίθενται έρευνα, εργασίες με αρχεία και προγραμματισμένες εργασίες.

2026.02.21 — present

Σχεδιασμός, κρίση, επαλήθευση: Author · υλοποίηση: Claude · αναθεώρηση: Codex

  • CLIΔημοσιευμένο · PyPI
  • Διακομιστής MCPΥλοποιημένο

Η πρόταση διακοπής του μοντέλου γίνεται ολοκλήρωση μόνο μέσω επαλήθευσης.

Σε μια παραδοτέα διακοπή, το μοντέλο που ζητά να σταματήσει περνά παρ' όλα αυτά από επαλήθευση ολοκλήρωσης. Το αποτέλεσμα είναι ολοκλήρωση, συνέχιση εντός προϋπολογισμού ή αναμονή αναθεώρησης. Τα όρια εκτέλεσης, οι ακυρώσεις και τα σφάλματα καταλήγουν σε χωριστή κατάσταση διακοπής.

Χάρτης ολοκλήρωσης · σχεδιασμένος από τις διαδρομές κώδικα στο σταθερό commit 9e2c041
Χάρτης ολοκλήρωσης του GEODEΠώς η πρόταση διακοπής ενός μοντέλου γίνεται ολοκλήρωση. Μόνο οι παραδοτέες διακοπές (natural, forced_text, actionable_partial) περνούν από το PreVerify hook, έναν δομικό έλεγχο και τον επιλεγμένο κριτή (LLM judge από προεπιλογή, Jev όταν επιλεγεί), καθώς και από τα PostVerify και Stop hooks. Μια επιτυχία αποθηκεύεται ως completed. Μια επιδιορθώσιμη αποτυχία συνεχίζει το ίδιο αίτημα μέσα σε προεπιλεγμένο προϋπολογισμό δύο προσπαθειών. Μια μη αξιοποιήσιμη ετυμηγορία, μια απόπειρα να μετατραπεί αποτυχία σε επιτυχία ή ένας εξαντλημένος προϋπολογισμός αποκρύπτει τον υποψήφιο και θέτει τη συνεδρία σε παύση. Οι διακοπές λόγω ακύρωσης, ορίου και υποδομής και οι εκτελέσεις control workflow αποθηκεύονται χωρίς επαλήθευση.IPC · καλών μέσω CLIαπάντηση · κατάσταση συνεδρίαςΕξωτερικός αναθεωρητήςpending · χωρίς επικοινωνίαΜοντέλο-κριτήςLLM judge · Jev Choiceipc_server/poller.pycontrol workflow · παράλειψη δημόσιας επαλήθευσηςloop/agent_loop.pyarun · γύρος μοντέλου_arun_once · συνέχιση επιδιόρθωσηςloop/_guards.py · models.pyπαραδοτέα διακοπή · natural κ.λπ.διακοπή λόγω αποτυχίας · ορίου · ακύρωσηςloop/_lifecycle.pyfinalize_and_return_asyncpolicy_action · ανάγνωση της ετυμηγορίαςπροϋπολογισμός continuation · προεπιλογή 2core/hooks/public.pyPreVerify · STRENGTHENPostVerify · ACCEPT · REVISE · ESCALATEStop · CONTINUEmemory · observabilitycheckpoint · κατάσταση συνεδρίαςtimeline · γραμμές αποφάσεων ledgercore/agent/verify.pyδομικός έλεγχος · empty_turnσημασιολογική κρίση · LLM ή Jevverification_error · κλειστή αποτυχίαΔιεργασία περιβάλλοντος εκτέλεσης GEODEτέλος ενός γύρου του AgenticLoopβρόχος · υποψήφιες διακοπέςfinalization · ετυμηγορία1 πρόταση διακοπής · arun · γύρος μοντέλου → παραδοτέα διακοπή · natural κ.λπ.12υποψήφια ολοκλήρωση3 PreVerify · finalize_and_return_async → PreVerify · STRENGTHEN34verify_turn_async5αίτημα κρίσης6passed · rubric_misses7 Απόφαση PostVerify · policy_action · ανάγνωση της ετυμηγορίας → PostVerify · ACCEPT · REVISE · ESCALATE78Stop · CONTINUE9completed · αποθηκεύτηκε10απάντηση1passed · rubric_misses2 Απόφαση PostVerify · policy_action · ανάγνωση της ετυμηγορίας → PostVerify · ACCEPT · REVISE · ESCALATE23Stop · CONTINUE4επιδιόρθωση · προσπάθεια +11verification_error2 Απόφαση PostVerify · policy_action · ανάγνωση της ετυμηγορίας → PostVerify · ACCEPT · REVISE · ESCALATE23ESCALATE · pending4ετυμηγορία · γραμμές τεκμηρίων1 φρουροί · όρια · arun · γύρος μοντέλου → διακοπή λόγω αποτυχίας · ορίου · ακύρωσης12διακοπή λόγω αποτυχίας · ακύρωσης3παράλειψη δημόσιας επαλήθευσης4μόνο αποθήκευση · χωρίς επαλήθευση5απάντηση

Επαλήθευση → ολοκλήρωση

Μόνο μια παραδοτέα διακοπή περνά από PreVerify → κρίση → PostVerify → Stop. Ούτε η πρόταση διακοπής του μοντέλου ούτε μια οδηγία hook αποτελεί από μόνη της ολοκλήρωση.

  1. arun · γύρος μοντέλουloop/agent_loop.pyδεδομένα: πρόταση διακοπήςπαραδοτέα διακοπή · natural κ.λπ.loop/_guards.py · models.py

    Όταν το μοντέλο απαντά με κείμενο χωρίς κλήση εργαλείου, ο γύρος γίνεται υποψήφια διακοπή natural (forced_text στον τελευταίο επιτρεπόμενο κύκλο). Η πρόταση διακοπής του μοντέλου δεν είναι ακόμη ολοκλήρωση.

  2. παραδοτέα διακοπή · natural κ.λπ.loop/_guards.py · models.pyδεδομένα: υποψήφια ολοκλήρωσηfinalize_and_return_asyncloop/_lifecycle.py

    Μόνο οι natural, forced_text και actionable_partial είναι παραδοτέες διακοπές, και μόνο αυτές προχωρούν σε δημόσια επαλήθευση.

  3. finalize_and_return_asyncloop/_lifecycle.pyεκτέλεση · κρίση: PreVerifyPreVerify · STRENGTHENcore/hooks/public.py

    Με το STRENGTHEN, το PreVerify hook μπορεί μόνο να προσθέσει απαιτήσεις και κωδικούς ελλείψεων. Μπορεί να κάνει την ετυμηγορία αυστηρότερη, ποτέ να την περάσει.

  4. finalize_and_return_asyncloop/_lifecycle.pyεκτέλεση · κρίση: verify_turn_asyncδομικός έλεγχος · empty_turncore/agent/verify.py

    Πρώτα έρχεται ένας δομικός έλεγχος (κενός γύρος, model_action_required). Μια μη επιδιορθώσιμη δομική αποτυχία παρακάμπτει τη σημασιολογική κρίση. Παλιές ρυθμίσεις όπως off ή rule_based ερμηνεύονται ως llm_judge και δεν μπορούν να απενεργοποιήσουν την ετυμηγορία.

  5. σημασιολογική κρίση · LLM ή Jevcore/agent/verify.pyδεδομένα: αίτημα κρίσηςΜοντέλο-κριτής

    Ο επιλεγμένος κριτής (LLM judge από προεπιλογή, Jev Choice όταν επιλεγεί) καλείται μία φορά, χωρίς εργαλεία, για το πολύ 120 δευτερόλεπτα και ποτέ πέρα από τον εναπομείναντα χρονικό προϋπολογισμό. Ένας υποψήφιος που ενδέχεται να περιέχει προσωπικές παρατηρήσεις δεν αποστέλλεται σε βοηθητικό κριτή.

  6. σημασιολογική κρίση · LLM ή Jevcore/agent/verify.pyδεδομένα: passed · rubric_missespolicy_action · ανάγνωση της ετυμηγορίαςloop/_lifecycle.py

    Η ετυμηγορία περιέχει επιτυχία ή αποτυχία, κωδικούς ελλείψεων, ένα reflection για την επόμενη προσπάθεια και το αν αξίζει νέα προσπάθεια. Μια σημασιολογική επιτυχία δεν καλύπτει ποτέ έναν αποτυχημένο δομικό έλεγχο.

  7. policy_action · ανάγνωση της ετυμηγορίαςloop/_lifecycle.pyεκτέλεση · κρίση: Απόφαση PostVerifyPostVerify · ACCEPT · REVISE · ESCALATEcore/hooks/public.py

    Το PostVerify hook αποφασίζει ACCEPT, REVISE ή ESCALATE. Ένα ACCEPT για υποψήφιο που απέτυχε στην επαλήθευση γίνεται escalate. Χωρίς απόφαση ισχύει η προεπιλογή του περιβάλλοντος εκτέλεσης (επιτυχία → accept, επαναλήψιμο → revise, αλλιώς escalate).

  8. policy_action · ανάγνωση της ετυμηγορίαςloop/_lifecycle.pyεκτέλεση · κρίση: Stop · CONTINUEStop · CONTINUEcore/hooks/public.py

    Μόνο όταν δεν γίνεται escalate μπορεί η οδηγία CONTINUE του Stop hook να ζητήσει συνέχιση επιδιόρθωσης. Μια οδηγία hook είναι είσοδος για την επόμενη προσπάθεια, όχι εξουσία.

  9. policy_action · ανάγνωση της ετυμηγορίαςloop/_lifecycle.pyδεδομένα: completed · αποθηκεύτηκεcheckpoint · κατάσταση συνεδρίαςmemory · observability

    Σε επιτυχία και accept, οι συνεχιζόμενες προσπάθειες συγχωνεύονται, το αποτέλεσμα αποθηκεύεται και η συνεδρία καταγράφεται ως completed.

  10. finalize_and_return_asyncloop/_lifecycle.pyδεδομένα: απάντησηIPC · καλών μέσω CLI

    Επιστρέφει την τελική απάντηση όταν ολοκληρωθεί, μια κενή απάντηση με EXTERNAL_VERIFICATION_REQUIRED όταν περιμένει αναθεώρηση, και την αιτία διακοπής σε διακοπή χωρίς επαλήθευση.

Επιδιόρθωση εντός προϋπολογισμού

Μια επιδιορθώσιμη αποτυχία συνεχίζει το ίδιο αίτημα. Ο προεπιλεγμένος προϋπολογισμός είναι δύο προσπάθειες. Όταν εξαντληθεί, ο υποψήφιος περιμένει αναθεώρηση.

  1. σημασιολογική κρίση · LLM ή Jevcore/agent/verify.pyδεδομένα: passed · rubric_missespolicy_action · ανάγνωση της ετυμηγορίαςloop/_lifecycle.py

    Η ετυμηγορία περιέχει επιτυχία ή αποτυχία, κωδικούς ελλείψεων, ένα reflection για την επόμενη προσπάθεια και το αν αξίζει νέα προσπάθεια. Μια σημασιολογική επιτυχία δεν καλύπτει ποτέ έναν αποτυχημένο δομικό έλεγχο.

  2. policy_action · ανάγνωση της ετυμηγορίαςloop/_lifecycle.pyεκτέλεση · κρίση: Απόφαση PostVerifyPostVerify · ACCEPT · REVISE · ESCALATEcore/hooks/public.py

    Το PostVerify hook αποφασίζει ACCEPT, REVISE ή ESCALATE. Ένα ACCEPT για υποψήφιο που απέτυχε στην επαλήθευση γίνεται escalate. Χωρίς απόφαση ισχύει η προεπιλογή του περιβάλλοντος εκτέλεσης (επιτυχία → accept, επαναλήψιμο → revise, αλλιώς escalate).

  3. policy_action · ανάγνωση της ετυμηγορίαςloop/_lifecycle.pyεκτέλεση · κρίση: Stop · CONTINUEStop · CONTINUEcore/hooks/public.py

    Μόνο όταν δεν γίνεται escalate μπορεί η οδηγία CONTINUE του Stop hook να ζητήσει συνέχιση επιδιόρθωσης. Μια οδηγία hook είναι είσοδος για την επόμενη προσπάθεια, όχι εξουσία.

  4. προϋπολογισμός continuation · προεπιλογή 2loop/_lifecycle.pyεκτέλεση · κρίση: επιδιόρθωση · προσπάθεια +1_arun_once · συνέχιση επιδιόρθωσηςloop/agent_loop.py

    Με οδηγία επιδιόρθωσης, και μόνο όσο ο αριθμός της προσπάθειας είναι κάτω από τον προϋπολογισμό (δύο από προεπιλογή), το ίδιο αίτημα συνεχίζεται. Στο όριο του προϋπολογισμού γίνεται escalate_budget_exhausted και περιμένει αναθεώρηση.

Αναμονή αναθεώρησης

Μια μη αξιοποιήσιμη ετυμηγορία, μια απόπειρα να μετατραπεί αποτυχία σε επιτυχία ή ένας εξαντλημένος προϋπολογισμός αποκρύπτει τον υποψήφιο και θέτει τη συνεδρία σε παύση.

  1. verification_error · κλειστή αποτυχίαcore/agent/verify.pyαποτυχία · χωρίς ετυμηγορία: verification_errorpolicy_action · ανάγνωση της ετυμηγορίαςloop/_lifecycle.py

    Ένας κριτής που λείπει, μια λήξη χρόνου ή μια άκυρη απάντηση γίνεται verification_error: ούτε επιτυχία ούτε σήμα επιδιόρθωσης. Μια μη αξιοποιήσιμη ετυμηγορία δεν υποκαθιστά ποτέ την επιτυχία.

  2. policy_action · ανάγνωση της ετυμηγορίαςloop/_lifecycle.pyεκτέλεση · κρίση: Απόφαση PostVerifyPostVerify · ACCEPT · REVISE · ESCALATEcore/hooks/public.py

    Το PostVerify hook αποφασίζει ACCEPT, REVISE ή ESCALATE. Ένα ACCEPT για υποψήφιο που απέτυχε στην επαλήθευση γίνεται escalate. Χωρίς απόφαση ισχύει η προεπιλογή του περιβάλλοντος εκτέλεσης (επιτυχία → accept, επαναλήψιμο → revise, αλλιώς escalate).

  3. policy_action · ανάγνωση της ετυμηγορίαςloop/_lifecycle.pyεκτέλεση · κρίση: ESCALATE · pendingΕξωτερικός αναθεωρητής

    Ο υποψήφιος κρατιέται ως pending_text και αποκρύπτεται από τις κανονικές απαντήσεις, το checkpoint αποθηκεύεται και η συνεδρία τίθεται σε παύση. Κανένας εξωτερικός αναθεωρητής δεν ειδοποιείται αυτόματα.

  4. policy_action · ανάγνωση της ετυμηγορίαςloop/_lifecycle.pyκαταγραφή · παρατήρηση: ετυμηγορία · γραμμές τεκμηρίωνtimeline · γραμμές αποφάσεων ledgermemory · observability

    Το timeline δέχεται γραμμές απόφασης, τεκμηρίων και pending, και το evidence ledger μια γραμμή verification_policy. Είναι καταγραφές best-effort, όχι απόδειξη εξωτερικής επίδρασης.

Διακοπές χωρίς επαλήθευση

Οι διακοπές λόγω ακύρωσης, ορίου και υποδομής και οι εκτελέσεις control workflow αποθηκεύονται χωρίς δημόσια επαλήθευση.

  1. arun · γύρος μοντέλουloop/agent_loop.pyεκτέλεση · κρίση: φρουροί · όριαδιακοπή λόγω αποτυχίας · ορίου · ακύρωσηςloop/_guards.py · models.py

    Φρουροί όπως τα όρια κύκλων, χρόνου, κόστους και συμφραζομένων, η ακύρωση και η ανίχνευση επαναλαμβανόμενων αποτυχιών τερματίζουν τον γύρο με ένα μέλος του κλειστού συνόλου TerminationReason. Ένα όριο απενεργοποιημένο στις ρυθμίσεις δεν επιβάλλεται πάντα.

  2. διακοπή λόγω αποτυχίας · ορίου · ακύρωσηςloop/_guards.py · models.pyαποτυχία · χωρίς ετυμηγορία: διακοπή λόγω αποτυχίας · ακύρωσηςfinalize_and_return_asyncloop/_lifecycle.py

    Οι διακοπές λόγω ακύρωσης, υποδομής και ορίου δεν έχουν υποψήφιο προς επαλήθευση, γι' αυτό αποθηκεύονται χωρίς δημόσια επαλήθευση.

  3. control workflow · παράλειψη δημόσιας επαλήθευσηςipc_server/poller.pyεκτέλεση · κρίση: παράλειψη δημόσιας επαλήθευσηςfinalize_and_return_asyncloop/_lifecycle.py

    Όταν μια κλήση IPC ζητά παράλειψη της δημόσιας επαλήθευσης ή όταν είναι ενεργό ένα control workflow, η δημόσια επαλήθευση απενεργοποιείται μόνο για εκείνη την εκτέλεση και η προηγούμενη τιμή επανέρχεται έπειτα.

  4. finalize_and_return_asyncloop/_lifecycle.pyδεδομένα: μόνο αποθήκευση · χωρίς επαλήθευσηcheckpoint · κατάσταση συνεδρίαςmemory · observability

    Μια διακοπή χωρίς επαλήθευση αποθηκεύει παρ' όλα αυτά το αποτέλεσμα και το checkpoint της και εκπέμπει τα συμβάντα τέλους συνεδρίας.

  5. finalize_and_return_asyncloop/_lifecycle.pyδεδομένα: απάντησηIPC · καλών μέσω CLI

    Επιστρέφει την τελική απάντηση όταν ολοκληρωθεί, μια κενή απάντηση με EXTERNAL_VERIFICATION_REQUIRED όταν περιμένει αναθεώρηση, και την αιτία διακοπής σε διακοπή χωρίς επαλήθευση.

Κάθε σύνδεση με το ίδιο πάχος. Επιλέξτε μια ροή για να επισημανθεί μόνο η διαδρομή της, με αριθμημένα βήματα.

  • Συνεχής · η κατεύθυνση ροής αιτημάτων, υποψηφίων και αποτελεσμάτων
  • Διακεκομμένη · εκτέλεση, κρίση, εξουσιοδότηση, ρύθμιση
  • Μακριά παύλα-τελεία · καταγραφές και παρατήρηση, χωριστά από την ετυμηγορία
  • Κοντή παύλα · αποτυχία ή μη αξιοποιήσιμη ετυμηγορία
  • Παχιά μαύρη γραμμή · η επιλεγμένη ροή, οι αριθμοί δίνουν τη σειρά
  • Κουτί · όριο κώδικα ή καταγραφής, με τη διαδρομή του στην κεφαλίδα
  • Εσωτερικό τσιπ · στοιχείο σε αυτό το όριο
  • Διακεκομμένο κουτί · εκτός αυτού του ορίου
  • βρόχος · finalization
  • διακοπές · hooks · ετυμηγορία
  • αποθήκευση · καταγραφές
  • Είσοδος IPC

Σχεδιάζονται μόνο διαδρομές κλήσεων στο σταθερό commit 9e2c041. Η επιτυχία ενός κριτή είναι ξεχωριστή από την επιτυχία ενός εξωτερικού επαληθευτή benchmark. Η ολοκλήρωση εδώ είναι απόφαση μέσα στο περιβάλλον εκτέλεσης.

Μηχανή κρίσης
Η προεπιλογή είναι το LLM judge. Το Jev Choice κρίνει μόνο όταν το judgment_engine οριστεί σε jev. Σε κάθε περίπτωση, ένας μη αξιοποιήσιμος κριτής δίνει verification_error, ποτέ επιτυχία.
Τι επιτρέπεται στα hooks
Το PreVerify μπορεί μόνο να κάνει την ετυμηγορία αυστηρότερη, το PostVerify δεν μπορεί να περάσει έναν αποτυχημένο υποψήφιο, και το Stop μπορεί να ζητήσει συνέχιση μόνο όταν δεν γίνεται escalate.
Αναμονή αναθεώρησης
Η αναμονή αναθεώρησης καταγράφει ότι χρειάζεται εξωτερική απόφαση. Δεν ειδοποιεί κανέναν και δεν σημαίνει ότι το αποτέλεσμα εγκρίθηκε.