Anthropic's Thariq Shihipar shares the design philosophy behind Claude Code's tool system, drawing on real examples of iteration. Key lessons include: tools should match the model's capabilities (not too few, not too many); the AskUserQuestion tool went through three failed attempts before landing on a structured modal approach; the TodoWrite tool was replaced by a Task tool as models improved and multi-agent coordination became important; RAG was replaced by giving Claude a Grep tool so it could build its own context; and progressive disclosure via subagents (like the Claude Code Guide) lets new functionality be added without bloating the tool list. The core insight is that as model capabilities evolve, tools that once helped can start to constrain — requiring constant reassessment.

8m read timeFrom claude.com
Post cover image
Table of contents
Improving elicitation with the AskUserQuestion toolDesigning a search interfaceProgressive disclosure: the Claude Code Guide agent

Sort: