CtrlK
BlogDocsLog inGet started
Tessl Logo

documenso-webhooks-events

Implement Documenso webhook configuration and event handling. Use when setting up webhook endpoints, handling document events, or implementing real-time notifications for document signing. Trigger with phrases like "documenso webhook", "documenso events", "document completed webhook", "signing notification".

67

Quality

82%

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

SKILL.md
Quality
Evals
Security

Quality

Content

65%Weight 40%Scale 1-3

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

The body is highly actionable with complete, runnable code across TypeScript, Python, and shell, but it is over-long and duplicates a bundled reference file that it never links to. Workflow sequencing is clear but lacks the explicit validation/retry feedback loops expected for async event processing.

Suggestions

Link to references/implementation-guide.md from the body and move the full events table, payload JSON, and complete handler code there, keeping SKILL.md as a concise overview -- this fixes both the conciseness duplication and the orphaned reference (progressive_disclosure).

Add an explicit validate->fix->retry checkpoint (e.g., 'send a test event with curl, confirm the handler logs and returns 200, fix and re-test if not') to lift workflow_clarity above 2 for this async/batch context.

Fix the Python example's latent issues (import `os`; clarify that `hmac.compare_digest` is constant-time comparison, not HMAC signing, to avoid contradicting the Overview note that the secret is not HMAC-signed).

DimensionReasoningScore

Conciseness

The body is largely code-forward and efficient, but it is over-long for a SKILL.md: the full events table, complete Express/Python handlers, payload JSON, and idempotency code duplicate material present in the bundled references/implementation-guide.md, and the inline 'Webhook Payload Structure' is reference material better split out. It is not level 3 because of this duplication and padding, and not level 1 because the prose that exists is action-oriented rather than explaining concepts Claude already knows.

2 / 3

Actionability

Provides complete, executable artifacts: an Express TypeScript webhook router with secret verification, a Flask Python handler, ngrok setup commands, a curl test command with a full sample payload, and idempotency code -- all copy-paste ready. It is not level 2 because the code is real and complete rather than pseudocode or abstract guidance.

3 / 3

Workflow Clarity

Six numbered steps give a clear sequence and the secret-check plus idempotency add safety, but there is no explicit validate->fix->retry feedback loop for webhook delivery or async processing, which the rubric flags for batch/async operations. It is not level 3 because validation checkpoints and error-recovery loops are implicit, and not level 1 because the sequence and per-step purpose are clearly listed.

2 / 3

Progressive Disclosure

A bundled references/implementation-guide.md exists, but it is never linked or signaled in the body, and the body duplicates its events table and handler code inline instead of pointing to it. It is not level 3 because the reference is orphaned and content that belongs in the reference is inline, and not level 1 because the body itself is well-sectioned with clear headers rather than an undifferentiated wall of text.

2 / 3

Total

9

/

12

Passed

Description

100%Weight 40%Scale 1-3

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 strong: it states concrete capabilities, gives explicit 'Use when' triggers, supplies natural trigger phrases, and is tightly scoped to the Documenso webhook niche. Third-person voice is used throughout with no padding.

DimensionReasoningScore

Specificity

Lists multiple concrete actions within a clear niche -- 'webhook configuration', 'event handling', 'setting up webhook endpoints', 'handling document events', and 'implementing real-time notifications for document signing' -- matching the anchor for several specific concrete actions. It is above level 2 because the actions are enumerated and domain-specific rather than naming only a domain and a single action.

3 / 3

Completeness

Explicitly states what the skill does ('Implement Documenso webhook configuration and event handling') and when to use it ('Use when setting up webhook endpoints, handling document events, or implementing real-time notifications'), with an explicit 'Use when' clause. It is not level 2 because the 'when' is stated outright rather than merely implied.

3 / 3

Trigger Term Quality

Provides explicit natural trigger phrases -- 'documenso webhook', 'documenso events', 'document completed webhook', and 'signing notification' -- giving good coverage of terms a user would plausibly say, including an event-name variant. It is not level 2 because coverage spans brand, generic, and event-specific terms rather than just a single relevant keyword.

3 / 3

Distinctiveness Conflict Risk

The Documenso-scoped, brand-specific triggers ('documenso webhook', 'document completed webhook') carve a clear niche unlikely to fire for unrelated skills. It is not level 2 because the Documenso qualifier sharply reduces overlap with generic webhook or notification skills.

3 / 3

Total

12

/

12

Passed

Validation

87%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation14 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

allowed_tools_field

'allowed-tools' contains unusual tool name(s)

Warning

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

Total

14

/

16

Passed

Repository
jeremylongshore/claude-code-plugins-plus-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.