CtrlK
BlogDocsLog inGet started
Tessl Logo

add-slack

Add Slack as a channel. Can replace WhatsApp entirely or run alongside it. Uses Socket Mode (no public URL needed).

63

Quality

79%

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 ./.claude/skills/add-slack/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

85%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-sequenced setup guide with executable commands and strong validation checkpoints throughout. The weaknesses are a dangling reference to a missing SLACK_SETUP.md file and minor duplicated content that could be trimmed or factored out.

Suggestions

Include the referenced SLACK_SETUP.md in the skill bundle (or inline its essential steps), since the body links to it twice but the file is absent.

Deduplicate the channel-ID guidance (Phase 4 vs. the Troubleshooting "Getting channel ID" section) and the repeated env-sync/restart commands in the missing_scope section.

Consider moving the lengthy Known Limitations and Troubleshooting sections into a separate reference file linked from SKILL.md to keep the main body as a lean overview.

DimensionReasoningScore

Conciseness

The body is dense with project-specific commands and assumes Claude's competence, but there are minor trimmable repetitions: channel-ID guidance appears in both Phase 4 and the Troubleshooting section, and the env-sync plus restart commands are repeated verbatim in the missing_scope section. Not 5 because of these over-explained duplicates; not 3 because no general concepts are padded.

4 / 5

Actionability

Every phase gives copy-paste-ready commands: exact git remote/fetch/merge commands, npm install/build/vitest validation, concrete .env entries, full registration commands with all flags, a sqlite3 query, a curl API call, and log-tailing. Placeholders like <channel-id> and @${ASSISTANT_NAME} are the only variables, which is appropriate.

5 / 5

Workflow Clarity

Five clearly sequenced phases with an explicit validation gate ("All tests must pass (including the new Slack tests) and build must be clean before proceeding"), merge-conflict recovery guidance, a dedicated Verify phase, and a Troubleshooting section that closes the loop for failure modes. This matches the anchor for clear sequence with explicit validation and feedback loops.

5 / 5

Progressive Disclosure

Sectioning is good and SLACK_SETUP.md is clearly signaled as a one-level reference, but that file does not exist in the bundle (only SKILL.md is present), so the pointer is broken. Additionally, the ~200-line body inlines troubleshooting and known-limitations content that could be split out. Not 4 because navigation to the referenced detail is impossible; not 2 because structure and clear signaling are present.

3 / 5

Total

17

/

20

Passed

Description

65%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 a clear what and good natural trigger vocabulary anchored on "Slack". Its main gaps are the absent "Use when..." trigger clause (capping completeness) and incomplete coverage of the skill's concrete actions.

Suggestions

Add an explicit trigger clause, e.g. "Use when the user wants to add Slack, connect a Slack bot, or enable Slack alongside WhatsApp."

Briefly enumerate the concrete outcomes so specificity reaches full coverage: "Merges the Slack channel code, walks through Slack app creation and token setup, registers channels, and verifies the connection."

Name the host project (NanoClaw) in the description so the skill's scope is unambiguous when listed alongside other skills.

DimensionReasoningScore

Specificity

"Add Slack as a channel", "Can replace WhatsApp entirely or run alongside it", and "Uses Socket Mode (no public URL needed)" name the domain with a couple of concrete capabilities, but the description omits most of what the skill does (code integration, interactive app setup, channel registration, verification), so coverage is not comprehensive.

3 / 5

Completeness

The "what" is clear (add Slack as a channel, replace or run alongside WhatsApp, Socket Mode), but there is no "Use when..." clause or equivalent trigger guidance, which caps completeness at 3 per the judging guidelines.

3 / 5

Trigger Term Quality

Natural terms "Slack", "channel", "WhatsApp", and "Socket Mode" cover the vocabulary a user would actually say ("add Slack", "Slack channel"). A few natural variants like "Slack integration" or "connect Slack" are missing, so it falls short of anchor 5's synonym-level coverage.

4 / 5

Distinctiveness Conflict Risk

"Add Slack as a channel" with the WhatsApp coexistence context carves a clear niche with distinct triggers; it would virtually never fire for the wrong skill. The specificity of the domain terms matches anchor 5's minimal-conflict example.

5 / 5

Total

15

/

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: 1 missing

Warning

Total

15

/

16

Passed

Repository
jbaruch/nanoclaw-telegram
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.