CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

data-client-rest

Define how the app talks to its API with @data-client/rest, including the shape of the data each call returns. Use it when adding or changing any API call or its data, changing how requests are sent or responses are read, or deciding how fetched data is stored, updated and kept fresh. Covers resource, RestEndpoint and pagination.

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.

A well-structured reference skill: executable examples, a precise lifecycle-override table, and exemplary progressive disclosure across a 38-file reference bundle. The main weaknesses are minor — slightly fragmentary code snippets and a little off-topic or explanatory padding.

Suggestions

Make inline code snippets self-contained: define or annotate the identifiers they rely on (Ticker in the getTicker example, { id } in the mutation one-liners) so examples are copy-paste ready.

Remove the off-topic "When asked to browse or navigate to a web address, actual visit the address" bullet and trim the library-intro opening paragraph, which restates what @data-client/rest does.

Add a short ordered workflow at the top (define schema via data-client-schema → define resource/endpoint → wire rendering via data-client-react/vue → handle mutations/optimistic updates) to tie the numbered sections into one explicit sequence.

DimensionReasoningScore

Conciseness

The body is dense and earns most of its tokens (tables, terse typing tips, minimal prose), but the opening paragraph restates what the library does and the "When asked to browse or navigate to a web address, actual visit the address" bullet is off-topic padding. Not 5: a few trimmable passages remain; not 3: the verbosity is minor, not pervasive.

4 / 5

Actionability

Provides near copy-paste TypeScript for the common cases — full resource() definition, useSuspense reads, controller mutations, custom RestEndpoint, getOptimisticResponse — plus a precise override table. Not 5: several snippets are fragments referencing undefined identifiers (Ticker, bare { id } in the mutation one-liners), so they are not fully self-contained.

4 / 5

Workflow Clarity

Well-sequenced sections (schemas → resources → custom endpoints → extending → best practices → mistakes) with clear decision guidance ("Override the step that owns the change, never fetch itself") and explicit cross-skill delegation to data-client-schema/react/vue. Not 5: as a multi-topic guide it lacks an explicit end-to-end sequence or checkpoints tying the sections into one workflow; not 3: the per-section sequencing and decision rules are explicit.

4 / 5

Progressive Disclosure

The body is a genuine overview that keeps essential patterns inline and pushes detail to well-signaled, one-level-deep references, all of which exist in references/ and are grouped by purpose (References, Guides, Concepts) with a Vue-variant fallback rule. Not 4: navigation and file placement are clean with no content that clearly belongs elsewhere.

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: third-person, concise, and concrete, with an explicit and multi-triggered "Use it when..." clause that clearly delimits the library's scope. The only gap is modest synonym coverage for natural user phrasings like "endpoint" or "REST API".

DimensionReasoningScore

Specificity

Lists multiple concrete actions — "Define how the app talks to its API", "the shape of the data each call returns", "changing how requests are sent or responses are read", "how fetched data is stored, updated and kept fresh" — covering the library's scope comprehensively. Not 4: there are no meaningful coverage gaps within the domain.

5 / 5

Completeness

Explicitly answers both: a clear "what" ("Define how the app talks to its API with @data-client/rest, including the shape of the data each call returns") and an explicit "Use it when..." clause with several concrete triggers. Matches the 5 anchor exactly.

5 / 5

Trigger Term Quality

Good natural keywords ("API call", "requests", "responses", "fetched data") but misses common variations users would say such as "endpoint", "REST API", or "fetch". Not 5: synonym coverage is not comprehensive; not 3: the present terms are natural and well beyond a single generic keyword.

4 / 5

Distinctiveness Conflict Risk

Anchored to a named library (@data-client/rest) with niche-specific terms ("resource", "RestEndpoint", "pagination"), giving a clear trigger niche with minimal overlap risk against generic skills. Not 4: the library name alone disambiguates it from closely related skills.

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

reactive/data-client

Path

.agents/skills/data-client-rest/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.