CtrlK
BlogDocsLog inGet started
Tessl Logo

learndash

LearnDash integration. Manage Courses. Use when the user wants to interact with LearnDash data.

59

Quality

68%

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

Quality

Content

76%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 executable commands and a solid connection-state workflow, and it is well-organized and reasonably concise. Its main weakness is the absence of validation/verification steps around the destructive and batch operations it documents.

Suggestions

Add an explicit validation step before destructive operations, e.g. run get-course to confirm the target before delete-course, and verify counts before batch enroll/unenroll.

Add a brief rollback or confirmation checklist for batch enrollment (max 50 users) and unenrollment to satisfy the feedback-loop requirement.

Trim the introductory marketing prose (what LearnDash is, 'fastest way to get a connection') to tighten token efficiency toward a lean score.

DimensionReasoningScore

Conciseness

The body is mostly efficient command reference with tables and code blocks, but retains minor over-explanation such as "LearnDash is a WordPress learning management system (LMS) plugin" and editorializing like "This is the fastest way to get a connection"; this fits 'Efficient; minor instances of over-explanation that could be trimmed' rather than the lean score 5.

4 / 5

Actionability

It provides copy-paste-ready commands throughout (npm install, membrane login, connection ensure, action list/run, request) plus a concrete actions table with keys and schemas, matching 'Fully executable; copy-paste ready code or commands; specific examples cover the common cases'.

5 / 5

Workflow Clarity

The install→auth→connect→search→run sequence and the connection-state feedback loop (READY/BUILDING/CLIENT_ACTION_REQUIRED with re-polling) are clear, but the skill exposes destructive and batch operations (delete-course, enroll-users-in-course up to 50) with no validation/verification checkpoint, which per the rubric caps workflow clarity at 3.

3 / 5

Progressive Disclosure

Content is organized into clear, well-labeled sections with no nested references and no bundle files present; it is not score 5 because the lengthy Popular actions table and proxy-flag reference could live in separate files, but it is otherwise well-structured matching 'Good structure; most content is appropriately placed; minor organization gaps'.

4 / 5

Total

16

/

20

Passed

Description

61%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 correctly names the product and includes an explicit 'Use when' trigger, but the capability statement is thin (a single generic "Manage Courses") and the trigger keywords are narrow. It is distinctive but lacks action breadth and natural keyword coverage.

Suggestions

Replace the generic "Manage Courses" with several concrete actions, e.g. "List, create, update, and delete courses, lessons, quizzes, and groups; enroll and unenroll users."

Expand the 'Use when' clause with natural trigger phrases users actually say, e.g. "Use when the user wants to manage LearnDash courses, lessons, quizzes, groups, or enrollments."

Keep the third-person voice (already correct) but ensure the trigger references the data entities users mention most often.

DimensionReasoningScore

Specificity

The phrase "Manage Courses" names the domain but uses a single generic action verb, matching the anchor 'Names the domain but actions are minimal or generic' ('Processes PDF files'); it falls short of score 3 which requires 1-2 concrete, distinct actions.

2 / 5

Completeness

It states both a clear 'what' ("LearnDash integration. Manage Courses.") and an explicit 'when' ("Use when the user wants to interact with LearnDash data"), matching the anchor where both are present but the 'when' could be more specific; it is not score 5 because the trigger lacks concrete trigger phrases like lessons/quizzes.

4 / 5

Trigger Term Quality

It surfaces "LearnDash" and "Courses" plus the trigger phrase "interact with LearnDash data", but misses common natural variations users might say (lessons, quizzes, groups, enrollments); this fits 'Some relevant keywords but missing common variations or synonyms' rather than the fuller coverage at 4.

3 / 5

Distinctiveness Conflict Risk

"LearnDash" is a specific named product giving it a clear niche with distinct triggers and minimal conflict risk, matching the top anchor; it would not realistically trigger another skill.

5 / 5

Total

14

/

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
membranedev/application-skills
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.