完成系统边界
定义入口、状态所有权、模型循环与外部扩展的责任边界。
结课任务从功能清单升级为可运行的系统设计。你要为九个维度作出明确决定,每个决定都要附合约、故障路径、验证方式和可提交成果。
定义入口、状态所有权、模型循环与外部扩展的责任边界。
为工具、安全、持久化、恢复和状态通知画出失败路径。
提交 ADR、合约、威胁模型、测试与最小演示,不停留在概念图。
为一个真实团队设计「仓库级 Coding Agent」。它至少能读取代码、提出计划、修改文件、执行验证并恢复中断会话。你可以实现最小 PoC,架构文档必须覆盖全部九维。
谁启动 Agent,交互、CI 与 IDE 是否共享同一核心?
源码锚点:pager-bin composition root、shell headless/stdio、ACP gateway。
谁拥有会话状态,模型流与工具任务如何取消、排队和回传?
源码锚点:SessionActor、LocalSet、后台 summary/persistence actor。
提示词、流式输出、工具调用、重试、停止与模型切换如何闭环?
源码锚点:run_loop、turn、tool_dispatch、model_switch、two_pass。
输入 Schema、返回值、错误、超时、幂等性和权限类别如何标准化?
源码锚点:ToolKind、Tool Bridge、server__tool、capability filter。
短期上下文何时压缩,长期记忆写什么、何时检索、如何删除?
源码锚点:compaction segments、two-pass、memory FTS/embedding/MMR/Dream。
权限、沙箱、Hook、网络和插件信任分别承担哪一层保证?
源码锚点:capability、sandbox、Hooks fail-open、plugin-root trust。
消息、工具结果、文件 checkpoint 与外部连接状态如何持久化和重放?
源码锚点:session persistence、chat persistence、rewind、MCP restart。
哪些事件进入日志和指标,哪些内容必须脱敏、采样或禁止离开本机?
源码锚点:file-utils events、telemetry enums、MCP status payload。
MCP、Plugin 与 Hook 的发现、版本、启用、信任和卸载如何治理?
源码锚点:marketplace index、manifest、install registry、trust store。
// 插件根目录无法 canonicalize 时,不授予信任
match dunce::canonicalize(plugin_root) {
Ok(canonical) => self.trusted.contains(&canonical),
Err(_) => false,
}你的方案也要写清失败默认值。无法读取策略、无法解析工具结果、无法恢复 checkpoint 时,系统分别应当停止、降级或请求用户。
crates/codegen/xai-grok-agent/src/plugins/trust.rs否决项:提交物未说明敏感数据落点;高风险工具缺少权限路径;崩溃后声称可恢复但没有测试;引用源码时无法给出文件路径。
最终提交包
可评审设计档案
Coding Agent 的完成度体现在边界与故障路径。九维工作台帮助你把模型能力转成可运行、可恢复、可审计、可扩展的工程系统。
源码快照说明:本页以本地 grok-build-main 作为设计案例库,路径锚点来自真实源码。工作台中的交付格式属于课程设计,不声称是 Grok Build 的官方架构模板。学员方案可以采用其他技术栈,但每项决策都要提供同等级证据。