跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客GitHub 精选镜像AI 生图工具UI配色美学关于
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
编程语言Agent Runtime工程化AI Agent技术书冷启动复盘

《Agent Runtime 工程化》过去 30 天,我对 Agent Runtime 的理解变化

过去 30 天,我对 Agent Runtime 的理解变化 这 30 天,我一直在写同一个主题: 一开始,我以为要做的是“把 Agent Runtime 这个概念讲清楚”。 写到后面,我发现更重要的不是概念。 是证据。 一个 Agent

陈堂会发布于 —2 浏览
《Agent Runtime 工程化》过去 30 天,我对 Agent Runtime 的理解变化

过去 30 天,我对 Agent Runtime 的理解变化

这 30 天,我一直在写同一个主题:

Agent Runtime 工程化。

一开始,我以为要做的是'把 Agent Runtime 这个概念讲清楚'。

写到后面,我发现更重要的不是概念。

是证据。

一个 Agent 系统出了问题,如果你只能说:

模型不稳定。
上下文太长。
工具没调好。
可能是框架问题。

那说明 Runtime 还不够硬。

这 30 天最大的变化,就是我越来越不想用抽象词解释抽象词。

我更关心:

trace 里能不能看到?
checkpoint 里有没有记录?
eval 能不能复现?
用户能不能理解?
发布前能不能检查?

变化一:不再争'谁第一个讲 Runtime'

最开始做路线设计时,有个判断很重要:

中文技术社区里,Agent Runtime 已经不是没人讲的概念。

所以这本书不能打:

国内第一本讲 Agent Runtime 的书。

这个说法风险高,也没必要。

更准确的位置是:

系统讲清楚一个 Agent 如何从 Demo 进入生产环境。

这句话后面变成整套内容的主线:

Agent Loop → Harness → Runtime → Sandbox → Production

现在回头看,这个定位是对的。

概念可以被很多人讲。

但工程路线要能连续讲 30 天,还不能散。

变化二:Runtime 不是'更大的 Loop'

从 100 行 Agent Loop 写到重构成 Agent Runtime 时,我的重点变了。

这里有个关键转变:

Loop 是控制流。

Runtime 是执行系统。

一开始你会觉得:

while loop
tool calls
max steps
messages

这就是 Agent。

但只要往里加:

token budget
retry
idempotency
checkpoint
permission
trace
eval

那个 while loop 很快就会变成一团东西。

现在我更愿意把 Runtime 看成一组责任边界:

ContextBuilder
ModelProvider
ToolRegistry
PermissionGate
ToolExecutor
CheckpointStore
TraceSink
EvalHarness
BudgetPolicy

Loop 还在。

但它不应该吞掉一切。

变化三:Tool Calling 越强,Runtime 越重要

写'Agent Framework 会不会被模型原生 Tool Use 淘汰'时,我的判断变清楚了。

模型会越来越会调用工具。

官方 SDK 会越来越好用。

很多薄框架会被压缩。

但这不会削弱 Runtime。

恰好相反。

模型越会行动,边界越重要。

因为 tool call 只是行动计划。

Runtime 要决定:

这个行动能不能执行
谁批准
在哪个 sandbox
输出怎么回灌
失败怎么记录
副作用怎么恢复
成本怎么算

以前模型不会用工具,最多答错。

现在模型会用工具,就可能改错文件、发错请求、重复下单、烧掉预算。

能力变强之后,治理需求不会消失。

变化四:MCP 的价值和边界都要讲

写 MCP 时,我刻意没有把它写成'万能标准'。

MCP 很有价值。

它解决连接问题:

Host
Client
Server
resources
prompts
tools/list
tools/call

但它不自动解决治理问题:

trust level
namespace
tool exposure
permission
sandbox
schema drift
tool ledger
checkpoint
trace
eval

这个边界越讲越重要。

工具越容易接入,Runtime 越要统一治理。

否则 MCP 会把工具接入成本降下来,也把误调用和越权风险一起带进来。

变化五:Memory 最怕'聪明地记错'

写 Memory 时,我对'Agent Memory'的警惕更强了。

失忆很烦。

但记错更危险。

一条被模型错误总结出来的长期偏好,可能影响很多次后续行动。

所以 memory 不能做成垃圾桶。

我现在会先分:

Run state:Runtime 管
Tool ledger:Runtime 管
Checkpoint:Runtime 管
User preference:Application 管
Business fact:业务系统管
进入上下文:Context Builder 管

向量库只是索引。

不是 memory 架构本身。

变化六:Sandbox 不是一个勾选框

写 Sandbox 时,我越来越不喜欢这句话:

我们开了 sandbox。

它听起来让人放心。

但不够。

要继续问:

文件能读哪里?
能写哪里?
网络默认开还是关?
环境变量怎么过滤?
是否允许子进程?
是否容器隔离?
是否能导出 patch?
sandbox profile 有没有进 trace?

现在我的分工更明确:

执行环境属于 Harness。
策略决策属于 Runtime。
Permission 决定能不能做。
Sandbox 限制最多能做什么。
Trace 记录当时在哪个边界里做。

变化七:Trace 是这本书的硬骨头

写失败 trace 案例时,我感觉这本书的真正骨头出来了。

如果一篇文章能把'模型不稳定'拆成:

Context Builder 没带测试文件
模型过度泛化
shell 工具正常返回失败
Runtime 没有阻止失败测试后的成功 final
eval 缺少 mustReadFiles 断言

那它就不是概念文章了。

它开始接近工程。

Trace 的价值是把失败变成资产。

没有 trace,事故只会变成争论。

有 trace,事故可以变成 eval。

变化八:Checklist 不是形式主义,前提是会影响发布

前面写了两份清单。

一份是模块级 checklist。

一份是 50 项 release gate。

写完后我更确定:清单不是为了显得专业。

清单只有在会影响发布时才有用。

如果某一项永远不会阻止上线,那它就是装饰。

真正的 checklist 应该进入:

README
PR 模板
release note
eval report
incident review
上线审批

生产级 Agent 不是永不失败。

是失败后能被理解、被停止、被恢复。

变化九:这本书不能只写'我的理解'

招募 Early Reader 时,我其实是在承认一件事:

Agent Runtime 不适合闭门造车。

它一定要从真实任务里长出来。

我一个人能写书稿和 demo。

但真实的坑来自读者:

你们的 Agent 为什么重复调工具?
你们的 MCP 接入在哪里失控?
你们的审批弹窗用户看不看?
你们的 trace 能不能定位根因?
你们的 eval 怎么处理 flaky?

这些反馈会比我自己多写十篇概念文更重要。

变化十:冷启动不是每天发文,是连续建立信任

这 30 天的内容大概经历了四段:

第一阶段:先让读者相信这是一个真实工程问题。
第二阶段:用小代码讲 Loop、预算、重试、幂等、checkpoint。
第三阶段:处理框架、MCP、Memory、Sandbox、Workflow 等争议边界。
第四阶段:收成判断、清单、试读、trace 案例、v0.1、Early Reader。

如果只看单篇,可能就是一篇文章。

连起来看,它在做一件事:

让读者逐渐相信,这不是一个空概念。

它有问题、有代码、有事故、有清单、有发布路线。

这才是技术书冷启动该做的事。

接下来

下一阶段要少写一点'观点',多补一点'工程资产'。

优先级大概是:

1. 仓库 README 第一版
2. Production Agent Checklist 文档
3. Agent Loop 示例代码
4. Tool Runtime 示例代码
5. Trace Writer + Evidence Panel 示例
6. Early Reader 反馈入口

文章可以继续写。

但不能只写文章。

仓库要开始长出东西。

最后

过去 30 天,我对 Agent Runtime 的理解从一句话变成了一组检查:

能不能控制行动?
能不能解释失败?
能不能恢复状态?
能不能验证改动?
能不能让用户理解边界?

如果不能,那就还只是 demo。

如果能,才开始接近 production。

  • Magick API 一键接入全球大模型注册送1000万token查看
  • 免费图片视频在线生成30秒,将你的创意变成现实开始设计
  • X/Twitter免费视频下载器免登陆无限额度免费视频解析下载了解详情
  • 100+免费在线小游戏爽一把
极客日志微信公众号二维码

微信扫一扫,关注极客日志

微信公众号「极客日志V2」,在微信中扫描左侧二维码关注。展示文案:极客日志V2 zeeklog

更多推荐文章

查看全部
  • Ubuntu 22.04 生产环境部署 FastAPI + Uvicorn + Nginx 实战
  • 微信群机器人配置与使用指南
  • 后仿 SDF 反标 Warning 描述与解决方案
  • Docker 部署 MySQL 8.0 完整指南:从拉取镜像到配置远程访问
  • ChatGPT 与 DALL·E 制作日漫风格小故事全流程
  • Stable Diffusion WebUI 本地安装与配置教程
  • Python 核心语法详解:测试脚本开发基础
  • 在 Linux 桌面里跑 Windows 应用:Winboat 实战笔记
  • AI 编程工具深度对比:Trae、Cursor、Copilot 与 Windsurf
  • 论文阅读--Agent AI 探索多模态交互的前沿领域(一)
  • OpenCode 开源 AI 编程助手使用教程
  • Linux diff 与 patch 命令实战指南
  • 网络安全工程师职业定义、核心技能与认证体系详解
  • Python 为何如此流行?深度解析其核心优势与应用场景
  • 大疆无人机如何导出日志并解析
  • 前端 WebSocket 通信实战与最佳实践
  • OpenClaw 进阶教程:记忆系统、定时任务、多模型与子代理解析
  • Python 爬虫实战指南:从基础请求到分布式框架
  • Kubernetes Python 客户端实战教程
  • Java IO 核心:BufferedReader、BufferedWriter、PrintStream 与 PrintWriter 详解

相关免费在线工具

  • Base64 字符串编码/解码

    将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online

  • Base64 文件转换器

    将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online

  • Markdown转HTML

    将 Markdown(GFM)转为 HTML 片段,浏览器内 marked 解析;与 HTML转Markdown 互为补充。 在线工具,Markdown转HTML在线工具,online

  • HTML转Markdown

    将 HTML 片段转为 GitHub Flavored Markdown,支持标题、列表、链接、代码块与表格等;浏览器内处理,可链接预填。 在线工具,HTML转Markdown在线工具,online

  • JSON 压缩

    通过删除不必要的空白来缩小和压缩JSON。 在线工具,JSON 压缩在线工具,online

  • JSON美化和格式化

    将JSON字符串修饰为友好的可读格式。 在线工具,JSON美化和格式化在线工具,online

目录

  1. 过去 30 天,我对 Agent Runtime 的理解变化
  2. 变化一:不再争“谁第一个讲 Runtime”
  3. 变化二:Runtime 不是“更大的 Loop”
  4. 变化三:Tool Calling 越强,Runtime 越重要
  5. 变化四:MCP 的价值和边界都要讲
  6. 变化五:Memory 最怕“聪明地记错”
  7. 变化六:Sandbox 不是一个勾选框
  8. 变化七:Trace 是这本书的硬骨头
  9. 变化八:Checklist 不是形式主义,前提是会影响发布
  10. 变化九:这本书不能只写“我的理解”
  11. 变化十:冷启动不是每天发文,是连续建立信任
  12. 接下来
  13. 最后
  • 免费图片AI生成工具免费生成了解详情