CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

performing-security-code-review

Execute this skill enables AI assistant to conduct a security-focused code review using the security-agent plugin. it analyzes code for potential vulnerabilities like sql injection, xss, authentication flaws, and insecure dependencies. AI assistant uses this skill wh... Use when assessing security or running audits. Trigger with phrases like 'security scan', 'audit', or 'vulnerability'.

Quality

72%

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 ./plugins/examples/security-agent/skills/performing-security-code-review/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

67%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 SKILL.md body is a lean, well-sequenced, mostly actionable instruction set with good error-handling guidance. Its main weakness is progressive disclosure: valuable bundled resources (the analyzer script, report template, and vulnerable/secure example code) are orphaned from the document, the one reference it does link is an empty stub, and the scripts README advertises files that don't exist.

Suggestions

Link the existing bundle files from the relevant sections: reference `scripts/code_analyzer.py` in Instructions, `assets/report_template.md` in Output, and `assets/example_code_vulnerable.py` / `assets/example_code_secure.py` in Examples.

Fix the bundle's dead ends: populate or remove the empty `references/README.md` stub, and remove the non-existent `dependency_checker.py` and `report_formatter.py` entries (unchecked TODOs) from `scripts/README.md`.

Add ready-to-run grep command examples for the secret and injection pattern scans (e.g. `grep -rE "AKIA[0-9A-Z]{16}" --include="*.js"`) and an explicit validation step in the workflow instructing Claude to verify each finding in code context before including it in the report.

DimensionReasoningScore

Conciseness

The body is efficiently organized into scannable sections with concrete pattern lists (`AKIA...`, `BEGIN PRIVATE KEY`, `eval()`, `exec()`) and no padding or explanation of concepts Claude already knows, matching anchor 4. It falls short of anchor 5 only because of small trimmable items, e.g. the prerequisite "Familiarity with OWASP Top 10 vulnerability categories" and an Overview that restates the frontmatter description.

4 / 5

Actionability

Instructions give concrete, executable guidance: specific search patterns ("AWS access keys (`AKIA...`)", "private key headers (`BEGIN PRIVATE KEY`)"), specific dangerous calls (`eval()`, `exec()`, `Function()`), specific algorithms (bcrypt/argon2 vs MD5/SHA1), and a runnable command (`npm audit`), matching anchor 4's "concrete code or commands with minor gaps". It misses anchor 5 because no ready-to-run grep commands or regexes are provided for the pattern scans.

4 / 5

Workflow Clarity

The seven numbered steps form a clear sequence (scope → secrets → injection → auth → dependencies → communication → report) and the Error Handling table provides feedback loops for recovery (e.g. "Dependency manifest missing → Skip dependency audit; note in report"), matching anchor 4. It does not reach anchor 5 because there is no explicit validation checkpoint inside the workflow itself, such as a step instructing Claude to verify each finding against code context before reporting (that guidance lives only in the error-handling table's false-positive row).

4 / 5

Progressive Disclosure

Scored against the actual bundle: the body's only bundle link is `references/README.md`, which is a near-empty stub, while genuinely useful bundled files — `scripts/code_analyzer.py`, `assets/report_template.md` (a template for exactly the report the Output section describes), and `assets/example_code_vulnerable.py`/`example_code_secure.py` — are never referenced anywhere in the body, leaving them undiscoverable. Additionally `scripts/README.md` lists `dependency_checker.py` and `report_formatter.py` that do not exist in the bundle. This matches anchor 2 ("references are buried" / minimal structure) rather than anchor 3, whose body-level structure is present but whose cross-file navigation is effectively broken.

2 / 5

Total

14

/

20

Passed

Description

66%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 has explicit and reasonably natural trigger guidance plus a discernible capability statement, but it is grammatically broken, truncated mid-sentence ("uses this skill wh..."), and names a mismatched "security-agent plugin". It communicates the domain adequately but reads as a corrupted or auto-truncated draft that would confuse trigger matching.

Suggestions

Rewrite the description in clean third-person voice and fix the truncation, e.g.: "Conducts security-focused code reviews that scan source code for vulnerabilities such as SQL injection, XSS, authentication flaws, secret exposure, and insecure dependencies, producing a severity-rated report. Use when the user asks for a security scan, security review, audit, or vulnerability analysis of code."

Align naming: the description references "the security-agent plugin" while the skill is named "performing-security-code-review" — pick one identity to avoid conflict-risk confusion.

Narrow the generic trigger "audit" to "security audit" or "code audit" and add natural variations like "security review" and "code review" that users would actually say.

DimensionReasoningScore

Specificity

The description names the domain ("security-focused code review") and one-two concrete actions ("analyzes code for potential vulnerabilities like sql injection, xss, authentication flaws, and insecure dependencies"), but all activity collapses into a single "analyze" verb rather than several distinct actions, and coverage is not comprehensive (no mention of secrets scanning, reporting, or dependency CVE auditing that the body actually performs). It sits at the anchor-3 example's level ("Processes PDF files and extracts content") and below anchor 4, which requires several distinct specific actions.

3 / 5

Completeness

Both "what" ("conduct a security-focused code review... analyzes code for potential vulnerabilities") and "when" ("Use when assessing security or running audits. Trigger with phrases like 'security scan', 'audit', or 'vulnerability'") are present, satisfying anchor 4. It does not reach anchor 5 because the "what" is garbled ("Execute this skill enables AI assistant to conduct") and truncated mid-sentence ("AI assistant uses this skill wh..."), degrading clarity of the capability statement.

4 / 5

Trigger Term Quality

Explicit trigger phrases "'security scan', 'audit', or 'vulnerability" and "Use when assessing security or running audits" are natural terms a user would say, matching anchor 4's "good keyword coverage; a few natural terms missing". It falls short of anchor 5 because common variations like "security review", "code review", "pentest", and "CVE" are absent.

4 / 5

Distinctiveness Conflict Risk

The security-review niche is somewhat specific, but the unqualified trigger "audit" overlaps with non-security audit skills, and the description names "the security-agent plugin" which conflicts with the skill's actual name ("performing-security-code-review"), creating identity confusion. This matches anchor 3 ("somewhat specific but could still overlap with similar skills") rather than anchor 4's "minor overlap risk".

3 / 5

Total

14

/

20

Passed

Validation

87%

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

Validation — 14 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

allowed_tools_field

'allowed-tools' contains unusual tool name(s)

Warning

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

Total

14

/

16

Passed

Repository

jeremylongshore/tons-of-skills-marketplace

Path

plugins/examples/security-agent/skills/performing-security-code-review/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.