Abstract
Tool definitions are commonly validated one at a time, although an agent selects tools from a set of alternatives. Consequently, two descriptions may each be syntactically valid and individually accurate while jointly failing to explain why one tool should be selected instead of the other. We call the missing distinguishing information a tool differentia.
This note presents H1.6, a deterministic static analysis implemented in LintLang. It extracts meaning-bearing terms from tool names and descriptions, normalizes selected synonyms, and compares tool pairs within one parsed input. It reports mutual nondistinction when neither member carries a distinguishing analyzed term and directional domination when one member contributes none beyond those of the other.
The method requires no model calls and is suitable for local and continuous-integration use. It is deliberately bounded: its lexicon is finite, its comparison scope is local, and the absence of a finding does not establish semantic distinguishability or runtime selection correctness.
Keywords: AI agents · static analysis · tool descriptions · function calling · linting · software reliability
1The relational problem
Agents select among alternatives, but tool definitions are commonly validated one at a time. Two definitions may each satisfy a schema and be factually accurate while still failing to state why one should be selected rather than the other. The defect belongs to the relation between neighboring definitions, not necessarily to either definition alone.
The note distinguishes intrinsic adequacy — whether a definition is complete and valid in isolation — from relational adequacy: whether it supplies information that separates the tool from plausible alternatives in the same selection namespace. Tool differentia names the missing distinguishing information at that boundary.
2Reference behavior
LintLang H1.6 combines each extracted tool's name and description, tokenizes the text, filters fixed low-information terms, and applies a bounded synonym lexicon. The remaining analyzed terms are compared pairwise within one parsed input. The present term model does not include parameter schemas, output schemas, side effects, latency, authorization requirements, or implementation behavior.
The check stays silent when either definition yields fewer than two analyzed terms. It also preserves explicitly named tool boundaries rather than suppressing a declared alias. It is deterministic and makes no model or network calls.
3How a finding should be read
For a pair of tools, H1.6 computes each direction's analyzed terms that are absent from the other. If neither direction contributes a term, it reports mutual nondistinction. If only one direction contributes no additional term, it reports directional domination. Both are facts about the implemented term model, not proofs of semantic equivalence.
A clean result does not establish that an agent will distinguish the tools or select the correct one at runtime. Tool choice also depends on model behavior, system instructions, user requests, tool ordering, schemas, examples, and surrounding context.
4Authoring use and limits
The practical prompt for a tool author is contrastive: under what condition should this tool be selected, when should it not be selected, and what neighboring tool should handle the nearest confusable case? Truthful boundary clauses are more useful than decorative language that merely creates lexical uniqueness.
H1.6 is a conservative authoring signal, not a semantic verdict. Its finite, English-specific lexicon can miss indirect paraphrases and domain-specific equivalence. Precision and recall have not been measured against a labeled external corpus; such a corpus and a tool-selection study are future evidence steps.
Implementation
Open-source reference implementation
LintLang v0.3.8
This note documents LintLang H1.6: a bounded pairwise check that compares tool names and descriptions within one parsed input.
Cite this note
Bosch, R. (2026). Tool Differentia: Relational Static Analysis for AI Agent Tool Descriptions (Version 1.0.1). Zenodo. https://doi.org/10.5281/zenodo.21817243
@misc{bosch2026tooldifferentia,
author = {Bosch, Rolando},
title = {Tool Differentia: Relational Static Analysis for AI Agent Tool Descriptions},
year = {2026},
publisher = {Zenodo},
doi = {10.5281/zenodo.21817243},
url = {https://doi.org/10.5281/zenodo.21817243},
note = {Technical note, Version 1.0.1}
}On the record
The Zenodo record is the citable public deposit. This site hosts the same PDF and provides a compact HTML reading edition; the technical note itself defines the full scope, references, and limitations.