Integrate Vercel Blob for file uploads and CDN-delivered assets in Next.js. Supports client-side uploads with presigned URLs and multipart transfers for large files. Use when implementing file uploads (images, PDFs, videos) or troubleshooting missing tokens, size limits, client upload failures, token expiration errors, or browser compatibility issues. Prevents 16 documented errors.
87
Does it follow best practices?
If you maintain this skill, you can automatically optimize it using the tessl CLI to improve its score:
npx tessl skill review --optimize ./path/to/skillValidation for skill structure
Discovery
100%Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.
This is a well-crafted skill description that excels across all dimensions. It provides specific capabilities (presigned URLs, multipart transfers), includes an explicit 'Use when...' clause with natural trigger terms covering both implementation and troubleshooting scenarios, and is highly distinctive through its Vercel Blob + Next.js focus. The mention of '16 documented errors' adds credibility and specificity.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Lists multiple concrete actions: 'Integrate Vercel Blob for file uploads', 'CDN-delivered assets', 'client-side uploads with presigned URLs', 'multipart transfers for large files'. Also mentions specific troubleshooting scenarios. | 3 / 3 |
Completeness | Clearly answers both what (integrate Vercel Blob, presigned URLs, multipart transfers) AND when (explicit 'Use when...' clause covering implementation and troubleshooting scenarios with specific trigger terms). | 3 / 3 |
Trigger Term Quality | Excellent coverage of natural terms users would say: 'file uploads', 'images', 'PDFs', 'videos', 'missing tokens', 'size limits', 'client upload failures', 'token expiration errors', 'browser compatibility issues', 'Vercel Blob', 'Next.js'. | 3 / 3 |
Distinctiveness Conflict Risk | Highly distinctive with clear niche: specifically targets Vercel Blob + Next.js integration. The combination of platform-specific terms (Vercel Blob, presigned URLs) and error types makes it unlikely to conflict with generic file upload skills. | 3 / 3 |
Total | 12 / 12 Passed |
Implementation
77%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
This is a highly actionable skill with excellent executable code examples and clear workflows for Vercel Blob integration. The main weakness is the verbose 'Known Issues Prevention' section which, while valuable, bloats the skill and would be better served as a linked reference file. The core quick start and patterns are well-crafted and immediately usable.
Suggestions
Move the 16 documented issues to a separate TROUBLESHOOTING.md file and link to it from the main skill with a brief summary table of error messages
Condense the 'Why It Happens' explanations - Claude can infer causes from the error and prevention; focus on the fix
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The skill is mostly efficient with good code examples, but the 16 documented issues section is verbose and could be condensed into a table or moved to a separate troubleshooting file. Some explanations like 'Why It Happens' add bulk without proportional value. | 2 / 3 |
Actionability | Excellent executable code throughout - all examples are copy-paste ready with proper imports, TypeScript types, and complete implementations. The patterns section provides real-world scenarios with full working code. | 3 / 3 |
Workflow Clarity | Clear sequential workflows with explicit validation steps. The Quick Start has numbered setup steps, client upload shows the server-then-client flow, and the Critical Rules section provides clear do/don't checklists. File validation is emphasized before uploads. | 3 / 3 |
Progressive Disclosure | The skill is well-structured with clear sections, but the 16 issues section is a monolithic block that should be in a separate TROUBLESHOOTING.md file. The main content would benefit from linking to detailed references rather than inlining everything. | 2 / 3 |
Total | 10 / 12 Passed |
Validation
75%Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.
Validation — 12 / 16 Passed
Validation for skill structure
| Criteria | Description | Result |
|---|---|---|
metadata_version | 'metadata' field is not a dictionary | Warning |
license_field | 'license' field is missing | Warning |
frontmatter_unknown_keys | Unknown frontmatter key(s) found; consider removing or moving to metadata | Warning |
body_steps | No step-by-step structure detected (no ordered list); consider adding a simple workflow | Warning |
Total | 12 / 16 Passed | |
Table of Contents
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.