CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

annature

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

Quality

65%

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

Quality

Content

57%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 delivers strong executable guidance — real CLI commands, auth flows, connection-state handling, and a proxy escape hatch — and the best-practices section is concrete. Its weaknesses are a padded intro, a token-wasting action table where every description reads 'No description', and a broken step numbering scheme ('skip to Step 2', '1b' with no 1a) that muddies the connection workflow.

Suggestions

Fix the broken step references: 'If the returned connection has state READY, skip to Step 2' points at a nonexistent Step 2, and '#### 1b. Wait for the connection to be ready' has no 1a — renumber the Connecting to Annature section as explicit Steps 1/2/3.

Drop or repair the Popular actions table: all 20 Description cells read 'No description', so it spends ~20 lines saying nothing — either fetch real descriptions, reduce it to a handful of high-value actions, or remove it since 'membrane action list --intent' discovers actions dynamically.

Trim the marketing-style opening paragraph ('used by businesses of all sizes...') and vague filler like 'Use action names and parameters as needed.' and the awkward Agent Types sentence, and clarify that the table's 'Key' values are what get passed as <actionId> in 'membrane action run'.

DimensionReasoningScore

Conciseness

The command blocks are lean, but the intro pads with marketing prose ('used by businesses of all sizes to securely obtain signatures...'), the 20-row Popular actions table burns ~20 lines on a column that literally reads 'No description', and filler lines like 'Use action names and parameters as needed.' add nothing. Mostly efficient with several spots that could be tightened — anchor 3, not 2, since the bulk of the doc is tight, executable commands.

3 / 5

Actionability

Concrete, copy-paste-ready commands throughout: npm install, membrane login (including the headless completion flow), connection ensure with --json, action list --intent, action run --input, and a full proxy flag table. Minor gaps keep it at anchor 4 rather than 5: <actionId> is never reconciled with the table's 'Key' column, and no worked example (e.g. creating an envelope) is shown.

4 / 5

Workflow Clarity

The install → login → connect → poll → search → run sequence exists with real checkpoints (--wait polling, CLIENT_ACTION_REQUIRED handling, error-state guidance). But the sequencing is incoherent in places: 'skip to Step 2' references a step that doesn't exist, and '#### 1b.' appears with no 1a or numbered steps. That matches anchor 3 (sequence present, checkpoints implicit/broken) rather than 4, which requires a clear sequence.

3 / 5

Progressive Disclosure

A single ~160-line file with decent section headers, no bundle files, and no external references — beyond the under-50-line simple-skill case. The 20-row 'No description' action table is low-value inline bulk that duplicates what 'membrane action list' discovers dynamically. Anchor 3 (some structure, content that should be separate or trimmed is inline) rather than 4, since the table and overflow content are not appropriately placed.

3 / 5

Total

13

/

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 correctly names the Annature niche and includes an explicit 'Use when' clause, so it fires when a user mentions Annature. However, the capability statement is generic boilerplate ('Manage data, records, and automate workflows') that could describe any integration, and it omits the domain's natural trigger vocabulary (signatures, envelopes, documents, signing).

Suggestions

Replace 'Manage data, records, and automate workflows' with concrete Annature capabilities, e.g. 'Create and send signature envelopes, manage documents, templates, contacts, and accounts.'

Add natural trigger terms users would say — signatures, e-signature, envelopes, signing, documents — to the 'Use when' clause, e.g. 'Use when the user wants to send documents for signature or manage envelopes, templates, or contacts in Annature.'

DimensionReasoningScore

Specificity

"Manage data, records, and automate workflows" names the Annature domain but the actions are entirely generic — no concrete capabilities like creating signature envelopes or managing documents, templates, or contacts. It matches anchor 2 (domain named, actions minimal/generic) rather than 3, which requires 1-2 concrete actions.

2 / 5

Completeness

Both parts are explicit: the what ("Manage data, records, and automate workflows") and the when ("Use when the user wants to interact with Annature data"). It exceeds anchor 3 (which requires a missing or weakly implied when) but falls short of anchor 5 because the when is circular and lacks concrete trigger phrases.

4 / 5

Trigger Term Quality

"Annature" is a strong natural keyword, but the description is missing the vocabulary users would actually say — signatures, e-signature, envelopes, documents, signing. This matches anchor 3 (some relevant keywords, missing common variations) rather than 4, since the core signature/signing terms are absent.

3 / 5

Distinctiveness Conflict Risk

"Annature integration" carves out a clear niche app with minimal conflict risk, but "Manage data, records, and automate workflows" is boilerplate that overlaps with any app-integration skill. This matches anchor 4 (mostly distinct, minor overlap with closely related skills) rather than 5, whose triggers are distinct and concrete.

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