CtrlK
BlogDocsLog inGet started
Tessl Logo

r2-upload

Upload files to Cloudflare R2, AWS S3, or any S3-compatible storage (like MinIO) and generate secure, time-limited presigned download links with configurable expiration, typically set to 5 minutes. Use when the user needs to upload a file to cloud storage and get a shareable link, or mentions R2, S3, presigned URLs, temporary links, or file uploads with expiration.

68

Quality

84%

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

SKILL.md
Quality
Evals
Security

Quality

Content

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

The body is well-organized and actionable with concrete commands and config, and it is appropriately concise. Its main weakness is the absence of validation/verification steps for destructive operations (delete) and uploads, which limits workflow clarity.

Suggestions

Add an explicit verification step after uploads (e.g., confirm the returned URL is reachable or that the object exists via `r2_list`) and a confirmation guard before `r2_delete`.

Document how the `r2-upload` CLI / `r2_upload` tools are invoked (bundle script path or install step) so the examples are fully self-contained.

Trim the "Notes" section by folding non-obvious items into the relevant usage examples and dropping facts already implied there.

DimensionReasoningScore

Conciseness

The body is largely lean — config YAML plus executable command examples with minimal prose — but the "Notes" section partially restates facts already implied by the usage examples, leaving minor trimming opportunities.

4 / 5

Actionability

Provides copy-paste-ready `r2-upload` invocations and a complete config YAML, but the referenced `r2-upload` CLI and `r2_upload`/`r2_list`/`r2_delete` tools are not backed by any bundle script, so execution depends on an unstated external binary.

4 / 5

Workflow Clarity

Setup steps are sequenced, but this skill performs destructive and batch-capable operations (delete, uploads) with no validation or verification checkpoints (no upload-success check, no confirm-before-delete), so per the rubric workflow clarity is capped at 3.

3 / 5

Progressive Disclosure

A single self-contained file with well-organized section headers and no nested references; good structure overall, though a couple of sections (AWS S3 setup, environment variables) could be split into reference files for a longer skill.

4 / 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 strong across all four dimensions: it states concrete capabilities, lists provider targets, and provides explicit "Use when..." trigger guidance with natural keywords. It is concise yet comprehensive with no padding or over-claims.

DimensionReasoningScore

Specificity

Names multiple concrete actions ("Upload files", "generate secure, time-limited presigned download links with configurable expiration") across concrete providers (R2, AWS S3, MinIO), giving comprehensive coverage.

5 / 5

Completeness

Explicitly answers both what (upload + generate presigned links with configurable expiration) and when via a concrete "Use when the user needs to upload a file... or mentions R2, S3, presigned URLs..." clause.

5 / 5

Trigger Term Quality

Comprehensive natural trigger terms including synonyms and product names ("R2, S3, presigned URLs, temporary links, file uploads with expiration") that users would actually say.

5 / 5

Distinctiveness Conflict Risk

Occupies a clear niche (cloud-object-storage upload with presigned URLs) with distinct, specific triggers that are unlikely to fire for unrelated skills.

5 / 5

Total

20

/

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.

Validation15 / 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
zebbern/claude-code-guide
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.