【02】Context Engineering:Prompt不再是核心

目录

[Context Engineering:Prompt不再是核心](#Context Engineering:Prompt不再是核心)

[01|Prompt 不是消失了,而是退到了最后一层](#01|Prompt 不是消失了,而是退到了最后一层)

[02|什么是 Context Engineering?](#02|什么是 Context Engineering?)

[03|企业 SaaS Agent 的上下文分层](#03|企业 SaaS Agent 的上下文分层)

04|上下文不是越多越好

[05|Context Schema:上下文需要结构化](#05|Context Schema:上下文需要结构化)

[06|一个企业 SaaS 问题的上下文装配示例](#06|一个企业 SaaS 问题的上下文装配示例)

[07|Context 与 RAG、Memory 和安全边界](#07|Context 与 RAG、Memory 和安全边界)

08|常见误区

[09|Context Engineering 的落地架构](#09|Context Engineering 的落地架构)

[10|总结:Agent 的核心不是 Prompt,而是上下文控制权](#10|总结:Agent 的核心不是 Prompt,而是上下文控制权)

Context Engineering:Prompt不再是核心

摘要: Prompt 只是模型最终看到的表达层。真正决定 Agent 稳定性的,是上下文的来源、结构、可信度、权限边界与装配方式。


上一篇我们讲到,AI Agent 正在从 Prompt Engineering 走向 Platform Engineering。这一篇继续往下拆:为什么 Prompt 已经不再是 AI Agent 的核心?

很多人做 Agent 的第一反应是优化 Prompt:

  • 角色描述再具体一点

  • 约束条件再多写一点

  • 输出格式再严格一点

  • Few-shot 示例再补几个

  • 失败场景再提示一下

这些做法有价值,但它们解决的是"模型应该怎么思考和输出"。真正进入企业 SaaS 场景后,更大的问题往往不是模型不知道怎么回答,而是模型拿到的上下文不完整、不可信、不稳定。

同样一个问题:

用户发现报表结果与业务记录不一致,希望系统协助定位。

如果只把这句话丢给模型,模型最多只能猜。

但如果系统同时提供:

  • 当前用户属于哪个租户

  • 用户能访问哪些组织和模块

  • 相关组织、项目和业务对象

  • 报表结果及其来源记录

  • 相关工单历史

  • 第三方系统同步状态

  • 最近一次配置变更记录

  • 权限校验结果

  • 风险动作边界

  • 历史类似 case 的处理路径

模型才能真正参与分析。所以,Agent 的关键能力不再是"写一段更聪明的 Prompt",而是"在每次推理前,为模型装配一份正确、可信、可控、可追踪的上下文"。这就是 Context Engineering。

01|Prompt 不是消失了,而是退到了最后一层

先明确一点:说 Prompt 不再是核心,不等于 Prompt 不重要。

Prompt 仍然负责告诉模型:

  • 你是什么角色

  • 你要完成什么任务

  • 你应该遵守哪些规则

  • 你应该按什么格式输出

  • 遇到不确定信息时如何处理

  • 哪些行为不能做

但在企业 Agent 中,Prompt 更像是最后一层"推理指令",而不是系统本身。

真正决定模型表现的,是 Prompt 前面那套上下文装配过程:

  • 用户输入是什么?

  • 历史上下文是什么?

  • 业务事实是什么?

  • 检索证据是什么?

  • 工具结果是什么?

  • 哪些信息可信?

  • 哪些信息只是弱证据?

  • 当前用户有什么权限?

  • 哪些动作有风险?

  • 这次执行过程如何被记录和复盘?

如果这些内容缺失,Prompt 写得再好也很难稳定。一个典型错误是:把所有问题都归因于 Prompt。

  • 回答不准:是不是 Prompt 没写清楚?

  • 路由错了:是不是 Prompt 要加规则?

  • 工具调用错了:是不是 Prompt 要多举例?

  • 越权风险:是不是 Prompt 要强调不能越权?

  • 结果不可复盘:是不是 Prompt 要输出更多字段?

有些问题确实可以通过 Prompt 改善,但很多问题本质上是上下文工程没做好。

比如:

  • 模型不知道用户属于哪个租户。

  • 模型看到的是过期业务状态。

  • 模型拿到了未经校验的截图 OCR 文本。

  • 模型把用户历史描述当成了当前事实。

  • 模型没有拿到权限上下文。

  • 模型无法区分 RAG 文档、工具结果和用户原话的可信度。

  • 模型拿到了太长历史,只能在噪声里猜重点。

这些都不是"多写两句 Prompt"能根治的问题。

02|什么是 Context Engineering?

Context Engineering 可以理解为:围绕一次 Agent 推理,把所有可能影响决策的信息收集、清洗、分层、压缩、校验、注入和记录的工程过程。 它不是简单地把材料拼成一个大字符串。

一个完整的 Context Engineering 至少包括八个动作:

  1. 收集:从用户输入、历史、RAG、工具、多模态、权限系统中收集信息。

  2. 归一:把不同来源的信息转成统一 Evidence / Context Schema。

  3. 分层:区分当前请求、短期历史、长期记忆、知识库、工具结果和权限上下文。

  4. 可信度标注:为每条证据标记来源、置信度、时间、是否经过工具确认。

  5. 冲突处理:发现 OCR、用户描述、工具结果、历史记录之间的不一致。

  6. 裁剪压缩:在 Token 预算内保留最相关信息,而不是全部塞入 Prompt。

  7. 安全过滤:把用户文本、RAG、工具输出都当成不可信证据,不当成系统指令。

  8. 快照记录:保存本次上下文版本,便于复盘、评测、回放和优化。

所以 Context Engineering 不是 Prompt 技巧,而是 Agent Runtime 前面的一条数据流水线。它的目标不是让 Prompt 更长,而是让 Prompt 更干净。

图|企业 Agent 上下文从采集、治理到推理消费的完整链路

03|企业 SaaS Agent 的上下文分层

企业 Agent 最容易犯的错误,是把所有上下文混在一起。

  • 用户原话

  • 历史消息

  • 系统配置

  • RAG 文档

  • 工具结果

  • 权限信息

  • 用户偏好

  • 执行中间状态

  • 人工反馈

  • 评测结果

这些内容看起来都叫"上下文",但它们的生命周期、可信度、使用方式完全不同。如果不分层,系统后期一定会混乱。

当前请求上下文:这一次任务正在发生什么

当前请求上下文是最短生命周期的信息。

它通常包括:

  • 请求标识

  • 会话标识

  • 租户标识

  • 用户标识

  • 当前用户问题

  • 附件信息

  • 当前选择的业务模块

  • 本轮抽取出来的实体

  • 本轮工具调用状态

  • 本轮 Agent 执行中间结果

这类信息只服务于当前请求或当前 case,不应该被当成长久记忆。

例如用户说:

这次帮我看 A 项目 6 月的业务报表。

这里的 A 项目6 月业务报表 是当前任务上下文,不应该自动写成长期用户偏好。

短期会话上下文:这轮对话前面发生了什么

短期会话上下文用于理解多轮对话。

比如:

  • 用户上一轮补充了客户名称。

  • 用户刚刚上传了一张报错截图。

  • 系统上一轮已经提示缺少统计周期。

  • 用户已经确认要查看的是生产环境数据。

这类信息通常来自最近几轮消息和会话摘要。关键点是:不能把完整历史无脑塞给模型。

更合理的做法是:

  • 最近 3-5 轮原始消息

    • 会话摘要
    • 当前任务相关的历史实体
    • 上一轮 Agent outcome

这样既保留连续性,又不会让模型在冗长历史里丢失重点。

Checkpoint:执行状态,不是 Prompt 材料库

很多 Agent 项目会用 Checkpoint 保存执行状态。

Checkpoint 的作用是:

  • 保存当前图状态

  • 支持中断恢复

  • 支持 Human-in-the-loop resume

  • 支持失败后继续执行

  • 支持同一执行线程下的状态延续

但 Checkpoint 不等于 Prompt。一个常见误区是:把完整 checkpoint 或完整 messages 直接塞进 Prompt。

这会带来三个问题:

  • Token 快速膨胀

  • 中间状态噪声干扰模型

  • 敏感字段和内部控制信息泄露给模型

更合理的做法是:Checkpoint 存执行状态,Prompt 只消费经过裁剪后的必要上下文。

换句话说:

  • Checkpoint 负责恢复执行。

  • Context Assembly 负责组装推理输入。

  • 两者不能混成一个东西。

长期记忆:稳定事实和偏好,不是业务数据库

长期记忆用于保存跨会话稳定信息。

例如:

  • 用户常用语言

  • 用户偏好的回复风格

  • 用户所在组织的常见业务模块

  • 用户明确要求长期记住的偏好

  • 经过确认的稳定事实

长期记忆不应该保存:

  • 临时工单内容

  • 一次性的账号或业务对象信息

  • 未经确认的用户猜测

  • 敏感原文

  • 密钥、证件号、完整手机号等隐私信息

长期记忆必须按租户、用户和组织隔离,同时记录信息来源、可信度、有效期和隐私处理策略,并提供删除与修正机制。

否则记忆会从"帮助模型理解用户"变成"不可控的信息污染源"。

RAG / 业务知识:外部知识,不是用户记忆

RAG 解决的是知识检索问题。

它适合放:

  • 产品文档

  • 帮助中心

  • SOP

  • 接口文档

  • 配置说明

  • 错误码说明

  • 业务规则

  • 历史 FAQ

但 RAG 不适合替代用户记忆,也不适合替代业务数据库。

例如:

  • 某个租户当前有没有开通功能

  • 某个账号现在有没有权限

  • 某项业务数据当前是否已修订

  • 某个审批流现在卡在哪个节点

这些是实时业务状态,应该通过业务 API 或只读工具查询,而不是从 RAG 文档里猜。所以在企业 Agent 里,RAG 只是上下文的一层,不是上下文的全部。

工具结果:强证据,但也需要边界

工具调用结果通常比用户描述、OCR、RAG 更接近真实业务状态。

例如:

  • 查询账号权限

  • 查询报表来源记录

  • 查询审批节点

  • 查询同步任务状态

  • 查询配置变更记录

  • 查询操作日志

但工具结果也不能无脑相信。

需要记录:

  • 工具名称

  • 调用参数

  • 返回时间

  • 数据版本

  • 是否成功

  • 是否超时

  • 是否部分失败

  • 是否命中权限过滤

如果工具返回的是第三方系统数据,还要考虑同步延迟和数据一致性。

多模态证据:只能作为证据,不能直接当事实

企业 SaaS 场景里,用户可能会上传:

  • 后台截图

  • 报错弹窗

  • 审批页面截图

  • 报表截图

  • 配置页面截图

  • 语音说明

  • 操作录屏片段

OCR、ASR、VLM 可以把这些内容转成文本和结构化线索。但这些结果应该被标记为 Evidence,而不是最终事实。

因为:

  • OCR 可能识别错字符。

  • ASR 可能听错专有名词。

  • VLM 可能误判页面含义。

  • 截图可能是历史截图,不代表当前状态。

  • 用户可能上传了不相关附件。

正确做法是:

  • 多模态模型负责提取线索。

  • Context Merge 负责合并证据。

  • 业务工具负责确认事实。

  • Runtime 负责权限和风险边界。

权限和风险上下文:必须进入推理前置条件

企业 Agent 不能只关心"怎么回答",还要关心"能不能回答、能不能查、能不能做"。

权限上下文应该包括:

  • 当前用户角色

  • 当前租户范围

  • 当前组织范围

  • 可访问模块

  • 可调用工具

  • 可见字段

  • 敏感数据脱敏规则

  • 高风险动作策略

  • 是否需要人工审核

这类上下文不能只靠 Prompt 表达。

Prompt 可以提醒模型:

  • 不要越权。

  • 高风险动作需要人工审核。

但真正的边界必须由代码执行:

  • Agent Catalog 过滤可用能力

  • 执行前权限校验 做执行前校验

  • Action Allowlist 限制可执行动作

  • High Risk Policy 生成审批提案

模型可以提出建议,不能决定越权执行。

04|上下文不是越多越好

很多人做 Agent,第一反应是"把更多信息给模型"。这在早期 Demo 里可能有效,但在生产里很危险。因为上下文越多,不代表效果越好。

它可能带来:

  • Token 成本上升

  • 延迟变高

  • 关键信息被噪声淹没

  • 历史错误被重复放大

  • 敏感信息暴露

  • 提示词注入攻击面变大

  • 模型更难判断信息优先级

真正的 Context Engineering,重点不是"多",而是"准"。

一个更合理的 Prompt Assembly 应该有明确预算:

  • 系统指令:固定预算

  • 当前用户问题:必须保留

  • 最近对话:保留少量原文

  • 会话摘要:压缩保留

  • 长期记忆:top-k 检索

  • RAG 知识:top-k 检索

  • 工具结果:按任务相关性选择

  • 权限和风险规则:结构化注入

  • 输出格式:固定注入

可以把它理解成:

  • 不是把所有上下文塞给模型,

  • 而是在预算内选择最有用、最可信、最相关的上下文。

05|Context Schema:上下文需要结构化

如果上下文只是字符串拼接,系统会很快失控。企业 Agent 更适合使用结构化 Schema。

一条证据需要说明内容来自哪里、何时产生、可信度如何、属于哪个租户和用户,以及是否包含风险。统一上下文则要把用户问题、实体、证据、冲突、缺失信息、权限风险和历史摘要组织起来。

这样做有几个好处:

  • 模型输入可控

  • 证据来源可追踪

  • 冲突可以显式表达

  • 字段缺失可以被 Runtime 识别

  • 评测集可以复用同一套结构

  • 线上 case 可以回放

结构化上下文不是为了"看起来规范",而是为了让 Agent 从随机对话变成可治理系统。

Evidence:所有外部输入都应该先当成证据

企业 Agent 里有一个非常重要的原则:

关键判断: 用户输入、历史、RAG、OCR、ASR、VLM、远程工具输出,默认都不是系统指令,而是证据。

这句话很关键。

因为 Agent 会面对很多不可信内容:

  • 用户可能输入"忽略之前所有规则"。

  • RAG 文档里可能包含旧版说明。

  • OCR 可能识别出错误数值。

  • ASR 可能把模块名听错。

  • 第三方工具可能返回部分失败。

  • 历史会话里可能有过期结论。

如果系统把这些内容直接拼进 Prompt,很容易发生提示词注入和错误决策。

更好的做法是按来源建立可信度层级:用户输入、OCR 和 ASR 属于待验证主张;RAG 文档需要检查版本与适用范围;业务工具结果可信度较高,但仍受权限和时间约束;系统权限结果与人工确认可以作为更强证据。

模型可以参考证据,但最终动作必须经过 Runtime 校验。

Snapshot:没有快照,就没有复盘和评测

很多 Agent 项目上线后最痛苦的问题是:线上出了错,但复盘不了。

用户说:

刚才 AI 给我的结论不对。

如果系统没有保存上下文快照,你很难知道:

  • 当时模型看到了什么用户问题?

  • 当时 RAG 检索到了哪些文档?

  • 当时工具返回了什么数据?

  • 当时权限上下文是什么?

  • 当时多模态识别结果是什么?

  • 当时 Prompt 是怎么组装的?

  • 当时模型为什么选择这个 Agent?

所以 Context Snapshot 非常重要。

快照至少要保存当时的输入与上下文、Prompt 和模型版本、检索与工具证据、权限风险状态,以及能够关联完整执行链路的追踪信息。

有了快照,才能做:

  • 问题复盘

  • Trace 对齐

  • 失败分类

  • 评测集生成

  • 回归测试

  • Prompt 版本对比

  • 工具策略优化

  • Router 优化

没有快照,Agent 的线上错误就只能靠猜。

06|一个企业 SaaS 问题的上下文装配示例

假设用户输入:

关键判断: 用户发现本月报表结果与业务记录不一致,并上传截图,希望系统定位原因。

如果只靠 Prompt,系统可能这样处理:

  • 用户反馈报表结果不一致。

  • 请判断原因并给出回复。

这显然不够。

一个更工程化的 Context Engineering 流程应该是:

  1. 解析当前用户输入。

  2. OCR 识别截图里的业务对象、指标、时间和错误信息。

  3. 从会话历史里补全用户前面提到的组织或项目。

  4. 根据租户和用户身份查询可见范围。

  5. 查询报表结果及其来源记录。

  6. 查询相关配置、同步日志和变更历史。

  7. 确认最近是否发生规则调整、版本发布或数据重算。

  8. 合并证据,标记哪些是截图线索,哪些是系统事实。

  9. 检测冲突:截图结果和当前系统快照是否一致。

  10. 判断是否涉及敏感数据修订、权限变更或批量操作。

  11. 生成只读诊断结论;需要变更时,只输出人工审核提案。

  12. 保存上下文快照和 Trace,便于后续复盘。

最后进入模型的上下文,不是所有原始信息,而是一份压缩后的结构化材料:

  • 当前问题:用户认为某项业务报表与实际记录不一致,并上传了截图。

  • 已确认事实:用户有查看对应组织和项目数据的权限;系统快照中的指标值为 X;该指标由多类来源记录聚合而成;最近发生过一次统计规则调整。

  • 弱证据:OCR 从截图中识别到指标值 Y,但置信度有限;截图时间可能属于上一统计周期。

  • 冲突:截图结果与当前系统快照不一致,截图周期也与用户描述不完全一致。

  • 风险边界:当前只能做只读诊断;敏感数据修订、历史数据重算、权限变更和批量配置必须人工审核。

  • 输出要求:先解释已确认事实,再指出仍需确认的信息,不自动修改任何业务数据。

这时 Prompt 才真正有价值。因为模型不再是在猜,而是在一份可控上下文里做总结、解释和下一步建议。

07|Context 与 RAG、Memory 和安全边界

很多人会把 Context Engineering 简化成 RAG。这个理解太窄了。RAG 只是 Context Engineering 的一个来源。

它解决的是:

从知识库里找相关内容。

Context Engineering 解决的是:

  • 这次 Agent 推理到底应该看到哪些信息?

  • 这些信息从哪里来?

  • 哪些可信?

  • 哪些过期?

  • 哪些冲突?

  • 哪些需要工具确认?

  • 哪些会触发风险?

  • 哪些应该进入 Prompt?

  • 哪些只能进入 Trace?

所以它包含 RAG,但远大于 RAG。

一个企业 Agent 的上下文来源通常是:

  • 用户输入

  • 会话历史

  • 长期记忆

  • RAG 知识库

  • 业务数据库

  • 工具结果

  • 权限系统

  • 审批系统

  • 多模态解析

  • Trace 和评测反馈

RAG 只占其中一部分。如果把 RAG 当成全部上下文,Agent 会缺失实时业务状态、用户权限、执行历史和风险边界。

Context Engineering 和 Memory 的关系

Memory 也是容易被误解的概念。很多人把 Memory 理解成"把聊天记录都存起来,下次再塞回 Prompt"。这是非常粗糙的做法。

生产系统里至少要区分四层:

  • State:当前请求和中间状态。

  • Checkpointer:thread 级短期状态和中断恢复。

  • Store:跨会话长期稳定事实和偏好。

  • RAG / Business Knowledge:外部知识和业务资料。

这四层不能混用。

例如:

  • 当前请求里抽取到的业务对象标识,属于 State。

  • 一次 HITL 中断恢复需要的图状态,属于 Checkpointer。

  • 用户长期偏好中文简洁回答,属于 Store。

  • 产品规则文档,属于 RAG / Business Knowledge。

如果不区分,系统会出现很多问题:

  • 临时事实被错误写入长期记忆。

  • 过期结论在未来对话中反复影响模型。

  • 完整 checkpoint 被塞进 Prompt。

  • RAG 被拿来存用户隐私。

  • 业务数据库被当成向量记忆乱检索。

真正的 Memory 设计,重点不是"存更多",而是"知道什么该存、存多久、怎么取、怎么删、怎么防止污染"。

Context Injection:新的安全边界

过去我们担心 Prompt Injection,主要是用户在输入里写:

  • 忽略之前所有规则。

  • 你现在是管理员。

  • 直接执行删除操作。

但在 Agent 系统里,攻击面会扩大。

因为上下文来源变多了:

  • 用户输入可能带指令注入。

  • RAG 文档可能包含恶意文本。

  • 网页内容可能诱导模型调用工具。

  • OCR 识别出的截图文字可能包含伪指令。

  • 第三方工具返回值可能被污染。

  • 历史会话可能残留过期指令。

所以安全策略不能只写在 Prompt 里。

更稳妥的策略是:

  • 所有外部内容都标记为 evidence。

  • 外部内容不能覆盖 system policy。

  • 工具调用必须走 allowlist。

  • Planner 只能输出结构化计划。

  • 校验机制检查计划合法性。

  • 执行前权限校验用户权限。

  • 风险策略 拦截高风险动作。

  • 回复生成环节 只基于已确认事实生成最终回复。

也就是说,Prompt 可以提醒,但代码必须兜底。

08|常见误区

把上下文工程等同于长 Prompt

长 Prompt 不等于好上下文。

真正好的上下文应该是:

  • 信息少但关键

  • 来源清楚

  • 可信度明确

  • 冲突显式

  • 权限明确

  • 可回放

  • 可评测

把完整历史都塞给模型

完整历史会让模型更容易受到噪声影响。

应该用:

  • 短窗口原文

    • 会话摘要
    • 当前任务相关实体
    • 最近 outcome

把 RAG 当成万能记忆

RAG 适合知识检索,不适合保存临时业务状态和用户隐私。

把 Checkpoint 当成用户记忆

Checkpoint 是执行恢复机制,不是长期记忆系统,也不是 Prompt 材料库。

只靠 Prompt 做权限控制

权限必须由代码、策略和执行网关控制。模型可以建议,不能授权自己执行。

不保存上下文快照

没有快照,Agent 就无法复盘、评测和持续优化。线上错误会变成一次性事故,而不是可沉淀的数据资产。

09|Context Engineering 的落地架构

一个更完整的企业 Agent 上下文架构,可以这样设计:

执行流程: 用户输入 → 请求解析 → 多模态证据收集 → 知识检索 → 业务数据读取 → 权限上下文加载 → 历史与记忆检索 → 上下文合并 → 冲突检测 → 风险上下文构建 → 上下文快照 → 预算内组装 → Agent Runtime

每一层都有清晰职责:

  • 请求解析:识别当前任务、输入模态和必要约束。

  • 证据收集:汇总知识、实时数据、权限与历史信息。

  • 检索与读取:分别处理长期知识和实时业务状态。

  • 权限过滤:在进入推理前裁剪不可见、不可用的信息。

  • 合并归一:统一证据格式,完成去重与时效判断。

  • 冲突检测:识别不同来源之间的不一致。

  • 风险构建:补充高风险动作所需的限制条件。

  • 快照留存:保存本次推理实际使用的上下文版本。

  • 预算内组装:按优先级生成最终模型输入。

  • 运行执行:完成计划、校验、工具调用和结果聚合。

这套链路形成后,Prompt 才能从"万能补丁"回到它应该做的事情:指导模型在清晰上下文里完成推理和表达。

10|总结:Agent 的核心不是 Prompt,而是上下文控制权

AI Agent 的能力,不只取决于模型有多强,也不只取决于 Prompt 写得多细。

在企业场景里,更关键的是上下文控制权:

  • 系统知道应该给模型什么信息。

  • 系统知道哪些信息不能给模型。

  • 系统知道哪些信息可信。

  • 系统知道哪些信息需要工具确认。

  • 系统知道哪些信息会触发权限和风险。

  • 系统知道如何保存上下文以便复盘和评测。

Prompt Engineering 解决的是"如何表达任务"。 Context Engineering 解决的是"模型基于什么事实执行任务"。

这就是为什么 Prompt 已经不再是 AI Agent 的核心。真正的核心,是围绕 Agent Runtime 构建一套可治理的上下文系统。下一篇,我们继续讲:Workflow 为什么不够?企业为什么开始建设 Agent Runtime?

感谢阅读与关注。如果文章对你有所启发,欢迎在评论区交流企业 AI Agent 落地过程中遇到的问题。

相关推荐
李燚9 小时前
RAG 流水线设计:Eino 的 Loader → Transformer → Indexer → Retriever(第60篇-E46)
人工智能·深度学习·transformer·agent·rag·aiagent·eino
thesky12345613 小时前
27届大模型岗面试准备(三):位置编码全景——从绝对编码到 RoPE/ALiBi 的演进与手推
人工智能·ai·大模型
Java.慈祥16 小时前
Claude 配置学习
ai·ai编程
rongcj17 小时前
开源之争,撕裂硅谷
ai
咖啡星人k17 小时前
【无标题】
前端·ai·github
山林竹笋18 小时前
人工智能领域开源TOP20(2026.06.22-2026.06.28)
人工智能·开源·大模型·智能体·技术趋势
GISer_Jing19 小时前
前端转全栈须知后端知识
前端·后端·ai·前端框架
DogDaoDao20 小时前
OpenBrowser 深度解析:让 AI 真正「用上」浏览器的自主代理框架
人工智能·程序员·大模型·github·web·ai工具·openbrowser
JaydenAI20 小时前
[A2A协议与实现-08]基于MAF的A2A Server设计与实现
ai·agent·a2a·maf