作者:互联网 时间: 2026-07-18 17:20:56
当下的AI Agent生态,正陷入一种似曾相识的混乱。

去年帮一家保险公司梳理Agent技能库,发现100多个Skill横七竖八地堆在一起——有的直接调API,有的内嵌业务逻辑,有的把数据获取和分析揉成一团。问架构师这些Skill怎么分类,回答是"按安装顺序排的"。再问两个Skill之间数据怎么流转,回答是"各写各的"。一个股票监控Skill自己爬数据、自己做分析、自己发消息,三件事耦合在同一个脚本里。换一个场景想复用其中的分析逻辑?做不到,只能重写。
这不是个例。几乎所有率先部署AI Agent的企业都面临同样的困境:Skill越堆越多,越堆越乱。缺乏统一的能力域划分,缺乏标准化的数据接口,缺乏清晰的组合规则,缺乏可复用的构建块沉淀。
听起来很熟悉?没错——这正是企业架构在20年前要解决的问题。当年企业信息化的混乱,和今天AI Skill的混乱,本质上是一回事:没有架构约束的开发,必然走向无序。
4A企业架构(业务架构BA、数据架构DA、应用架构AA、技术架构TA)加上TOGAF的构建块思想,为Agent Skill设计提供了一套经过验证的方法论。本文试图建立这二者之间的映射框架,并用实际案例说明其可行性。
企业架构的核心是四个问题:做什么(BA)、数据怎么流(DA)、用什么组合(AA)、底层怎么支撑(TA)。这四个问题同样适用于Skill设计。
| 架构层 | 核心问题 | Skill映射 | 输出物 |
|---|---|---|---|
| BA 业务架构 | 做什么业务 | Skill能力域划分、价值链映射 | 能力域地图 |
| DA 数据架构 | 数据怎么流 | Skill间数据流、信息交换标准 | 数据流图 接口规范 |
| AA 应用架构 | 怎么组合 | Skill组合关系、依赖图谱 | 组装蓝图 |
| TA 技术架构 | 底层怎么支撑 | Skill运行时、基础设施 | 技术选型方案 |
业务架构解决"干什么"的问题。4A框架下,BA层将企业能力分解为可组合的业务能力块,每个能力块对应一个或一组Skill。
我们以金融行业为例,将AI能力划分为6个能力域:
| 能力域 | 核心Skill | 典型场景 |
|---|---|---|
| 知识检索 | KnowledgeRAGHandler | 合规模范查询、产品手册问答 |
| 数据分析 | DataAnalysisHandler | 渠道效能分析、业绩归因 |
| 报告生成 | ReportGenHandler | 尽调报告、审计底稿 |
| 文本生成 | TextGenHandler | 营销话术、会议纪要 |
| 评分决策 | ScoringEngineHandler | 信用评估、风险评级 |
| 文档解析 | OCRParserHandler | 发票查验、进件核对 |
每个能力域是一个高内聚的Skill集合。能力域之间的边界由业务流程决定——知识检索和数据分属不同能力域,因为它们的业务语义和用户角色不同;但知识检索配合报告生成可以组装成更复杂的业务流程。
数据架构解决"数据怎么流"的问题。最关键的决策是:Skill之间交换数据的格式和协议。
我们的实践是采用JSON Schema作为Skill间数据交换的契约:
每个Handler声明输入Schema和输出Schema 上游Handler的输出Schema必须兼容下游Handler的输入Schema 非兼容的连接需要通过Adapter Skill桥接这种设计保证了Skill组合的数据安全性。在实际生产中,我们遇到过两个教训:
评分引擎的输出直接喂给报告生成器,但评分结果缺少置信度字段,导致报告措辞过于绝对。修复方式是在ScoringEngineHandler的输出Schema中增加confidence字段,并要求下游Handler根据置信度调整输出语气。
文档解析输出的数据结构包含嵌套的表格数据,数据分析Handler无法直接消费。解决方案是引入一个FlattenAdapter Skill,将嵌套结构展平为二维表格格式。
应用架构解决"怎么组合"的问题。这一层决定了Skill的组装粒度和复用边界。
我们使用三层组装模式:
原子Skill:单个Handler完成单一功能,如OCRParserHandler做发票识别 复合Skill:多个原子Skill按流程编排,如尽调报告 = OCR解析 数据分析 报告生成 场景Skill:面向最终用户的端到端体验,如企业尽调智能体 = 用户交互 尽调报告 风险评分组装的关键约束是:复合Skill只能调用原子Skill或子复合Skill,不能跨层直接调用Handler。这保证了每一层都有明确的抽象边界。
技术架构解决"底层怎么支撑"的问题。核心是三个选择:
Skill运行时:选择支持Skill热加载和版本管理的运行时 编排引擎:选择支持DAG编排的流程引擎 状态管理:选择支持Skill间状态共享的存储方案在我们的实践中,选择了Phase-Orchestrator作为编排引擎,它支持4-Phase强制链式调用和条件分支。状态管理采用结构化JSON传递,在每个Phase的入口和出口进行schema校验。
4A给出了Skill的架构框架,TOGAF的构建块(Building Block)思想则给出了Skill的可复用设计规范。
TOGAF定义的构建块有两个核心特征:
功能内聚:一个构建块封装一组紧密相关的功能 接口标准:构建块通过标准接口对外暴露能力,内部实现对外不可见这与Skill设计的要求完全一致。一个设计良好的Skill应该是一个标准的构建块:内部封装具体的Handler逻辑和数据访问,外部只暴露输入输出接口。
TOGAF将构建块分为两类:
架构构建块(ABB):定义能力边界和接口规范,类似于接口 解决方案构建块(SBB):ABB的具体实现,类似于实现类在Skill体系中,这对应两个层次:
| 层次 | 对应概念 | 示例 |
|---|---|---|
| ABB | Handler接口定义 | ScoringEngineHandler声明输入为客户数据、输出为评分结果 |
| SBB | 具体Skill实现 | 信用评分Skill实现逻辑回归评分,风险评级Skill实现规则引擎评分 |
ABB/SBB分离带来了两个直接好处:
实现可替换:同一个ABB可以有多种SBB实现,根据场景选择最适合的实现 接口驱动开发:先定义ABB(接口),再开发SBB(实现),降低开发耦合TOGAF的组合规则对Skill设计有三条约束:
单一职责:一个Skill只做一件事。违反此规则的典型表现是股票监控Skill同时做数据获取和分析 依赖显式声明:Skill的依赖关系必须在配置中声明,不允许隐式依赖 数据流方向单一:Skill之间的数据流必须是单向的,不允许循环依赖以企业尽调智能体为例,展示4A TOGAF如何指导一个完整Skill系统的设计。
企业尽调需要6个能力域覆盖:
| 能力域 | Skill | 业务价值 |
|---|---|---|
| 文档解析 | OCRParserHandler | 提取财务数据 |
| 知识检索 | KnowledgeRAGHandler | 查询合规要求 |
| 数据分析 | DataAnalysisHandler | 计算财务指标 |
| 评分决策 | ScoringEngineHandler | 输出风险评级 |
| 报告生成 | ReportGenHandler | 生成尽调报告 |
| 可视化 | VisualizationHandler | 风险仪表盘 |
6个能力域的数据流向:
文档解析 → 数据分析 → 评分决策 → 报告生成
知识检索 → 评分决策
评分决策 → 可视化
报告生成 ← 可视化
每个箭头代表一条JSON数据流,每条数据流都有对应的Schema约束。
两层组装:
原子层:6个Handler各自作为原子Skill 复合层:企业尽调Skill = 文档解析 数据分析 评分决策 报告生成知识检索和可视化作为可选增强,不纳入核心流程。
架构要先行但不求完美。先建立4A的骨架,让每个Skill至少知道自己属于哪个能力域、数据从哪来往哪去。细节在迭代中补齐,但框架不能缺。
构建块粒度由业务决定,不由技术决定。一个股票分析Skill之所以应该拆分为数据获取 分析 通知三个Skill,不是因为技术上做不到合一,而是因为业务上存在独立复用这三个能力的场景。
Schema是Skill间的契约,不是建议。松散的接口约定会随Skill数量增长而崩溃。只有强制执行Schema校验,才能确保Skill组合的可预测性。
4A和TOGAF不是新概念,但将它们系统性地映射到Agent Skill设计,当前实践尚少。希望本文的框架能为AI Agent的架构化发展提供一个起点。
本文涉及的技能和框架已开源,欢迎 Star / Fork / PR:
| 仓库 | 内容 | 协议 | 链接 |
|---|---|---|---|
| financial-ai-skills | 104个金融AI技能,零API费 | MIT | https://github.com/yuzhaopeng-up/financial-ai-skills |
| teleagent-skills | 5个通用Agent技能(评分引擎/证据链/数据聚合/可视化/NL2Query) | Apache 2.0 | https://github.com/yuzhaopeng-up/teleagent-skills |
| agent-cluster-comm | 5层集群通信技能(L1-L5) | Apache 2.0 | https://github.com/yuzhaopeng-up/agent-cluster-comm |
| skill-framework | 208技能分类体系 L0-L4框架 YAML模板 | MIT | https://github.com/yuzhaopeng-up/skill-framework |
| fintech-h5-demos | 12个零依赖金融H5演示 | MIT | https://github.com/yuzhaopeng-up/fintech-h5-demos |