CtrlK
BlogDocsLog inGet started
Tessl Logo

bunny-stream-webhooks

Receive and verify Bunny Stream webhooks. Use when setting up Bunny Stream webhook handlers, debugging X-BunnyStream-Signature verification, or handling video encoding events like Status 3 (Finished / encoding done), Status 5 (Failed), or captions and title/description generation.

72

Quality

90%

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

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-executed webhook skill: the verification core is correct, executable, and emphasizes the exact gotchas (raw body, lowercase hex, Read-Only key, custom-vs-Standard-Webhooks distinction), with details properly pushed to reference files. The main defects are promotional/relational sections that pad the token budget and three dangling examples/ links that promise content absent from the bundle.

Suggestions

Remove or shrink the "Related Skills" (7 links), "Recommended: webhook-handler-patterns", and "Attribution" sections, or fold them into a single reference file — they spend tokens without aiding the core task.

The "For complete handlers with route wiring..." note links to examples/express/, examples/nextjs/, and examples/fastapi/ which do not exist in the bundle; either add those example files or drop/replace the links with pointers that resolve.

Add a brief inline handler sequence (verify → parse → idempotently handle) in place of delegating entirely to the external webhook-handler-patterns skill, so the core workflow is self-contained.

DimensionReasoningScore

Conciseness

The body is dense with genuinely non-obvious information (raw-body signing, SHA-256-vs-SHA1 scheme distinction, thin payload with fetch-back) and avoids explaining concepts Claude already knows. Not 5 because the "Related Skills" list (7 external links), the "Recommended" cross-promotion, and the "Attribution" section add tokens that don't serve the task and could be trimmed or moved to a reference.

4 / 5

Actionability

Fully executable, copy-paste-ready guidance: complete Node and Python verification functions with timing-safe comparison and malformed-hex handling, a concrete env var, a runnable hookdeck CLI command, and the exact fetch-back endpoint (GET /library/{libraryId}/videos/{videoGuid}). Covers the common cases end to end.

5 / 5

Workflow Clarity

The critical sequencing is explicit ("Verify against the unparsed raw body", "Verify the signature **before** making any fetch-back call") and the code handles the error path (catch → false). Not 5 because the full handler sequence (verify → parse → idempotent handling) is delegated to an external skill rather than stated in-file, leaving minor checkpoint gaps for the handling step.

4 / 5

Progressive Disclosure

Good structure: SKILL.md is an overview with clearly signaled, one-level-deep references (references/overview.md, setup.md, verification.md — all real files) each annotated with its purpose. Not 5 because the body links examples/express/, examples/nextjs/, and examples/fastapi/ which do not exist anywhere in the bundle, so navigation dead-ends for the promised complete handler examples.

4 / 5

Total

17

/

20

Passed

Description

95%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 is a strong match to the anchor-5 good examples: a crisp two-verb 'what' followed by an explicit 'Use when' clause listing concrete, natural trigger scenarios. Its only weakness is that the action list itself is slightly thin relative to the breadth of the trigger coverage.

DimensionReasoningScore

Specificity

"Receive and verify Bunny Stream webhooks" plus "setting up... webhook handlers, debugging X-BunnyStream-Signature verification, or handling video encoding events" lists several specific actions. Not 5 because the core 'what' is only two verbs (receive, verify); the remaining actions are framed as trigger situations rather than distinct capabilities, so coverage has minor gaps.

4 / 5

Completeness

Explicitly answers both: what ("Receive and verify Bunny Stream webhooks") and when ("Use when setting up... debugging... or handling...") with concrete trigger phrases. Matches the anchor-5 example pattern exactly; nothing is only implied.

5 / 5

Trigger Term Quality

Natural phrases users would actually say are comprehensively covered: "Bunny Stream webhook handlers", "X-BunnyStream-Signature", "Status 3 (Finished / encoding done)", "Status 5 (Failed)", "captions", "title/description generation". Includes both jargon header names and plain-language synonyms ("encoding done").

5 / 5

Distinctiveness Conflict Risk

Clear niche: Bunny Stream (video encoding webhooks) is distinct from general Bunny platform webhooks and from other providers' webhook skills (Stripe, Shopify, GitHub). Triggers like "X-BunnyStream-Signature" and "Status 3 (Finished)" are unique to this skill, minimizing wrong-skill triggering.

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: 3 missing

Warning

Total

15

/

16

Passed

Repository
hookdeck/webhook-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.