CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

adbutler

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

Quality

69%

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/adbutler/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 body provides a mostly executable, well-sequenced guide to connecting to AdButler via the Membrane CLI, with genuine feedback loops for connection states. Weaknesses are a padded intro, redundant action-discovery sections, a dangling 'Step 2' reference, and placeholder-only examples with no AdButler-specific commands.

Suggestions

Fix the dangling reference: either label the action-discovery section "Step 2" or change "skip to **Step 2**" to point to the actual section name (e.g. "Searching for actions").

Cut the marketing-style intro paragraph about what AdButler and ad servers are, and merge the duplicated action-discovery instructions in "Searching for actions" and "Popular actions" into one section using a single consistent command form.

Add one concrete end-to-end example with real AdButler values (e.g. an actual action id or a proxy request like `membrane request CONNECTION_ID /advertiser` with sample output) so the placeholders become copy-paste ready.

DimensionReasoningScore

Conciseness

The opening paragraph explains what an ad server platform is and who uses it — background Claude already knows — and there is redundancy between the "Searching for actions" and "Popular actions" sections plus awkward filler ("Agent Types : claude, openclaw, codex, warp, windsurf, etc."). Mostly efficient but with several unnecessary or padded passages, matching anchor 3 rather than 4.

3 / 5

Actionability

Commands are concrete and copy-paste ready throughout (install, login, connection ensure, poll with --wait, action list/run, proxy flags table). It is not 5 because every example is a placeholder (CONNECTION_ID, QUERY, '{"key": "value"}') with no AdButler-specific invocation, and the command form is inconsistent between "membrane" and "npx @membranehq/cli@latest".

4 / 5

Workflow Clarity

The install → login → connect → poll → discover → run sequence is clear, and the connection state machine (READY / BUILDING / CLIENT_ACTION_REQUIRED / CONFIGURATION_ERROR) with re-polling forms a real validation feedback loop. It is not 5 because "skip to **Step 2**" references a heading that does not exist, and there is no error-checking guidance after running an action or proxy request.

4 / 5

Progressive Disclosure

The single file is well-sectioned with clear headers and no nested references (no bundle files exist), and the core CLI usage is appropriately placed inline. It is not 5 because detail like the clientAction state-machine breakdown and the proxy flag reference table could live in a separate reference file to slim the main body.

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 names a distinctive niche product and includes an explicit 'Use when' clause, so it answers both what and when at a basic level. However, the capability statements are generic data-management buzzwords rather than concrete AdButler operations, and trigger coverage stops at the product name.

Suggestions

Replace "Manage data, records, and automate workflows" with concrete AdButler actions, e.g. "Create and manage advertisers, campaigns, banners, and publisher zones; pull performance reports".

Expand the 'Use when' clause with natural trigger phrases users would actually say, e.g. "Use when the user mentions AdButler, ad serving, ad campaigns, banners, zones, or pulling ad performance reports".

DimensionReasoningScore

Specificity

"Manage data, records, and automate workflows" are generic actions with no AdButler-specific operations (no mention of campaigns, banners, zones, advertisers, or reports), matching the anchor 'names the domain but actions are minimal or generic'. It is not 3 because no genuinely concrete, domain-specific action is listed.

2 / 5

Completeness

The 'when' is explicit ("Use when the user wants to interact with AdButler data") and a 'what' is present ("AdButler integration. Manage data, records, and automate workflows"), but the 'what' is generic and the 'when' could name concrete triggers like campaigns or reports. Both are present but neither is fully specific, matching anchor 4 rather than 5.

4 / 5

Trigger Term Quality

"AdButler" is a strong natural keyword users would say, but common variations and synonyms such as "ad server", "ads", "advertising", "campaigns", or "banners" are absent. It is not 4 because the only natural term is the product name itself.

3 / 5

Distinctiveness Conflict Risk

"AdButler" is a clear niche with a distinct, non-overlapping trigger term, but the generic middle phrase "Manage data, records, and automate workflows" creates minor overlap risk with generic data-management skills. It sits between anchors 4 and 5, leaning 4 because of that generic phrasing.

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.

Validation — 15 / 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

Path

skills/adbutler/SKILL.md

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.