CtrlK
BlogDocsLog inGet started
Tessl Logo

configure-notifications

Configure notification integrations (Telegram, Discord, Slack) via natural language

54

Quality

62%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

High

Do not use without reviewing

Fix and improve this skill with Tessl

tessl review fix ./skills/configure-notifications/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

63%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 content is highly actionable with concrete code, exact prompts, and well-sequenced validation/test loops, but it is verbose due to heavy triplication across providers and monolithic rather than progressively disclosed. Splitting provider wizards and reference material into bundle files would notably improve both conciseness and progressive disclosure.

Suggestions

Extract the repeated per-provider wizard scaffolding ("How This Skill Works", event-config, env-var alternative, detect-existing-config) into a shared section or reference file to remove triplication and recover token budget.

Move the Hook Event Templates and Custom Integration sections into separate reference files (e.g., HOOK_TEMPLATES.md, CUSTOM_INTEGRATIONS.md) and link to them one level deep from SKILL.md.

Resolve or remove the dangling "Related" references to src/notifications/*.ts, which do not exist in the skill bundle and cannot be navigated.

DimensionReasoningScore

Conciseness

The body is concrete and avoids explaining concepts Claude already knows, but it triplicates substantial boilerplate across the Telegram, Discord, and Slack wizards ("How This Skill Works", event config, env-var alternative, detect-existing-config), which could be factored out; this places it at "mostly efficient but could be tightened" rather than lean.

3 / 5

Actionability

It provides copy-paste-ready bash using jq/curl, exact AskUserQuestion prompts with option text, and explicit validation patterns (token format, webhook URL prefixes); it sits just below 5 because several write-config scripts reference shell variables (BOT_TOKEN, WEBHOOK_URL) that are placeholders rather than set in-block.

4 / 5

Workflow Clarity

Each wizard is a clearly sequenced Step 1..N flow with explicit validation checkpoints and a test-then-debug feedback loop (e.g., token pattern validation with retry, test notification with decoded HTTP errors); it misses 5 because the "disable unselected events" handling is hand-wavy and some custom-integration sub-flows branch without explicit checkpoints.

4 / 5

Progressive Disclosure

The body is well-structured with a routing section and clear provider/feature headers, but it is a ~1200-line monolith where per-provider wizards, hook templates, and custom-integration flows are all inlined rather than split into reference files; the only "Related" references point to non-existent source paths (src/notifications/*.ts), so there are no real one-level-deep bundle references to navigate.

3 / 5

Total

14

/

20

Passed

Description

61%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 is concise and names concrete providers with natural trigger terms, but it omits an explicit "Use when..." clause, which caps its completeness. It is distinct and specific but stops short of comprehensive trigger guidance.

Suggestions

Add a "Use when..." clause naming concrete user phrases, e.g. "Use when the user asks to set up or configure Telegram, Discord, or Slack notifications."

Include common synonyms (alerts, pings, messages) to broaden trigger-term coverage toward the 5 anchor.

List 1-2 more concrete actions beyond "Configure" (e.g., test, customize message templates) to lift specificity.

DimensionReasoningScore

Specificity

"Configure notification integrations (Telegram, Discord, Slack) via natural language" names the domain and three concrete provider targets but relies on a single action verb ("Configure"), matching the anchor that names the domain with limited concrete actions rather than the multi-action anchor above.

3 / 5

Completeness

It gives a clear "what" (configure provider integrations via natural language) but contains no "Use when..." clause or equivalent trigger guidance in the description field itself, so completeness is capped at 3 per the judging guidelines.

3 / 5

Trigger Term Quality

The description surfaces natural terms users would actually say ("notification integrations", "Telegram", "Discord", "Slack"), giving good keyword coverage; it falls short of 5 only because synonyms like "alerts" or "pings" are absent.

4 / 5

Distinctiveness Conflict Risk

Naming three specific providers carves a clear niche with distinct triggers and minimal conflict risk, though "notification integrations" retains minor overlap with broader alerting/messaging skills, keeping it just below the 5 anchor.

4 / 5

Total

14

/

20

Passed

Validation

87%

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

Validation14 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

skill_md_line_count

SKILL.md is long (1215 lines); consider splitting into references/ and linking

Warning

frontmatter_unknown_keys

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

Warning

Total

14

/

16

Passed

Repository
Yeachan-Heo/oh-my-claudecode
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.