CtrlK
BlogDocsLog inGet started
Tessl Logo

person-lookup

Look up information about a person - work history, social profiles, contact info

57

Quality

72%

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/lead-generation/capabilities/person-lookup/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

67%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 highly actionable with executable setup and search commands plus practical cost guidance and error handling. Its weaknesses are redundancy (duplicated async notes and triplicated examples) and an async polling workflow that is described but never shown as a concrete command.

Suggestions

Show an executable polling command, e.g. curl -s "$GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run" with the GET /person/search?request_id=<id> body, and state how to detect completion.

Consolidate the three near-identical Examples into one plus a note on varying the query string, and state the async polling behavior once instead of in both Response and Error Handling.

Remove or trim the <details> curl equivalent block, which duplicates the primary example without the auth header and adds no new information.

DimensionReasoningScore

Conciseness

The body repeats material: the async-polling note appears twice ("Nyne searches are async" in both Response and Error Handling), the three Examples are near-identical curl commands, and the <details> "curl equivalent" block duplicates the main example (minus auth). Mostly efficient commands, but several sections could be tightened, matching the 'some unnecessary explanation or could be tightened' anchor rather than 'minor instances'.

3 / 5

Actionability

Setup and search commands are fully executable copy-paste curls with concrete query examples ("Sam Altman OpenAI", "Jensen Huang NVIDIA CEO"), but the polling step that every search requires is only described in prose ("Poll with GET /person/search?request_id=<id>") with no executable command, a minor gap that keeps it below fully copy-paste-ready.

4 / 5

Workflow Clarity

The async sequence is described (POST returns a request_id, poll GET until complete) with recovery guidance for 404 (retry with different spellings/company) and 429 (wait and retry), fitting 'clear sequence with most checkpoints present; minor validation gaps'. It is not a 5 because the polling loop is never shown as an explicit validate-and-retry step with a command.

4 / 5

Progressive Disclosure

The skill has no bundle files and its sections (Setup, Usage, Parameters, Response, Examples, Error Handling, Tips) are clearly organized with all content core to the single task — good structure with minor organization gaps. It does not reach 5 because the skill exceeds 50 lines and carries some inline duplication (repeated async notes, triplicated examples) that better structuring or a split would address.

4 / 5

Total

15

/

20

Passed

Description

66%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 specific and uses natural trigger language, clearly conveying what data the skill returns. Its main weakness is the absence of any 'when to use' guidance, and its triggers are somewhat generic relative to the person-enrichment niche it serves.

Suggestions

Add a 'Use when...' clause with concrete triggers, e.g. 'Use when the user asks who someone is, wants someone's background, or needs a person's contact info.'

Include more natural trigger synonyms such as 'background', 'who is [name]', 'find email', or 'professional profile' to broaden keyword coverage.

Mention the education data the API returns (listed in the body) so the description's capability list is comprehensive.

DimensionReasoningScore

Specificity

"Look up information about a person - work history, social profiles, contact info" names the domain and lists three concrete data categories, matching the 'several specific actions with minor gaps' anchor; education is offered in the body but omitted here, keeping it below a 5.

4 / 5

Completeness

The 'what' is clear (look up work history, social profiles, contact info) but there is no 'Use when...' clause or equivalent trigger guidance, which caps completeness at 3 per the judging guidelines.

3 / 5

Trigger Term Quality

"look up", "work history", "social profiles", "contact info" are natural user phrasings with good coverage, but common variants like "background", "who is [name]", or "find someone's email" are missing, fitting the 'good coverage, a few natural terms missing' anchor rather than comprehensive.

4 / 5

Distinctiveness Conflict Risk

Person-data enrichment is a fairly distinct niche with specific triggers (work history, social profiles), though the generic opening "Look up information about a person" leaves minor overlap risk with contact-search or recruiting-data skills, so it is mostly distinct rather than a clear niche.

4 / 5

Total

15

/

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.