CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

chatto-client-placement

Decide whether Chatto client code goes into `@chatto/client` (packages/chatto-client) or the bundled frontend (apps/frontend). Use before you add a request, store, state, helper, or protocol rule to either, or when you move code between them.

Quality

92%

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

96%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 exemplar of a decision-rule skill: a sequenced procedure with an explicit stop condition, a dense placement table mapping concerns to concrete paths, worked feature examples, enumerated exceptions, and a common-mistakes list, all with zero padding. The only minor weakness is that its external references live outside the bundle via deep relative links that cannot be verified standalone.

DimensionReasoningScore

Conciseness

The body is lean and dense with placement-relevant signal only: a 5-question decision procedure, a 10-row placement table, worked examples, an exception list, and a common-mistakes list. It assumes Claude's competence with Svelte/TypeScript and explains no general concepts, matching anchor 5's 'every token earns its place'.

5 / 5

Actionability

Every rule is grounded in concrete file paths and named artifacts (`src/api/messageSearch.ts`, `$lib/state/server/serverUi.ts`, boundary events like `onRoomAccessLost`, `DirectMessageLabels` in `timeline/users.ts`), with explicit exceptions and enumerated anti-patterns. This is an instruction-only skill whose guidance is fully actionable, which the scoring notes say should not be penalized for lacking code.

5 / 5

Workflow Clarity

The Decision Procedure is a numbered question sequence with an explicit stop condition ('Ask these questions in sequence. Stop at the first "yes".') and a tiebreaker default (question 5). The task is a single placement decision with no destructive or batch operations, so no validation checkpoint is required and the procedure is unambiguous.

5 / 5

Progressive Disclosure

The single file is well organized with clear sections, a table, and an easy-to-navigate structure, and all decision content appropriately lives inline. However, the Related Rules links point outside the skill bundle (`../../../packages/chatto-client/AGENTS.md`, ADR-111/112) with deep relative paths that do not resolve in this environment, leaving them unverifiable — a minor gap matching anchor 4's 'references mostly clear; minor organization gaps'.

4 / 5

Total

19

/

20

Passed

Description

87%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: it states a concrete decision task between two named packages and gives an explicit, trigger-rich 'Use when' clause covering both adding and moving code. Third-person voice is used throughout, and it is concise with no fluff or over-claims.

DimensionReasoningScore

Specificity

The description names a concrete decision action ('Decide whether Chatto client code goes into `@chatto/client` (packages/chatto-client) or the bundled frontend (apps/frontend)') with two specific package targets and enumerated artifact types ('a request, store, state, helper, or protocol rule'). It sits between anchor 3 (1-2 concrete actions) and anchor 4 (several specific actions), noticeably above the midpoint because the destinations and artifact types are concrete rather than generic.

4 / 5

Completeness

Both questions are explicitly answered: the 'what' ('Decide whether Chatto client code goes into `@chatto/client` ... or the bundled frontend') and the 'when' ('Use before you add a request, store, state, helper, or protocol rule to either, or when you move code between them') with concrete trigger phrases, matching anchor 5 exactly.

5 / 5

Trigger Term Quality

Natural developer phrasings are present: 'add a request, store, state, helper, or protocol rule', 'move code between them', 'client code'. A few natural synonyms (e.g., 'component', 'API call') are missing, matching anchor 4's 'good keyword coverage; a few natural terms missing' rather than the comprehensive synonym coverage of anchor 5.

4 / 5

Distinctiveness Conflict Risk

The description carves out a clear niche (Chatto client-vs-frontend package placement) with distinct, project-specific triggers; it would not plausibly fire for any other skill, matching anchor 5's 'clear niche with distinct triggers; minimal conflict risk'.

5 / 5

Total

18

/

20

Passed

Validation

93%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

relative_links

Relative link issues: 4 suspicious

Warning

Total

15

/

16

Passed

Repository

chattocorp/chatto

Path

.agents/skills/chatto-client-placement/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.