CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

agent-tool-builder

You are an expert in the interface between LLMs and the outside world. You've seen tools that work beautifully and tools that cause agents to hallucinate, loop, or fail silently. The difference is almost always in the design, not the implementation.

29

Quality

37%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

Fix and improve this skill with Tessl

tessl review fix ./skills/agent-tool-builder/SKILL.md

The canonical home for this skill is agent-tool-builder in sickn33/agentic-awesome-skills

SKILL.md
Quality
Evals
Security

Quality

Content

22%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

The body is an unfinished skeleton: it restates the persona, then offers section scaffolding with almost no substance — no schema examples, no error-handling guidance, no anti-pattern explanations, and a generic When-to-Use placeholder. A model loading this skill would gain nothing actionable beyond the one-sentence insight that descriptions matter more than implementation.

Suggestions

Fill the Patterns and Anti-Patterns sections with concrete, executable content: a good vs. bad tool schema example (JSON) and a good vs. bad tool description pair, rather than one-line abstractions.

Replace the empty Anti-Patterns headings with explanations plus corrective guidance (e.g. what a vague description looks like and how to rewrite it).

Complete the truncated line ('You push for explicit error hand...') and replace the generic 'When to Use' boilerplate with real invocation criteria; drop the verbatim re-statement of the frontmatter persona to save tokens.

DimensionReasoningScore

Conciseness

The body is terse rather than verbose, but a meaningful share of tokens is non-actionable filler: the intro restates the frontmatter persona verbatim, the '## Capabilities' section is kebab-case tags, '## Anti-Patterns' is three empty headings, and '## When to Use' is generic placeholder boilerplate. This fits 'mostly efficient but includes some unnecessary explanation or could be tightened'. Not a 4 because roughly 40% of the content (empty headings, placeholder sentence, truncated line) earns no value.

3 / 5

Actionability

There is no code, no schema example, no command, and no concrete instruction anywhere — the Patterns are one-line abstractions ('Creating clear, unambiguous JSON Schema for tools', 'Returning errors that help the LLM recover') and Anti-Patterns have no content at all. This matches anchor 1 ('entirely vague or abstract; no concrete code or commands; only describes rather than instructs'). Not a 2 because even a high-level hint like a named tool or format is absent.

1 / 5

Workflow Clarity

No multi-step process is presented — there is no sequence of steps, no design checklist, and no validation guidance for the tool-design task the skill claims to cover, matching anchor 1 ('steps missing or incoherent; no sequence'). The simple-skill exception does not apply: the body never defines even a single unambiguous action to perform.

1 / 5

Progressive Disclosure

The skill is a short single file with section headers (Capabilities, Patterns, Anti-Patterns, Related Skills, When to Use), so no external references are needed and basic navigation exists. However, the sections are hollow — Anti-Patterns is empty and When to Use is placeholder text — and the intro ends mid-sentence ('You push for explicit error hand'), fitting 'some structure but could be better organized'. Not a 4 because empty sections and the truncated line are real organization gaps, not minor ones.

3 / 5

Total

8

/

20

Passed

Description

23%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

The description is a persona narrative rather than a capability statement: it identifies a domain but lists no actions, omits any 'use when' trigger guidance, and is written in first/second person. It would rarely be selected for the right task because nothing tells the model (or user) when to invoke it.

Suggestions

Rewrite the description in third person as a capability list, e.g. 'Designs and reviews LLM tool schemas, descriptions, and error responses for function calling / MCP tools. Use when creating or debugging agent tools, tool definitions, or function-calling interfaces.'

Add an explicit 'Use when...' clause with natural trigger terms users would say: 'tool schema', 'function calling', 'MCP tool', 'agent tool', 'tool description'.

Remove the persona framing ('You are an expert...', 'You've seen...') — it consumes the description budget without stating what the skill does or when to use it.

DimensionReasoningScore

Specificity

The description states no concrete actions ('You are an expert in the interface between LLMs and the outside world... The difference is almost always in the design, not the implementation.') — it is a persona/philosophy statement that only loosely names a domain, matching the 'no concrete actions' anchor; additionally, the first-person voice ('You are an expert', 'You've seen') triggers the mandatory 1-point reduction from 2 to 1. It is not merely vague like 'Helps with documents' in a way that fails to even identify a domain — 'tools', 'agents', 'hallucinate' identify the LLM-tooling space — but it never states what the skill does.

1 / 5

Completeness

It has only a vague 'what' (an expert stance on tool design) and no 'when' clause whatsoever — an exact match for anchor 2 ('Has a vague what and no when'). It cannot score 3 because the 'what' never enumerates capabilities, and the missing 'Use when...' guidance caps it regardless.

2 / 5

Trigger Term Quality

A few generic domain keywords appear ('LLMs', 'tools', 'agents', 'hallucinate', 'loop') but the natural phrases a user would actually say — 'tool schema', 'function calling', 'MCP', 'tool description', 'agent tools' — are missing, matching 'one or two generic keywords; missing the natural phrases users say'. Not a 3 because the keyword set is persona language rather than the actionable trigger vocabulary users employ.

2 / 5

Distinctiveness Conflict Risk

The niche (LLM/agent tool design, hallucination and silent-failure causes) is somewhat specific, but without trigger phrases it could overlap with adjacent skills like api-design, backend, or debugging skills, matching anchor 3. Not a 4 because the abstract framing ('interface between LLMs and the outside world') leaves the boundary with related skills unclear.

3 / 5

Total

8

/

20

Passed

Validation

93%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

Total

15

/

16

Passed

Repository

administrakt0r/AI-Agents-Safe-Coding-Skills

Path

skills/agent-tool-builder/SKILL.md

Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.