外殼,ReAct循環(huán)協(xié)調(diào)器完全指南)
初識capsule-reactRustWASM打造AI Agent操作系統(tǒng)外殼ReAct循環(huán)協(xié)調(diào)器完全指南【免費(fèi)下載鏈接】capsule-reactReAct loop coordinator. Stateless state machine for reasoning-and-action cycle. Part of Unicity AOS.項(xiàng)目地址: https://gitcode.com/gh_mirrors/ca/capsule-reactcapsule-react包名astrid-capsule-react是 Unicity Astrid OS 中的 ReAct 循環(huán)協(xié)調(diào)器一個用 Rust 編寫、編譯為 WASM 的無狀態(tài)狀態(tài)機(jī)。它不直接調(diào)用 LLM、不執(zhí)行工具而是作為 Agent「操作系統(tǒng)的外殼」通過事件總線編排會話、身份、提示詞、LLM 與工具五大組件驅(qū)動「推理-行動-觀察」循環(huán) 什么是 capsule-react在 Astrid OS 的模型里Agent 被拆分成多個可插拔的「Capsule膠囊」每個膠囊是獨(dú)立的 WASM 模塊通過 IPC 事件總線通信。capsule-react 就是其中的協(xié)調(diào)者——它定義了讓 Agent 成為 Agent 的控制流獲取上下文 → 思考 → 行動 → 觀察 → 重復(fù)核心設(shè)計(jì)哲學(xué)是職責(zé)單一react 膠囊不含任何推理邏輯只做純控制流編排。把它替換成別的編排策略辯論、MCTS、鏈?zhǔn)津?yàn)證Agent 的行為就會改變而其他膠囊一行代碼都不用動。詳見 README.md。 ReAct 狀態(tài)機(jī)5 個階段一目了然狀態(tài)機(jī)定義在 src/lib.rs 的Phase枚舉中流轉(zhuǎn)路徑為Idle - AwaitingIdentity - AwaitingPromptBuild - Streaming - AwaitingTools - Streaming - ... - Idle階段含義默認(rèn)超時(shí)Idle空閑等待用戶輸入—AwaitingIdentity等待身份膠囊返回系統(tǒng)提示詞30 秒AwaitingPromptBuild等待提示詞構(gòu)建器組裝最終提示詞30 秒Streaming流式接收 LLM 輸出文本/工具調(diào)用120 秒AwaitingTools等待所有工具執(zhí)行完成60 秒每個階段都配有看門狗超時(shí)保護(hù)src/lib.rs超時(shí)會自動重置回Idle并向前端發(fā)送錯誤提示防止會話卡死。?? 工作原理事件總線 五大膠囊協(xié)作react 循環(huán)通過事件總線協(xié)調(diào)另外 5 個膠囊README.mdSession會話—— 獲取對話歷史、持久化每輪結(jié)果Identity身份—— 從工作區(qū)配置構(gòu)建系統(tǒng)提示詞Prompt Builder提示詞構(gòu)建器—— 合并插件貢獻(xiàn)生成最終提示詞ProviderLLM 提供方—— 流式輸出模型響應(yīng)Tool Router工具路由器—— 分發(fā)工具調(diào)用并收集結(jié)果它不做的事同樣重要不調(diào)用 LLM、不執(zhí)行工具、不構(gòu)建提示詞、不存儲消息。對話歷史由會話膠囊持有react 只保存臨時(shí)的控制流狀態(tài)。臨時(shí)狀態(tài)存哪里每輪的狀態(tài)存在膠囊自帶的 KV 存儲中src/lib.rsreact.turn.{session_id}—— 當(dāng)前輪次的狀態(tài)機(jī)快照TurnState定義見 src/lib.rsreact.req2sess.{request_id}—— LLM 請求與會話的關(guān)聯(lián)react.call2sess.{call_id}—— 工具調(diào)用與會話的關(guān)聯(lián)react.active_sessions—— 活躍會話集合供看門狗遍歷檢查超時(shí)這些是「流程狀態(tài)」而非對話歷史。膠囊重啟時(shí)會主動清理全部臨時(shí)鍵clear_ephemeral_keys保證不殘留臟狀態(tài)。 Rust WASM 的工程細(xì)節(jié)從 Cargo.toml 能看出這是一個極致瘦身的 WASM 目標(biāo)[lib] crate-type [cdylib] [profile.release] opt-level z # 按體積優(yōu)化 lto true codegen-units 1 strip true panic abortcdylib輸出格式正是 WASM 所需opt-level z LTO strip把產(chǎn)物體積壓到最小panic abort移除 panic 展開表進(jìn)一步瘦身工具鏈鎖定在 Rust 1.94.0目標(biāo)為wasm32-unknown-unknownrust-toolchain.toml。而 Capsule.toml 是膠囊的「能力清單」聲明了它需要導(dǎo)入的內(nèi)核能力astrid:llm、astrid:session等、可發(fā)布的主題如agent.v1.response、agent.v1.stream.delta和訂閱的事件如user.v1.prompt、tool.v1.execute.result。這種聲明式權(quán)限模型讓內(nèi)核可以在事件到達(dá)前就攔截越權(quán)操作。 一鍵構(gòu)建最快配置方法構(gòu)建只需兩條命令git clone https://gitcode.com/gh_mirrors/ca/capsule-react cd capsule-react rustup target add wasm32-unknown-unknown cargo build --target wasm32-unknown-unknown --release產(chǎn)物為astrid_capsule_react.wasmCapsule.toml 中聲明為可執(zhí)行組件安裝到 Astrid OS 后即可作為 Agent 的編排外殼運(yùn)行。 關(guān)鍵文件導(dǎo)航文件說明src/lib.rs全部實(shí)現(xiàn)約 2600 行含 26 個單元測試Capsule.toml膠囊清單組件、導(dǎo)入、發(fā)布/訂閱聲明Cargo.tomlWASM 發(fā)布配置與依賴rust-toolchain.toml工具鏈與 WASM 目標(biāo)鎖定README.md項(xiàng)目概覽與開發(fā)指南幾個值得細(xì)讀的函數(shù)handle_user_prompt用戶輸入的入口整條流水線的起點(diǎn)handle_stream_doneLLM 流結(jié)束后的決策點(diǎn)——發(fā)工具還是回最終答案handle_watchdog_tick看門狗多會話超時(shí)兜底機(jī)制handle_cancel用戶取消信號的處理會先終止在跑的子進(jìn)程再清理狀態(tài) 設(shè)計(jì)亮點(diǎn)速覽無狀態(tài)協(xié)調(diào)react 可隨時(shí)重啟狀態(tài)全部外置在 KV 與事件流中永不臆造模型沒有選中 LLM 模型時(shí)會明確報(bào)錯而不是偷偷用默認(rèn)模型兜底resolve_request_model迭代上限保護(hù)ReAct 循環(huán)默認(rèn)最多 25 輪max_iterations防止無限打轉(zhuǎn)多會話并發(fā)以session_id為鍵隔離狀態(tài)支持多會話并行與獨(dú)立的會話清空流式友好每生成一個 token 就通過agent.v1.stream.delta轉(zhuǎn)發(fā)給前端且增量幀嚴(yán)格標(biāo)記is_final: false避免流式消費(fèi)者提前關(guān)流? 常見問題Qcapsule-react 適合誰想深入理解 AI Agent 底層架構(gòu)、或?qū)Α覆僮飨到y(tǒng)式 Agent」感興趣的開發(fā)者。它是學(xué)習(xí) ReAct 模式工業(yè)級實(shí)現(xiàn)的絕佳樣本——代碼注釋詳盡幾乎每個函數(shù)都解釋了「為什么這么做」。Q它能單獨(dú)運(yùn)行嗎它是 Astrid OS 生態(tài)的一部分依賴astrid-sdk與事件總線內(nèi)核需要完整 OS 環(huán)境才能運(yùn)行。但單讀源碼src/lib.rs就能完整掌握 ReAct 協(xié)調(diào)器的設(shè)計(jì)精髓。Q想換編排策略怎么辦直接替換整個 react 膠囊即可。Session、Identity、Tool Router 等膠囊完全解耦這就是「把編排策略當(dāng)可替換組件」的價(jià)值所在。 總結(jié)capsule-react 用不到 3000 行 Rust 代碼展示了一個優(yōu)雅的 AI Agent 編排范式讓協(xié)調(diào)者保持無狀態(tài)讓每個能力住進(jìn)自己的膠囊讓事件總線做膠水。Rust 的類型安全加上 WASM 的體積與隔離優(yōu)勢使它成為構(gòu)建 AI Agent 操作系統(tǒng)外殼的穩(wěn)健選擇。如果你正在研究 Agent 框架的內(nèi)核設(shè)計(jì)這個項(xiàng)目值得完整讀一遍 ?【免費(fèi)下載鏈接】capsule-reactReAct loop coordinator. Stateless state machine for reasoning-and-action cycle. Part of Unicity AOS.項(xiàng)目地址: https://gitcode.com/gh_mirrors/ca/capsule-react創(chuàng)作聲明:本文部分內(nèi)容由AI輔助生成(AIGC),僅供參考