CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

memory-leak-debug

Diagnose memory leaks in the Qwen Code CLI using heap snapshots and the chrome-devtools CLI. Use when investigating high memory usage, unbounded growth, or suspected object retention issues.

Quality

85%

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

SKILL.md
Quality
Evals
Security

Quality

Content

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

A highly actionable, well-sequenced debugging procedure with genuinely non-obvious environment knowledge and correct use of its bundle script. Weaknesses are minor: some Claude-known material in the root-cause patterns section, no error-recovery guidance around daemon/PID failures, and a broken pointer to a nonexistent worked-example file.

Suggestions

Fix or remove the dangling reference to `examples/react-reconciler-performance-measure-leak.md` — either add the file to the bundle or drop the 'Worked Example' section, since following the link yields nothing.

Trim the Step 5 'Common patterns' list to the Qwen-specific case (the `performance.measure()` → `measureEntryBuffer` example) and cut the generic leak archetypes Claude already knows.

Add a brief error-recovery note for the two most likely failure points: PID discovery returning an unexpected process (verify with `ps -p $NODE_PID`) and the chrome-devtools daemon not being running when memory tools are called.

DimensionReasoningScore

Conciseness

The body is largely lean — every command block earns its place, and the Notes sections explain genuinely non-obvious facts (process chain walking, QWEN_CODE_NO_RELAUNCH rationale, shell-state non-persistence). Two mild over-explanations keep it from a 5: the opening paragraph restates the frontmatter description, and the Step 5 'Common patterns' list (event listener leaks, closure capture, module-level caches) is largely knowledge Claude already has.

4 / 5

Actionability

Guidance is fully executable end to end: copy-paste tmux/npm/env commands, the exact `kill -USR2` snapshot trigger, exact `chrome-devtools` subcommands with documented outputs ('uid, className, count, selfSize, maxRetainedSize'), and clear provenance for each placeholder ('Where `<uid>` is from the `get_memory_snapshot_details` output'). The one bundle script is invoked with a concrete, correct path. This matches 'fully executable; copy-paste ready; covers the common cases'.

5 / 5

Workflow Clarity

The six-step sequence is explicit and well-ordered, with real validation checkpoints (three-snapshot trend confirmation in Step 2, post-fix re-run with 'confirm the leaking class count stabilizes' in Step 6). It is not a 5 because there are no error-recovery feedback loops — nothing tells Claude what to do when the daemon fails to start, a snapshot file doesn't appear, or PID discovery returns the wrong process — which the score-5 anchor requires and the score-4 anchor ('most checkpoints present; minor validation gaps') describes exactly.

4 / 5

Progressive Disclosure

The body is a well-sectioned ~155-line workflow that appropriately keeps procedure content inline, and its one bundle reference (`scripts/find-leaf-node.sh`) is real, correctly pathed, and clearly signaled. It drops from 5 because the closing 'Worked Example' points to `examples/react-reconciler-performance-measure-leak.md`, which does not exist in the bundle (no `examples/` directory) — a dangling one-level reference that fails navigation; the score-3 anchor's 'references present but not clearly signaled' is a worse fit since the signal is clear, just broken.

4 / 5

Total

17

/

20

Passed

Description

82%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 with an explicit and specific 'Use when...' clause, natural trigger terms, and a distinct niche. Its only weakness is that 'Diagnose' is a single generic action — the description under-sells the concrete workflow (capture, compare, trace) the skill body actually provides.

Suggestions

Expand the 'what' with 2-3 concrete actions, e.g., 'Capture heap snapshots, compare class-level retained sizes across snapshots, and trace retainer chains to the root cause.'

Add common user phrasings to the trigger clause, such as 'out of memory (OOM)', 'memory keeps growing', or 'high memory usage' already covered — adding 'heap growth' or 'increasing memory footprint' would broaden natural-match coverage.

DimensionReasoningScore

Specificity

The description names the domain ('memory leaks in the Qwen Code CLI') and the tooling ('heap snapshots and the chrome-devtools CLI'), but offers only one concrete action verb — 'Diagnose'. It does not enumerate what the skill actually does (capture snapshots, compare retained sizes, trace retainer chains), so it matches 'names domain and 1-2 concrete actions, but not comprehensive' rather than the score-4 anchor's list of several specific actions.

3 / 5

Completeness

It explicitly answers both questions: the 'what' ('Diagnose memory leaks in the Qwen Code CLI using heap snapshots and the chrome-devtools CLI') and the 'when' with a concrete trigger clause ('Use when investigating high memory usage, unbounded growth, or suspected object retention issues'). This mirrors the score-5 good example's structure; it is not the score-4 anchor because the 'when' clause is specific and multi-triggered rather than merely serviceable.

5 / 5

Trigger Term Quality

'high memory usage', 'unbounded growth', and 'object retention' are natural phrases a user would say, plus the core 'memory leaks' term. It misses common variations users would actually say, such as 'out of memory' / 'OOM', 'memory consumption', 'RSS keeps growing', or 'heap', so it falls just short of the comprehensive score-5 anchor.

4 / 5

Distinctiveness Conflict Risk

The description is scoped to a narrow niche — memory leaks in one specific CLI with specific tooling — so it would not fire for general performance, profiling, or debugging skills. Clear niche with distinct triggers; minimal conflict risk.

5 / 5

Total

17

/

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

referenced_paths_exist

Referenced path issues: 1 missing

Warning

Total

15

/

16

Passed

Repository

QwenLM/qwen-code

Path

.qwen/skills/memory-leak-debug/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.