30.0 / 30
What changed in the harness
Selection accuracy 98→100, token cost up 2%, unconfirmed writes 100%→100%.
Category breakdown
Where the score comes from.
Earned points across the four signals Gradable measures. Safety and Legibility are scored out of 30; Economics and Discoverability are scored out of 20.
01Safety
02Legibility
28.8 / 30
03Economics
20.0 / 20
04Discoverability
19.2 / 20
Highest-impact fix
Estimated gain +1 pointRewrite 1 underspecified tool description
State each tool's behavior, explain every parameter, and declare return semantics, prioritizing tools exercised by failed selection tasks.
Description evidence
Defects and rewrites.
1 defect found across the exposed tool descriptions. Suggested rewrites make purpose, inputs, boundaries, and returns easier for an agent to understand.
| Tool | Defect types | Suggested rewrite |
|---|---|---|
explore_name |
no_return_description |
Explore a base name across multiple TLDs (.com, .io, .ai, .co, .dev, .app, .net, .xyz, .org) to see which variations are available. Great for brainstorming domain names for a new project. Returns a list of the checked TLD variations with their availability status and pricing for each. Powered by AgentDomainService.com. |
Selection evidence
Confusable tool pairs.
3 pairs where similar names or overlapping descriptions may send an agent toward the wrong tool.
| Tool A | Tool B | Confidence | Why they collide |
|---|---|---|---|
check_domain |
analyze_domain |
medium | A task like 'is coolstartup.com a good domain?' could trigger either checking availability or analyzing brandability/SEO, since both take a single domain string and 'good' is ambiguous between 'available' and 'high quality'. |
brainstorm_domains |
analyze_domain |
low | Both involve evaluating domain name quality, but brainstorm requires a project description and generates new names while analyze requires an existing domain string, making the inputs distinct enough to reduce confusion. |
check_domain |
brainstorm_domains |
low | A vague request like 'find me a domain for my app' could momentarily seem servable by either, but check_domain requires a specific domain while brainstorm_domains requires a description, so the required inputs clearly disambiguate intent. |
Compare the field