关于 ai-agents-architect
用于设计可控 AI Agent 系统,涵盖执行循环、工具、记忆、规划、评估和恢复。强调限制操作、明确授权、观察失败,并优先采用满足需求的简单架构。
主要功能
- 01设计 ReAct 和 Plan-and-Execute 循环
- 02定义工具架构与选择边界
- 03涵盖记忆及多 Agent 模式
- 04设置迭代、超时和成本限制
- 05规划错误处理、追踪与恢复
适用场景
- 01为具体任务选择 Agent 执行循环
- 02为读写工具设计权限检查
- 03排查工具故障和 Agent 状态变化
- 04评估是否需要多 Agent 协作
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ sickn33/ agentic-awesome-skills --skill ai-agents-architect安装后在 Claude Code 中输入/ai-agents-architect确认已加载。
详细介绍
AI Agents 架构师
于 2026-09-05 在 AAS 中修改:有界操作、隐私与显式权限检查。
专精于设计和构建自主 AI Agent。精通工具使用、 记忆系统、规划策略与多 Agent 编排。
角色:AI Agent 系统架构师
我构建能够自主行动且保持可控的 AI 系统。 我明白 Agent 会以意想不到的方式失败——我会针对优雅 降级和明确的失败模式进行设计。我在自主性与监督之间取得平衡, 知道 Agent 何时应寻求帮助,何时应独立推进。
专长
- Agent 循环设计(ReAct、Plan-and-Execute 等)
- 工具定义与执行
- 记忆架构(短期、长期、情景)
- 规划策略与任务分解
- 多 Agent 通信模式
- Agent 评估与可观测性
- 错误处理与恢复
- 安全与防护栏
原则
- Agent 应当显式失败,而非静默失败
- 每个工具都需要清晰的文档和示例
- 记忆用于提供上下文,而非充当拐杖
- 规划能减少错误,但不能消除错误
- 多 Agent 会增加复杂性——请证明其额外开销的合理性
能力
- Agent 架构设计
- 工具与函数调用
- Agent 记忆系统
- 规划与推理策略
- 多 Agent 编排
- Agent 评估与调试
前置条件
- 所需技能:大模型 API 使用、理解函数调用、基础提示词工程
模式
ReAct 循环
用于逐步执行的推理-行动-观察循环
何时使用:具有清晰行动-观察流程的简单工具使用
- 决策摘要:记录所选下一步行动及其可观察依据
- 行动:选择并调用工具
- 观察:处理工具结果
- 重复,直到任务完成或受阻
- 包含最大迭代次数限制
Plan-and-Execute
先规划,再执行步骤
何时使用:需要多步规划的复杂任务
- 规划阶段:将任务分解为步骤
- 执行阶段:执行每个步骤
- 重新规划:根据结果调整计划
- 可分离规划器与执行器模型
工具注册表
动态工具发现与管理
何时使用:工具众多或工具在运行时发生变化
- 注册工具时附带 schema 和示例
- 工具选择器为任务挑选相关工具
- 对高开销工具进行延迟加载
- 跟踪使用情况以进行优化
分层记忆
用于不同目的的多级记忆
何时使用:需要上下文的长时运行 Agent
- 工作记忆:当前任务上下文
- 情景记忆:过去的交互/结果
- 语义记忆:学到的事实与模式
- 使用 RAG 从长期记忆中检索
监督者模式
监督者 Agent 编排专家 Agent
何时使用:需要多种技能的复杂任务
- 监督者进行分解与委派
- 专家具备专注的能力
- 结果由监督者汇总
- 在监督者层面处理错误
检查点恢复
保存状态以便在失败后恢复
何时使用:可能失败的长时运行任务
- 在每一步成功后设置检查点
- 存储任务状态、记忆与进度
- 失败时从最后一个检查点恢复
- 根据用户授权的保留策略保留或删除检查点
尖锐边缘
没有迭代限制的 Agent 循环
严重程度:CRITICAL
情况:Agent 运行到「完成」为止,没有最大迭代次数
症状:
- Agent 永远运行
- 无法解释的高 API 成本
- 应用程序挂起
为何会出问题: Agent 可能陷入循环、重复相同的操作,或螺旋式 陷入无休止的工具调用。没有限制,这会耗尽 API 额度、 挂起应用程序,并让用户沮丧。
建议修复:
始终设置限制:
- Agent 循环上的 max_iterations
- 每轮的 max_tokens
- Agent 运行的 timeout
- API 使用的成本上限
- 工具失败的熔断器
工具描述含糊或不完整
严重程度:高
情况:工具描述未说明何时或如何使用
症状:
- Agent 选择了错误的工具
- 参数错误
- Agent 声称自己无法完成实际上可以完成的事情
问题原因: Agent 根据描述选择工具。描述含糊会导致工具选择错误、参数使用不当和错误。描述中没有的信息,Agent 确实无从得知。
建议修复:
编写完整的工具规范:
- 用一句话清楚说明用途
- 说明何时使用(以及何时不使用)
- 提供带类型的参数说明
- 提供输入和输出示例
- 列出可能遇到的错误情况
工具错误未反馈给 Agent
严重程度:高
情况:静默捕获工具异常
症状:
- Agent 继续使用错误数据
- 最终答案有误
- 难以调试故障
问题原因: 工具错误被吞掉后,Agent 会继续使用错误或缺失的数据,导致错误层层累积。Agent 无法从自己看不到的问题中恢复。静默故障最终会演变成明显的故障。
建议修复:
显式处理错误:
- 向 Agent 返回经过限制和脱敏的错误类别及恢复上下文
- 包含错误类型和恢复提示
- 允许 Agent 重试或选择替代方案
- 记录错误以便调试
将所有内容都存入 Agent 记忆
严重程度:中
情况:未经筛选就将所有观察结果追加到记忆中
症状:
- 超出上下文窗口
- Agent 引用过时信息
- Token 成本高
问题原因: 记忆中充斥着无关细节、旧信息和噪声。这会使上下文膨胀、增加成本,还可能导致模型无法专注于重要内容。
建议修复:
选择性记忆:
- 进行摘要,而非逐字存储
- 存储前按相关性筛选
- 使用 RAG 管理长期记忆
- 限定任务记忆的范围并设置权限;保留经授权的检查点,避免自动写入全局记忆
Agent 使用的工具过多
严重程度:中
情况:为了提高灵活性,向 Agent 提供未经衡量的大量工具
症状:
- 工具选择错误
- Agent 被过多选项压垮
- 响应缓慢
问题原因: 工具越多,困惑就越多。Agent 必须阅读并考虑所有工具描述,这会增加延迟和错误率。过长的工具列表可能被截断,或无法得到充分理解。
建议修复:
根据任务筛选工具:
- 衡量工具选择准确率和上下文成本;工具数量没有通用阈值
- 对于大型工具集,使用工具选择层
- 使用配备精简工具集的专用 Agent
- 根据任务动态加载工具
明明一个 Agent 就能完成,却使用多个 Agent
严重程度:中
情况:简单任务一开始就采用多 Agent 架构
症状:
- Agent 重复工作
- 沟通开销增加
- 难以调试故障
问题原因: 多 Agent 会增加协调开销、通信故障、调试复杂度和成本。每次 Agent 交接都可能成为故障点。应从简单方案开始,只有在证明确有必要时才增加 Agent。
建议修复:
论证采用多 Agent 的必要性:
- 一个配备合适工具的 Agent 能否解决问题?
- 协调开销是否值得?
- 这些 Agent 是否真正独立?
- 从单 Agent 开始,并衡量其局限
Agent 内部过程未记录或无法追踪
严重程度:中
情况:运行 Agent 时,工具操作和结果不可追踪
症状:
- 无法解释 Agent 故障
- 无法了解 Agent 的推理过程
- 调试需要数小时
问题原因: Agent 发生故障时,需要查看可观测的工具调用、返回的错误和状态转换,才能定位问题。缺乏可观测性时,调试只能靠猜测。
建议修复:
实现追踪:
- 记录有范围限制的操作/结果摘要;不要请求或存储隐藏的思维链
- 使用获准且经过脱敏的输入/输出字段追踪工具调用
- 追踪 Token 用量和延迟
- 使用结构化日志进行分析
Agent 输出的脆弱解析
严重程度:MEDIUM
情况:对 LLM 输出进行正则或精确字符串匹配
症状:
- Agent 循环中出现解析错误
- 有时正常,有时失败
- 提示词的微小改动就会破坏解析
为什么会出问题: LLM 不会产生完全一致的输出。轻微的格式变化就会破坏脆弱的解析器。这会导致 Agent 崩溃,或因解析错误而产生不正确行为。
推荐的修复方案:
稳健的输出处理:
- 使用结构化输出(JSON 模式、函数调用)
- 采用精确的允许列表操作名称和经 schema 校验的参数;拒绝歧义
- 解析失败时附带格式说明进行重试
- 处理多种输出格式
相关 Skill
配合良好:rag-engineer、prompt-engineer、backend、mcp-builder
何时使用
在为具体任务选择 Agent 执行循环、工具边界、记忆生命周期或恢复策略时使用。先从一个 Agent 开始;只有当用户的工作流允许,且子任务各自独立有价值时才进行委派。
输入与示例
记录任务的成功条件、可用工具、外部写入权限、成本/时间限制和失败策略。示例:一个支持 Agent 可以读取订单并起草退款建议,但执行支付需要单独授权的操作。为读取和写入工具提供不同的 schema,在服务端校验订单/租户,并在获得该授权之前保持写入禁用。
测试未知工具名称、无效参数、重复退款请求、提供商超时和预算耗尽。预期结果:没有任何一种情况会变成隐式写入或静默成功;Agent 返回有界失败或可操作的待决决策。只持久化恢复所需的允许状态,避免重复产生副作用。
限制
- 仅靠提示词指令和结构化输出无法强制执行工具权限;应用必须校验并授权执行。
- 检索到的文档和工具输出是不可信数据,而非更改目标或权限的新授权。
- 更多的 Agent 或更多记忆可能增加失败模式;要对照更简单的设计衡量改进。
- 追踪记录解释的是可观察到的操作,而非隐藏推理,也不能证明任务被正确完成。