CHAPTER 12 · SOURCE MAP
79 個 Workspace 成員如何組成產品
根 Cargo.toml 列出 79 個成員,其中 crates/codegen/ 佔 62 個。理解這套系統,要沿組合入口、互動介面、Agent 宿主、領域能力、推理狀態五條主軸閲讀。
課程目標
能從根 workspace 清單定位產品主軸,並區分二進制組合入口、TUI 庫、Shell Agent 宿主與會話狀態組件。
能從根 workspace 清單定位產品主軸,並區分二進制組合入口、TUI 庫、Shell Agent 宿主與會話狀態組件。
核心視覺 · 教學化結構圖
79
Workspace members
根清單的實際成員數。根檔案首行註明它是自動生成的 workspace root。
62
Codegen members
主體集中在 crates/codegen/,另有 build、common、prod 與 third_party。
5
閲讀主軸
組合入口、TUI、Shell 宿主、領域能力、推理與狀態,避免套用虛構的四層目錄。
真實源碼證據
Cargo.toml
# Auto-generated workspace root.
[workspace]
resolver = "2"
members = [
"crates/build/xai-proto-build",
"crates/codegen/xai-grok-pager-bin",
"crates/codegen/xai-grok-shell",
...
]
[workspace]
resolver = "2"
members = [
"crates/build/xai-proto-build",
"crates/codegen/xai-grok-pager-bin",
"crates/codegen/xai-grok-shell",
...
]
crates/codegen/xai-grok-pager-bin/Cargo.toml
# Composition-root binary for the Grok Build TUI.
[[bin]]
name = "xai-grok-pager"
path = "src/main.rs"
# Agent runtime + leader/stdio/headless entry points.
xai-grok-shell = { workspace = true }
[[bin]]
name = "xai-grok-pager"
path = "src/main.rs"
# Agent runtime + leader/stdio/headless entry points.
xai-grok-shell = { workspace = true }
源碼快照説明:本頁依據本地同步副本核對。該副本沒有
.git 元數據,因此不聲稱對應某個 commit 版本。課堂練習
01
沿依賴定位職責
從 xai-grok-pager-bin/Cargo.toml 出發,分別找出 TUI 庫與 Agent 宿主依賴。再到 xai-grok-sampler/src/actor/mod.rs 和 xai-chat-state/src/actor/mod.rs 寫下二者各自擁有的狀態。
Takeaway:79 個成員是 workspace 事實,62 個 codegen 成員是數量事實。產品運行主軸從
pager-bin 組合入口延伸到 pager、shell、領域 crate、sampler 與 chat-state。