CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

8x8-webhooks

Receive and authenticate 8x8 Connect webhooks. Use when setting up an 8x8 webhook endpoint, checking the optional HTTP Authorization value (Bearer or Basic), debugging 401s, or handling inbound_message_received, outbound_message_status_changed, short_url_clicked and template_status_update events from 8x8 SMS and Chat Apps (WhatsApp).

Quality

91%

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

88%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 well-built skill body: executable verification code with correct security caveats (timing-safe comparison, no replay protection warning), a dense event-type table, and appropriate delegation to real reference files. The main defects are dangling examples/ links and ~20 lines of cross-promotional filler that could be trimmed.

Suggestions

Ship the examples/ directory (express, nextjs, fastapi handlers with tests) in the bundle, or remove the four links pointing to it — currently 'For complete handlers with tests' leads nowhere.

Trim the 'Related Skills' list and 'Attribution' section (or move them into a single reference file) to reclaim ~20 lines of token budget.

Consider folding the four external webhook-handler-patterns links into a one-line recommendation since they duplicate the 'Recommended' skill section's purpose.

DimensionReasoningScore

Conciseness

The core sections (verification code, event table, retry schedule, env vars, dev command) are lean and add genuinely non-obvious facts without explaining concepts Claude already knows. However, roughly 20 of ~128 lines are non-task content — the 8-link 'Related Skills' list, the 'Attribution' block, and the multi-link cross-promotion section — which is more than the 'every token earns its place' standard.

4 / 5

Actionability

The body provides complete, copy-paste-ready Node.js code with a timing-safe comparison and env-var default, explicit response codes (401/400/200), concrete body-handling guidance (express.raw), specific dedupe keys ('payload.umid plus payload.status.state'), and a runnable local-dev command. Python and Next.js equivalents are correctly delegated to references/verification.md, which exists.

5 / 5

Workflow Clarity

The single-purpose workflow is unambiguous and explicitly validated: verify the whole Authorization header first, return 401 on failure, parse the body only after the check, return 200 once handled. It also documents the provider retry schedule (1/10/30/90s) with matching dedupe guidance, covering the error/retry path. This is not a destructive or batch operation, so no validation cap applies.

5 / 5

Progressive Disclosure

Structure is good: SKILL.md is an overview, the three real reference files (overview.md, setup.md, verification.md) are one level deep and clearly signaled with descriptions in the Resources section. It falls short of 5 because prominent links to examples/express/, examples/nextjs/, examples/fastapi/ and examples/ point to paths that do not exist in the bundle, breaking navigation for the 'complete handlers with tests' path.

4 / 5

Total

18

/

20

Passed

Description

92%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: concrete actions, explicit 'Use when' triggers with specific debugging scenarios, and named event types. Third-person imperative voice is used consistently. The only gap is a few missing natural synonyms for the authorization check.

Suggestions

Add common user phrasings like 'authorization header', 'delivery receipts', and 'does 8x8 sign webhook payloads?' to the trigger clause to capture more natural queries.

DimensionReasoningScore

Specificity

The description lists multiple concrete actions — 'Receive and authenticate 8x8 Connect webhooks', 'checking the optional HTTP Authorization value (Bearer or Basic)', 'debugging 401s' — plus four named event types, giving comprehensive coverage of the skill's domain. It exceeds the 'several specific actions; minor gaps' anchor because no meaningful capability is left unstated.

5 / 5

Completeness

It explicitly answers both 'what' (receive and authenticate 8x8 Connect webhooks) and 'when' with concrete trigger phrases ('Use when setting up an 8x8 webhook endpoint, checking..., debugging 401s, or handling... events'). This matches the top anchor; the when-clause is fully explicit, not just present.

5 / 5

Trigger Term Quality

Good keyword coverage with natural phrases users would say: '8x8 webhook endpoint', 'debugging 401s', 'HTTP Authorization value (Bearer or Basic)', and specific event names. It falls short of comprehensive because common variations like 'authorization header', 'verify the auth header', 'delivery receipt', and 'does 8x8 sign payloads' are absent.

4 / 5

Distinctiveness Conflict Risk

The '8x8' qualifier appears on every trigger and the named event types are provider-specific, creating a clear niche with minimal risk of triggering for other webhook skills (Twilio, Telnyx, etc.). The minor WhatsApp-related overlap is fully disambiguated by the 8x8 prefix.

5 / 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: 4 missing

Warning

Total

15

/

16

Passed

Repository

hookdeck/webhook-skills

Path

skills/8x8-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.