CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

photokit

Builds or reviews photo-library picking, image loading, camera capture, and video recording with PhotoKit, PhotosPicker/PHPicker, and AVFoundation. Use for photo or camera permissions, media selection, capture sessions, library changes, caching, or media export.

Quality

88%

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

SKILL.md
Quality
Evals
Security

Quality

Content

78%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 well-structured, lean overview that routes effectively to an appropriately split one-level reference bundle, with a decision table, concrete API guidance, and a review checklist. Weaknesses are mild: duplicated reference listings, version-pinned tokens, and deferred code examples with no explicit validation loops for risky operations like asset deletion.

Suggestions

Remove the duplicate file listing: either drop the "References" section's repeated local links or merge it with "Route by Task" so each reference file appears once with its purpose.

Move version-sensitive notes ("Swift 6.4 / iOS 26+", the iOS 27 section) into a single clearly labeled compatibility/deprecation section to insulate the evergreen guidance from time-sensitive tokens.

Add an explicit validation step for destructive PHPhotoLibrary operations (e.g. confirm asset identifiers and handle the change observer's error callback before deleting), since asset deletion is listed as a use case but no safeguard or checkpoint is given.

DimensionReasoningScore

Conciseness

The body is lean and assumes competence (table-driven guidance, no basic-concept explanations), but the five reference links in "Route by Task" are duplicated verbatim in the "References" section, and version pins ("Swift 6.4 / iOS 26+", "iOS 14+", the iOS 27 section) add time-sensitive tokens — minor instances that could be trimmed, placing it between anchors 4 and 5 but noticeably above the midpoint.

4 / 5

Actionability

Concrete, mostly executable guidance throughout: one complete copy-pasteable Swift snippet (the authorization switch), exact plist keys, and precise API names ("startCachingImages(for:targetSize:contentMode:options:)", "deliveryMode = .opportunistic"). Minor gaps remain since picker, caching, and capture code is named but deferred to reference files rather than shown.

4 / 5

Workflow Clarity

A clear navigation workflow (decision table → "Route by Task" → reference file) with a "Review Checklist" serving as a verification checkpoint, but there are no explicit validation or error-recovery steps in the body for fragile operations (e.g. asset deletion is named as a use case with no accompanying safeguards), which keeps it below the explicit-feedback-loop level 5 and above the checkpoint-missing level 3.

4 / 5

Progressive Disclosure

A concise ~106-line overview routes to five one-level-deep reference files, all of which exist in the bundle with no nested .md references, each clearly signaled by task ("For SwiftUI PhotosPicker... read [PhotosPicker Recipes]"). This matches the anchor: clear overview, well-signaled one-level-deep references, easy navigation.

5 / 5

Total

17

/

20

Passed

Description

92%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.

A strong description in third person that clearly states what the skill does and when to use it, with concrete actions, named frameworks, and a rich trigger clause. The only weakness is modest synonym/extension coverage in the trigger terms (no "take picture", "record video", or HEIC-style file extensions).

DimensionReasoningScore

Specificity

"Builds or reviews photo-library picking, image loading, camera capture, and video recording with PhotoKit, PhotosPicker/PHPicker, and AVFoundation" lists four concrete actions plus named frameworks, matching the comprehensive multi-action anchor; coverage spans the full domain with no notable gap, so it exceeds the 'minor gaps' level 4.

5 / 5

Completeness

It explicitly answers both "what" ("Builds or reviews photo-library picking, image loading, camera capture, and video recording...") and "when" with concrete trigger phrases ("Use for photo or camera permissions, media selection, capture sessions..."), matching the anchor-5 example structure; the "when" clause is explicit and specific, not the weaker level-4 form.

5 / 5

Trigger Term Quality

"Use for photo or camera permissions, media selection, capture sessions, library changes, caching, or media export" provides good natural keyword coverage, but common variations like "take picture", "record video" (absent from the trigger clause), and file extensions (e.g. HEIC) are missing, placing it just below the comprehensive-synonyms level 5.

4 / 5

Distinctiveness Conflict Risk

The iOS media niche is pinned by framework names ("PhotoKit, PhotosPicker/PHPicker, and AVFoundation") with distinct triggers (permissions, capture sessions, library changes), giving minimal conflict risk with other skills; it is not merely "mostly distinct" as at level 4.

5 / 5

Total

19

/

20

Passed

Validation

100%

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

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository

thienqo/ios-skills

Path

skills/photokit/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.