CtrlK
BlogDocsLog inGet started
Tessl Logo

modern-javascript-patterns

Master ES6+ features including async/await, destructuring, spread operators, arrow functions, promises, modules, iterators, generators, and functional programming patterns for writing clean, efficient JavaScript code. Use when refactoring legacy code, implementing modern patterns, or optimizing JavaScript applications.

50

Quality

55%

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 ./tests/ext_conformance/artifacts/agents-wshobson/javascript-typescript/skills/modern-javascript-patterns/SKILL.md

The canonical home for this skill is modern-javascript-patterns in wshobson/agents

SKILL.md
Quality
Evals
Security

Quality

Content

36%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 reads as a comprehensive JavaScript textbook rather than a skill: it re-teaches ES6 basics Claude already knows at severe token cost, though the individual code examples are concrete and mostly executable. It lacks any workflow for its claimed use cases (refactoring, migration, optimization) and makes no use of progressive disclosure, keeping everything in one monolithic file.

Suggestions

Strip the basic-syntax tutorials (arrow functions, destructuring, spread, template literals) that Claude already knows, keeping only genuinely skill-specific content such as the decision guidance for when to use Promise.all vs sequential awaits, the retry/timeout patterns, and the pitfalls section.

Add a concrete workflow for the claimed use cases, e.g., a sequenced refactoring procedure: identify callback/ES5 patterns in the target file, map each to its modern equivalent (with a small lookup table), apply changes, and verify behavior is preserved.

Move the bulk of the syntax reference into references/ files (e.g., references/async-patterns.md, references/functional-patterns.md) and keep SKILL.md as a lean overview with well-signaled one-level-deep links.

DimensionReasoningScore

Conciseness

The ~900-line body is an end-to-end ES6 primer — "// Traditional function / const add = (a, b) => a + b", basic destructuring, spread, template literals — extensively explaining basic programming concepts Claude already knows, matching the anchor for severely verbose, heavily padded content.

1 / 5

Actionability

Examples are concrete, near-executable JavaScript across many topics (e.g., the fetchWithRetry and debounce implementations), with only minor gaps: undefined variables like title/content in the template-literal example, duplicate const user / const value declarations, and obj/arr used before definition in the optional-chaining section.

4 / 5

Workflow Clarity

Despite claiming use cases like "Refactoring legacy JavaScript to modern syntax" and "Migrating from callbacks to Promises/async-await", the body provides no sequenced process or checkpoints for any of them — it is a feature catalog, not a workflow, fitting the anchor for rough organization with many gaps and no defined steps.

2 / 5

Progressive Disclosure

Section headers (ES6+ Core Features, Asynchronous Patterns, Functional Programming Patterns) provide real structure, but roughly 800 lines of syntax-reference material that clearly belongs in separate reference files is inlined in SKILL.md with no external references and no bundle files present, matching the anchor for content that should be separate being inline.

3 / 5

Total

10

/

20

Passed

Description

75%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 that explicitly answers both what it covers and when to use it, with an enumerated feature list and a concrete three-trigger "Use when" clause in third person. It falls just short of top marks because the action framing is topic-oriented ("Master ... features") and a few natural trigger phrases users would actually say are missing.

DimensionReasoningScore

Specificity

"Master ES6+ features including async/await, destructuring, spread operators, arrow functions, promises, modules, iterators, generators, and functional programming patterns" enumerates many specific capabilities with only minor gaps, but the governing verb "Master ... features" frames topics rather than concrete actions, which keeps it below the anchor-5 pattern of explicit action verbs.

4 / 5

Completeness

Both what ("Master ES6+ features including ... for writing clean, efficient JavaScript code") and when ("Use when refactoring legacy code, implementing modern patterns, or optimizing JavaScript applications") are explicitly present, but the what is a topic framing rather than concrete actions and the when-clause lacks user-voice trigger phrasing, so it does not clearly match anchor 5.

4 / 5

Trigger Term Quality

"Use when refactoring legacy code, implementing modern patterns, or optimizing JavaScript applications" plus embedded feature keywords (async/await, promises, destructuring) provides good natural-term coverage, but common user phrasings like "ES6", "modernize my JavaScript", or "convert callbacks to async/await" are missing.

4 / 5

Distinctiveness Conflict Risk

The ES6+/JavaScript-modernization niche is mostly distinct, but broad phrases like "refactoring legacy code" and "writing clean, efficient JavaScript code" create minor overlap risk with generic refactoring or clean-code skills.

4 / 5

Total

16

/

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

skill_md_line_count

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

Warning

Total

15

/

16

Passed

Repository
Dicklesworthstone/pi_agent_rust
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.