CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

azure-communication-chat-java

Build real-time chat applications with thread management, messaging, participants, and read receipts.

Quality

67%

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

Fix and improve this skill with Tessl

tessl review fix ./plugins/AI-Agents-Safe-Coding-Skills/skills/azure-communication-chat-java/SKILL.md

The canonical home for this skill is azure-communication-chat-java in sickn33/agentic-awesome-skills

SKILL.md
Quality
Evals
Security

Quality

Content

65%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 solid, code-first reference: nearly every section is executable Java with brief comments and useful error-handling guidance. The main weaknesses are the absence of validation around destructive operations and the fully inlined single-file structure with no progressive disclosure, plus small trimmable meta sections and a few missing imports.

Suggestions

Add verification guidance around destructive operations (e.g. confirm a message ID exists / list thread messages before `deleteMessage` or `deleteChatThread`), which would also lift workflow clarity above the destructive-operation cap.

Move advanced reference material (pagination details, typing notifications, message-type and error-code tables) into a references/ file linked from a short SKILL.md overview to enable progressive disclosure.

Trim the 'Trigger Phrases' and 'When to Use' sections (fold their content into the description) and add the missing imports (`ChatAsyncClient`, `OffsetDateTime`, `Context`, `ListChatMessagesOptions`) so every snippet is independently copy-paste ready.

DimensionReasoningScore

Conciseness

The body is dominated by lean, comment-annotated executable Java snippets with almost no explanation of concepts Claude already knows. Minor trimmable padding remains — the 'Trigger Phrases' section and the vacuous 'When to Use' line ('This skill is applicable to execute the workflow or actions described in the overview.') add no guidance — matching 'efficient; minor instances of over-explanation that could be trimmed' rather than the padding level of 3.

4 / 5

Actionability

Concrete, largely copy-paste-ready code covers installation, client creation (sync and async), thread CRUD, messaging, participants, receipts, pagination, and error handling with specific status codes. Minor gaps keep it below 5: `ChatAsyncClient`, `OffsetDateTime`, `Context`, and `ListChatMessagesOptions` are used in blocks without their imports.

4 / 5

Workflow Clarity

Sections follow a logical sequence (install → client creation → thread/message/participant operations → pagination → error handling), but there are no validation checkpoints, and destructive operations (`deleteMessage`, `deleteChatThread`, `removeParticipant`) are shown without any verify-before/after guidance. This matches 'sequence present but checkpoints missing or implicit'; it is above 2 because the sequence is coherent and an error-handling pattern is demonstrated.

3 / 5

Progressive Disclosure

No bundle files exist (no references/, scripts/, or assets/), so everything — including advanced material like pagination, typing notifications, the message-type table, and the message-types/error reference — is inlined in a single ~330-line SKILL.md. Section headers give it structure ('some structure but could be better organized... content that should be separate is inline'), but there is no split or navigation to detail files, so it does not reach 4.

3 / 5

Total

14

/

20

Passed

Description

55%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 moderately effective description: the 'what' is concrete and feature-rich, but it completely lacks a 'when to use' trigger clause and omits the defining qualifiers (Azure, Java), weakening both triggerability and distinctiveness. Adding an explicit 'Use when...' clause naming Azure Communication Services chat in Java would lift completeness, trigger terms, and distinctiveness simultaneously.

Suggestions

Append an explicit trigger clause, e.g. 'Use when building Java chat features on Azure Communication Services (ACS) chat, or when the user mentions chat threads, chat participants, or read receipts in a Java project.'

Include the distinguishing qualifiers 'Azure Communication Services' and 'Java' in the description itself so it does not collide with generic chat/messaging skills.

Name one or two more concrete operations (e.g. 'send and update messages', 'manage typing notifications') to round out coverage toward the top specificity anchor.

DimensionReasoningScore

Specificity

The description lists several concrete capability areas — "thread management, messaging, participants, and read receipts" — matching the 'lists several specific actions; minor gaps in coverage' anchor. It falls short of 5 because coverage relies on one generic verb ("Build") and omits operations like updating/deleting messages or typing notifications.

4 / 5

Completeness

The 'what' is clear (build chat apps with thread management, messaging, participants, read receipts) but there is no 'Use when...' clause or equivalent explicit trigger guidance, which per the judging guidelines caps completeness at 3. It is above 2 because the 'what' is concrete, not vague.

3 / 5

Trigger Term Quality

"real-time chat applications", "messaging", and "read receipts" are natural phrases, but the description omits the terms a user would most plausibly say — "Java", "Azure", and "Azure Communication Services" (they appear only in the name and body). This matches 'some relevant keywords but missing common variations or synonyms'.

3 / 5

Distinctiveness Conflict Risk

The feature list narrows the domain, but without "Azure" or "Java" in the description it could overlap with any chat or messaging SDK skill (web chat, Slack, twilio, etc.). 'Somewhat specific but could still overlap with similar skills' fits best; it is not 4 because the key domain qualifiers are absent.

3 / 5

Total

13

/

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/skills/azure-communication-chat-java/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.