CtrlK
BlogDocsLog inGet started
Tessl Logo

freehire-search

Use this skill to search live software / tech / data / engineering job listings across many countries and markets (and remote) via the freehire.me aggregator's public API, or to look up a specific posting. It aggregates roles from ~50 ATS platforms into one schema, so a single skill covers many markets — but its faceted filtering (skills, category, seniority) is tuned tech-first, so scope triggers to technical roles. Trigger phrases: find a tech job, software job search, developer jobs, engineering vacancies, data/ML jobs, DevOps roles, remote developer jobs, "are there any <tech role> jobs in <place>", look up this freehire job posting.

68

Quality

83%

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

SKILL.md
Quality
Evals
Security

Quality

Content

75%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 content is highly actionable with complete, copy-paste-ready commands and clear workflow guardrails, and it is well-structured for navigation. Its main weakness is moderate verbosity in the hosted-service/self-hosting and scope rationale sections that could be trimmed or moved to a reference file.

Suggestions

Tighten the 'Hosted-service dependency' and self-hosting sections: lead with the one-line FREEHIRE_API_URL swap and move the Docker/Meilisearch setup detail into a separate reference file or trim it, since it is not needed for normal hosted use.

Consider extracting the full facet flag reference (region/country/seniority/category/skill values) into a references/ file linked from the Commands section to reduce inline length while keeping the quick-start examples inline.

Collapse the scope rationale and the linkedin-search comparison blockquote into a single concise scoping note to cut discursive prose without losing the tech-first filtering caveat.

DimensionReasoningScore

Conciseness

The body is mostly efficient and specific, but several discursive sections — the hosted-service dependency note, the self-hosting/swappable-base-URL walkthrough, and the scope rationale — could be tightened or trimmed without losing actionable value, fitting the 'mostly efficient but includes some unnecessary explanation' anchor rather than the lean anchor 4.

3 / 5

Actionability

Provides fully executable, copy-paste-ready `bun run ...` commands with every flag documented and six concrete usage examples covering seniority/region/remote/category filters plus detail lookup, matching the 'fully executable; specific examples cover common cases' anchor.

5 / 5

Workflow Clarity

The search-vs-detail flow is clearly sequenced with an explicit guardrail ("Do not loop detail over search hits") and error/edge-case notes (404 reported as error, /facets to discover values), giving clear checkpoints with only minor gaps, so it sits below the explicit validate-fix-retry anchor 5.

4 / 5

Progressive Disclosure

The body is well-organized into clearly signaled sections (Scope, When to use, Commands, Usage examples, Output formats, Partial data, Notes) with no nested references, but at ~180 lines with no bundle files, some bulk (facet vocabularies, self-hosting details) could be split into reference files, keeping it at 'good structure; minor organization gaps' rather than the ideally-split anchor 5.

4 / 5

Total

16

/

20

Passed

Description

91%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 strong: it concretely states capabilities, supplies an explicit trigger-phrase list, and carves out a clear tech-focused niche. The only soft spot is minor overlap risk with other job-portal skills on generic tech-role triggers.

DimensionReasoningScore

Specificity

Names multiple concrete actions — "search live software / tech / data / engineering job listings", "look up a specific posting", and faceted filtering by skills/category/seniority — with only minor coverage gaps, fitting the 'lists several specific actions' anchor rather than the fully comprehensive anchor 5.

4 / 5

Completeness

Clearly states what the skill does (search/look up postings via the freehire aggregator API) and when to use it via a dedicated explicit trigger-phrase list, satisfying the 'both what AND when with concrete trigger phrases' anchor.

5 / 5

Trigger Term Quality

Explicit "Trigger phrases:" lists natural user utterances including synonyms and a question form ("find a tech job", "software job search", "developer jobs", "are there any <tech role> jobs in <place>"), matching the comprehensive-coverage anchor.

5 / 5

Distinctiveness Conflict Risk

Has a clear niche (the freehire.me aggregator, tech-scoped) with a distinctive trigger ("look up this freehire job posting"), but generic tech-job phrases like "developer jobs" create minor overlap risk with sibling portals such as linkedin-search, so it sits below the minimal-conflict anchor 5.

4 / 5

Total

18

/

20

Passed

Validation

87%

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

Validation14 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

allowed_tools_field

'allowed-tools' contains unusual tool name(s)

Warning

frontmatter_unknown_keys

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

Warning

Total

14

/

16

Passed

Repository
MadsLorentzen/ai-job-search
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.