CtrlK
BlogDocsLog inGet started
Tessl Logo

discord-harvest

Extract and archive Discord images, attachments, links, and conversation files. Use when asked to "extract Discord images", "download Discord attachments", "harvest a Discord channel", "archive a DM", or when scraping or preserving content from a Discord conversation.

74

Quality

93%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Low

Low-risk findings worth noting

SKILL.md
Quality
Evals
Security

Quality

Content

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

An excellent, operationally precise skill body. It sequences a three-path harvest workflow with explicit staging confirmation and security validation checkpoints, keeps prose lean and instructional, and delegates executable code and detailed formats to a well-organized, one-level-deep reference bundle. The only trimmable cost is duplicated security messaging across the Trust Boundary, A4, and Security Notice sections.

DimensionReasoningScore

Conciseness

The body is dense, operational prose — exact routes (`GET /channels/{channel.id}/messages`), exact limits (`limit` 1–100), a ready regex (`https?://\S+`), defaults (last 10) — with almost no explanation of concepts Claude already knows. It is not 5 because the untrusted-content/security messaging is repeated across the Trust Boundary section, A4, and the Security Notice, which could be consolidated; not 3 because nearly every sentence carries an instruction or a hard constraint.

4 / 5

Actionability

Guidance is fully executable for an instruction skill: concrete REST routes with parameters and pagination rules, the exact link regex, a three-way classification policy (download/link-only/skip), byte-identity skip criteria, a sample staging summary ("Staged: 12 images, 3 files, 8 links"), and precise pointers to copy-paste-ready implementations (sanitize_filename, validate_url, redact_cdn_url, copy_asset in references/code-examples.md, verified present). Anchor 4's 'minor gaps' fits worse — the common cases are covered end-to-end.

5 / 5

Workflow Clarity

The workflow is clearly sequenced (Step 0 → Step 1 branching → Path A/B/C → Step 3) with explicit validation checkpoints for a batch operation: stage-then-confirm before any download, validate_url/sanitize before any curl, stop-and-explain on permission gaps instead of false 'no assets found', and feedback loops (honor Retry-After on 429, discard and re-resolve cached IDs on error). This matches the 5 anchor's 'explicit validation steps; feedback loops for error recovery'.

5 / 5

Progressive Disclosure

The body is a clear overview with four one-level-deep references (code-examples.md, folder-structure.md, troubleshooting.md, design-philosophy.md) — all verified to exist, with working anchor links (#download-commands, #collision-and-repeat-run-policy matching real headings) — plus a Reference Files table with a 'Load when' column and inline load-when pointers. This matches the 5 anchor exactly: content appropriately split, well-signaled, easy navigation.

5 / 5

Total

19

/

20

Passed

Description

95%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 strong description: concrete two-verb capability statement over a full asset-type list, followed by an explicit 'Use when' clause with five quoted natural-language trigger phrases plus broader scraping/preserving synonyms. It is written in third person, distinguishes the Discord niche clearly, and stays concise without padding.

Suggestions

Add one more distinct action verb to the capability sentence (e.g., 'organize into images/, files/, and a manifest') to elevate specificity from several-actions to the comprehensive multi-action pattern of the top anchor.

DimensionReasoningScore

Specificity

"Extract and archive Discord images, attachments, links, and conversation files" names two concrete verbs over a comprehensive object list (images, attachments, links, conversation files), matching the 'several specific actions with minor gaps' anchor. It is not 5 because only two distinct actions are stated (extract, archive) versus the multiple-action pattern in the 5 anchor, and manifest/folder organization is only implied; not 3 because coverage of asset types is comprehensive rather than '1-2 concrete actions'.

4 / 5

Completeness

The description explicitly answers both questions: what ("Extract and archive Discord images, attachments, links, and conversation files") and when ("Use when asked to... or when scraping or preserving content from a Discord conversation"), with quoted concrete trigger phrases — a direct match for the 5 anchor example. Anchor 4's 'when could be more explicit' does not apply since multiple exact trigger utterances are given.

5 / 5

Trigger Term Quality

Trigger phrases "extract Discord images", "download Discord attachments", "harvest a Discord channel", "archive a DM", plus "scraping or preserving content from a Discord conversation" give comprehensive synonym coverage (extract/download/harvest/archive/scrape/preserve) of exactly what a user would naturally say. Neighboring anchor 4 ('a few natural terms missing') fits worse — no common phrasing variant is obviously absent.

5 / 5

Distinctiveness Conflict Risk

The niche is unambiguous — everything is scoped to Discord with domain-specific triggers ('harvest a Discord channel', 'archive a DM'), so conflict risk with generic download/organizer skills is minimal. Anchor 4's 'minor overlap risk with closely related skills' fits worse because the Discord-scoped triggers clearly separate it from generic file-download skills.

5 / 5

Total

19

/

20

Passed

Validation

87%

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

Validation — 14 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

relative_links

Relative link issues: 1 deeper-than-1-level

Warning

referenced_paths_exist

Referenced path issues: 1 deeper-than-1-level

Warning

Total

14

/

16

Passed

Repository
t4sh/skills4sh
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.