CtrlK
BlogDocsLog inGet started
Tessl Logo

azure-web-pubsub-ts

Real-time messaging with WebSocket connections and pub/sub patterns.

52

Quality

58%

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/azure-web-pubsub-ts/SKILL.md

The canonical home for this skill is azure-web-pubsub-ts in administrakt0r/AI-Agents-Safe-Coding-Skills

SKILL.md
Quality
Evals
Security

Quality

Content

72%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 TypeScript reference with executable examples across server, client, and Express handlers. Its weaknesses are the lack of explicit workflow sequencing/validation for destructive connection operations and a monolithic structure that could benefit from split-out reference files.

Suggestions

Add an explicit end-to-end workflow (negotiate → connect → join group → send → handle disconnect) with validation checkpoints for the destructive close operations.

Move the large API reference and Key Types into separate files under references/ and link to them from a concise overview to improve progressive disclosure.

Trim the near-duplicate negotiate snippet in the Express section to reduce redundancy.

DimensionReasoningScore

Conciseness

The body is lean and code-heavy with minimal prose, assuming Claude's competence rather than explaining concepts; minor trims (e.g. a near-duplicate negotiate snippet and the Key Types import list) keep it below 5. It is above 3 because it avoids explaining what WebSockets or pub/sub are.

4 / 5

Actionability

It provides fully executable, copy-paste-ready TypeScript covering auth, token generation, sends, group management, client lifecycle, and the Express handler, matching the score-5 anchor for common cases. No neighboring anchor fits better.

5 / 5

Workflow Clarity

Content is organized by topic rather than as a sequenced workflow, and destructive operations (closeAllConnections, closeUserConnections) lack validation/verification checkpoints; per the batch/destructive cap this cannot exceed 3. It is above 2 because sections are coherent and roughly ordered server→client→express.

3 / 5

Progressive Disclosure

Section headers provide good navigation, but the ~300-line body is a monolithic API reference with no bundle files or one-level-deep references splitting the API detail out. It is above 2 because headers give real structure, but below 4 since content that belongs in separate reference files is fully inlined.

3 / 5

Total

15

/

20

Passed

Description

45%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 concise, third-person noun phrase that clearly identifies the real-time messaging domain but lists no concrete actions and provides no 'Use when' trigger guidance. It omits the Azure qualifier, leaving some overlap risk with similar real-time skills.

Suggestions

Add concrete actions, e.g. 'Broadcast messages, manage pub/sub groups, and handle WebSocket client connections with Azure Web PubSub.'

Append an explicit 'Use when...' trigger clause, e.g. 'Use when building real-time chat, live notifications, or pub/sub messaging with Azure Web PubSub in TypeScript.'

Include the Azure qualifier to reduce overlap with generic WebSocket/messaging skills.

DimensionReasoningScore

Specificity

The description "Real-time messaging with WebSocket connections and pub/sub patterns" names the domain but uses no concrete action verbs, matching the score-2 anchor 'Names the domain but actions are minimal or generic'. It does not reach 3 because it lists no concrete actions like broadcast, join groups, or send messages.

2 / 5

Completeness

It gives a clear 'what' (real-time messaging with WebSocket/pub/sub) but no 'when' clause at all; per the guideline, a missing 'Use when...' clause caps completeness at 3. It does not reach 4 because there is no explicit trigger guidance, and is above 2 because the 'what' is clearly stated.

3 / 5

Trigger Term Quality

It surfaces relevant keywords ('real-time messaging', 'WebSocket', 'pub/sub') users would say, but misses common synonyms and variations like chat, live updates, or broadcast. It is above 2 because the terms are domain-relevant rather than purely generic, but below 4 due to missing natural variations.

3 / 5

Distinctiveness Conflict Risk

The phrasing is specific to real-time messaging/WebSockets but omits 'Azure', so it could still overlap with generic WebSocket or Socket.io-style skills. It is above 2 because the terms are not entirely generic, but below 4 since the missing Azure qualifier leaves overlap risk.

3 / 5

Total

11

/

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.

Validation15 / 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
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.