使用MCP和可观测性构建自愈代理
摘要
一个自愈代理的演示,它利用可观测性(Monocle)和MCP来调试和修复一个损坏的应用程序,通过检查遥测数据和运行测试,将可观测性视为代理循环的一部分。
大多数代理可以生成代码或执行其设计的工作。我开始觉得更有趣的是它们能否自我调试。我的一个朋友使用Monocle和OpenCode围绕这个想法构建了一个小演示。我没有要求代理从头构建一个应用程序,而是给了它一个故意损坏的Text-to-SQL服务和一个失败的测试套件。规则很简单:不能读取本地日志,也不能猜测修复方案。代理必须运行测试,通过MCP检查追踪,从遥测数据中识别根本原因,修补代码,然后重复直到所有测试通过。
让这变得有趣的并不是bug本身。该应用程序只有几个问题:无效的模型配置、不正确的响应解析以及提示与数据库之间的模式不匹配。
有趣的部分是将可观测性视为代理循环的一部分。通常,追踪是人类在故障发生后查看的东西。在这里,追踪成为了代理的真相来源。每次失败都会通过Monocle生成遥测数据,代理通过MCP查询这些追踪,接下来的行动基于实际发生的情况,而不是模型猜测发生的情况。这感觉像是代理系统的一个重要转变。如今很多代理工作流止步于代码生成。生产系统在调试、监控、从故障中恢复以及处理意外行为上花费的时间要多得多。如果代理要成为有用的工程工具,它们可能需要访问工程师使用的相同可观测性层。这个演示就是朝着那个方向的一个小实验,使用Monocle进行仪表化,并将MCP作为遥测数据与代理之间的接口。
相似文章
构建开放MCP记忆服务器——你的代理记忆今天到底哪里出问题了?
讨论构建开放MCP记忆服务器以解决代理记忆的实际问题,指出哪些方面存在问题以及如何修复。
多智能体的可观测性在每个框架中都支离破碎——构建了一个工具来解决这个问题
一款新工具旨在解决多智能体框架中可观测性碎片化的问题。
自愈智能体只是一个你忘了构建的循环 [博客]
一篇关于自愈智能体简单模式的博客文章:使用生命周期钩子读写经验教训,并用护栏防止错误信念固化。
AgentDebugX:用于LLM Agent故障可观测性、归因和恢复的开源工具包
AgentDebugX 是一个面向 LLM Agent 的开源调试框架,将故障调试组织为检测、归因、恢复和重试的闭环。其核心组件 DeepDebug 在基准测试中实现了强大的归因准确性和修复能力。
构建自修复智能体循环(39分钟阅读)
本文介绍了一种使用OpenAI的Codex构建自修复智能体循环的方法,智能体通过结构化反馈循环迭代地审查、修复和验证输出,并提供了一个修复过时API文档的实例。