CtrlK
BlogDocsLog inGet started
Tessl Logo
PluginPublic

testland/language-native-sast

Use when a repo needs security linting inside its own toolchain: Bandit for Python, gosec for Go, eslint-plugin-security and no-unsanitized for JavaScript/TypeScript, or PMD's Apex rules for Salesforce, with justified suppressions, baselines for legacy code, SARIF and CI gates.

Quality

87%

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

86%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 well-structured, highly actionable skill body: a shared five-step adoption pattern with executable commands for all four tools, appropriate deferral of catalogs to four real, clearly-signaled reference files, and useful anti-pattern/limitation sections. Minor room to trim narrative rationale and make validation checkpoints more explicit.

DimensionReasoningScore

Conciseness

The body is dense with commands, tables, and links, and defers full catalogs to references, but a few narrative rationale sentences (the Overview's "which is where shallow bugs ... actually get fixed", Step 2's "an unfiltered first run is how teams end up disabling the linter") could be trimmed. This matches anchor 4 (efficient, minor over-explanation) rather than 5 (every token earns its place).

4 / 5

Actionability

Copy-paste-ready commands at every step: per-ecosystem installs, filtered scan invocations, baseline capture/diff commands, an inline suppression syntax table, a CI YAML snippet, the ESLint flat config, the SARIF formatter command, and exit-code semantics. This matches anchor 5: executable guidance covering the common cases for all four tools.

5 / 5

Workflow Clarity

The five-step pattern (install → filtered first scan → baseline → justified suppression → SARIF/exit-code CI gate) is clearly sequenced, with per-step pointers into references. Validation is present but implicit (filter-after-first-scan, exit-code blocking, quarterly suppression audit) rather than explicit checkpoints, so it fits anchor 4; the destructive/batch cap does not apply since linting is non-destructive.

4 / 5

Progressive Disclosure

SKILL.md is a genuine overview: shared workflow inline, tool table mapping each language to its one-level-deep reference (all four files verified to exist and to contain the claimed rule catalogs, SARIF/CI, and baseline content), plus an annotated References section and cross-links to sibling skills. This matches anchor 5 (clear overview, well-signaled one-level-deep references, easy navigation).

5 / 5

Total

18

/

20

Passed

Description

83%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 specific, well-triggered description that names concrete tools per ecosystem and concrete practices with an explicit "Use when" clause. The only weakness is missing common synonyms (SAST, static analysis) and a 'what' that is implied by the tool list rather than stated as an action.

DimensionReasoningScore

Specificity

The description names four concrete tools mapped to ecosystems ("Bandit for Python, gosec for Go, eslint-plugin-security and no-unsanitized for JavaScript/TypeScript, or PMD's Apex rules for Salesforce") plus four concrete practices ("justified suppressions, baselines for legacy code, SARIF and CI gates"), matching the comprehensive-coverage anchor. It is not a 4 because there are no meaningful gaps: tools, workflows, and outputs are all enumerated.

5 / 5

Completeness

The explicit "Use when a repo needs security linting inside its own toolchain" clause answers 'when' concretely, and the tool-plus-practice list conveys 'what'. It is below anchor 5 because the 'what' is implied by the enumerated scope rather than stated as an explicit action (e.g. "Configures/sets up..."), and above anchor 3 because both what and when are clearly present.

4 / 5

Trigger Term Quality

Good natural-term coverage: "security linting", all four tool names, and the ecosystem names (Python, Go, JavaScript/TypeScript, Salesforce) are phrases users would actually say. It falls short of anchor 5 because common synonyms like "SAST", "static analysis", or "security scan" are absent, so a user asking in those terms would not trigger it.

4 / 5

Distinctiveness Conflict Risk

Exact tool names (Bandit, gosec, eslint-plugin-security/no-unsanitized, PMD Apex) create a clear niche distinct from general SAST skills, with trigger terms unlikely to fire for the wrong skill.

5 / 5

Total

18

/

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