CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

reddit-api

Reddit API with PRAW (Python) and Snoowrap (Node.js)

52

Quality

65%

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

Fix and improve this skill with Tessl

tessl review fix ./skills/reddit-api/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

65%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 highly actionable with complete, executable examples across PRAW, Snoowrap, and the raw API, and it is largely free of concept-explanation filler. Its weaknesses are structural: everything is inlined in one ~580-line file with no progressive disclosure, and write operations lack validation and error-recovery checkpoints.

Suggestions

Split bulky reference material (Available Scopes table, OAuth2 web flow, Pydantic models, direct-API clients) into files under references/ and link to them from SKILL.md so the main file is a lean overview.

Add validation and error-recovery steps for write operations — e.g., check 429/403/404 responses after submit/vote calls and retry or surface errors — instead of only listing error handling as an anti-pattern.

Remove the duplicated 'Quick Reference' installation commands and the generic Pydantic-model boilerplate that Claude can already produce, to tighten token usage.

DimensionReasoningScore

Conciseness

The body is mostly code and tables with little prose padding, but includes content Claude could derive itself — generic Pydantic model classes, a full FastAPI OAuth callback app, and a 'Quick Reference' that repeats installation commands already shown above. This fits anchor 3 ('Mostly efficient but includes some unnecessary explanation or could be tightened'), above 2 because there is no concept-explaining filler.

3 / 5

Actionability

The skill provides copy-paste-ready executable code throughout: PRAW auth with a verification print, hot/new/search listing, submit/vote/reply, streaming, Snoowrap equivalents, and direct httpx/fetch OAuth clients. Specific examples cover the common cases, matching anchor 5 ('Fully executable; copy-paste ready...').

5 / 5

Workflow Clarity

Setup is a clear numbered sequence (create app → env vars → client init) with a verify-auth checkpoint, but the outward-facing write operations (submit, vote, comment) include no validation or error-recovery steps, and error handling appears only as an anti-pattern bullet rather than in the code. Anchor 3 fits, and the destructive-operation cap applies since posting/voting mutate external state without verification.

3 / 5

Progressive Disclosure

There are no bundle files and the body references none; ~580 lines are inlined monolithically, including content that clearly belongs in separate files (scope tables, the OAuth2 web flow, Pydantic models, direct-API clients). Section structure is good with clear headers — above anchor 2's 'minimal structure' — but nothing is split out or navigable via references, matching anchor 3.

3 / 5

Total

14

/

20

Passed

Description

52%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 distinctive and names the exact domain and libraries, but it says nothing about what the skill actually does and gives no usage triggers. It reads as a topic label rather than a capability statement, leaving trigger-term coverage and completeness underdeveloped.

Suggestions

Enumerate concrete capabilities in the description, e.g., "Fetch posts, comments, and user data; submit posts and comments; stream new content in real time via the Reddit API using PRAW (Python) or Snoowrap (Node.js)".

Add an explicit trigger clause to the description, e.g., "Use when building Reddit bots, scrapers, or integrations, or when the user mentions Reddit, subreddits, PRAW, or Snoowrap".

Include natural user vocabulary — "Reddit bot", "scrape Reddit", "subreddit", "karma" — to improve trigger-term coverage beyond library names.

DimensionReasoningScore

Specificity

"Reddit API with PRAW (Python) and Snoowrap (Node.js)" names the domain and specific libraries but lists no concrete actions (e.g., fetching posts, submitting, streaming). It matches anchor 2 ('Names the domain but actions are minimal or generic') — above 1 because it is concrete about tooling, below 3 because no capabilities/actions are enumerated.

2 / 5

Completeness

The 'what' is clear (Reddit API access via two named libraries), but the description itself contains no 'Use when...' clause or equivalent trigger guidance, capping completeness at 3 per the rubric guideline. It is above 2 because the 'what' is specific rather than vague.

3 / 5

Trigger Term Quality

Relevant keywords are present ("Reddit API", "PRAW", "Snoowrap", "Python", "Node.js") but common natural phrases users would say — "Reddit bot", "scrape Reddit", "subreddit", "posts and comments" — are missing. This fits anchor 3 ('Some relevant keywords but missing common variations or synonyms'), short of 4's 'good keyword coverage'.

3 / 5

Distinctiveness Conflict Risk

"Reddit API with PRAW (Python) and Snoowrap (Node.js)" carves out a clear niche with named, unambiguous libraries; it would not plausibly trigger for any other skill. This matches anchor 5 ('Clear niche with distinct triggers; minimal conflict risk').

5 / 5

Total

13

/

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

skill_md_line_count

SKILL.md is long (592 lines); consider splitting into references/ and linking

Warning

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

Total

14

/

16

Passed

Repository

alinaqi/maggy

Path

skills/reddit-api/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.