CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

upstash-qstash

You are an Upstash QStash expert who builds reliable serverless messaging without infrastructure management. You understand that QStash's simplicity is its power - HTTP in, HTTP out, with reliability in between.

Quality

47%

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 ./plugins/AI-Agents-Safe-Coding-Skills-claude/skills/upstash-qstash/SKILL.md

The canonical home for this skill is upstash-qstash in administrakt0r/AI-Agents-Safe-Coding-Skills

SKILL.md
Quality
Evals
Security

Quality

Content

22%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 skeleton: section headers and a sharp-edges table gesture at real content, but every substantive section is a stub — no code, no commands, no sequenced workflows, and visibly corrupted/truncated text. A model loading this skill would learn almost nothing actionable about actually using QStash.

Suggestions

Replace the one-line Pattern stubs with executable examples — e.g. a curl call to https://qstash.upstash.io/v2/publish/{endpoint}, JSON body, and the signature-verification code for an endpoint (JWT with both current and next signing keys).

Complete the truncated "core philosophy" list, fill in the empty Anti-Pattern sections with what to do instead, and turn the Sharp Edges "Solution" column entries into actual code/snippets instead of comment labels.

Add a sequenced workflow with validation for critical flows (e.g. publish → verify signature in handler → return 200 fast → configure retries/deduplication) so signature verification and delivery failures have explicit checkpoints.

DimensionReasoningScore

Conciseness

The ~60-line body avoids beginner-concept explanations, but contains noticeable padding: the persona narrative ("You've scheduled millions of messages, set up cron jobs that run for years"), a filler "When to Use" sentence ("This skill is applicable to execute the workflow or actions described in the overview."), and a truncated line ("1. HTTP is the universal language - no c") — mostly efficient but could be tightened, matching anchor 3 rather than 2 since padding is a minority of a short document.

3 / 5

Actionability

There is no executable guidance anywhere: the Patterns sections are one-line descriptions ("Sending messages to be delivered to endpoints"), the Sharp Edges "Solution" column holds only comment-label stubs ("# Always verify signatures with both keys:", "# Configure retries per message:") with no code, commands, API URLs, or SDK names, and the Anti-Patterns have no content at all. It only describes rather than instructs — anchor 1, not 2, since even high-level hints naming specific tools or steps are absent.

1 / 5

Workflow Clarity

No multi-step process is ever sequenced: publishing a message, setting up cron, or verifying signatures (a security-critical operation) each get at most a one-line label, with no steps and no validation checkpoints. This matches anchor 1 ("steps missing or incoherent; no sequence; no validation"), not anchor 2, which requires at least a rough sequence to be present.

1 / 5

Progressive Disclosure

No bundle files exist or are referenced, and the body does have labeled sections (Capabilities, Patterns, Anti-Patterns, Sharp Edges table), but the structure is hollow — empty stub sections, a broken numbered list, and a filler section — so it "could be better organized," matching anchor 3 rather than 4.

3 / 5

Total

8

/

20

Passed

Description

47%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 establishes a clear niche (the named product Upstash QStash) but is written in second person, lists no concrete capabilities, and completely lacks a "Use when..." trigger clause. It reads as a persona statement rather than a functional skill description, so it would rarely be surfaced when a user actually needs QStash work.

Suggestions

Rewrite in third person and list concrete actions, e.g. "Publishes messages, schedules cron-style HTTP calls, verifies QStash signatures, and configures retries/deduplication via the QStash API."

Add an explicit trigger clause: "Use when the user mentions QStash, serverless messaging, scheduled HTTP calls, webhooks, or background jobs."

Include natural synonyms and task phrases users would say (cron, queue, delayed delivery, callback) to improve trigger-term coverage.

DimensionReasoningScore

Specificity

The description names the domain but offers only one generic action ("builds reliable serverless messaging") with no concrete operations like publishing, scheduling, or signature verification, matching anchor 2; the second-person voice ("You are an Upstash QStash expert... You understand...") triggers the mandatory 1-point penalty, reducing it to 1.

1 / 5

Completeness

The "what" is stated at domain level ("builds reliable serverless messaging"), but there is no "Use when..." clause or equivalent trigger guidance anywhere, which caps completeness at 3 per the judging guidelines; it does not fall to 2 because the "what" is not extremely vague.

3 / 5

Trigger Term Quality

It includes some relevant keywords ("Upstash QStash", "serverless messaging", "HTTP") but misses the natural phrases users would say when needing this skill, such as "cron", "scheduled", "webhook", "queue", or "background job" — matching anchor 3 rather than 4's broader coverage.

3 / 5

Distinctiveness Conflict Risk

"Upstash QStash" is a specific named product with a clear niche and distinct triggers, so the risk of triggering for the wrong skill is minimal — a clean match for anchor 5.

5 / 5

Total

12

/

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

administrakt0r/AI-Agents-Safe-Coding-Skills

Path

plugins/AI-Agents-Safe-Coding-Skills-claude/skills/upstash-qstash/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.