CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

azure-storage-blob-java

Build blob storage applications using the Azure Storage Blob SDK for Java.

Quality

67%

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 ./skills/azure-storage-blob-java/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

71%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.

This is a solid, highly actionable cookbook: nearly every section is executable Java covering the real breadth of blob operations, with sensible organization and no padding of known concepts. Its weaknesses are the all-in-one-file structure (no progressive disclosure for ~380 lines of reference material), a couple of deprecated/underspecified snippets, and a small amount of boilerplate filler.

Suggestions

Split deep-dive material (lease management, proxy configuration, SAS generation recipes, hierarchy listing details) into references/ files and link them from short SKILL.md sections, keeping SKILL.md as a quick-start overview.

Fix the Error Handling snippet to use `blobClient.downloadStream(outputStream)` (the `download(OutputStream)` overload is deprecated) and make the 'Upload if Not Exists' snippet self-contained with declared variables and the `Context` import.

Delete the boilerplate "When to Use" sentence ("This skill is applicable to execute the workflow or actions described in the overview") and the "Trigger Phrases" section — they add tokens without actionable content; move trigger guidance into the frontmatter description.

DimensionReasoningScore

Conciseness

The body is almost entirely lean, executable code organized under terse headers with no explanations of concepts Claude already knows, matching 'Efficient; minor instances of over-explanation that could be trimmed'. The trim candidates are the zero-information "When to Use" filler ("This skill is applicable to execute the workflow or actions described in the overview"), the meta "Trigger Phrases" section, and the hard-coded version 12.33.0 (time-sensitive, not in a deprecated section), which keep it below the 5 anchor.

4 / 5

Actionability

Concrete, near-copy-paste Java examples cover the common cases (three auth styles for client creation, uploads via string/file/stream/options, downloads, listing flat and by hierarchy, delete, copy, SAS generation, metadata, leases, error handling, proxy). It sits at 'Mostly executable guidance; concrete code with minor gaps' rather than 5 because of small inconsistencies: the Error Handling snippet uses `blobClient.download(outputStream)` while the download section uses `downloadStream` (and `download` is deprecated), `uploadWithResponse(options, null, Context.NONE)` omits the `Context` import, and the 'Upload if Not Exists' snippet references undefined `inputStream`/`length` placeholders.

4 / 5

Workflow Clarity

The body follows a logical developer progression (Installation → Client Creation → Core Patterns → Error Handling → Proxy/Env) with clearly labeled per-task sections, and no destructive or batch workflow is present that would require validation checkpoints (delete even offers `deleteIfExists`). It matches 'Clear sequence with most checkpoints present; minor validation gaps' rather than 5 because there is no guidance on verifying outcomes or recovering from errors beyond the single catch example.

4 / 5

Progressive Disclosure

Section headers give the body decent structure, but the entire ~380-line API reference — including deep-dive material like leases, proxy configuration, and full SAS-generation recipes — is inlined in SKILL.md with zero references to separate files, matching 'Some structure but could be better organized; content that should be separate is inline'. The sub-50-line simple-skill exception does not apply, so it cannot reach 4 without splitting content into reference files.

3 / 5

Total

15

/

20

Passed

Description

48%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 concise and names a clear, distinctive niche, but it states only a single generic action and completely lacks a 'when to use' clause. It reads like a title rather than a trigger-rich description, which will hurt both retrieval and completeness.

Suggestions

Add a 'Use when...' clause with concrete triggers, e.g. "Use when the user asks about uploading, downloading, or listing blobs in Azure from Java, or mentions Azure Blob Storage, SAS tokens, or blob containers in a Java/Maven project."

Enumerate the concrete operations the skill covers (create containers, upload/download blobs, list by hierarchy, generate SAS tokens, manage metadata and leases) instead of the generic "Build blob storage applications".

Include natural synonyms and variants users would say, such as "Azure Blob Storage", "upload file to blob", "blob container", and ".java/Maven".

DimensionReasoningScore

Specificity

The description names the domain ("Azure Storage Blob SDK for Java") but the only action is the generic "Build blob storage applications", matching the anchor 'Names the domain but actions are minimal or generic' (cf. "Processes PDF files"). It does not list concrete operations such as upload, download, list, or SAS generation, so it falls below the 3 anchor ('names domain and 1-2 concrete actions').

2 / 5

Completeness

It has a clear 'what' ("Build blob storage applications using the Azure Storage Blob SDK for Java") but no 'Use when...' clause or equivalent trigger guidance, which per the judging guidelines caps completeness at 3. It is above 2 because the 'what' is specific and clear, and below 4 because 'when' is entirely absent rather than merely imprecise.

3 / 5

Trigger Term Quality

It includes relevant natural keywords users would say ("blob storage", "Azure", "Java", "SDK") but is missing common variations and synonyms such as "upload/download blobs", "blob container", ".java", or "Maven", matching 'Some relevant keywords but missing common variations or synonyms'.

3 / 5

Distinctiveness Conflict Risk

"Azure Storage Blob SDK for Java" carves a clear niche (specific cloud service + specific SDK/language) with distinct triggers, but there is minor overlap risk with closely related Azure skills (storage queues/files, other language SDKs, generic Azure skills), matching 'Mostly distinct; minor overlap risk'.

4 / 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

skills/azure-storage-blob-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.