Agent Skills
返回列表
🤖

Agent工具契约设计

AI Agent 更新于 2026.08.30

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @kunlungrowth/kg-tool-design。

技能介绍

它解决什么问题

Agent 团队最常见的故障不是模型能力不足,而是工具层契约不清:工具描述含糊,模型不知道何时该用、何时不该用;报错只写 error,模型拿到失败却无从恢复;几十个细碎工具撑大系统提示,模型在 search_users、get_user_by_id、list_users 之间反复选错。工具是 Agent 与外部环境之间的边界,边界模糊,上下文再大也救不回来。

技能如何工作

核心信条是 工具即契约(Tools are contracts):给定 X 输入,返回 Y 输出,失败时给 Z 信号。工作流围绕这一原则展开:

  • 合并原则(Consolidation):语义相近、常被连续调用的操作合并为一个带参数的工具,用参数区分模式,而不是堆出 N 个工具。
  • 三段式描述:每个工具描述必须回答做什么(What)、何时用(When)、返回什么(Returns),避免「处理」「管理」这类模糊动词。
  • 可执行错误:错误要指明原因与下一步恢复动作(换参数、换源、重试),而不是一句「失败」。
  • 命名与 MCP 接入:命名用 动词-名词(如 search_web),MCP 工具用 ServerName:tool_name 形式(如 github:create_issue)避免跨服务重名。
  • 大输出策略:产生大结果时只回传摘要 + 文件路径,细节交给 filesystem-context 落盘检索。
  • 工具审计:用 references/template.md 中的审计清单逐条核对。

产出是结构化工件 ToolSpec:包含命名、MCP 归属、三段式描述、参数表、可执行错误、合并关系,可直接交给下游技能消费,并附命名/描述/错误三方面最该改的点。

适用边界

  • 不负责文件级溢出存储策略,交给 filesystem-context
  • 不涉及多代理拓扑,交给 multi-agent-patterns
  • 不做纯提示词层面的上下文压缩,交给 context-optimization

适合在新增/重构工具、设计 MCP 服务端工具、或排查「模型用错工具」问题时使用。

使用场景

  • 给 Agent 新增或重构工具,需要确定名称、参数和返回结构,降低模型选错工具的概率
  • 模型经常调用错误工具或看不懂返回,需要按契约思路重写描述与错误信息
  • MCP 服务暴露多个工具,需要统一命名格式与所属服务归属,避免跨服务重名冲突
  • 工具返回结果过大撑爆上下文,需要改为返回摘要加文件路径并交给 filesystem-context 落盘

适合人员

  • 设计 MCP 服务端工具的工程师,希望模型准确理解每个工具的输入输出与错误语义
  • 搭建 Agent 系统的应用开发者,需要把外部 API 封装成自描述的工具
  • 排查工具误用问题的调试人员,需要按审计清单逐条检查命名、描述和错误恢复线索