CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

frontend-mobile-security-xss-scan

Detect and remediate XSS risks in React, Vue, Angular, and browser JavaScript. Use when inspecting injection sinks, untrusted markup, sanitization, or frontend security checks.

56

Quality

70%

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 ./skills/frontend-mobile-security-xss-scan/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

42%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 delivers genuinely useful material (detection patterns, secure alternatives, framework-specific guidance) but buries it in a verbose, mostly-non-executable inline scanner class with no bundle files and no validation steps in its workflow. It reads as a code dump plus boilerplate rather than a lean, well-structured skill.

Suggestions

Move the XSSScanner implementation into a scripts/ file (and the secure-pattern catalog and prevention checklist into references/), keeping SKILL.md as a lean overview that links to them one level deep.

Trim the 'Context', 'Use this skill when', and 'Do not use this skill when' filler sections and remove the unfilled '$ARGUMENTS' placeholder — they restate the skill name without adding guidance.

Add explicit validation checkpoints to the workflow, e.g. confirm flagged lines truly reach an unsanitized sink (vs. framework auto-escaping) before reporting, and re-scan to verify applied fixes; also make the inline code complete (import fs, define findJavaScriptFiles and detectEventHandlerIssues) or explicitly label it as illustrative.

DimensionReasoningScore

Conciseness

The ~320-line body is dominated by a generic TypeScript scanner implementation that spells out XSS knowledge Claude already has, plus padded boilerplate ('Context', 'Use this skill when / Do not use' sections that merely echo the skill name) and an unfilled '$ARGUMENTS' placeholder. Several unnecessary sections put it at anchor 2; it is not 1 because the material is not concept-explanation filler throughout.

2 / 5

Actionability

The secure-coding examples and ESLint/Semgrep commands are concrete, but the central scanner code has real gaps: 'fs' is never imported, 'findJavaScriptFiles()' and 'detectEventHandlerIssues()' are called but never defined, and the React/Vue scanner findings omit required XSSFinding fields. This is incomplete rather than fully executable, matching anchor 3.

3 / 5

Workflow Clarity

The six numbered sections form a rough scan-to-report sequence, but there are no validation checkpoints (e.g., verify findings against framework auto-escaping before flagging, or confirm a fix removes the sink). Because scanning a whole codebase is a batch operation, the rubric caps workflow clarity at 3.

3 / 5

Progressive Disclosure

Section headers give the single-file body some structure and navigation, but with no references/, scripts/, or assets/ files at all, ~150 lines of scanner implementation and the checklists are inlined where they clearly belong in separate bundle files. This sits between anchors 2 and 3; the present section organization keeps it at 3.

3 / 5

Total

11

/

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 strong description: it states concrete capabilities with a well-scoped domain and provides an explicit, naturally-phrased 'Use when' trigger clause. The only improvements are minor — adding synonyms like 'cross-site scripting' and tightening distinctiveness from general security-audit skills.

DimensionReasoningScore

Specificity

Names the domain (XSS in React, Vue, Angular, browser JavaScript) and several concrete actions — 'Detect and remediate XSS risks', 'inspecting injection sinks, untrusted markup, sanitization' — with minor gaps such as reporting or CSP guidance. Not 3 because it lists more than 1-2 actions; not 5 because coverage is not comprehensive.

4 / 5

Completeness

Explicitly answers both questions: 'Detect and remediate XSS risks in React, Vue, Angular, and browser JavaScript' (what) and 'Use when inspecting injection sinks, untrusted markup, sanitization, or frontend security checks' (when) with concrete trigger phrases, matching the top anchor.

5 / 5

Trigger Term Quality

Includes natural terms users would actually say — 'XSS', 'React', 'Vue', 'Angular', 'sanitization', 'injection sinks', 'frontend security' — with good coverage. A few natural variants are missing, e.g. 'cross-site scripting' spelled out or 'sanitize user input', keeping it below anchor 5.

4 / 5

Distinctiveness Conflict Risk

Frontend XSS is a clear niche with distinct triggers, but it has minor overlap risk with closely related general web-security or code-review skills, fitting anchor 4 rather than 5.

4 / 5

Total

17

/

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.

Repository

rmyndharis/antigravity-skills

Path

skills/frontend-mobile-security-xss-scan/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.