CtrlK
BlogDocsLog inGet started
Tessl Logo

constant-contact

Constant Contact integration. Manage Contacts, Campaigns, Libraries. Use when the user wants to interact with Constant Contact data.

59

Quality

68%

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/constant-contact/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

63%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 actionable and the connection workflow is well-sequenced with polling checkpoints, but it carries padding (background prose and a 'No description' actions table) and does not split reference material into bundle files.

Suggestions

Trim the introductory 'Constant Contact is an email marketing platform...' paragraph and remove or relocate the 'Popular actions' table whose descriptions are all 'No description'.

Move the full actions catalog into a references/ file (e.g. ACTIONS.md) and keep only a few representative examples inline in SKILL.md.

Add a brief validation step after running create/update/delete actions (e.g. re-fetch or check the response state) to close the feedback loop on destructive operations.

DimensionReasoningScore

Conciseness

Mostly efficient CLI commands, but the opening 'Constant Contact is an email marketing platform...' background and the 20-row 'Popular actions' table where every row says 'No description' add bulk tokens with little value.

3 / 5

Actionability

Provides copy-paste-ready commands for install, login, connection ensure, action list/run, and proxy requests with flags documented, with only minor gaps such as generic actionId placeholders.

4 / 5

Workflow Clarity

The connection setup is clearly sequenced (install → login → ensure → poll until READY) with explicit state checkpoints and a re-poll feedback loop after CLIENT_ACTION_REQUIRED, though destructive create/update actions lack result-validation guidance.

4 / 5

Progressive Disclosure

Sections are reasonably organized with headers, but everything is inlined in one ~160-line file with no bundle files; the long actions table is content that would be better placed in a separate reference file.

3 / 5

Total

14

/

20

Passed

Description

73%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 is well-formed: third-person, explicit 'Use when' trigger, and a distinct brand niche. Its main weakness is the generic 'Manage' verb, which keeps specificity from reaching the top anchor.

Suggestions

Replace the generic verb 'Manage' with concrete actions per entity, e.g. 'Create and update Contacts, build and send Campaigns, manage Libraries'.

Expand the 'Use when' clause with concrete trigger phrases users would naturally say, e.g. 'when the user mentions Constant Contact, email campaigns, contact lists, or email marketing'.

DimensionReasoningScore

Specificity

Names the domain and several managed entities ('Contacts, Campaigns, Libraries'), but the only action verb is the generic 'Manage', so concrete actions are minimal rather than comprehensive.

3 / 5

Completeness

Clearly states what it does ('Manage Contacts, Campaigns, Libraries') and gives an explicit 'Use when the user wants to interact with Constant Contact data' clause, but the trigger is broad rather than listing concrete trigger phrases.

4 / 5

Trigger Term Quality

Includes the brand name 'Constant Contact' plus natural nouns 'Contacts', 'Campaigns', and 'Libraries' that users would say, though common synonyms like 'email lists' or 'email marketing' are missing.

4 / 5

Distinctiveness Conflict Risk

The 'Constant Contact' brand name carves out a clear niche with distinct triggers and minimal overlap risk with other skills.

5 / 5

Total

16

/

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.