GEODE runtime vocabulary
- reasoning
- action
- observation
- plan
- memory
- tools
- hook
- reflexion
- rollouts
- data curation
- data governance
- evaluation
- scaffold search
- promotion
Reasoning: SYSTEM PROMPT · CONVERSATION · RUNTIME HINTS · MODEL · ADAPTER CALL · NEXT ACTION · TOOL SCHEMA · TEXT-ONLY TURN · CURRENT STEP · PROJECT MEMORY · RUNTIME RULES · EFFORT · thinking_budget · reasoning_effort · adaptive_thinking · effort_values · default_effort · binds_thinking · none · minimal · low · medium · high · xhigh · max · MODEL ROUTEAction: ACT · TOOL_USE · TOOLCALLPROCESSOR · DISPATCH · RESEARCH · BASH · COMPUTER USE · FILE · GIT · PROCESS · EFFECT RECEIPT · TOOLEXECUTORObservation: NEXT ACTION · RESEARCH · OBSERVE · TOOL_RESULT · RESULT · ERROR · CODE · DOCUMENT · SOURCE · EVIDENCE · EXCERPTPlan: CURRENT STEP · OBJECTIVE · PLANSTEP · EXPECTED OUTCOME · REMAINING STEPS · COMPLETED · ABANDONED · REVISION · UPDATE_PLAN · /PLAN · REPLAN · VERIFY FAILED · LOW CONFIDENCEMemory: SYSTEM PROMPT · CONVERSATION · PROJECT MEMORY · RUNTIME RULES · TOOL_RESULT · CONVERSATIONCONTEXT · MESSAGES · CONTEXT WINDOW · COMPACTION · CHECKPOINT · SESSION · RECOVERY · SQLITE · STATE.JSON · PreCompact · PostCompact · SessionStart · SessionEndTools: TOOL SCHEMA · TOOL_USE · TOOLCALLPROCESSOR · DISPATCH · BASH · COMPUTER USE · EFFECT RECEIPT · TOOL_RESULT · BOUNDTOOLPLAN · GENERATION · HASH · TOOLEXECUTOR · SCOPE · POLICY · HOOK · APPROVAL · HITL · PreToolUse · PostToolUse · MCP CLIENT · PermissionRequestHook: DISPATCH · HOOK · PreToolUse · PostToolUse · UserPromptSubmit · PermissionRequest · PreCompact · PostCompact · SessionStart · SessionEnd · SubagentStart · SubagentStop · PreVerify · tool_request · tool_execution · llm_request · llm_execution · REQUEST TRANSFORM · next_call · WRAPPER · REGISTRY · PostVerify · StopReflexion: NEXT ACTION · EVIDENCE · REPLAN · VERIFY FAILED · LOW CONFIDENCE · HOOK · PreVerify · HYPOTHESES · CONFIDENCE · NEXT_ACTION_HINT · RECORD_REFLECTION · CONTRADICTION · REPAIR · VERIFY · PostVerify · Stop · COMPLETION · CONTINUE · TIME · TOKEN BUDGET · CANCELLATIONRollouts: SESSION · ROLLOUT · EXAMPLE · SEED · REPETITION · ATTEMPT · TRAJECTORY · REWARD · OUTCOME · TRACE · RUN IDData Curation: TASK SYNTHESIS · SEED GENERATION · PROXIMITY · RANKING · META-REVIEW · ELO TOURNAMENT · PILOT · DEDUPLICATION · SURVIVOR SELECTION · FROZEN POOLData Governance: PROVENANCE · LINEAGE · SCHEMA VERSION · SOURCE DIGEST · PRIVACY REVIEW · ALLOWLIST · IMMUTABLE RELEASE · SPLIT ISOLATION · SEALED HOLDOUTEvaluation: TRAJECTORY · OUTCOME · TRACE · EVALUATION HARNESS · TASK · RUBRIC · GRADER · VERIFIER · VALIDITY · FITNESS · REPLICATION · TASK COVERAGEScaffold Search: RECOVERY · FITNESS · CANDIDATE · HYPOTHESIS · MUTATION POLICY · BASELINE · FROZEN EVALUATOR · POLICY INJECTION · SEARCH SPACE · PROMOTION GATEPromotion: SEALED HOLDOUT · PROMOTION GATE · CRUCIBLE · PAIRED TRIALS · BOOTSTRAP BOUND · FROZEN CONTRACT · TASK-PACK HASH · TRAIN · SEALED TEST · SAFETY VETO · KEEP · REJECT · INVALID
Recorded evaluation · MCPMark PostgreSQL · 2026-07-04
動手修改之前,先找到了既有的東西。
任務:為一個由五張資料表組成的社群服務設定列層級安全性。
- 調查讀取了五張資料表、既有的四個輔助函式、五張表全部關閉的 RLS,以及策略、權限與角色。
- 執行一次交易:設定 20 條策略並開啟 RLS,重複使用 3 個既有輔助函式,新增 3 個函式。
- 驗證18 項通過,0 項失敗。9 個回合中的 13 次工具回應全部無錯誤傳回。
驗證器輸出 18 行(原文)
- RLS enabled on users
- RLS enabled on channels
- RLS enabled on channel_moderators
- RLS enabled on posts
- RLS enabled on comments
- Users can update their own profile
- Users blocked from updating other users' profiles
- Channel owners can update their channels
- Non-owners blocked from updating channels
- Post authors can update their posts
- Channel moderators can update posts in their channels
- Unauthorized users blocked from updating posts
- Comment authors can update their comments
- Post authors can moderate comments on their posts
- Channel owners can add moderators
- Non-owners blocked from adding moderators
- Content visibility varies correctly based on user context
- Anonymous users can see 3 public user profiles (correct)
這是在已設定的評測沙箱中的一次過往執行,不是線上資料庫,也不是真實的資安事件。記錄中沒有設定策略之前的列數,因此不予顯示。 公開執行記錄(meta.json,提交 23e3428)
回顧結果並加以修正(受 Reflexion 啟發、在同一任務內的修正)是目前 GEODE 執行環境的功能。本記錄中沒有出現這類修正:所有工具回應都無錯誤傳回。 執行環境文件(hook-system.md)
下一步行動由模型挑選;執行邊界由主機守住。
從請求進入工作階段,經過模型呼叫與對每個提議之工具呼叫的權限檢查,到執行、結果與記錄為止的執行環境。選擇一條流程,即只標示該路徑並附上步驟編號。
下一步行動由模型選擇;執行環境檢查工具權限,並判定工作何時完成。
外部 Scaffold Search / SIL 實驗始於 May 15, 2026
從 PyPI 安裝 geode-agent 套件,或從公開儲存庫安裝,在自己的終端機中執行。也可以作為 MCP 伺服器連接。
請求 → 模型呼叫
終端機請求經 IPC 抵達,組成工作階段,迴圈再以系統提示詞、對話與工具 schema 呼叫模型。
終端機使用者資料流: prompt · cli.sockCLIPoller · IPC 通訊端
core/serverthin CLI 將請求送往 serve 常駐程式的 IPC 通訊端(~/.geode/cli.sock)。REPL 則在行程內執行相同的工作階段組成。
CLIPoller · IPC 通訊端
core/server權限 · 組成: create_session(IPC)SharedServices.create_sessionsupervised/services.py每個連線組成一個工作階段。模式決定 HITL 層級、時間預算與被拒絕的工具,並將 BoundToolPlan 投射到所選的供應商。
CLIPoller · IPC 通訊端
core/server權限 · 組成: 每個請求一條 laneLaneQueue · session · globalsupervised/services.py執行請求前,會同時取得工作階段 lane 與全域 lane,以限制並行執行。
SharedServices.create_session
supervised/services.py權限 · 組成: ToolExecutor · AgenticLoopAgenticLoop · 六個階段core/agent/loop將執行器與迴圈建成一組,共用 hook、MCP、技能與資源鎖定。
LaneQueue · session · global
supervised/services.py資料流: arun(prompt)AgenticLoop · 六個階段core/agent/loop以六個階段執行一個使用者回合:準備輸入、準備呼叫、呼叫供應商、處理工具、觀測與壓縮、終止。
系統提示詞 · 宣告的來源
core/agent/loop資料流: 系統提示詞adapter.acomplete · 錯誤分類core/llm/adapters每個回合依宣告的來源建構,例如選定的 GEODE.md 段落與規則。ContextAssembler 的五層 facade 只在明確呼叫時使用,不是預設迴圈的輸入。
對話訊息 · ConversationContext
core/agent/loop資料流: 對話訊息adapter.acomplete · 錯誤分類core/llm/adapters對話與先前的工具結果,與系統提示詞分開傳送。
BoundToolPlan · 不可變
core/tools/plan.py權限 · 組成: 工具 schemaadapter.acomplete · 錯誤分類core/llm/adapters模型只看得到繫結於此步驟之 BoundToolPlan 的工具。它是帶有世代編號與內容雜湊的不可變快照。
AgenticLoop · 六個階段
core/agent/loop資料流: StepSnapshot · 請求adapter.acomplete · 錯誤分類core/llm/adaptersStepSnapshot 固定此次呼叫的模型、工具與關聯 ID。LLM 中介軟體無法替換已繫結的轉接器。
adapter.acomplete · 錯誤分類
core/llm/adapters資料流: HTTPSLLM 供應商由各供應商的轉接器發出呼叫。失敗會經過分類,只在設定的次數內重試,否則以終止原因結束該回合。
adapter.acomplete · 錯誤分類
core/llm/adapters資料流: 回應 · tool_useAgenticLoop · 六個階段core/agent/loop只有文字時進入終止;有 tool_use 時進入工具處理。
工具權限 → 效果 → 結果
tool_use 提議須通過所有檢查才會執行;拒絕、結果與錯誤都從執行器返回,成為下一次模型輸入。
AgenticLoop · 六個階段
core/agent/loop資料流: 待處理批次 · 輪次儲存SQLite messages · state.jsonmemory/session_checkpoint.py在設定了檢查點的工作階段(具備檢查點與 session id)中,提議的批次會在任何工具執行前先行儲存,無法儲存時該批次不會執行。完成的批次會再儲存一次。未使用檢查點的呼叫端不享有此保證。
AgenticLoop · 六個階段
core/agent/loop資料流: tool_use 區塊ToolCallProcessortool_executor/processor.py模型的提議不等於權限。每次呼叫都會取得一個 ToolContext,帶有迴圈的模型與轉接器身分。
ToolCallProcessor
tool_executor/processor.py資料流: aexecute範圍 · 策略 · schematool_executor/executor.py依序檢查工作階段範圍、請求中介軟體的改寫、策略與 schema。改寫若降低安全等級或個資分類,即予拒絕。
BoundToolPlan · 不可變
core/tools/plan.py權限 · 組成: 允許 · 安全等級範圍 · 策略 · schematool_executor/executor.py可執行的 handler 與安全等級,來自投射到該工作階段的 BoundToolPlan。
PreToolUse · PostToolUse
tool_executor/executor.py權限 · 組成: PreToolUse · PostToolUseHookRegistry · 決策core/hooks公開 hook 決定阻擋、改寫參數或請求權限;改寫之後會再次檢查範圍、策略與 schema。執行之後,hook 可補充上下文或扣留結果。
核准 · HITL
tool_executor/executor.py權限 · 組成: 核准請求終端機使用者在 IPC 工作階段中,核准請求會轉給 thin CLI。無人在場的模式預設套用拒絕策略;唯一例外是 DAEMON 的 computer use,須由維運人員另行啟用(否則封鎖)。
tool_executor/executor.py執行前拒絕: 執行前拒絕ToolCallProcessor
tool_executor/processor.py範圍、策略或 schema 的拒絕、PreToolUse 阻擋或被拒絕的核准,都會在未分派的情況下以錯誤結果返回。此時此呼叫的任何效果都尚未開始。
effect receipt
tool_executor/executor.py資料流: 效果受理 · 確定EffectReceiptStorememory/effect_receipts.py檔案變更、對外訊息或管理操作等效果,會在執行前受理。結果不確定時不會重新執行,而是要求核對。
資源鎖定 · 分派
tool_executor/executor.py資料流: handler 呼叫工具 handler · bash · computercore/tools鎖定資源鍵之後,分派給繫結的 handler。在期限時中止的呼叫,可能仍在外部執行。
資源鎖定 · 分派
tool_executor/executor.py資料流: MCP 呼叫MCPServerManagercore/mcp/manager.py只呼叫已宣告資源策略的 MCP 工具。
MCPServerManager
core/mcp/manager.py資料流: tools/callMCP 伺服器伺服器清單來自全域設定,以及通過信任檢查的專案設定;該檢查只適用於專案項目。MCP 管理器套用其擴充與資源策略。
工具 handler · bash · computer
core/tools資料流: 檔案 · git · 行程變更檔案 · git · 行程已執行的變更會留在外部狀態。檢查點只復原對話,不會撤銷這些變更。
tool_executor/executor.py資料流: 結果 · 分派後錯誤ToolCallProcessor
tool_executor/processor.py分派之後,正常結果與錯誤(包括逾時與結果不確定)經由 PostToolUse 返回。錯誤或逾時並不表示外部工作已停止或已撤銷。
ToolCallProcessor
tool_executor/processor.py資料流: tool_result對話訊息 · ConversationContextcore/agent/loop結果、拒絕與錯誤一律序列化為 tool_result,成為下一次模型輸入中的訊息。
ToolCallProcessor
tool_executor/processor.py記錄 · 觀測: 呼叫 · 結果觀測SessionTimeline · append-onlyobservability/session_timeline.py將呼叫及其結果(正常或錯誤)寫入 timeline,包括執行前被拒絕的呼叫。此記錄是觀測,並不證明外部效果已開始或已成功。
記錄 · 復原 · 完成
檢查點、timeline 與證據列分別寫入。沒有共用的交易,檢查點只復原對話。
AgenticLoop · 六個階段
core/agent/loop資料流: 待處理批次 · 輪次儲存SQLite messages · state.jsonmemory/session_checkpoint.py在設定了檢查點的工作階段(具備檢查點與 session id)中,提議的批次會在任何工具執行前先行儲存,無法儲存時該批次不會執行。完成的批次會再儲存一次。未使用檢查點的呼叫端不享有此保證。
SQLite messages · state.json
memory/session_checkpoint.py資料流: 續行還原AgenticLoop · 六個階段core/agent/loop單一還原路徑可帶回訊息、認知狀態與防護計數器。僅存在於行程內的 TaskGraph 不會復原。
AgenticLoop · 六個階段
core/agent/loop記錄 · 觀測: 回合記錄SessionTimeline · append-onlyobservability/session_timeline.py僅附加的執行歷程,從不作為狀態重播。
AgenticLoop · 六個階段
core/agent/loop權限 · 組成: 完成檢查verify_turn_asynccore/agent/verify.py模型提出的停止,須通過 Verify 才成為完成。
verify_turn_async
core/agent/verify.py權限 · 組成: PostVerify · StopHookRegistry · 決策core/hooks公開 hook 的決策決定是否繼續修復;修復只在設定的預算內進行(預設兩次)。
AgenticLoop · 六個階段
core/agent/loop記錄 · 觀測: 證據列 · 盡力而為EvidenceLedger · JSONLagent/evidence_ledger.py已遮蔽的診斷列。雜湊用於關聯比對;有此列不代表效果已發生,也不與 timeline 或檢查點在同一交易中寫入。
AgenticLoop · 六個階段
core/agent/loop記錄 · 觀測: 認知 · 生命週期事件HookSystem · 觀測core/hooks觀測 hook 接收並記錄事件,不決定執行。
其他進入路徑
通訊軟體以 serve 常駐程式的 DAEMON 工作階段進入;外部 MCP 主機的 run_agent 則進入另行建構的無頭單次迴圈。
通訊軟體頻道資料流: 頻道訊息通訊軟體 poller
core/serverserve 常駐程式的 poller 只處理已繫結頻道的訊息。
通訊軟體 poller
core/server權限 · 組成: create_session(DAEMON)SharedServices.create_sessionsupervised/services.py無人可核准的模式:套用預設拒絕策略與時間預算。只有 computer use 可由維運人員另行啟用;未啟用則維持封鎖。
通訊軟體 poller
core/server資料流: arun(message)AgenticLoop · 六個階段core/agent/loop一個討論串保有一個固定的 session id,並延續同一條檢查點鏈。
外部 MCP 主機資料流: run_agent(prompt)run_agent · 單次執行
core/mcp_server.py外部 MCP 主機將 GEODE 當作工具呼叫。
run_agent · 單次執行
core/mcp_server.py資料流: 無頭單次迴圈AgenticLoop · 六個階段core/agent/loop另行建構、繞過 SharedServices 的無頭執行器與迴圈。預設拒絕清單原樣套用,因此 run_bash、delegate_task 與 computer 等工具會被移除;DAEMON 的 computer use 例外在此不存在。
所有連線以相同粗細顯示。選擇一個流程,即只突顯其路徑,並標出步驟編號。
- 實線 · 請求、訊息與工具結果的流向
- 虛線 · 工作階段組成、權限或判定;非資料路徑
- 長點劃線 · 記錄與觀測;不作為狀態重播
- 短虛線 · 執行前拒絕,無效果
- 粗黑線 · 所選流程;數字表示順序
- 方框 · 擁有程式碼的邊界,標頭為其原始碼路徑
- 內層小框 · 該邊界內的元件
- 虛線框 · 執行環境行程之外
- 橘色外框 · 模型做出判斷之處
- 執行迴圈
- 權限 · 判定
- 記錄儲存區
- 進入 · 連線 · 執行
只繪出經確認有實際呼叫的連線。ContextAssembler 的五層 facade、TaskGraph,以及 Jev、SIL、Crucible 等研究實驗,不在此執行環境路徑上。非同步取消不會停止已開始的同步工作,也不會撤銷已發生的效果。
支援的模型 · 依供應商
這是程式碼的目錄選項與出廠預設值,並非每個模型都通過實際 API 呼叫的清單。設定的備援鏈預設為空,確切的 ID 也不會自動升級為較新版本。
Anthropic
API
- 主要Claude Opus 5.5
claude-opus-5-5預設設定 - 次要Claude Sonnet 5
claude-sonnet-5預設設定 - 低成本Claude Haiku 4.5
claude-haiku-4-5-20251001預設設定
顯示全部 12 個目錄 ID
API
claude-fable-5-1claude-opus-5-5預設claude-opus-5claude-sonnet-5預設claude-haiku-4-5-20251001預設claude-fable-5claude-opus-4-8claude-opus-4-7claude-opus-4-6claude-opus-4-5claude-sonnet-4-6claude-sonnet-4-5-20250929
程式碼拒絕訂閱制 OAuth 路徑。
- 主要Claude Opus 5.5
OpenAI
API · Codex 訂閱
- API 與 Codex 預設GPT-6 Sol
gpt-6-sol預設設定
顯示全部 11 個目錄 ID
API · Codex 訂閱
gpt-6-astragpt-6-sol預設gpt-6-lunagpt-5.6-solgpt-5.6-terragpt-5.6-luna
僅限 API
gpt-5.5gpt-5.3-codexgpt-5.4gpt-5.4-minigpt-5.4-nano
同一供應商的兩條存取路徑;各模型允許哪些路徑,由目錄決定。
- API 與 Codex 預設GPT-6 Sol
Z.ai / GLM
PAYG
- 預設GLM-5.3
glm-5.3預設設定
顯示全部 9 個目錄 ID
PAYG
glm-5.3預設glm-5.3-flashglm-5.3-flashxglm-5.2glm-5.1glm-5glm-4.7glm-4.7-flashxglm-4.7-flash
程式碼不接受 GLM Coding Plan 路徑。
- 預設GLM-5.3
OpenRouter
路由服務
- 選擇器Free (smoke)
openrouter/openrouter/free路由 - 選擇器Auto (variable)
openrouter/openrouter/auto路由
由路由器選擇,而非固定的單一模型。明確設定的 ID 也可保留。
- 選擇器Free (smoke)
TypeSafe / Jev
僅限判斷 · 與文字生成分開
- 直接
jev-1.13.0僅用於判斷 - 經由 OpenRouter
typesafe/jev-1.13僅用於判斷
只負責判斷的選用轉接器,並非根文字生成模型。預設判斷引擎為 llm,Jev 須另行選擇。Jev 研究本身的設定,依「Jev」一章的記錄。
- 直接
來源GEODE main 373d420公開提交 2026年10月7日 · 2026年10月8日確認
實驗
當時記錄的模型與路徑,並非目前的預設值或完整的相容清單。
GEODE 基準測試報告
July 31, 2026
- GEODEGPT-5.6 Sol
gpt-5.6-solOpenAI 訂閱 · high
- GEODEGPT-5.6 Sol
Terminal-Bench 2.1 · Harbor 0.22.0 成對執行規格
August 27, 2026
- GEODE · native CodexGPT-5.6 Sol
gpt-5.6-sol訂閱 · max
凍結的規格;並非每個計畫中的試驗都成為有效結果。
- GEODE · native CodexGPT-5.6 Sol
已封存的 SIL 執行 run-2606-broken-tool-use
- 目標鷹架GPT-5.5
gpt-5.5openai-codex - 稽核 · 評判Claude Opus 4.8
claude-opus-4-8PAYG
角色分工的記錄,並非兩個可互換的預設值。
- 目標鷹架GPT-5.5