CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

adobe-acrobat-sign

Adobe Acrobat Sign integration. Manage Users, Agreements, Widgets. Use when the user wants to interact with Adobe Acrobat Sign data.

Quality

71%

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/adobe-acrobat-sign/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.

A strongly actionable body — real CLI commands, connection-state error handling with a poll/re-poll feedback loop, and a sensible fallback to proxy requests. The main deductions are the boilerplate intro explaining a well-known product, inconsistent step numbering that breaks the workflow's navigation, and a fully inlined structure with no progressive disclosure layer for the long reference tables.

Suggestions

Delete the opening paragraph explaining what Adobe Acrobat Sign is and trim marketing asides ('so you can focus on the integration logic', 'This will burn less tokens') — Claude already knows what an e-signature service is.

Fix the workflow numbering: either label the sections as Steps 1/1a/1b/2 consistently or drop the 'skip to Step 2' cross-reference and the orphaned '1b' heading.

Clarify how to invoke an action from the Popular actions table (Key vs actionId) and add one fully worked example, e.g. membrane action run list-agreements --connectionId=... --input '{"cursor": ...}'.

Move the Popular actions table and the clientAction/connection-state taxonomy into a references/ file (e.g. ACTIONS.md) to slim SKILL.md into a true overview.

DimensionReasoningScore

Conciseness

The body opens by explaining what Adobe Acrobat Sign is — 'a cloud-based service for electronic signatures... commonly used by businesses of all sizes to streamline document workflows and obtain legally binding signatures' — a concept Claude already knows, and includes marketing padding like 'so you can focus on the integration logic rather than auth plumbing' and 'This will burn less tokens'. The bulk of the body (commands, tables, state handling) is lean, so this lands at anchor 3 (mostly efficient, some unnecessary explanation) rather than 2.

3 / 5

Actionability

Concrete copy-paste commands throughout: 'npm install -g @membranehq/cli@latest', 'membrane connection ensure "https://acrobat.adobe.com/" --json', 'membrane action run <actionId> --connectionId=CONNECTION_ID --input ...', plus a full proxy flag table. Minor gaps keep it below anchor 5: 'membrane action run <actionId>' is never reconciled with the 'Key' column in the Popular actions table (is the key the id?), and the parameter example is the generic placeholder '{"key": "value"}' rather than one real worked call such as running list-agreements.

4 / 5

Workflow Clarity

The setup sequence (install → login → connection ensure → poll state → handle clientAction → re-poll → search actions → run → proxy fallback) has genuine validation checkpoints and a feedback loop: poll until state leaves BUILDING, act on CLIENT_ACTION_REQUIRED, check the error field on CONFIGURATION_ERROR/SETUP_FAILED. Held below anchor 5 by incoherent step numbering — 'skip to Step 2' references a step that is never labeled, and section '1b' exists with no '1a' or 'Step 2' heading, leaving the sequence ambiguous at exactly one transition.

4 / 5

Progressive Disclosure

Sections are well-headed and commands are scannable, but the ~157-line body keeps everything inline: the 18-row Popular actions table, the clientAction schema taxonomy, and the proxy flag table are all candidates for a one-level-deep reference file, and no bundle files (references/, scripts/, assets/) exist at all. This matches anchor 3 — some structure, but content that should be separate is inline — rather than 4, since there is no reference layer for content that clearly does not need to sit in the main context.

3 / 5

Total

14

/

20

Passed

Description

66%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.

A compact, third-person description with an explicit 'Use when' clause and a well-named, distinctive product domain. Its weaknesses are the generic verb "Manage" standing in for concrete capabilities and a trigger vocabulary limited to the product name plus object labels, with no synonyms like 'electronic signature' or 'e-sign'.

Suggestions

Replace the generic verb 'Manage' with concrete actions, e.g. 'Send agreements for electronic signature, download signed documents and audit trails, create and manage shared widgets and library documents.'

Broaden trigger terms with natural user phrasing such as 'electronic signature', 'e-sign', 'send a document for signing', and 'Adobe Sign' so the skill fires when users describe the task rather than the product.

Make the 'when' clause non-circular by naming the tasks (e.g. 'Use when the user wants to send, sign, track, or cancel documents requiring electronic signatures') instead of restating 'interact with Adobe Acrobat Sign data'.

DimensionReasoningScore

Specificity

The description names the domain and three resource types ("Manage Users, Agreements, Widgets"), but "Manage" is a single generic verb — no concrete operations like sending agreements for signature, downloading audit trails, or creating widgets. It matches anchor 3 (names domain and 1-2 concrete actions, not comprehensive); it is above anchor 2 because the three named resources go beyond minimal/generic, but below anchor 4 because the actions themselves are never specified.

3 / 5

Completeness

It has a clear 'what' ("Manage Users, Agreements, Widgets") and an explicit 'when' ("Use when the user wants to interact with Adobe Acrobat Sign data"), satisfying the 'Use when...' requirement. It falls short of anchor 5 because the 'when' clause is circular — it restates the product name rather than giving concrete trigger phrases like 'when the user wants to send a document for electronic signature'.

4 / 5

Trigger Term Quality

"Adobe Acrobat Sign", "Users", "Agreements", and "Widgets" are relevant keywords, but common natural phrases users would say are missing — "electronic signature", "e-sign", "send a document for signing", "EchoSign". This fits anchor 3 (some relevant keywords but missing common variations or synonyms); not 4 because the trigger vocabulary is limited to the product name and object labels with no synonyms or natural user phrasing.

3 / 5

Distinctiveness Conflict Risk

The explicit product naming ("Adobe Acrobat Sign") gives a clear niche with distinct triggers and minimal conflict risk — no generic language that would collide with other skills. Voice is third person throughout, so no person-perspective penalty applies.

5 / 5

Total

15

/

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/adobe-acrobat-sign/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.