CtrlK
BlogDocsLog inGet started
Tessl Logo

fanout

Fanout integration. Manage data, records, and automate workflows. Use when the user wants to interact with Fanout data.

55

Quality

62%

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

Quality

Content

67%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 a strong, command-driven integration guide with executable CLI examples, a well-sequenced connection state machine, and clear sections. Its main weaknesses are some unnecessary introductory prose, a vague 'Popular actions' section, and slightly confusing step numbering ('Step 2', '1b').

Suggestions

Trim the explanatory intro prose (the 'push vs polling' sentence and 'so you can focus on the integration logic rather than auth plumbing') to respect the token budget.

Replace the vague 'Popular actions' discovery-only section with a short list of actual common Fanout actions (e.g. send message, list recipients) with example commands.

Fix the step numbering by explicitly labeling 'Step 1: Connect' and 'Step 2: Search/run actions' so the 'skip to Step 2' and '1b' references resolve clearly.

DimensionReasoningScore

Conciseness

The body is mostly efficient command references, but it includes unnecessary prose such as the 'push data to clients instantly, rather than relying on polling' intro, 'so you can focus on the integration logic rather than auth plumbing', and the filler line 'Use action names and parameters as needed.', fitting the 'mostly efficient but includes some unnecessary explanation' anchor; it is not 4 because several padding instances are clearly trimmable.

3 / 5

Actionability

The skill provides concrete, executable commands throughout (install, login, connection ensure, connection get --wait, action list/run, request) plus a full proxy flag table, fitting 'mostly executable guidance with minor gaps'; it is not 5 because the 'Popular actions' section only offers a discovery command rather than listing actual Fanout actions, and the Fanout Overview is vague about available operations.

4 / 5

Workflow Clarity

The connection setup is a clear sequence with explicit state validation (READY/BUILDING/CLIENT_ACTION_REQUIRED/CONFIGURATION_ERROR/SETUP_FAILED) and a feedback loop (poll, handle clientAction, re-poll), fitting 'clear sequence with most checkpoints present'; it is not 5 because the 'skip to Step 2' and '1b' labels reference steps that are not explicitly numbered, creating minor navigation gaps.

4 / 5

Progressive Disclosure

The body is well-organized with clear section headers (Overview, Install, Authentication, Connecting, Searching, Running, Proxy, Best practices) and a signaled external link to the official docs, with no nested references; it is not 5 because everything is inlined in a ~140-line file with no one-level-deep reference files for the detailed proxy/state-machine material, and the Overview section is thin.

4 / 5

Total

15

/

20

Passed

Description

57%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 correctly includes an explicit 'Use when' trigger and ties the skill to a distinct brand, but its capability language is generic and templated rather than describing concrete Fanout actions or natural task phrases. It is functional but reads as a boilerplate integration description.

Suggestions

Replace the generic verbs ('Manage data, records, and automate workflows') with concrete Fanout capabilities such as 'Send messages to recipients, manage recipient lists, and push real-time data to clients'.

Expand the trigger clause with natural user phrases, e.g. 'Use when the user wants to send real-time messages via Fanout, manage recipient lists, or push data to clients.'

Add domain-specific keywords (messages, recipients, recipient lists, real-time, push) so the skill triggers on the terms users actually say.

DimensionReasoningScore

Specificity

The description names the domain ('Fanout integration') but its actions — 'Manage data, records, and automate workflows' — are generic verbs rather than concrete Fanout-specific operations, matching the 'names the domain but actions are minimal or generic' anchor; it is not a 3 because none of the actions are concrete like 'extracts content'.

2 / 5

Completeness

It states a 'what' ('Fanout integration. Manage data, records, and automate workflows.') and an explicit 'when' ('Use when the user wants to interact with Fanout data.'), satisfying the both-present anchor; it is not 5 because neither the 'what' nor the 'when' offers concrete trigger phrases, and not 3 because the 'when' is explicit rather than missing or weakly implied.

4 / 5

Trigger Term Quality

'Fanout' and 'interact with Fanout data' are relevant, non-generic keywords, but the description omits the natural task phrases a user would actually say (messages, recipients, real-time push, streaming), fitting the 'some relevant keywords but missing common variations or synonyms' anchor.

3 / 5

Distinctiveness Conflict Risk

The 'Fanout' brand name gives a clear, distinct niche with minimal conflict risk, but the templated generic phrasing ('Manage data, records, and automate workflows') overlaps with sibling Membrane integration skills, fitting 'mostly distinct; minor overlap risk'; it is not 5 because the triggers are brand-tied but not task-specific.

4 / 5

Total

13

/

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.

Validation15 / 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
membranedev/application-skills
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.