Dsh-Go 图标
DeepSeek Harness Agent 的进程内 Go 参考实现

基于 Dsh-Go 动手构建
读懂 Agent 内核

一份纯 Go、进程内的 DeepSeek Harness Agent 参考实现——把事件溯源、fold 投影、 Goal 规划、工具治理等核心能力,逐词对译为地道的 Go 代码, 让你能够阅读、调试、复刻一个真实 Agent 的内部运作。

UserSession · Event Sourcingappend-only log · replayablePersistenceJSONL · SQLiteFold / Projectionstate = f(events) · O(N)Prompt AssemblyAgent LoopTurn / Step 双循环Goal · 取消 · 重试Tool Waterfallpre → execute → post → resultLLM · DeepSeekstreaming · retry · cache

Dsh-Go 能给你什么

Agent 内核由三大支柱构成。每一项都是 Capability Seam(能力接缝):服务定义 + 可替换的 Provider, 替换一个 Provider 即改变整体行为,而无需触碰其它部分。

拆解 Agent 内核

Dsh-Go 只回答一个问题:**一个真实 Agent 内部到底是怎么运作的?**它不给你黑盒, 而是把真实机制摊开——每一块都足够小,一下午就能读懂。

核心概念含义学习入口
事件溯源不存可变状态;只追加不可变事件,状态由事件派生教程
fold 投影状态 = 事件日志的纯函数,增量 O(N)教程
Goal 状态机active / paused / blocked / complete 四态规划 + 稳定错误码教程
Turn / Step 循环每个用户消息一个 Turn;Step 执行工具并把结果喂回模型架构
工具流水线pre → execute → post → result 四级链 + 可插拔中间件能力总览

9 个零依赖教学示例

examples/ 开始, 运行 go run ./examples/tutorial——除最后一个示例外,都不需要大模型 API Key。

示例演示内容
tutorial事件溯源 → fold 投影 → Goal 状态机(教学入口)
agent_loopAgent Turn/Step 双循环 + 工具续步
usage会话 / 投影 / Goal 工具 / 命令 / 持久化
todo端到端整体替换一个能力
workflowPipeline 串行 / Parallel 并行 / 取消级联
subagent多 Provider 派生 + 父释放级联
sandbox_approval审批三态 + 沙箱模式
mcpMCP 客户端 → 工具桥
chat真实 DeepSeek 多轮对话(需 API Key)