CtrlK
BlogDocsLog inGet started
Tessl Logo

adbutler

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

61

Quality

52%

Does it follow best practices?

Impact

Pending

No eval scenarios have been run

SecuritybySnyk

Passed

No known issues

Optimize this skill with Tessl

npx tessl skill review --optimize ./skills/adbutler/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Discovery

40%

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 relies heavily on the 'AdButler' brand name for identification but fails to describe what AdButler actually does or what specific capabilities the skill provides. The actions listed are extremely generic ('manage data, records, and automate workflows') and could describe virtually any integration. The 'when' clause adds no additional value beyond restating the vague capabilities.

Suggestions

Replace generic terms with AdButler-specific actions, e.g., 'Create and manage ad campaigns, zones, placements, and banners in AdButler. Retrieve ad performance reports and configure ad serving rules.'

Expand trigger terms to include natural phrases users would say, such as 'ad serving', 'ad campaigns', 'banner ads', 'ad zones', 'ad placements', 'ad performance', or 'ad management'.

Strengthen the 'Use when' clause with specific scenarios, e.g., 'Use when the user needs to create or manage ad campaigns, pull ad performance data, configure ad zones or placements, or automate ad-serving workflows in AdButler.'

DimensionReasoningScore

Specificity

The description uses vague language like 'manage data, records, and automate workflows' without specifying concrete actions. It doesn't explain what kind of data, what records, or what workflows — these are generic terms that could apply to almost any integration.

1 / 3

Completeness

It has a weak 'what' (manage data, records, automate workflows) and a 'when' clause ('Use when the user wants to interact with AdButler data'), but the 'when' is essentially a restatement of the 'what' rather than providing explicit, useful trigger guidance.

2 / 3

Trigger Term Quality

'AdButler' is a specific and useful trigger term that users would naturally mention. However, there are no other natural keywords — missing terms like 'ads', 'ad serving', 'campaigns', 'zones', 'placements', 'banners', or other AdButler-specific concepts users might reference.

2 / 3

Distinctiveness Conflict Risk

The mention of 'AdButler' provides some distinctiveness since it's a specific product name. However, 'manage data, records, and automate workflows' is so generic it could overlap with any data management or integration skill. Without specifying ad-serving-specific capabilities, it could conflict with other integration skills.

2 / 3

Total

7

/

12

Passed

Implementation

64%

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

The skill provides solid, actionable CLI commands for integrating with AdButler via Membrane, covering the full lifecycle from installation to running actions. Its main weaknesses are the unnecessary introductory explanation of AdButler, missing validation/error-recovery steps in the workflow, and a flat structure that could benefit from splitting detailed content into referenced files.

Suggestions

Remove or drastically shorten the opening paragraph explaining what AdButler is — Claude already knows this, and the skill description covers it.

Add explicit validation checkpoints and error-recovery guidance, especially after `membrane connect` and `membrane action run` steps (e.g., what to do if connection fails, how to verify a run succeeded).

Consider splitting the action creation/polling details and best practices into a referenced file to keep SKILL.md as a concise overview.

DimensionReasoningScore

Conciseness

The opening paragraph explaining what AdButler is (ad server platform, publishers, advertisers, etc.) is unnecessary context Claude already knows. The rest is reasonably efficient but could be tightened — e.g., the 'Agent Types' note and some repeated CLI invocations.

2 / 3

Actionability

Provides fully executable CLI commands for every step: installation, authentication, connecting, searching actions, creating actions, running actions with input parameters. Commands are copy-paste ready with clear placeholders.

3 / 3

Workflow Clarity

The workflow sequence (install → authenticate → connect → discover → create/run) is present and logical, but there are no explicit validation checkpoints or error-handling feedback loops. The action creation polling section mentions error states but doesn't provide recovery steps beyond 'check the error field.'

2 / 3

Progressive Disclosure

Content is reasonably structured with clear headers, but everything is in a single file with no references to external detailed docs beyond the API URL. The AdButler entity overview is a bare bullet list that doesn't link to anything deeper, and the content is somewhat long for a single SKILL.md without splitting advanced topics.

2 / 3

Total

9

/

12

Passed

Validation

90%

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

Validation10 / 11 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

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

Warning

Total

10

/

11

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.