CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

ada-webhooks

Receive and verify Ada (ada.cx) AI customer service webhooks, delivered through Svix. Use when setting up an Ada webhook endpoint, getting the per-endpoint whsec_ signing secret, debugging svix-id / svix-timestamp / svix-signature verification, or handling events like v1.conversation.created, v1.conversation.message, v1.conversation.ended, v1.conversation.handoff.ended, v1.end_user.created, v1.end_user.updated, v1.audit_log.emitted and v1.proactive_call.* voice outreach events.

Quality

90%

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

SKILL.md
Quality
Evals
Security

Quality

Content

82%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 well-organized, highly actionable overview: executable verification code, concrete setup paths, and real one-level-deep reference files. Main gaps are trimmable link-list sections, the absence of a single unified end-to-end workflow with an explicit error-recovery loop, and references to examples/ directories that are not part of the bundle.

Suggestions

Trim the 'Related Skills' section (12 links) and the 'Recommended: webhook-handler-patterns' section to the 2-3 most relevant pointers to reduce token overhead without losing navigational value.

Add an explicit ordered handler workflow (get signing secret → register endpoint → verify signature → respond 2xx fast and process async → dedupe on svix-id) with a validation/failure-recovery step for failed verification.

Remove or fix the dangling references to examples/express/, examples/nextjs/ and examples/fastapi/ — these directories do not exist in the skill bundle, so the 'complete handlers with tests' pointer currently dead-ends.

DimensionReasoningScore

Conciseness

The instructional core (verification, envelope, delivery semantics, env vars, local development) is dense and efficient with tables instead of prose, matching anchor 4 'Efficient; minor instances of over-explanation that could be trimmed'. It is not a 5 because the 'Related Skills' section lists 12 sibling-skill links and the 'Recommended' section repeats four external GitHub links — promotional bulk that does not earn its tokens for the task at hand.

4 / 5

Actionability

The guidance is fully executable: a copy-paste-ready JavaScript verify function with the svix→webhook header mapping and failure behavior ('throws → respond 400'), the Python import path, the exact dashboard path 'Config > PLATFORM > Webhooks → Signing Secret', the API endpoint 'GET /api/v2/webhooks/{id}/secret/', and the runnable command 'npx hookdeck-cli listen 3000 ada --path /webhooks/ada'. This matches anchor 5 'Fully executable; copy-paste ready code or commands; specific examples cover the common cases'.

5 / 5

Workflow Clarity

The Local Development section gives a clear sequence with an end-to-end validation step (run hookdeck-cli → Add Endpoint → choose event types → 'start a conversation with your AI Agent'), and verification includes a failure checkpoint ('throws → respond 400'), fitting anchor 4 'Clear sequence with most checkpoints present; minor validation gaps'. It is not 5 because there is no unified ordered workflow (get secret → add endpoint → verify → respond 2xx → dedupe on svix-id); the steps are distributed across topical sections, and no error-recovery loop is spelled out for failed verification.

4 / 5

Progressive Disclosure

SKILL.md is a genuine overview with a clearly signaled, one-level-deep 'Reference Materials' section whose three targets (references/overview.md, references/setup.md, references/verification.md) all exist in the bundle and contain no nested references — matching anchor 4 'Good structure; most content is appropriately placed; references mostly clear'. It falls short of 5 because the body points to 'examples/express/', 'examples/nextjs/' and 'examples/fastapi/' for complete handlers with tests, but no examples/ directories exist in the bundle, leaving dangling navigation paths.

4 / 5

Total

17

/

20

Passed

Description

96%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 strong description that clearly states what the skill does and gives explicit, concrete 'Use when...' triggers with the exact technical terms (svix headers, whsec_ secret, event names) a user would naturally mention. The only weakness is minor overlap risk with sibling Svix-based webhook skills on the generic signature-debugging trigger.

DimensionReasoningScore

Specificity

The description lists multiple concrete actions — "Receive and verify Ada (ada.cx) AI customer service webhooks", "setting up an Ada webhook endpoint", "getting the per-endpoint whsec_ signing secret", "debugging svix-id / svix-timestamp / svix-signature verification", and "handling events" with named event types — giving comprehensive coverage of the skill's capabilities. This matches the anchor 'Lists multiple specific concrete actions; comprehensive coverage' rather than 4, which expects minor gaps in coverage.

5 / 5

Completeness

It explicitly answers both questions: the "what" ("Receive and verify Ada AI customer service webhooks, delivered through Svix") and a concrete "when" clause ("Use when setting up an Ada webhook endpoint, getting the per-endpoint whsec_ signing secret, debugging... or handling events like..."). This is the anchor-5 pattern 'clearly and explicitly answers both what AND when with concrete trigger phrases'; a 4 would require the 'when' to be less explicit, which it is not.

5 / 5

Trigger Term Quality

Trigger terms mirror what users would naturally say: "Ada webhook endpoint", "signing secret", "svix-signature verification", and specific event names like "v1.conversation.created" and "v1.proactive_call.*". Coverage includes the concrete identifiers (whsec_, svix-id, svix-timestamp, svix-signature) a user in this situation would type, matching the comprehensive-synonyms anchor rather than 4's 'a few natural terms missing'.

5 / 5

Distinctiveness Conflict Risk

The description is firmly anchored to the Ada niche (ada.cx, Ada event types), but the clause "debugging svix-id / svix-timestamp / svix-signature verification" is generic Svix territory that overlaps with a closely related svix-webhooks skill in the same family. This fits anchor 4 ('Mostly distinct; minor overlap risk with closely related skills') better than 5's 'minimal conflict risk', though it is clearly above 3's broad-overlap anchor.

4 / 5

Total

19

/

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

relative_links

Relative link issues: 3 missing

Warning

Total

15

/

16

Passed

Repository

hookdeck/webhook-skills

Path

skills/ada-webhooks/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.