CtrlK
BlogDocsLog inGet started
Tessl Logo

unsplash-integration

Integration skill for searching and fetching high-quality, free-to-use professional photography from Unsplash.

41

Quality

41%

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/unsplash-integration/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

28%Scale 1-5

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

This skill reads more like a marketing brief or style guide than an actionable technical skill. It is heavy on subjective adjectives and aspirational language but lacks any concrete code examples, API endpoints, authentication details, or executable steps. The 'Strict Rules' section uses emphatic language ('ABSOLUTE MANDATE') that wastes tokens without adding clarity.

Suggestions

Add concrete, executable code examples showing how to authenticate with the Unsplash API and make search/download requests (e.g., curl commands or Python snippets with actual endpoint URLs).

Remove marketing language and subjective adjectives ('breathtaking', 'stunning', 'ABSOLUTE MANDATE') — replace with specific, actionable criteria for image selection.

Include a validation step to verify downloaded images (e.g., check HTTP status, file size, dimensions) and handle API errors like rate limiting.

Add the actual Unsplash API base URL, required headers, and authentication flow so Claude can execute requests without guessing.

DimensionReasoningScore

Conciseness

Significantly verbose with unnecessary marketing language ('breathtaking imagery', 'stunning visual impact', 'ABSOLUTE MANDATE'). Explains concepts Claude already knows (what Unsplash is, what placeholders are). The introductory context and 'When to Use' sections are padded with subjective adjectives that don't add actionable value.

2 / 5

Actionability

Provides only high-level hints with no concrete, executable code or API calls. No actual API endpoint URLs, no code examples for making requests, no authentication setup, no response parsing. The dynamic resizing URL parameter example is the only semi-concrete detail, but it's not embedded in executable code.

2 / 5

Workflow Clarity

A rough 4-step sequence is listed but steps are vaguely defined ('Search Intentionally', 'Filter', 'Download via API'). No validation checkpoints, no error handling, no concrete commands. Missing details on API authentication, rate limits, or how to verify downloaded images are correct.

2 / 5

Progressive Disclosure

The content is reasonably structured with clear section headers (Context, When to Use, Execution Workflow, Strict Rules). However, there are no bundle files or references to external documentation. For a skill this size (~40 lines), the structure is adequate but the content that is present could be better organized with actual reference material split out.

3 / 5

Total

9

/

20

Passed

Description

53%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 identifies a clear domain (Unsplash photo search) and names the specific service, which aids distinctiveness. However, it lacks a 'Use when...' clause, misses common user trigger terms like 'stock photo', 'free image', or 'find a picture', and could be more specific about the range of capabilities (e.g., filtering, downloading, getting image metadata).

Suggestions

Add a 'Use when...' clause with trigger phrases like 'Use when the user asks for stock photos, free images, pictures for a project, or mentions Unsplash'.

Include natural synonyms and user-facing terms such as 'stock photos', 'free images', 'find a picture', 'image search', and 'photo for [project/presentation/website]'.

Expand the list of concrete actions beyond 'searching and fetching' — e.g., 'search by keyword, filter by orientation/color, retrieve image URLs and attribution details'.

DimensionReasoningScore

Specificity

Names the domain (Unsplash photography) and mentions two concrete actions ('searching and fetching'), but doesn't elaborate on what can be done with the results (e.g., embedding in documents, downloading, getting metadata, filtering by orientation/color).

3 / 5

Completeness

Has a clear 'what' (searching and fetching photos from Unsplash) but completely lacks a 'when' clause. There is no 'Use when...' guidance to help Claude know when to select this skill. Per rubric guidelines, missing 'Use when' caps completeness at 3.

3 / 5

Trigger Term Quality

Includes 'Unsplash', 'photography', 'searching', and 'fetching' as keywords, but misses natural user phrases like 'stock photos', 'free images', 'find a picture', 'photo search', or 'image for my project'. Users rarely say 'fetching' naturally.

3 / 5

Distinctiveness Conflict Risk

Mentioning 'Unsplash' specifically makes it fairly distinct from generic image or stock photo skills. However, it could overlap with other image search or stock photography skills if they exist. The Unsplash brand name provides good differentiation.

4 / 5

Total

13

/

20

Passed

Validation

90%

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

Validation10 / 11 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

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

Warning

Total

10

/

11

Passed

Repository
administrakt0r/AI-Agents-Safe-Coding-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.