CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

cloudflare-r2

Cloudflare R2 S3-compatible object storage. Use for buckets, uploads, CORS, presigned URLs, or encountering R2_ERROR, CORS failures, multipart issues.

56

Quality

71%

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/cloudflare-r2/skills/cloudflare-r2/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

61%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 genuinely actionable, well-structured reference with strong executable examples and a sound progressive-disclosure spine into 11 real reference files. It loses points for redundant repeated reference listings, and for advertising templates, agents, and commands that are absent from the bundle — two common use cases point at files that don't exist.

Suggestions

Remove the duplicated reference listings: merge 'New R2 Features', 'When to Load References', and 'Using Bundled Resources' into a single reference index (and drop the 'Questions? Issues?' footer), cutting roughly a third of the body.

Since no templates/, agents/, or commands exist in the bundle, either add those files or delete the sections advertising them — in particular, inline actual presigned-URL and multipart-upload code so those use cases don't depend on missing files.

Add validation checkpoints around destructive/batch operations: verify keys via head() before delete, confirm batch results and chunk deletes of >1000 keys in a verify-then-retry loop.

DimensionReasoningScore

Conciseness

Mostly efficient — code blocks and tables carry real information with little conceptual padding. However, the same reference set is listed three times in "New R2 Features", "When to Load References", and "Using Bundled Resources", plus a fourth partial repeat in the closing "Questions? Issues?" footer, and status/metadata banners add nothing. This matches anchor 3 ('mostly efficient but could be tightened') rather than anchor 4, where only minor trims would be needed.

3 / 5

Actionability

Executable, copy-paste-ready content dominates: `bunx wrangler r2 bucket create`, a complete wrangler.jsonc binding block, a full working Hono upload/download worker, concrete error-handling code, and wrangler CLI commands. Not a 5: two use cases (presigned URLs, multipart upload) defer to `templates/r2-presigned-urls.ts` and `templates/r2-multipart-upload.ts`, which do not exist in the bundle, leaving those common cases without runnable guidance.

4 / 5

Workflow Clarity

The Quick Start gives a clear 3-step sequence (create bucket → configure binding → upload/download) and the error-handling section shows branching on error messages. However, destructive and batch operations (single/bulk delete of up to 1000 keys, multipart aborts) have no validation or verification steps — no verify-before-delete, no chunked-batch verification loop. Per the rubric guideline, missing validation in destructive/batch workflows caps this at 3.

3 / 5

Progressive Disclosure

Good structure: a navigable overview with well-signaled, one-level-deep "Load `references/x.md`" pointers, and all 11 referenced reference files exist in the bundle. Not a 5: the body advertises a `templates/` directory (5 files), autonomous agents, and quick commands that do not exist in the bundle, and the same references are listed across three redundant sections, muddying navigation.

4 / 5

Total

14

/

20

Passed

Description

70%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 compact, well-targeted description with an explicit 'Use when' clause and strong domain-specific trigger terms. Its main weakness is that it never states what the skill does — the 'what' is a domain label plus a noun list rather than concrete actions.

DimensionReasoningScore

Specificity

"Cloudflare R2 S3-compatible object storage" names the domain concretely and "buckets, uploads, CORS, presigned URLs, multipart issues" enumerate real capability areas, but the description contains no action verbs at all — it lists topic nouns rather than concrete actions like 'uploads objects' or 'configures CORS'. This matches anchor 3 (domain plus some concrete content, not comprehensive) better than anchor 4 ("Lists several specific actions"), and exceeds anchor 2's bare single generic action.

3 / 5

Completeness

Both parts are present: the "what" ("Cloudflare R2 S3-compatible object storage") and an explicit "when" clause ("Use for buckets, uploads, CORS, presigned URLs, or encountering R2_ERROR, CORS failures, multipart issues"). Not a 5 because the "what" is a bare domain noun phrase with no statement of what the skill actually does, matching anchor 4 (both present, the "what" could be more explicit).

4 / 5

Trigger Term Quality

"buckets, uploads, CORS, presigned URLs, R2_ERROR, CORS failures, multipart issues" are terms users would naturally say when needing this skill. Not a 5: missing common variations like "download", "object storage" as a trigger phrase, and file/CLI-specific terms users might actually say (e.g., "r2 bucket create", "aws4fetch").

4 / 5

Distinctiveness Conflict Risk

"Cloudflare R2" and "R2_ERROR" are highly distinctive anchors giving this a clear niche. Not a 5 because "uploads", "CORS", and "presigned URLs" are generic S3 vocabulary that would overlap with any AWS S3 / object-storage skill if one coexists.

4 / 5

Total

15

/

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

metadata_field

'metadata' should map string keys to string values

Warning

Total

15

/

16

Passed

Repository

secondsky/claude-skills

Path

plugins/cloudflare-r2/skills/cloudflare-r2/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.