CtrlK
BlogDocsLog inGet started
Tessl Logo

you-might-not-need-a-memo

Analyze and fix useMemo/React.memo anti-patterns in your code

57

Quality

66%

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 ./.agents/skills/you-might-not-need-a-memo/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

72%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 a lean, well-structured catalog of seven concrete anti-patterns with specific fixes and a clean three-step workflow. Its main weakness is the absence of a validation/verification step before applying code fixes across a scope, which caps workflow clarity at 3.

Suggestions

Add a verification checkpoint after applying fixes — e.g., run the test suite or confirm re-renders stopped — before declaring success.

Add small before/after code snippets for two or three of the most common anti-patterns to lift actionability toward copy-paste ready.

Trim assertive asides ("React renders are fast.") that assume context Claude already has.

DimensionReasoningScore

Conciseness

Each of the seven anti-patterns is a tight rule with a concrete fix, e.g. "move that state into a smaller child component instead of memoizing". Minor over-explanation ("React renders are fast.") could be trimmed. Not 5 because a few explanatory clauses assume context Claude already has; not 3 because the body is mostly efficient rather than padded.

4 / 5

Actionability

Concrete fixes per pattern (e.g. "extract the stateful part and pass the expensive subtree as `children`") plus one inline example ("const fullName = first + ' ' + last"). Not 5 because most patterns lack a copy-paste before/after code example; not 3 because the guidance is specific and executable, not pseudocode.

4 / 5

Workflow Clarity

Steps are clearly sequenced ("1. Read the reference... 2. Analyze the specified scope... 3. If fix=true, apply the fixes"), but applying code fixes across a scope is a batch/destructive operation with no validation checkpoint. Per the rubric cap, a batch skill without validation cannot score above 3; not 4 because verification is absent, not 2 because the sequence is coherent.

3 / 5

Progressive Disclosure

Under 50 lines with clean sections (Arguments, References, Anti-patterns, Steps) and one well-signaled one-level-deep reference ("https://overreacted.io/before-you-memo/"). Per the simple-skill scoring note, well-organized sections earn 5; not 4 because there are no organization gaps.

5 / 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 names a specific niche and two concrete actions with strong natural trigger terms, but omits an explicit "Use when..." clause, capping completeness at 3. It is distinct and low-conflict but slightly under-specified on scope of actions.

Suggestions

Add a "Use when..." clause naming natural triggers (e.g., "Use when reviewing React performance, re-renders, or memoization").

Broaden action coverage beyond "Analyze and fix" — e.g., "detects anti-patterns, refactors to remove unnecessary memoization, and moves state to avoid re-renders".

Include common synonyms ("memoization", "re-renders", "performance") to improve trigger recall.

DimensionReasoningScore

Specificity

Quotes "Analyze and fix" and "useMemo/React.memo anti-patterns" — names the domain plus two concrete actions, but is not comprehensive. Not 4 because only two actions are listed rather than "several"; not 2 because it goes beyond naming the domain to two specific actions.

3 / 5

Completeness

Quotes "Analyze and fix useMemo/React.memo anti-patterns in your code" — a clear "what", but no "Use when..." clause or equivalent trigger guidance. Per guidelines a missing "when" caps completeness at 3; not 4 because the "when" is absent rather than merely imprecise.

3 / 5

Trigger Term Quality

Quotes "useMemo", "React.memo", and "anti-patterns" — these are exact terms developers naturally say, with good keyword coverage. Not 5 because common synonyms like "memoization", "re-renders", or "performance" are missing; not 3 because coverage is broader than "some relevant keywords".

4 / 5

Distinctiveness Conflict Risk

Quotes "useMemo/React.memo anti-patterns" — a clear, narrow niche with distinct triggers and low conflict risk. Not 5 because of conceivable minor overlap with a broader React-performance skill; not 3 because it is mostly distinct rather than merely "somewhat specific".

4 / 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
simstudioai/sim
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.