CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

weatherkit

Fetch WeatherKit current, minute, hourly, and daily forecasts; weather alerts; iOS 18+ changes, historical comparisons, summaries, and statistics; and required Apple Weather attribution. Use when integrating weather data, showing forecasts or alerts, caching WeatherKit responses, displaying attribution, or reviewing WeatherKit query limits in iOS apps.

Quality

91%

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.

A well-structured, mostly executable reference for WeatherKit with excellent progressive disclosure: a lean overview, a real and accurately described one-level-deep bundle file, and a review checklist for validation. The main weaknesses are the comment-pseudocode treatment of the legally mandatory attribution display, the absence of error-recovery guidance for rate-limit failures, and mild duplication between the Common Mistakes and Review Checklist sections.

Suggestions

Add copy-paste SwiftUI code for the mandatory attribution display (e.g., a Link wrapping an Image loaded from attribution.combinedMark plus attribution.legalPageURL) to the Attribution Requirements section, since App Store rejection is the highest-stakes failure and the current example is comment placeholders.

Add error-handling/recovery guidance for weather() calls — e.g., catching rate-limit errors and falling back to cached unexpired data — to close the feedback-loop gap in the Caching & Rate Limits workflow.

Trim the duplication between "Common Mistakes" and "Review Checklist" (attribution, .formatted(), selective queries, and caching each appear in both) and prune the 20-item References link list to the APIs the skill actually demonstrates.

DimensionReasoningScore

Conciseness

The body is efficient and assumes Claude's competence (no basic-concept explanations), but there is minor redundancy: attribution, ".formatted()", selective queries, and caching each appear in both "Common Mistakes" and "Review Checklist", and the 20+ item external link list in "References" could be trimmed to the APIs actually used. This matches anchor 4 (minor instances that could be trimmed) rather than anchor 5's every-token-earns-its-place, and is well above anchor 3's unnecessary explanation.

4 / 5

Actionability

Most code is executable and copy-paste ready ("let weather = try await WeatherService.shared.weather(for: location)", the selective "including: .current, .hourly" query), but the highest-stakes section — mandatory attribution — relies on comment placeholders ("// Display attribution.combinedMark", "// Provide tappable link to attribution.legalPageURL") and the vague instruction "display attribution using `Link` and the official logo asset" without concrete SwiftUI code in the main body. That is a minor gap consistent with anchor 4, not the fully-executable coverage of anchor 5.

4 / 5

Workflow Clarity

"Setup & Permissions" provides a clear numbered sequence and the "Review Checklist" supplies validation checkpoints, so the sequence is coherent with most checkpoints present (anchor 4). It falls short of anchor 5 because there is no error-recovery feedback loop — e.g., no guidance on catching and handling the rate-limiting errors that "Common Mistakes" warns about — and the sections after Setup are topical rather than sequenced.

4 / 5

Progressive Disclosure

The body is a clear overview with a TOC, and advanced material is split into a single well-signaled one-level-deep reference — "Extended patterns (SwiftUI dashboard, charts integration, historical statistics): references/weatherkit-patterns.md" — which exists and matches that description, and itself links only to external docs rather than nesting further. This matches anchor 5's clear overview with well-signaled one-level-deep references and easy navigation.

5 / 5

Total

17

/

20

Passed

Description

100%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 exemplary: it enumerates the concrete capabilities (all forecast granularities, alerts, iOS 18+ context/historical queries, attribution), gives an explicit 'Use when' clause with natural trigger terms, and is scoped to a clearly distinct WeatherKit/iOS niche. Third-person voice and no padding or over-claims.

DimensionReasoningScore

Specificity

"Fetch WeatherKit current, minute, hourly, and daily forecasts; weather alerts; iOS 18+ changes, historical comparisons, summaries, and statistics; and required Apple Weather attribution" lists multiple concrete actions with comprehensive coverage of the WeatherKit surface (all forecast granularities, alerts, historical/statistics APIs, attribution). It matches the anchor-5 example's breadth and exceeds anchor 4, which expects minor coverage gaps.

5 / 5

Completeness

The first sentence explicitly answers "what" (fetch forecasts, alerts, historical comparisons, summaries, statistics, attribution) and the explicit "Use when..." clause answers "when" with concrete trigger phrases, directly matching the anchor-5 example. Anchor 4 would require the 'when' to be less explicit or specific, which is not the case.

5 / 5

Trigger Term Quality

"Use when integrating weather data, showing forecasts or alerts, caching WeatherKit responses, displaying attribution, or reviewing WeatherKit query limits in iOS apps" covers the natural phrases a user would say for this domain (weather data, forecasts, alerts, caching, attribution, query limits, iOS apps), including the WeatherKit/Apple Weather naming variants. Coverage is comprehensive for the domain; it does not fall to anchor 4, which requires that natural terms be noticeably missing.

5 / 5

Distinctiveness Conflict Risk

Triggers are anchored to WeatherKit-specific terms ("WeatherKit responses", "Apple Weather attribution", "iOS apps"), giving the skill a clear niche with minimal overlap risk against generic weather or networking skills. It mirrors the anchor-5 example of a distinct niche with distinct triggers.

5 / 5

Total

20

/

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/weatherkit/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.