{
  "practice": {
    "id": "prc_avoid_overlap",
    "title": "Avoid ambiguous, overlapping tool sets",
    "category": "scoping",
    "description": "If two tools could plausibly both apply to the same request, the model has to guess -- and guesses are where tool-use errors come from. Where possible, consolidate near-duplicate tools into one tool with a parameter, or make the boundary between them explicit in both descriptions.",
    "example_good": "One tool `search(source: \"docs\" | \"web\")` with a parameter, rather than two separately-described tools with fuzzy, overlapping \"search for information\" descriptions.",
    "example_bad": "Two tools, `search_docs` and `find_documents`, both described only as \"search for information\" with no distinguishing detail.",
    "source_note": "General best practice for multi-tool agent systems; consistent with this repo's own subagentcode.com AgentTool enum design, which keeps tool variants distinct rather than overlapping.",
    "created_at": "2026-07-02 08:28:30",
    "cite_as": "https://subagentdescriptions.com/api/practices/prc_avoid_overlap"
  }
}