CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

chatto-api-rules

Design rules concerning Chatto's ConnectRPC API, both resources and realtime

Quality

65%

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 ./.agents/skills/chatto-api-rules/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

68%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.

The body is an exemplary lean rules document: dense, domain-specific, and free of filler, with clean two-section organization. Its weaknesses are the mirror of its strengths — no illustrative protobuf examples to make the rules executable, and no application sequence or conformance checklist to turn the rule list into a workflow. Anti-drift check: conciseness holds at 5, actionability and workflow clarity at 3, progressive disclosure at 4.

Suggestions

Add one short conforming protobuf snippet per section (e.g. an Update RPC with `google.protobuf.FieldMask update_mask`, and a public `RealtimeEvent` union member) so the rules are checkable against a concrete shape.

Turn the "when an Event or PubSubEvent variant must reach clients" bullet into an ordered same-change checklist with a final verification step (generated clients compile, compatibility notes updated).

Subdivide the two long bullet walls with sub-headers or move the event-mapping rules to a reference file to aid navigation.

DimensionReasoningScore

Conciseness

The body is 60 lines of dense imperative rules with zero filler — "Resource `Update*` RPCs must use `google.protobuf.FieldMask update_mask`" — and no explanation of concepts Claude already knows. Every bullet encodes product-specific policy Claude could not infer, matching anchor 5 (lean and efficient; every token earns its place); the one long same-change bullet is packed with substance, not padding, so it does not drop to 4.

5 / 5

Actionability

Concrete named types and constraints appear throughout ("`chatto.core.evt.v1.Event` for durable EVT facts", "Commands use specific verbs such as `Set`, `Change`, or `Refresh"), but there are no illustrative protobuf snippets or API skeletons showing what conforming output looks like, and several rules are abstract ("Cover the complete useful product event surface"). Anchor 3 (some concrete guidance but incomplete); not 4 because a designer could not fully execute these rules without worked examples.

3 / 5

Workflow Clarity

The body is a flat rule list under two headers with no sequencing of when or in what order to apply them. The one quasi-workflow bullet ("update the dedicated payload, public union member, authorization and mapper coverage, … in the same change") enumerates artifacts but gives no order and no verification step. Anchor 3 (sequence/checkpoints implicit or missing); not 2 because the rules are individually unambiguous and well-grouped.

3 / 5

Progressive Disclosure

Two clearly labeled sections ("### ConnectRPC Resource API", "### Realtime API") with no bundle files to reference, so single-file organization is appropriate. At ~60 lines of dense, unbroken bullet walls it slightly exceeds the under-50-lines single-file heuristic and could use sub-organization or a split reference for the event-mapping checklist — anchor 4 (good structure; minor organization gaps); not 5 because navigation within each section is weak.

4 / 5

Total

15

/

20

Passed

Description

43%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 carves out a highly distinct niche (Chatto's ConnectRPC API design rules) but is under-specified: it names no concrete capabilities, includes no trigger guidance, and omits the natural vocabulary (protobuf, events, cursors) that would help a user invoke it. Anti-drift check against neighboring anchors confirms each score: specificity and completeness sit firmly at anchor 2, trigger terms at 3, distinctiveness at 5.

Suggestions

Add an explicit trigger clause, e.g. "Use when designing or modifying Chatto's ConnectRPC services, protobuf definitions, or realtime event delivery."

Enumerate 2-4 concrete capabilities so the "what" is not just "design rules concerning" (e.g. whether the skill guides protobuf design, event cataloguing, or update-mask conventions).

Include natural synonym keywords users would say — protobuf, RPC, events, streaming, cursors — alongside "ConnectRPC" and "realtime".

DimensionReasoningScore

Specificity

"Design rules concerning Chatto's ConnectRPC API, both resources and realtime" names a specific domain but never states a concrete action — it is unclear whether the skill authors, reviews, or validates these rules. This matches anchor 2 (names the domain but actions are minimal or generic); not 3 because no concrete capability is listed, not 1 because the domain is genuinely specific.

2 / 5

Completeness

The "what" is vague ("design rules concerning…" says nothing about what the skill does with them) and there is no "Use when…" clause or equivalent trigger guidance anywhere. Anchor 2 (has a vague 'what' and no 'when'); the missing-trigger guideline independently caps this dimension at 3, and it does not even reach that.

2 / 5

Trigger Term Quality

Terms like "ConnectRPC", "API", "resources", and "realtime" are what a Chatto developer would naturally say, but common variations the body itself uses — protobuf, RPC, events, cursors, streaming — are absent. Anchor 3 (some relevant keywords but missing common variations or synonyms).

3 / 5

Distinctiveness Conflict Risk

"Chatto's ConnectRPC API" is a clear niche with product-specific names; virtually no other skill would trigger on this description. Anchor 5 (clear niche with distinct triggers; minimal conflict risk).

5 / 5

Total

12

/

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

chattocorp/chatto

Path

.agents/skills/chatto-api-rules/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.