Skip to content
cccskills
FreePublished on GitHub

tool-specification

当需要为 AI 定义工具接口、设计调用规范、实现工具发现与编排机制时调用此 skill。典型场景包括:设计 AI agent 的工具集、定义 JSON Schema/XML/TypeScript 格式的工具描述、实现工具权限控制与并行调度、设计子代理委托架构。

不适用于:定义 AI 身份(persona-design)、安全规则(safety-guardrails)、记忆存储(memory-system)。关键 trigger 信号:AI 需要调用外部 API 或服务、工具数量超过 10 个需要发现机制、需要区分工具权限层级、需要子代理并行执行、工具调用涉及敏感操作需要审批。

The English summary is being prepared. Showing the original description.

See how to install

Files included (1)

  • SKILL.md8.3 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

工具定义与集成模式 (Tool Specification)

R — 原文 (Reading)

Claude Code: ToolSearch 用于延迟加载, parallel tool calls, Agent tool 用于子代理委托 Claude Chrome: PURL 紧凑命令模式, 三层行动分类 (Prohibited/Explicit Permission/Regular) GPT-4o: Content Reference System, file_search with citation format ChatGPT Agent Mode: 三通道架构 (analysis/commentary/final), browser+computer+container tools Meta AI: 四个命名空间 (media, browser, meta_1p, container, third_party) with full JSON Schema Grok 4: Custom XML function call format (xai:function_call), code_execution with stateful REPL

I — 方法论骨架 (Interpretation)

工具定义与集成的核心设计模式包含五个正交维度:

  1. 定义格式 (Definition Format): JSON Schema(Meta AI, Claude)、XML(Grok 4 的 xai:function_call)、TypeScript 类型(Codex)——格式选择影响解析效率和可组合性。
  2. 权限门控 (Permission Gating): 三层模型——禁止层(Prohibited,绝不可执行)、显式授权层(Explicit Permission,需用户确认)、常规层(Regular,自动执行)。Claude Chrome 的三层分类是这一模式的典范。
  3. 发现机制 (Discovery Mechanism): 当工具数量庞大时(Jules 25+,Meta AI 四个命名空间),需要延迟加载(Claude Code 的 ToolSearch)或命名空间分组(Meta AI 的 media/browser/meta_1p/container/third_party)。
  4. 并行执行 (Parallel Execution): Claude Code 支持并行工具调用,Gemini CLI 通过子代理委托实现并行调查,ChatGPT Agent 通过三通道架构实现思考与行动的并行。
  5. 生命周期管理 (Lifecycle Management): 工具从发现到执行到结果处理的完整流程。Jules 的 plan/review/submit 三阶段生命周期和 Codex 的 Plan tool with skip rules 是这一模式的代表。

A1 — 案例分析 (Past Application)

案例 1: Claude Chrome 的三层权限门控

  • 问题: 浏览器操作涉及极高安全风险(支付、删除、导航到恶意站点),如何在不牺牲易用性的前提下实现安全控制?
  • 设计模式的使用: 将所有浏览器操作分为三层——Prohibited(如自动填写密码字段,绝不执行)、Explicit Permission(如点击购买按钮,必须用户确认)、Regular(如滚动页面,自动执行)。配合 critical_injection_defense 安全层,形成深度防御。
  • 结论: 三层分类比简单的"允许/禁止"二分法更灵活,既避免了过度限制又守住了安全底线。

案例 2: Meta AI 的四命名空间工具架构

  • 问题: Meta 的工具集横跨媒体生成、浏览器操作、第一方服务和第三方插件,如何管理这种复杂度?
  • 设计模式的使用: 将工具按功能域分为四个命名空间,每个命名空间内的工具共享统一的 JSON Schema 定义和权限策略。这种分组方式使得添加新工具成为局部操作,不影响其他命名空间。
  • 结论: 命名空间分组是工具数量超过 15 个时的必选策略,否则 system prompt 会变得不可维护。

案例 3: Gemini CLI 的子代理委托

  • 问题: 单一代理如何高效处理需要并行调查的复杂编程任务?
  • 设计模式的使用: 实现 codebase_investigator、cli_help、generalist、browser_agent 四种专用子代理。主代理作为编排者,将不同类型的子任务委托给专用子代理并行执行,最后汇总结果。
  • 结论: 子代理委托模式在复杂任务中显著优于单体代理,但需要精心设计子代理间的信息传递机制。

A2 — 触发场景 (Future Trigger) ★

用户会在什么情境下需要这个 skill?

  1. 设计 AI agent 的工具集,从零开始定义工具接口
  2. 工具数量增长到需要发现机制或分组策略
  3. 某些工具操作涉及安全风险,需要设计权限控制
  4. 需要实现子代理或并行执行架构
  5. 需要选择工具定义格式(JSON Schema / XML / TypeScript)

语言信号

  • "AI 需要调用外部工具/API"
  • "工具太多,模型经常用错"
  • "某些操作需要用户确认才能执行"
  • "如何设计 function calling 的 schema"
  • "需要子代理并行处理"

与相邻 skill 的区分

  • 与 safety-guardrails 的区别: tool-specification 中的权限门控是工具层面的操作控制("这个按钮能不能按"),safety-guardrails 是内容层面的行为约束("能不能讨论这个话题")。两者互补但不重叠。
  • 与 persona-design 的区别: persona-design 决定 AI "是谁",tool-specification 决定 AI "能做什么"。

E — 可执行步骤 (Execution)

  1. 步骤 1: 选择定义格式

    • 评估工具使用场景:标准 API 调用用 JSON Schema,需要与 XML 生态集成用 XML 格式,内部工具可用 TypeScript 类型
    • 为每个工具编写接口定义,包含名称、描述、参数列表和返回值格式
    • 完成标准: 格式选择有明确理由,且每个工具的定义能被模型准确理解和调用
  2. 步骤 2: 实现三层权限门控

    • 将所有工具操作分类:Prohibited(自动拒绝)、Explicit Permission(需确认)、Regular(自动执行)
    • 为 Explicit Permission 层设计用户确认流程和超时机制
    • 完成标准: 每个工具操作都有明确的权限层级分类,且分类结果经过安全评审
  3. 步骤 3: 设计发现与分组策略

    • 工具数量 <10: 全量列举在 system prompt 中
    • 工具数量 10-25: 按功能域分组,使用命名空间
    • 工具数量 >25: 实现延迟加载机制(如 ToolSearch),按需发现
    • 完成标准: 模型在任何场景下都能在 2 轮对话内找到并调用正确的工具
  4. 步骤 4: 设计并行执行与委托机制

    • 识别可并行的工具调用(如多个独立搜索、多文件读取)
    • 设计子代理委托协议:任务描述格式、结果返回格式、错误处理
    • 完成标准: 并行调用不产生竞态条件,子代理结果能被主代理正确汇总
  5. 步骤 5: 定义生命周期与错误处理

    • 设计工具调用的生命周期:发现 → 参数构造 → 权限检查 → 执行 → 结果解析 → 错误恢复
    • 为每个阶段定义失败处理策略
    • 完成标准: 任何工具调用失败都不会导致 agent 停滞,且有明确的降级策略

B — 边界 (Boundary) ★

不要在以下情况使用此 skill

  • AI 产品不需要调用任何外部工具(纯对话场景)
  • 工具集成属于后端工程问题而非 prompt 设计问题(如 API 实现)
  • 试图通过工具设计解决安全问题(安全规则应在 safety-guardrails 中定义)
  • 工具数量极少(<5 个)且无安全风险(简单列举即可,无需复杂设计)

常见失败模式

  • 工具描述歧义: 工具的自然语言描述不够精确,导致模型在边界情况下调错工具。应使用具体示例而非抽象描述。
  • 权限层级过度简化: 所有操作都设为 Regular 或都需要确认,前者导致安全风险,后者导致用户体验灾难。应严格使用三层分类。
  • 忽略工具发现成本: 大量工具全部写入 system prompt,消耗宝贵的上下文窗口。应按需加载。
  • 子代理信息孤岛: 子代理之间无法共享上下文,导致重复工作或信息矛盾。应设计明确的信息传递协议。
  • 缺少错误恢复: 工具调用失败后 agent 直接放弃或陷入重试循环。应定义降级策略和最大重试次数。

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

当系统提示词需要设计多代理协作架构、子代理专业化分工、代理间上下文隔离与传递机制、任务生命周期管理时调用此 Skill。适用于 AI Agent 平台、多工具编排系统、代码审查流水线、跨应用协作场景等。不适用于:单代理系统(无委派需求)、简单工具调用(无子代理概念)、纯 API 编排(无 AI 决策)。当需求聚焦于"单代理内的对话路由"而非"多代理间的任务分配"时,应该用 conversation-flow 而非本 Skill。

The English summary is being prepared. Showing the original description.

kangarooking/system-prompt-skills213Updated May 4, 2026

当系统提示需要设计引用格式、信息溯源机制、来源标注系统时调用。适用于文档问答、搜索增强生成(RAG)、代码引用、浏览器辅助等需要让用户追溯信息来源的场景。不适用于纯创作类输出(如故事、诗歌),不适用于无需溯源的常识问答,也不适用于注入防御(虽然两者都涉及内容可信度)。

The English summary is being prepared. Showing the original description.

kangarooking/system-prompt-skills213Updated May 4, 2026

当系统提示面向编程代理(Coding Agent)场景时调用。适用于构建代码编辑、文件操作、Git 工作流、自动化编程助手的系统提示。不适用于代码解释或教学场景(无文件修改),不适用于 DevOps 基础设施配置(非代码层),不适用于纯对话式代码问答(无工具调用)。

The English summary is being prepared. Showing the original description.

kangarooking/system-prompt-skills213Updated May 4, 2026

当系统提示词需要设计 token 预算分配、上下文压缩策略、延迟加载机制、记忆持久化方案时调用此 Skill。适用于长对话 AI 助手、代码编辑器集成、研究型 Agent、多会话系统等需要精细管理上下文窗口的场景。不适用于:单轮交互系统(无上下文管理需求)、纯无状态 API(无对话历史)、简单的 prompt 模板设计。当需求聚焦于"如何搜索外部信息"而非"如何管理已有信息"时,应该用 search-integration 而非本 Skill。

The English summary is being prepared. Showing the original description.

kangarooking/system-prompt-skills213Updated May 4, 2026

当系统提示词需要定义 AI 如何分类用户意图、路由到不同处理流程、决定澄清策略和自主度级别时调用此 Skill。适用于多任务型 AI 助手、客服机器人、编程工具、研究助手等需要结构化对话管理的场景。不适用于:纯问答型系统(无任务执行)、单轮交互(无对话状态)、简单的 prompt 模板(无路由逻辑)。当需求仅涉及"输出什么格式"而非"如何决定输出什么"时,应该用 output-formatting 而非本 Skill。

The English summary is being prepared. Showing the original description.

kangarooking/system-prompt-skills213Updated May 4, 2026

当系统提示需要防御提示注入、越狱攻击、社会工程、内容信任边界突破等安全威胁时调用此 Skill。适用于构建 AI Agent、聊天机器人、文档处理助手等任何接受外部输入的系统提示。不适用于纯内部工具调用场景或已完全隔离的沙箱环境,也不适用于 UI 布局或响应格式设计。

The English summary is being prepared. Showing the original description.

kangarooking/system-prompt-skills213Updated May 4, 2026

See all skills by kangarooking

Report a problem with this skill