CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

product-help

Use this skill when the user asks about my own features, configuration, or usage — installation, skills, Web UI, CLI, API config, memory, sessions, encryption, white-label, publishing, pricing, troubleshooting, or restarting the server. Do NOT trigger for general coding tasks unrelated to me.

Quality

85%

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

SKILL.md
Quality
Evals
Security

Quality

Content

82%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 highly actionable, well-structured instruction skill: concrete tool calls, a complete URL lookup table, explicit retry/fallback loops, and pre-baked answers for the restart special case. Remaining gaps are minor — a duplicated fetch-first rule and no handling of a failed fetch call itself.

DimensionReasoningScore

Conciseness

The body is mostly lean and product-specific (URL table, restart recipe, workflow steps — none of it knowledge Claude already has), but "Always fetch the doc first — never answer from memory" appears twice (intro and Rules) and the Rules section partially restates the Workflow. Not 5 because of that duplication; not 3 since there is no padding or explanation of known concepts.

4 / 5

Actionability

Everything needed to execute is concrete and copy-paste ready: a complete topic-to-URL table, an exact tool invocation ("web_fetch(url: \"<URL>\", max_length: 5000)"), intent-matching examples ("帮我打开webui" → web-server), a fully baked restart answer ("kill -USR1 $CLACKY_MASTER_PID"), and a terminal fallback message. Common cases are specifically covered.

5 / 5

Workflow Clarity

The pick-URL → fetch → answer sequence is clear, with an explicit retry loop ("If the fetched page doesn't answer the question, try the next most relevant URL (max 2 fetches)") and a terminal fallback. Not 5 because the case where the web_fetch call itself fails (network or tool error) is not addressed — only the "page doesn't answer" case.

4 / 5

Progressive Disclosure

The skill has no bundle files and is self-contained: sections are well-organized (Self-understanding, Doc URL Table, Workflow, Rules, Restart), external detail lives in runtime-fetched docs rather than inlined walls of text, and there are no nested references. Not 5 because at ~100 lines with the Rules section duplicating Workflow content, the structure could be tightened or the restart recipes split out.

4 / 5

Total

17

/

20

Passed

Description

82%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, trigger-rich description with excellent when-guidance and an explicit conflict boundary. Its main weakness is voice: first-person phrasing ("my own features", "unrelated to me") triggers the rubric's specificity penalty, and it enumerates topics rather than stating what the skill does with them.

Suggestions

Rewrite in third person and lead with an explicit action, e.g. "Answers questions about the OpenClacky platform's own features and configuration — installation, skills, Web UI, CLI, API config, memory, sessions, encryption, white-label, publishing, pricing, troubleshooting, or restarting the server. Use when the user asks about the product itself."

Add the trigger synonyms the skill actually handles per the body: "upgrade", "downgrade", and "API key", so users phrasing restart-failure or key-setup questions also match.

Keep the negative boundary ("Do NOT trigger for general coding tasks") but rephrase it in third person ("…unrelated to the platform") to avoid the first-person penalty.

DimensionReasoningScore

Specificity

The description enumerates many specific topics ("installation, skills, Web UI, CLI, API config, memory, sessions, encryption, white-label, publishing, pricing, troubleshooting, or restarting the server") but lists domains rather than concrete action verbs, and it uses first-person voice ("my own features", "unrelated to me"), which the rubric penalizes by reducing specificity by 1 from a base of 4. It is not 2 because the coverage of topics is far more comprehensive than a minimal domain mention.

3 / 5

Completeness

It explicitly answers both what (the enumerated product topics) and when ("Use this skill when the user asks about my own features, configuration, or usage…") with concrete trigger areas and a sharpening negative boundary. The when-clause is fully explicit and specific, so it exceeds anchor 4's "could be more explicit or specific".

5 / 5

Trigger Term Quality

Natural phrases users would actually say ("installation", "Web UI", "API config", "troubleshooting", "restarting the server") plus an explicit negative trigger give good coverage. Not 5 because natural variants the skill actually handles ("upgrade", "downgrade", "API key", "branding") are missing.

4 / 5

Distinctiveness Conflict Risk

The scope is tightly niched to questions about the assistant's own platform, and "Do NOT trigger for general coding tasks unrelated to me" is an explicit anti-conflict boundary, giving minimal overlap risk with other skills.

5 / 5

Total

17

/

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

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

Total

15

/

16

Passed

Repository

clacky-ai/openclacky

Path

lib/clacky/default_skills/product-help/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.