← ClaudeAtlas

tool-designlisted

Design tools that agents can use effectively, including when to reduce tool complexity. Use when creating, optimizing, or reducing the set of tools available to an agent.
shipshitdev/skills · ★ 35 · Web & Frontend · score 74
Install: claude install-skill shipshitdev/skills
# Tool Design for Agents Design every tool as a contract between a deterministic system and a non-deterministic agent. Unlike human-facing APIs, agent-facing tools must make the contract unambiguous through the description alone: agents infer intent from descriptions and generate calls that must match expected formats. Every ambiguity becomes a potential failure mode that no amount of prompt engineering can fix. The unit of work for this skill is a single tool or a tool catalog. Deciding whether to introduce sub-agents belongs to `multi-agent-patterns`. This skill owns the interface layer that connects deterministic code to the agent. ## When to Activate Activate this skill when the unit of work is a tool: - Writing a new tool description, schema, or response format. - Debugging cases where the agent picked the wrong tool or generated malformed calls. - Consolidating an overlapping tool catalog (the classic "we have 17 tools, the agent picks wrong half the time" case). - Designing actionable error messages so the agent can self-correct. - Naming tools and parameters consistently across a catalog (MCP namespacing, verb-noun naming). - Evaluating a third-party tool against the consolidation principle before adding it. Do not activate this skill for adjacent work owned by other skills: - Deciding whether to split work across sub-agents or run a single agent with more tools: `multi-agent-patterns`. - Reducing the token weight of tool outputs at the trajectory level (observ