CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

energykit

Query grid electricity forecasts and submit load events using EnergyKit to help users optimize home electricity usage. Use when building smart home apps, EV charger controls, HVAC scheduling, or energy management dashboards that guide users to use power during cleaner or cheaper grid periods.

Quality

74%

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

Quality

Content

57%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-organized, token-efficient overview that correctly keeps executable detail in the bundle file, but it has no inline quick-start code, no explicit implementation sequence, and — most significantly — a 'Route by Task' section whose anchor links all fail to match the reference file's actual section headings. Fixing the anchors and adding a minimal entry-point snippet would raise actionability and navigation substantially.

Suggestions

Fix the four 'Route by Task' anchor links to match the reference file's real headings (e.g., #ev-charging-session-manager, #insight-data-visualization) or rename the reference sections to match the routing labels, so every link resolves.

Add a minimal quick-start Swift snippet in the body (entitlement/authorization setup and creating an ElectricityGuidance.Service) so the skill is actionable before opening the reference file.

Add an explicit numbered implementation flow (enable capability → handle permissionDenied/unsupportedRegion → discover venue → observe guidance with the correct action type → submit matching load events), with the Review Checklist as the final validation step.

DimensionReasoningScore

Conciseness

The body is efficient and assumes competence — it documents only EnergyKit-specific facts (entitlement string, error cases, rating semantics, action types) rather than general Swift or energy concepts. Minor trims are possible: the Contents TOC is redundant in a ~70-line file, and the intro sentence re-states the frontmatter description almost verbatim. This matches 'efficient; minor instances of over-explanation that could be trimmed'; version numbers (iOS 26/27) are core availability gating organized in a dedicated callout and table rather than scattered time-sensitive clutter, so they are not penalized.

4 / 5

Actionability

The body names concrete identifiers (`ElectricityGuidance.Service`, `.shift`/`.reduce`, `com.apple.developer.energykit`, `EnergyKitError.unsupportedRegion`) and gives specific semantic rules, but contains no executable code or commands — even a minimal quick-start snippet (e.g., service creation or authorization request) is absent, with all executable content deferred to the reference file. This matches 'some concrete guidance but incomplete; missing key details'; a 4 would require mostly executable guidance with only minor gaps.

3 / 5

Workflow Clarity

The Review Checklist provides real validation checkpoints (entitlement, region handling, action matching, timestamp accuracy) and 'Route by Task' gives clear decision routing, but there is no explicit end-to-end sequence — the natural flow (enable capability → handle authorization → discover venue → observe guidance → submit load events) must be inferred from the architecture section. This sits between 'steps listed with validation gaps' and 'clear sequence with most checkpoints'; the implicit sequence keeps it at 3 rather than 4.

3 / 5

Progressive Disclosure

The intent is excellent — a task-based routing section pointing one level deep to a single real bundle file — but all four anchor links are broken: `#observing-electricity-guidance`, `#submitting-load-events`, `#electricity-insights`, and `#home-app-integration` match no heading in `references/energykit-patterns.md`, whose actual sections are 'Full App Architecture', 'EV Charging Session Manager', 'Insight Data Visualization', etc. Scored against the actual bundle structure, navigation that resolves to nothing is more than a 'minor organization gap' (4), landing at 'references present but' effectively not navigable as written.

3 / 5

Total

13

/

20

Passed

Description

78%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 with an explicit, well-phrased 'Use when' clause and good natural trigger terms tied to concrete app categories. Its main weaknesses are limited action coverage (two actions, omitting venues and insights) and slightly broad smart-home triggers that could overlap related skills.

DimensionReasoningScore

Specificity

The description names the domain (home electricity/grid energy) and two concrete actions — "Query grid electricity forecasts" and "submit load events" — but is not comprehensive, omitting venue registration, historical insights, and Home app integration that the skill actually covers. This matches the anchor 'names domain and 1-2 concrete actions, but not comprehensive'; a 4 would require several listed actions with only minor gaps.

3 / 5

Completeness

It explicitly answers both questions: what it does ("Query grid electricity forecasts and submit load events using EnergyKit") and when to use it ("Use when building smart home apps, EV charger controls, HVAC scheduling, or energy management dashboards..."). This mirrors the anchor-5 pattern of a clear what plus an explicit 'Use when' clause with concrete trigger phrases; a 4 would have a weaker or less specific 'when'.

5 / 5

Trigger Term Quality

Natural phrases like "smart home apps", "EV charger controls", "HVAC scheduling", "energy management dashboards", and "cleaner or cheaper grid periods" are terms users would realistically say. A few common variations are missing (e.g., "energy rates", "off-peak", "time-of-use", "tariff"), so it falls just short of the comprehensive synonym coverage of a 5.

4 / 5

Distinctiveness Conflict Risk

The niche is clear — EnergyKit, grid electricity forecasts, load events — with distinct API-specific triggers, so wrong-skill triggering is unlikely. However, the broad trigger "smart home apps" (and to a lesser degree "HVAC scheduling") creates minor overlap risk with a hypothetical HomeKit or generic smart-home skill, matching 'mostly distinct; minor overlap risk' rather than the minimal conflict of a 5.

4 / 5

Total

16

/

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