tool-design

Design clear agent tool interfaces with explicit contracts and error handling.

Updated Dec 5, 2025
One-click install
npx skills add https://github.com/mhismail3/dotfiles --skill tool-design
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: tool-design
Source: https://github.com/mhismail3/dotfiles/tree/main/claude/skills/tool-design
Command: npx skills add https://github.com/mhismail3/dotfiles --skill tool-design

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) and references (resource) components.

What problem does it solve?

Tools are the contracts that govern how agents interact with the world. Without clear tool descriptions, agents guess, leading to failures and brittle behavior. This Skill guides you in designing, documenting, and standardizing tool interfaces that agents can reliably invoke.

Core Features & Use Cases

  • Tool Description as Prompt: Write precise, actionable tool descriptions that answer: what the tool does, when to use it, and what it returns.
  • Consolidation Principle: Favor a single comprehensive tool over many narrow ones to reduce cognitive load.
  • Error Handling & Recovery: Design helpful error messages that guide agents to recover gracefully.

Quick Start

Define a new tool named 'fetch_user' with inputs id and output format, and specify its return structure and error cases.

Frequently Asked Questions about tool-design

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I design tool interfaces that agents can reliably use?

Design clear tool interfaces by writing precise descriptions that specify what the tool does, when to use it, and what it returns. Include explicit parameter requirements, structured response formats, and error handling guidance so agents understand both success and failure paths.

What makes a good tool description for agent systems?

A good tool description answers three questions: what does the tool do, when should it be invoked, and what does it return. Include concrete examples of inputs and outputs, required parameters with types, and common error cases with recovery steps.

Why do agents fail when calling tools?

Agents fail when tool descriptions are vague, parameters are poorly documented, or error messages don't guide recovery. Tool-design failures stem from unclear contracts between agent and tool—comprehensive descriptions with explicit naming, consistent formats, and helpful error messages prevent these breakdowns.

Should I create many specialized tools or fewer comprehensive ones?

Favor fewer comprehensive tools over many narrow ones. Consolidating related functionality into single well-documented tools reduces cognitive load on agents, minimizes confusion about which tool to call, and makes error handling more predictable.

How do I handle tool errors so agents can recover?

Design error messages that guide agents toward recovery by explaining what went wrong and what action to take next. Structured error responses with specific failure reasons and suggested corrections help agents adapt instead of failing silently.

Can I standardize tool conventions across my codebase?

Yes. Establish consistent naming patterns, parameter structures, response formats, and error-handling conventions across all tools. Standardization reduces agent confusion, makes tools predictable, and simplifies maintenance as your tool ecosystem grows.