CtrlK
BlogDocsLog inGet started
Tessl Logo

query-layer

Query boundaries with TanStack Query and Wellcrafted Results. Use when editing createQuery, createMutation, resultQueryOptions, resultMutationOptions, defineQuery, defineMutation, defineKeys, shared cache identity, mutation lifecycle, or service-to-TanStack adapters.

63

Quality

79%

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

Fix and improve this skill with Tessl

tessl review fix ./.agents/skills/query-layer/SKILL.md
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, project-grounded pattern skill: concrete code shapes, explicit decision rules, and exemplary progressive disclosure with condition-triggered references to real bundle files. Weaknesses are minor — some redundancy between the Key Rules section and the body, and a couple of incomplete code examples.

DimensionReasoningScore

Conciseness

The body is dense with project-specific rules and avoids explaining generic concepts Claude already knows, but the ASCII architecture diagram, the 'Key Rules' section that largely restates rules already given in full above, and some duplicated dependency-direction prose could be trimmed.

4 / 5

Actionability

Concrete, near-executable TypeScript and Svelte examples (the defineKeys/createAudioQueries module shape, the .options reactive usage, the fetch/ensure imperative handlers) plus a decision table for adapter choice. Minor gaps: the Svelte example uses an undefined 'recording', and the second imperative example ends in a '// Continue with transcription...' stub.

4 / 5

Workflow Clarity

Adapter selection, module placement, error flow, and reactive-vs-imperative usage are each resolved by explicit rules and a 'When to Use Each' table, and rule 6 guards optimistic writes with an explicit rollback-path condition. It is a pattern-selection skill rather than a multi-step pipeline, so there are no validation checkpoints — appropriate here, but the cache-update rule stops short of showing the invalidation sequence it defers to references.

4 / 5

Progressive Disclosure

The body is a well-organized overview and the References section signals exactly one level of on-demand depth ('If working with X, read references/Y.md') for error pass-through, runtime DI, and advanced cache patterns; all three referenced files exist in the bundle and contain self-contained material with no nested onward references.

5 / 5

Total

17

/

20

Passed

Description

70%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 tight, trigger-rich description for a narrow domain, with an explicit 'Use when' clause and distinctive API-name keywords. Its main weakness is the thin 'what' — 'Query boundaries' alone doesn't tell the reader what the skill does with those boundaries.

Suggestions

Expand the 'what' clause with one or two concrete capabilities, e.g. 'Define query/mutation adapters, shared cache identity via defineKeys, and error pass-through rules...' so the reader knows what the skill provides, not just when it fires.

Add natural trigger synonyms users would plausibly say: 'query keys', 'cache invalidation', 'optimistic updates', 'useIsMutating'.

Disambiguate the createQuery/createMutation trigger from the sibling 'svelte' skill (e.g. 'editing shared query modules in $lib/queries') to reduce cross-trigger overlap.

DimensionReasoningScore

Specificity

The description names the domain ('Query boundaries with TanStack Query and Wellcrafted Results') but the 'what' is a single jargon-heavy action phrase; the API names (createQuery, defineQuery, etc.) are trigger terms rather than stated capabilities, so coverage of concrete actions is not comprehensive.

3 / 5

Completeness

Both parts are present: a 'what' ('Query boundaries with TanStack Query and Wellcrafted Results') and a very explicit 'Use when editing...' clause with concrete triggers. Not a 5 because the 'what' is a single terse phrase and does not state what the skill actually does with those boundaries (patterns, placement rules, adapter shapes).

4 / 5

Trigger Term Quality

Strong keyword coverage of the domain's own API surface ('createQuery, createMutation, resultQueryOptions, resultMutationOptions, defineQuery, defineMutation, defineKeys, shared cache identity, mutation lifecycle'), but common variations users would say are missing, e.g. 'query cache', 'cache invalidation', 'optimistic updates', 'query keys'.

4 / 5

Distinctiveness Conflict Risk

The niche is narrow and the factory-name triggers (resultQueryOptions, defineKeys) are highly distinct, but 'createQuery'/'createMutation' and mutation-lifecycle terms overlap with the closely related sibling skills the body itself points to ('svelte', 'services-layer'), so minor overlap risk remains.

4 / 5

Total

15

/

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
EpicenterHQ/epicenter
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.