Geodi, nhân vật pixel chính thức của GEODE
Trở lại phòng trưng bày

GEODE

Autonomous Agent Harness

Từ quan sát đến hành động tiếp theo.

Một harness tác nhân tự hành chạy cục bộ, có thể nhận việc nghiên cứu, thao tác tệp và tác vụ theo lịch.

2026.02.21 — present

Thiết kế, phán đoán, kiểm chứng: Author · hiện thực: Claude · rà soát: Codex

  • CLIĐã phát hành · PyPI
  • Máy chủ MCPĐã hiện thực

Đề xuất dừng của mô hình chỉ trở thành hoàn tất khi qua kiểm chứng.

Với một điểm dừng có thể bàn giao, việc mô hình xin dừng vẫn phải qua kiểm chứng hoàn tất. Kết quả là xong, tiếp tục trong ngân sách, hoặc chờ rà soát; giới hạn thực thi, hủy và lỗi kết thúc ở một trạng thái dừng riêng.

Bản đồ hoàn tất · vẽ từ các đường đi mã tại commit cố định 9e2c041
Bản đồ hoàn tất của GEODECách một đề xuất dừng của mô hình trở thành hoàn tất. Chỉ những điểm dừng có thể bàn giao (natural, forced_text, actionable_partial) mới đi qua hook PreVerify, một kiểm tra cấu trúc và bộ phán định được chọn (mặc định LLM judge, Jev khi được chọn), cùng các hook PostVerify và Stop. Kết quả đạt được lưu là completed; một lỗi có thể sửa sẽ tiếp tục cùng yêu cầu trong ngân sách mặc định hai lần. Một phán định không dùng được, một nỗ lực biến thất bại thành đạt, hoặc ngân sách đã cạn sẽ giữ lại ứng viên và tạm dừng phiên. Các điểm dừng do hủy, giới hạn và hạ tầng cùng các lượt chạy control workflow được lưu mà không qua kiểm chứng.IPC · bên gọi CLIphản hồi · trạng thái phiênNgười rà soát bên ngoàipending · không liên hệMô hình phán địnhLLM judge · Jev Choiceipc_server/poller.pycontrol workflow · bỏ qua kiểm chứng công khailoop/agent_loop.pyarun · lượt mô hình_arun_once · tiếp tục để sửaloop/_guards.py · models.pyđiểm dừng có thể bàn giao · natural, v.v.lỗi · giới hạn · dừng do hủyloop/_lifecycle.pyfinalize_and_return_asyncpolicy_action · đọc phán địnhngân sách tiếp tục · mặc định 2core/hooks/public.pyPreVerify · STRENGTHENPostVerify · ACCEPT · REVISE · ESCALATEStop · CONTINUEmemory · observabilitycheckpoint · trạng thái phiêntimeline · hàng quyết định trong ledgercore/agent/verify.pykiểm tra cấu trúc · empty_turnphán định ngữ nghĩa · LLM hoặc Jevverification_error · đóng khi lỗiTiến trình runtime GEODEcuối một lượt AgenticLoopvòng lặp · ứng viên dừngfinalization · phán định1 đề xuất dừng · arun · lượt mô hình → điểm dừng có thể bàn giao · natural, v.v.12ứng viên hoàn tất3 PreVerify · finalize_and_return_async → PreVerify · STRENGTHEN34verify_turn_async5yêu cầu phán định6passed · rubric_misses7 Quyết định PostVerify · policy_action · đọc phán định → PostVerify · ACCEPT · REVISE · ESCALATE78Stop · CONTINUE9completed · đã lưu10phản hồi1passed · rubric_misses2 Quyết định PostVerify · policy_action · đọc phán định → PostVerify · ACCEPT · REVISE · ESCALATE23Stop · CONTINUE4sửa · lần thử +11verification_error2 Quyết định PostVerify · policy_action · đọc phán định → PostVerify · ACCEPT · REVISE · ESCALATE23ESCALATE · pending4phán định · hàng bằng chứng1 guard · giới hạn · arun · lượt mô hình → lỗi · giới hạn · dừng do hủy12lỗi · dừng do hủy3bỏ qua kiểm chứng công khai4chỉ lưu · không kiểm chứng5phản hồi

Verify → hoàn tất

Chỉ điểm dừng có thể bàn giao mới đi qua PreVerify → phán định → PostVerify → Stop. Cả đề xuất dừng của mô hình lẫn chỉ thị của hook đều không tự nó là hoàn tất.

  1. arun · lượt mô hìnhloop/agent_loop.pydữ liệu: đề xuất dừngđiểm dừng có thể bàn giao · natural, v.v.loop/_guards.py · models.py

    Khi mô hình trả lời bằng văn bản mà không gọi công cụ, lượt đó trở thành ứng viên dừng natural (forced_text ở vòng cuối được phép). Đề xuất dừng của mô hình chưa phải là hoàn tất.

  2. điểm dừng có thể bàn giao · natural, v.v.loop/_guards.py · models.pydữ liệu: ứng viên hoàn tấtfinalize_and_return_asyncloop/_lifecycle.py

    Chỉ natural, forced_text và actionable_partial là điểm dừng có thể bàn giao, và chỉ những điểm dừng này mới đi tiếp đến kiểm chứng công khai.

  3. finalize_and_return_asyncloop/_lifecycle.pychạy · quyết định: PreVerifyPreVerify · STRENGTHENcore/hooks/public.py

    Với STRENGTHEN, hook PreVerify chỉ có thể thêm yêu cầu và mã thiếu sót. Nó có thể làm phán định nghiêm hơn, nhưng không bao giờ làm cho đạt.

  4. finalize_and_return_asyncloop/_lifecycle.pychạy · quyết định: verify_turn_asynckiểm tra cấu trúc · empty_turncore/agent/verify.py

    Kiểm tra cấu trúc đi trước (lượt rỗng, model_action_required); một lỗi cấu trúc không thể sửa sẽ bỏ qua phán định ngữ nghĩa. Các thiết lập cũ như off hay rule_based được quy về llm_judge và không thể tắt phán định.

  5. phán định ngữ nghĩa · LLM hoặc Jevcore/agent/verify.pydữ liệu: yêu cầu phán địnhMô hình phán định

    Bộ phán định được chọn (mặc định LLM judge, Jev Choice khi được chọn) được gọi một lần, không có công cụ, tối đa 120 giây và không bao giờ vượt ngân sách thời gian còn lại. Ứng viên có thể chứa quan sát cá nhân không được gửi đến bộ phán định phụ trợ.

  6. phán định ngữ nghĩa · LLM hoặc Jevcore/agent/verify.pydữ liệu: passed · rubric_missespolicy_action · đọc phán địnhloop/_lifecycle.py

    Phán định mang kết quả đạt hay không đạt, mã thiếu sót, một reflection cho lần thử tiếp theo, và việc thử lại có ích hay không. Một kết quả đạt về ngữ nghĩa không bao giờ che một kiểm tra cấu trúc thất bại.

  7. policy_action · đọc phán địnhloop/_lifecycle.pychạy · quyết định: Quyết định PostVerifyPostVerify · ACCEPT · REVISE · ESCALATEcore/hooks/public.py

    Hook PostVerify quyết định ACCEPT, REVISE hoặc ESCALATE. Một ACCEPT cho ứng viên không qua kiểm chứng sẽ trở thành escalate. Khi không có quyết định, mặc định của runtime được áp dụng (đạt → accept, có thể thử lại → revise, còn lại → escalate).

  8. policy_action · đọc phán địnhloop/_lifecycle.pychạy · quyết định: Stop · CONTINUEStop · CONTINUEcore/hooks/public.py

    Chỉ khi không escalate thì chỉ thị CONTINUE của hook Stop mới có thể yêu cầu tiếp tục để sửa. Chỉ thị của hook là đầu vào cho lần thử tiếp theo, không phải thẩm quyền.

  9. policy_action · đọc phán địnhloop/_lifecycle.pydữ liệu: completed · đã lưucheckpoint · trạng thái phiênmemory · observability

    Khi đạt và accept, các lần thử tiếp nối được gộp lại, kết quả được lưu và phiên được ghi là completed.

  10. finalize_and_return_asyncloop/_lifecycle.pydữ liệu: phản hồiIPC · bên gọi CLI

    Trả về câu trả lời cuối cùng khi completed; câu trả lời rỗng kèm EXTERNAL_VERIFICATION_REQUIRED khi chờ rà soát; lý do dừng đối với điểm dừng không qua kiểm chứng.

Sửa trong ngân sách

Một lỗi có thể sửa sẽ tiếp tục cùng yêu cầu. Ngân sách mặc định là hai lần thử; khi hết, ứng viên chờ rà soát.

  1. phán định ngữ nghĩa · LLM hoặc Jevcore/agent/verify.pydữ liệu: passed · rubric_missespolicy_action · đọc phán địnhloop/_lifecycle.py

    Phán định mang kết quả đạt hay không đạt, mã thiếu sót, một reflection cho lần thử tiếp theo, và việc thử lại có ích hay không. Một kết quả đạt về ngữ nghĩa không bao giờ che một kiểm tra cấu trúc thất bại.

  2. policy_action · đọc phán địnhloop/_lifecycle.pychạy · quyết định: Quyết định PostVerifyPostVerify · ACCEPT · REVISE · ESCALATEcore/hooks/public.py

    Hook PostVerify quyết định ACCEPT, REVISE hoặc ESCALATE. Một ACCEPT cho ứng viên không qua kiểm chứng sẽ trở thành escalate. Khi không có quyết định, mặc định của runtime được áp dụng (đạt → accept, có thể thử lại → revise, còn lại → escalate).

  3. policy_action · đọc phán địnhloop/_lifecycle.pychạy · quyết định: Stop · CONTINUEStop · CONTINUEcore/hooks/public.py

    Chỉ khi không escalate thì chỉ thị CONTINUE của hook Stop mới có thể yêu cầu tiếp tục để sửa. Chỉ thị của hook là đầu vào cho lần thử tiếp theo, không phải thẩm quyền.

  4. ngân sách tiếp tục · mặc định 2loop/_lifecycle.pychạy · quyết định: sửa · lần thử +1_arun_once · tiếp tục để sửaloop/agent_loop.py

    Khi có chỉ thị sửa, và chỉ khi số thứ tự lần thử còn dưới ngân sách (mặc định hai lần), cùng yêu cầu đó mới tiếp tục. Khi chạm ngân sách, nó trở thành escalate_budget_exhausted và chờ rà soát.

Chờ rà soát

Một phán định không dùng được, một nỗ lực biến thất bại thành đạt, hoặc ngân sách đã cạn sẽ giữ lại ứng viên và tạm dừng phiên.

  1. verification_error · đóng khi lỗicore/agent/verify.pylỗi · không có phán định: verification_errorpolicy_action · đọc phán địnhloop/_lifecycle.py

    Thiếu bộ phán định, hết thời gian chờ hoặc phản hồi không hợp lệ sẽ thành verification_error: không phải đạt, cũng không phải tín hiệu sửa. Một phán định không dùng được không bao giờ thay thế cho thành công.

  2. policy_action · đọc phán địnhloop/_lifecycle.pychạy · quyết định: Quyết định PostVerifyPostVerify · ACCEPT · REVISE · ESCALATEcore/hooks/public.py

    Hook PostVerify quyết định ACCEPT, REVISE hoặc ESCALATE. Một ACCEPT cho ứng viên không qua kiểm chứng sẽ trở thành escalate. Khi không có quyết định, mặc định của runtime được áp dụng (đạt → accept, có thể thử lại → revise, còn lại → escalate).

  3. policy_action · đọc phán địnhloop/_lifecycle.pychạy · quyết định: ESCALATE · pendingNgười rà soát bên ngoài

    Ứng viên được giữ dưới dạng pending_text và không xuất hiện trong phản hồi thông thường, checkpoint được lưu và phiên bị tạm dừng. Không có người rà soát bên ngoài nào được liên hệ tự động.

  4. policy_action · đọc phán địnhloop/_lifecycle.pyghi · quan sát: phán định · hàng bằng chứngtimeline · hàng quyết định trong ledgermemory · observability

    Timeline nhận các hàng quyết định, bằng chứng và pending, còn evidence ledger nhận một hàng verification_policy. Đây là các bản ghi best-effort, không phải bằng chứng về một tác động bên ngoài.

Điểm dừng không kiểm chứng

Các điểm dừng do hủy, giới hạn và hạ tầng cùng các lượt chạy control workflow được lưu mà không qua kiểm chứng công khai.

  1. arun · lượt mô hìnhloop/agent_loop.pychạy · quyết định: guard · giới hạnlỗi · giới hạn · dừng do hủyloop/_guards.py · models.py

    Các guard như giới hạn vòng, thời gian, chi phí và ngữ cảnh, việc hủy và phát hiện lỗi lặp lại kết thúc lượt bằng một phần tử của tập TerminationReason đóng. Một giới hạn bị tắt trong cấu hình không phải lúc nào cũng được thực thi.

  2. lỗi · giới hạn · dừng do hủyloop/_guards.py · models.pylỗi · không có phán định: lỗi · dừng do hủyfinalize_and_return_asyncloop/_lifecycle.py

    Các điểm dừng do hủy, hạ tầng và giới hạn không có ứng viên để kiểm chứng, nên được lưu mà không qua kiểm chứng công khai.

  3. control workflow · bỏ qua kiểm chứng công khaiipc_server/poller.pychạy · quyết định: bỏ qua kiểm chứng công khaifinalize_and_return_asyncloop/_lifecycle.py

    Khi một lệnh gọi IPC yêu cầu bỏ qua kiểm chứng công khai hoặc một control workflow đang hoạt động, kiểm chứng công khai chỉ tắt cho lượt chạy đó và giá trị trước được khôi phục sau đó.

  4. finalize_and_return_asyncloop/_lifecycle.pydữ liệu: chỉ lưu · không kiểm chứngcheckpoint · trạng thái phiênmemory · observability

    Một điểm dừng không qua kiểm chứng vẫn lưu kết quả và checkpoint, và phát các sự kiện kết thúc phiên.

  5. finalize_and_return_asyncloop/_lifecycle.pydữ liệu: phản hồiIPC · bên gọi CLI

    Trả về câu trả lời cuối cùng khi completed; câu trả lời rỗng kèm EXTERNAL_VERIFICATION_REQUIRED khi chờ rà soát; lý do dừng đối với điểm dừng không qua kiểm chứng.

Mọi kết nối có cùng độ đậm. Chọn một luồng để chỉ làm nổi bật đường đi của nó, kèm các bước được đánh số.

  • Nét liền · hướng đi của yêu cầu, ứng viên và kết quả
  • Nét đứt · chạy, quyết định, cấp quyền, cấu hình
  • Nét gạch chấm dài · bản ghi và quan sát, tách khỏi phán định
  • Nét gạch ngắn · lỗi hoặc phán định không dùng được
  • Nét đen đậm · luồng được chọn; số chỉ thứ tự
  • Hộp · một ranh giới mã hoặc bản ghi, đường dẫn ở phần đầu
  • Chip bên trong · một thành phần trong ranh giới đó
  • Hộp nét đứt · bên ngoài ranh giới đó
  • vòng lặp · finalization
  • điểm dừng · hook · phán định
  • lưu · bản ghi
  • đầu vào IPC

Chỉ vẽ các đường gọi trong commit cố định 9e2c041. Kết quả đạt của bộ phán định tách biệt với thành công của verifier trong benchmark bên ngoài; hoàn tất ở đây là một quyết định bên trong runtime.

Engine phán định
Mặc định là LLM judge; Jev Choice chỉ phán định khi judgment_engine được đặt là jev. Dù thế nào, bộ phán định không dùng được sẽ cho verification_error, không bao giờ là thành công.
Hook được làm gì
PreVerify chỉ có thể làm phán định nghiêm hơn, PostVerify không thể cho ứng viên thất bại đạt, và Stop chỉ có thể yêu cầu tiếp tục khi không escalate.
Chờ rà soát
Chờ rà soát ghi nhận rằng cần một quyết định từ bên ngoài. Nó không thông báo cho ai và không có nghĩa kết quả đã được phê duyệt.