CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

carbon-ads

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

Quality

63%

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/carbon-ads/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

61%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 a solid, largely copy-paste-ready CLI guide with a well-sequenced connection workflow and explicit state-handling checkpoints. Its main flaws are padding (the empty Overview section and intro paragraph), a dangling 'Step 2' reference that breaks the numbered flow, and no worked example instantiating the placeholder IDs.

Suggestions

Delete the content-free 'Carbon Ads Overview' bullet list and trim the intro paragraph about what Carbon Ads is — Claude already knows this, and the bullets carry no information.

Fix the dangling 'skip to Step 2' references by actually labeling the subsequent sections as Steps 1 and 2 (or removing the numbering), since no Step 2 is ever defined.

Add one fully instantiated worked example (e.g. listing and running a campaign action with a real connection id and --input payload) and a brief error-check step after 'membrane action run' to close the actionability and workflow-validation gaps.

DimensionReasoningScore

Conciseness

The bulk is an efficient command reference, but there is unnecessary padding: an opening paragraph explaining what Carbon Ads is, a content-free 'Carbon Ads Overview' bullet list (Campaign/Creatives/Account with no descriptions), and loose prose like 'This will burn less tokens'. Fits anchor 3 ('mostly efficient but includes some unnecessary explanation or could be tightened'); not 4 because the empty Overview section and intro explanation are clearly trimmable.

3 / 5

Actionability

Commands are concrete and executable throughout: 'npm install -g @membranehq/cli@latest', 'membrane connection ensure "https://carbonads.net" --json', 'membrane action run <actionId> --connectionId=CONNECTION_ID --input ...', plus a full proxy options table. Not 5 because placeholders like CONNECTION_ID/actionId are never instantiated in a worked example and some guidance stays abstract.

4 / 5

Workflow Clarity

The sequence (install → login → connection ensure → poll for READY → discover actions → run → proxy fallback) is clear, with state-based checkpoints (READY/BUILDING/CLIENT_ACTION_REQUIRED) and a re-poll loop after user action. Not 5 because 'skip to Step 2' references a Step 2 that is never defined in the document, and there are no validation/error-handling steps for action runs themselves.

4 / 5

Progressive Disclosure

The skill is a single self-contained file (no references/ or bundle files exist to verify), organized into clear headed sections (Install, Authentication, Connecting, Searching, Running, Proxy, Best practices) with no nested references. Not 5 because at ~130 lines, material like the proxy flag table and action discovery detail sits inline where a small reference file could keep SKILL.md leaner.

4 / 5

Total

15

/

20

Passed

Description

48%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 anchors triggering correctly on 'Carbon Ads' and includes an explicit 'Use when' clause, but the capability statement is generic integration-skill boilerplate that says nothing concrete about what Carbon Ads actions the skill performs. Replacing 'Manage data, records, and automate workflows' with real Carbon Ads verbs would lift both specificity and completeness.

Suggestions

Replace the generic 'Manage data, records, and automate workflows' with concrete Carbon Ads capabilities, e.g. 'Manage campaigns, creatives, and ad inventory; pull performance reports' — this would raise both specificity and completeness.

Add natural trigger variations users would actually say, such as 'ads', 'ad campaigns', 'creatives', or 'monetize your site with Carbon Ads'.

Sharpen the 'when' clause to name concrete trigger contexts, e.g. 'Use when the user wants to manage Carbon Ads campaigns, creatives, or ad performance data'.

DimensionReasoningScore

Specificity

It names the domain ('Carbon Ads integration') but the stated actions — 'Manage data, records, and automate workflows' — are generic boilerplate applicable to any SaaS integration; no concrete Carbon Ads actions (campaigns, creatives, reporting, ad serving) are listed. This matches anchor 2 ('names the domain but actions are minimal or generic') and falls short of anchor 3's '1-2 concrete actions'.

2 / 5

Completeness

The 'when' is explicitly present ('Use when the user wants to interact with Carbon Ads data'), but the 'what' ('Manage data, records, and automate workflows') is too vague to clearly answer what the skill does. It sits between anchor 3 and anchor 4 — the explicit 'when' pulls it above 3's 'when missing', but the vague 'what' keeps it below 4's 'both what and when' with a clear what.

3 / 5

Trigger Term Quality

'Carbon Ads' is the natural keyword a user would say, but coverage stops there: common variations and synonyms like 'ads', 'advertising', 'campaigns', 'creatives', or 'monetization' are absent. This fits anchor 3 ('some relevant keywords but missing common variations or synonyms'), not anchor 4's 'good keyword coverage'.

3 / 5

Distinctiveness Conflict Risk

'Carbon Ads' carves out a clear niche with a distinct trigger phrase, giving minimal conflict risk with other skills. The generic 'manage data, records, and automate workflows' boilerplate introduces minor overlap with any data-integration skill, keeping it below anchor 5.

4 / 5

Total

12

/

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/carbon-ads/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.