CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

bulkgate

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

Quality

57%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

Fix and improve this skill with Tessl

tessl review fix ./skills/bulkgate/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 practical, executable guide to driving BulkGate through the Membrane CLI — commands are concrete and the connection lifecycle with its client-action states is handled well. Its main weaknesses are padding in the overview sections, a dangling 'Step 2' reference with an unreconciled actionId format, and the absence of any validation steps for the batch SMS operations the skill exists to perform.

Suggestions

Add a validation checkpoint around bulk sends: check the credit balance first (the check-credit-balance action is already listed), optionally do a single test recipient, and confirm the output/response before sending to the full list.

Cut the marketing-style intro paragraph and the 'BulkGate Overview' entity bullet list, or replace them with one line of what BulkGate offers; fix the 'skip to Step 2' reference by numbering the actual steps.

Reconcile the popular-actions table's Key column with the <actionId> placeholder in the run examples (e.g. show one full run command using send-transactional-sms with a realistic --input payload).

DimensionReasoningScore

Conciseness

The CLI workflow sections are command-focused and efficient, but two sections are unnecessary padding: the marketing-style intro ('BulkGate is a platform that provides SMS messaging solutions for businesses... used by businesses of all sizes') and the content-free entity bullet list ending in 'Use action names and parameters as needed.' This is 'mostly efficient but includes some unnecessary explanation' rather than the minor-trimmable excess of anchor 4.

3 / 5

Actionability

Guidance is largely copy-paste executable: exact install command, login flow including the headless completion path, connection ensure/poll commands, action list/run syntax with an --input example, and a proxy options table. Minor gaps keep it from 5: the text says 'skip to Step 2' but no steps are numbered, and the relationship between the table's action 'Key' (e.g. send-transactional-sms) and the <actionId> placeholder used in run commands is never reconciled.

4 / 5

Workflow Clarity

The connect-then-use sequence is clearly laid out with explicit state checkpoints (READY / CLIENT_ACTION_REQUIRED with a re-poll loop / CONFIGURATION_ERROR), which alone would warrant 4. However, the skill's core operations are batch SMS sends ('Send Promotional SMS (Bulk)') and the content includes no validation or verification step for them — no credit-balance pre-check, test send, or delivery-status confirmation — so per the batch-operation cap, workflow clarity cannot exceed 3.

3 / 5

Progressive Disclosure

No bundle files exist, so the single well-sectioned document is the whole skill; structure is clear (Install → Auth → Connect → Search → Run → Proxy → Best practices) with no nested or buried references. It misses 5 because at ~150 lines the proxy flag table and the action catalog are candidates for a one-level-deep reference file, and the dangling 'Step 2' reference hints at untracked structure.

4 / 5

Total

14

/

20

Passed

Description

37%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 has an explicit use-when clause but squanders it: it never mentions SMS or messaging, instead relying on generic 'manage data and records' phrasing that neither describes concrete capabilities nor contains the natural keywords (SMS, text, bulk message) users would say. It communicates almost nothing about what the skill actually does beyond naming the vendor.

Suggestions

Replace the generic 'Manage data, records, and automate workflows' with the actual concrete capabilities, e.g. 'Send promotional and transactional SMS, check credit balance, and run HLR/number lookups via the BulkGate API'.

Add natural trigger terms users would say: SMS, text message, bulk messaging, marketing/notification messages — not just 'BulkGate data'.

Broaden the use-when clause to cover the real use cases, e.g. 'Use when the user wants to send SMS, check BulkGate credit, or look up phone numbers'.

DimensionReasoningScore

Specificity

The description names the domain ("BulkGate integration") but the actions are pure abstraction — "Manage data, records, and automate workflows" — with no concrete capability such as sending SMS, checking credit balance, or HLR lookup. This matches the anchor 'Names the domain but actions are minimal or generic'; it is above 1 only because the domain is named in third-person verb form.

2 / 5

Completeness

The 'when' is explicit ("Use when the user wants to interact with BulkGate data") but the 'what' is vague — the reader cannot tell the skill is about SMS messaging at all. This falls between anchor 2 (vague what, no when) and anchor 4 (both present and explicit), landing at the midpoint: a clear when attached to an uninformative what.

3 / 5

Trigger Term Quality

The natural terms a user would actually say for this platform — SMS, text message, bulk messaging, notifications — are completely absent; the only domain keyword is "BulkGate" and the rest ("data", "records", "workflows") is generic filler. This fits 'one or two generic keywords; missing the natural phrases users say' better than 3, since what's missing is not merely synonyms but the primary triggers.

2 / 5

Distinctiveness Conflict Risk

"BulkGate" is a distinctive name-when-said trigger, but "Manage data, records, and automate workflows" would plausibly match a database, Airtable, or CRM skill, giving real overlap risk with similar data-app skills. It is more specific than anchor 2's broad overlap but does not have the distinct trigger set of anchor 4.

3 / 5

Total

10

/

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/bulkgate/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.