CtrlK
BlogDocsLog inGet started
Tessl Logo
PluginPublic

testland/lizard-complexity

Run Lizard against production source to enforce per-function cyclomatic complexity (CCN), NLOC, and parameter-count thresholds - language-agnostic (30+ languages). Scoped to production code via `-x"./tests/*"`; test complexity is reviewed separately. Use when a codebase spans several languages and needs one complexity gate across all of them, or when a function has grown unreviewable and the team wants a numeric threshold in CI.

Quality

90%

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

Overview
Quality
Evals
Security
Files

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 tight, highly actionable CLI skill: copy-paste commands throughout, a sensible step sequence with a CI exit-code checkpoint, and a well-organized single-file layout with a clearly signaled external reference. Weaknesses are minor: a few lines re-explain concepts Claude already knows and the workflow lacks an error-recovery loop after a failed gate.

Suggestions

Trim Claude-known background: drop or compress 'Lizard's CCN counts decision points (if/else/case/&&/||/?:)' and the NLOC/CCN abbreviation glosses — keep only the Lizard-specific mapping (which flags set which threshold).

Add a short feedback loop to Step 5: after a non-zero exit, show how to extract the offending functions from lizard.csv (e.g., the grep/jq pipeline teased in Step 4) and re-run after fixes.

Consider moving the Anti-patterns table's remediation detail (e.g., the diff-only `git diff --name-only` workflow) into a short referenced section or example so the main flow stays a lean overview.

DimensionReasoningScore

Conciseness

The body is lean — commands, a flag table, and an anti-patterns table with almost no filler. Minor over-explanation of things Claude already knows ("CCN counts decision points (if/else/case/&&/||/?:)" and the NLOC/CCN abbreviation glosses) keeps it below the 'every token earns its place' anchor 5, matching anchor 4's 'minor instances of over-explanation that could be trimmed'.

4 / 5

Actionability

Every step is copy-paste ready: install commands, baseline `lizard src/`, the full threshold invocation `-x"./tests/*" -C 10 -L 100 -a 5` with a flag-meaning table, CSV/XML/HTML output variants, and a CI-fail snippet with explicit `$EXIT` handling — fully executable and covering the common cases per anchor 5.

5 / 5

Workflow Clarity

Steps 1-6 form a coherent install → baseline → thresholds → output → CI-gate → per-language-scope sequence, and Step 5 includes an explicit exit-code checkpoint. However there is no error-recovery loop (e.g., what to do with the report when the gate fails beyond 'see report'), so it matches anchor 4 ('most checkpoints present; minor validation gaps') rather than anchor 5.

4 / 5

Progressive Disclosure

The single file is well-sectioned (When to use, numbered steps, Anti-patterns, Limitations, References) and the only reference — the Lizard README URL — is one level deep and clearly signaled in a References section. No bundle files exist to offload detail, and the ~128-line body is appropriate for the main file; minor gains (e.g., moving the anti-patterns detail out of the main flow) keep it at anchor 4 rather than 5.

4 / 5

Total

17

/

20

Passed

Description

92%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: concrete capabilities with specific metrics and the exact exclusion flag, an explicit dual-scenario 'Use when' clause, and a tool-named niche that minimizes conflict risk. The only gap is a handful of natural trigger phrasings users might use.

DimensionReasoningScore

Specificity

The description names multiple concrete actions: "Run Lizard against production source to enforce per-function cyclomatic complexity (CCN), NLOC, and parameter-count thresholds" plus the concrete scoping mechanism "via `-x\"./tests/*\"`" — comprehensive coverage of the skill's capabilities, matching the anchor 'Lists multiple specific concrete actions'.

5 / 5

Completeness

Clearly answers both: what ("Run Lizard... to enforce per-function CCN, NLOC, and parameter-count thresholds") and when (explicit "Use when a codebase spans several languages and needs one complexity gate across all of them, or when a function has grown unreviewable and the team wants a numeric threshold in CI") — matching the anchor-5 example structure of concrete what + explicit trigger phrases.

5 / 5

Trigger Term Quality

Good natural coverage: "complexity gate", "cyclomatic complexity (CCN)", "numeric threshold in CI", "polyglot", "unreviewable". A few natural phrasings users might say are missing (e.g., "code complexity", "function too long", "refactor"), so it sits between anchor 4 and 5 but does not reach the comprehensive synonym/extension coverage of anchor 5.

4 / 5

Distinctiveness Conflict Risk

Names a specific tool (Lizard) with a clear niche (per-function complexity gating in CI) and distinct triggers (polyglot gate, unreviewable function, numeric CI threshold); the production-vs-test scoping note further distinguishes it from generic lint/quality skills, so conflict risk is minimal.

5 / 5

Total

19

/

20

Passed

Validation

100%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Reviewed

On this page