CtrlK
BlogDocsLog inGet started
Tessl Logo

api-patterns

Connect Query patterns for API calls. Use when working with mutations, queries, or data fetching.

82

1.15x
Quality

74%

Does it follow best practices?

Impact

97%

1.15x

Average score across 3 eval scenarios

SecuritybySnyk

Passed

No findings from the security scan

Fix and improve this skill with Tessl

tessl review fix ./frontend/.claude/skills/api-patterns/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 genuinely lean, well-organized overview that routes each API action to a specific rule file with concrete paths and commands in the body. Its one material defect is that every referenced file is missing from the bundle, which breaks progressive disclosure and undercuts actionability for the core tasks.

Suggestions

Ship the referenced bundle files (use-connect-query.md, api-invalidate-cache.md, api-toast-errors.md, protobuf-no-edit.md, and the rules/ directory) or remove/inline the dangling references so each row in the Quick Reference table resolves.

Add one short executable hook example (e.g. a useConnectQuery call) so the most common action — fetching data — is actionable even before following a reference.

Resolve the ambiguity between the Quick Reference table's per-file pointers and the closing 'See rules/ directory' line by using one consistent navigation scheme.

DimensionReasoningScore

Conciseness

The ~35-line body is lean and table-driven: every line is a rule, path, or command ("Regenerate protos: `task proto:generate`"). No concepts Claude already knows are explained, and nothing is padded — every token earns its place.

5 / 5

Actionability

Gives concrete specifics — exact paths ("/src/react-query/", "/src/protogen/"), a runnable command ("task proto:generate"), and a named function ("formatToastErrorMessage" in onError). Not 5 because the core actions ("Fetch data | use-connect-query.md") defer entirely to files that are not present, leaving no executable example of actual hook usage; not 3 because what is inline is specific and directly usable.

4 / 5

Workflow Clarity

The Quick Reference table clearly sequences the core flow ("After mutation | api-invalidate-cache.md") with well-defined action-to-rule mapping, appropriate for a pattern-reference skill with no destructive or batch operations. Not 5 because the steps each action delegates to live in files missing from the bundle, so the full sequence cannot be followed; not 3 because the routing itself is unambiguous.

4 / 5

Progressive Disclosure

The body is structured as a proper overview with clearly signaled one-level references ("Fetch data | use-connect-query.md", "See `rules/` directory"), but none of the referenced files — use-connect-query.md, api-invalidate-cache.md, api-toast-errors.md, protobuf-no-edit.md, or the rules/ directory — exist in the bundle, so navigation is broken. Not 4 or 5 because the disclosure chain leads nowhere; not 2 because the overview itself is well organized rather than an inlined monolith.

3 / 5

Total

16

/

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 concise, third-person description with an explicit 'Use when' clause and decent natural trigger terms. Its main weakness is a generic 'what' — "patterns for API calls" — that undersells the specific capabilities (cache invalidation, error handling, protobuf rules) the skill body actually delivers.

Suggestions

Replace the vague 'Connect Query patterns for API calls' with concrete actions, e.g. 'Make API calls with Connect Query, invalidate caches after mutations, and surface errors via toasts.'

Add trigger terms matching the body's activation conditions — 'cache invalidation', 'optimistic updates', 'protobuf' — so the description fires in those situations too.

Include a distinctive keyword or file extension cue (e.g. 'Connect Query hooks') to further separate it from generic API-skill matches.

DimensionReasoningScore

Specificity

Names the domain ("Connect Query patterns for API calls") and operation types ("mutations, queries, or data fetching"), but capabilities the body actually covers — cache invalidation, error toast handling, proto regeneration — are absent, so coverage is not comprehensive. Not 2 because it goes beyond a bare domain label by enumerating concrete operation types; not 4 because the 'what' is the generic word 'patterns' rather than listed actions.

3 / 5

Completeness

Both parts are present: a 'what' ("Connect Query patterns for API calls") and an explicit 'when' ("Use when working with mutations, queries, or data fetching"). Not 5 because the 'what' is thin and the 'when' omits triggers like cache invalidation and error handling; not 3 because the 'when' clause is explicit rather than weakly implied.

4 / 5

Trigger Term Quality

"API calls", "mutations", "queries", and "data fetching" are natural phrases users would say when needing this skill. A few common variations are missing (e.g. "cache invalidation", "endpoints", "requests"), matching the anchor for good-but-incomplete keyword coverage rather than comprehensive synonym coverage.

4 / 5

Distinctiveness Conflict Risk

"Connect Query" is a distinctive named framework, giving the skill a clear niche. Minor overlap risk remains because "API calls" and "data fetching" are broad terms that could also match general API or data-fetching skills. Not 5 for that residual overlap; not 3 because the framework name firmly anchors it.

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
redpanda-data/console
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.