CtrlK
BlogDocsLog inGet started
Tessl Logo

slack

Interact with Slack workspaces using browser automation. Use when the user needs to check unread channels, navigate Slack, send messages, extract data, find information, search conversations, or automate any Slack task. Triggers include "check my Slack", "what channels have unreads", "send a message to", "search Slack for", "extract from Slack", "find who said", or any task requiring programmatic Slack interaction.

62

Quality

73%

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

Fix and improve this skill with Tessl

tessl review fix ./skill-data/slack/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

60%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 highly actionable with concrete browser-automation commands and a clear sequenced workflow, but it is padded by repeated unread-check examples and fails to use the provided reference bundle. Linking and de-duplicating against slack-tasks.md would materially improve both conciseness and progressive disclosure.

Suggestions

Reference references/slack-tasks.md from the body (e.g., in a 'Common Tasks' pointer) and move the duplicated task walkthroughs there instead of inlining them in SKILL.md.

Consolidate the three overlapping unread-checking sections ('Common Tasks', 'Checking Unread Messages', 'Example: Full Unread Check') into one canonical sequence to remove redundancy.

Add an explicit validate→fix→retry feedback loop (e.g., on a failed 'wait --fn' assertion: re-snapshot, re-locate the ref, and retry) to lift workflow clarity.

DimensionReasoningScore

Conciseness

Content is mostly efficient executable commands, but unread-checking is repeated across 'Common Tasks', 'Checking Unread Messages', and the 'Full Unread Check' example, adding redundant length that could be tightened.

3 / 5

Actionability

Provides concrete, copy-paste-ready commands throughout ('agent-browser connect 9222', 'snapshot -i', 'click @e14'); minor gaps come from session-specific placeholder refs that require a fresh snapshot to resolve.

4 / 5

Workflow Clarity

A clear 5-step Core Workflow with 'wait --fn' assertion checkpoints (channel_header text and search-param guards), but no explicit validate→fix→retry feedback loops for error recovery.

4 / 5

Progressive Disclosure

A bundle file 'references/slack-tasks.md' exists but is never referenced from the body, and its task patterns are duplicated/inlined in SKILL.md; the 'References' section points only to external URLs, leaving the bundle buried.

2 / 5

Total

13

/

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 that clearly states capabilities and provides explicit, natural trigger phrases for when to use the skill. It is distinctively Slack-scoped with minimal overlap risk; only slight generic wording in a couple of listed actions keeps specificity from the top anchor.

DimensionReasoningScore

Specificity

Lists several concrete actions ('check unread channels', 'send messages', 'extract data', 'search conversations') but a few are generic ('find information', 'automate any Slack task'), leaving minor coverage gaps rather than comprehensive.

4 / 5

Completeness

Explicitly answers both what ('Interact with Slack workspaces using browser automation...') and when ('Use when the user needs to... Triggers include...') with concrete trigger phrases.

5 / 5

Trigger Term Quality

Includes natural phrases users would say ('check my Slack', 'what channels have unreads', 'send a message to', 'search Slack for', 'find who said') with good coverage, though a few natural variations are missing.

4 / 5

Distinctiveness Conflict Risk

Occupies a clear Slack-specific niche with distinct Slack-named triggers, minimizing conflict risk with other skills.

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

allowed_tools_field

'allowed-tools' contains unusual tool name(s)

Warning

Total

15

/

16

Passed

Repository
vercel-labs/agent-browser
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.