CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

netlify-blobs

Store and retrieve unstructured objects, files, and cache-like state on Netlify with the @netlify/blobs module. Use when persisting user file uploads (images/documents), caching computed output from functions or Background Functions, serving downloadable assets, storing JSON blobs keyed by ID, or seeding deploy-specific data. Reach for this for key/value or object storage from Functions, Edge Functions, or Build Plugins — not for per-user, transactional, or relational data (use Netlify DB for that). Triggers include "save an uploaded file", "cache API results", "store generated site map", "key/value store for a function", or "file uploads without a database".

Quality

88%

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

The canonical home for this skill is netlify-blobs in netlify/context-and-tools

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.

A strong, accurate reference body whose main strengths are executable examples and hard-won footgun documentation, weakened by redundant repetition of the house rules and by inlining a full API reference that should be split into bundle files. Destructive operations lack explicit verification steps, which also limits workflow clarity.

Suggestions

Remove the duplicated "house rules" section (or the in-body restatements) so each rule appears once — the scope footgun alone is currently stated three times.

Split detail sections (Regions, Consistency, Constraints, File-based uploads, Module version migration) into references/ files and keep SKILL.md as an overview linking to them, enabling progressive disclosure.

Add verification steps around destructive operations: e.g., list keys before deleteAll, confirm migration output before deleting entries from the old region.

DimensionReasoningScore

Conciseness

Mostly dense with genuinely non-obvious facts (region footguns, consistency semantics, scope behavior), but the trailing "house rules" section restates six rules already covered above ("Blobs is not a database", "no built-in access control", the site-scope footgun, CLI commands, the counters warning, build-plugin read/write halves), and the scope warning appears three times total. Not 4 — the duplication goes beyond minor trimming; not 2 — the padding is repetition of real guidance, not explanation of concepts Claude already knows.

3 / 5

Actionability

Fully executable, copy-paste-ready TypeScript for the common cases: store writes/reads with type options, a complete upload Function with formData and uuid keys, a 404-returning read Function, conditional writes with onlyIfNew/onlyIfMatch checking modified, listing with directories/prefix/pagination, an expiration pattern, and the migration CLI command. Not 4 — examples cover the common cases completely with concrete failure handling (null checks, 400 responses).

5 / 5

Workflow Clarity

Explicit checkpoints are called out in bold ("Null-check before destructuring", checking `modified` and returning 400 on stale/exists, comparing the full ETag for freshness), giving clear validate-then-act sequences for reads and conditional writes. Not 5 — destructive operations (deleteAll, region migration, store deletion) have no verification steps; not 3 — validation is present and explicit for the core read/write/update flows, so gaps are minor.

4 / 5

Progressive Disclosure

Good section headers and two clearly signaled external links (CLI command reference, Netlify Blobs docs), but the body is ~240 lines of inlined API reference — regions, consistency, constraints, file-based uploads, and migration detail would fit a references/ file. Not 4 — this matches the anchor of ~200 lines of API reference inline that could live in a separate file with the SKILL.md as overview; not 2 — the structure is well-organized and references are not buried.

3 / 5

Total

15

/

20

Passed

Description

100%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 exemplary: third-person, concrete, and comprehensive on both capabilities and trigger phrases, with explicit negative boundaries against Netlify DB for transactional data. Every dimension lands at the top anchor without padding or over-claims.

DimensionReasoningScore

Specificity

Lists multiple concrete actions with comprehensive coverage: "Store and retrieve unstructured objects, files, and cache-like state" plus "persisting user file uploads", "caching computed output", "serving downloadable assets", "storing JSON blobs keyed by ID", and "seeding deploy-specific data". Not 4 — there are no minor gaps in the action coverage; it spans write, read, cache, and seed use cases.

5 / 5

Completeness

Explicitly answers both what ("Store and retrieve unstructured objects, files, and cache-like state on Netlify with the @netlify/blobs module") and when ("Use when persisting user file uploads... Triggers include...") with concrete trigger phrases. Not 4 — the when clause is fully explicit, not merely present.

5 / 5

Trigger Term Quality

Explicit natural trigger phrases users would say: "save an uploaded file", "cache API results", "store generated site map", "key/value store for a function", "file uploads without a database", reinforced by synonyms (objects, files, cache-like state, key/value, object storage, JSON blobs). Not 4 — coverage includes both plain-language phrases and technical synonyms, so no natural terms are meaningfully missing.

5 / 5

Distinctiveness Conflict Risk

Clear niche (Netlify blob/key-value storage) with explicit disambiguation "not for per-user, transactional, or relational data (use Netlify DB for that)", minimizing wrong-skill triggering. Not 4 — the negative boundary plus quoted triggers leave minimal overlap risk.

5 / 5

Total

20

/

20

Passed

Validation

100%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository

netlify/context-and-tools

Path

agent-plugin/skills/netlify-blobs/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.