CtrlK
BlogDocsLog inGet started
Tessl Logo

web-search-exa

Neural web search - find similar content, extract pages, and run deep research

44

Quality

56%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Low

Low-risk findings worth noting

Fix and improve this skill with Tessl

tessl review fix ./skills/research-tools/capabilities/web-search-exa/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

42%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 a raw API dump: duplicated parameter lists, several malformed curl examples, and a truncated section, with the async-research workflow only implied. It needs copy-paste-ready examples, deduplicated parameters moved to a reference file, and an explicit task-polling loop.

Suggestions

Fix the broken curl blocks in Search, Find similar, and Get contents so the JSON body is inside the -d string (e.g. -d '{"api":"exa","path":"/search","body":{"query":"...","numResults":10,"contents":{"text":true}}}'), and use consistent parameter names (numResults vs num_results, urls vs ids).

Move the full per-endpoint parameter reference into a separate references/ file (e.g. references/api.md) and keep only a working example plus 2-3 key parameters per endpoint in SKILL.md; this also removes the verbatim duplication between Search and Find similar.

Complete the truncated Answer description and add an explicit research-task workflow: create task → save researchId → poll GET /research/v1/{researchId} until status is finished → read results, including what to do on failure or timeout.

DimensionReasoningScore

Conciseness

The "Find similar links" section repeats the entire Search filter parameter list verbatim (includeDomains, excludeDomains, crawl/published dates, includeText, excludeText, context, moderation — ~14 duplicated lines), and parameter descriptions repeat the same boilerplate text three times over. Not anchor 3: this is systematic duplication and padding, not occasional looseness.

2 / 5

Actionability

Setup and four curl examples are concrete, but the Search, Find similar, and Get contents examples are syntactically broken — the JSON body ("query": ..., "num_results": ...) sits outside the -d quoted string, leaving a stray '}' — and the Answer description cuts off mid-sentence ("A direct answer for specific queries. (i.e."). Not anchor 4: a third of the code blocks are not executable as written.

3 / 5

Workflow Clarity

A rough sequence exists for research tasks ("Use the unique researchId returned from POST /research/v1 to poll until the task is finished") but steps are scattered across endpoint sections with no explicit checkpoints, no polling-loop guidance, and no error recovery. Not anchor 4: checkpoints for the async create→poll→fetch flow are implicit at best.

3 / 5

Progressive Disclosure

Section headers (Capabilities, Usage, per-endpoint subsections) provide navigation, but ~200 lines of full API parameter reference are inlined in SKILL.md with no separate reference files and no pointers to move detail off the main page. Not anchor 2 because real structure exists; not anchor 4 because the bulk parameter documentation clearly belongs in a reference file.

3 / 5

Total

11

/

20

Passed

Description

50%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 concise and names real capabilities, but it reads as a truncated feature list: no trigger guidance, thin keyword coverage, and no differentiation from generic web-search skills. It answers "what" adequately but never "when".

Suggestions

Add an explicit trigger clause, e.g. "Use when the user asks to search the web, research a topic, find pages similar to a given URL, or extract content from specific URLs."

Enumerate the concrete capabilities more completely (answers with sources, async deep-research tasks with citations, page content extraction) instead of the compressed "find similar content, extract pages".

Include natural synonyms users would say — "search the web", "web research", "find similar pages" — to improve trigger-term coverage and distinguish the skill from generic search tools.

DimensionReasoningScore

Specificity

"find similar content, extract pages, and run deep research" names the domain ("Neural web search") and a few actions, but the actions are compressed and generic — the body's actual capabilities (answers with citations, async research tasks, page contents/metadata) are not enumerated. Not anchor 4: coverage has more than minor gaps.

3 / 5

Completeness

The description clearly answers "what" ("find similar content, extract pages, and run deep research") but contains no "Use when..." or equivalent trigger guidance, which caps completeness at 3 per the rubric guidelines. Not anchor 2 because the "what" is concrete, not vague.

3 / 5

Trigger Term Quality

"web search", "deep research", and "similar content" are phrases users would naturally say, but common variations like "search the web", "research a topic", or "find similar pages/articles" are absent. Not anchor 4: keyword coverage is thin for a three-line description with room to spare.

3 / 5

Distinctiveness Conflict Risk

"Neural web search" has a recognizable niche, but nothing in the description distinguishes it from a generic web-search or research skill, so overlap risk with similar skills remains. Not anchor 4: the triggers ("web search", "deep research") are shared by many search/research skills.

3 / 5

Total

12

/

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
gooseworks-ai/goose-skills
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.