CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

dependency-triage

Scan package manifests and lockfiles for outdated and vulnerable dependencies. Classify by severity and update type.

Quality

69%

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 ./starters/dependency-sweeper-opencode/skills/dependency-triage/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

72%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 is a lean, well-structured, mostly actionable instruction set for a single-purpose batch skill, with a genuinely useful untrusted-input safety policy appropriate to a skill that consumes issue/PR text. Its main weakness is workflow clarity: the process is unordered and lacks a validation-failure feedback loop, which matters for batch dependency updates.

Suggestions

Present the process as an explicit numbered sequence (scan → classify → write state file → apply auto-fix candidates → validate → approve/escalate) so the order is unambiguous.

Add a feedback loop for validation failure, e.g. 'If `npm ci && npm test` fails, revert the update, re-classify the package as escalate-to-human, and note the failure in the state file.'

Replace the vague 'Lockfile analysis' bullet with a concrete command or approach (e.g. parse `package-lock.json` for in-range updates) and give one example update command per ecosystem.

DimensionReasoningScore

Conciseness

The body is efficient and assumes Claude's competence (terse command lists, no explanations of basic concepts), with only minor trims possible: the opening line "You are a dependency sweeper agent. Scan for outdated and vulnerable packages." restates the description, and the untrusted-input block includes some general prompt-injection background. This fits anchor 4 rather than anchor 5, where every token earns its place with no redundancy at all.

4 / 5

Actionability

Concrete executable commands are given (`npm outdated` / `npm audit`, `cargo outdated` / `cargo audit`, `pip list --outdated`, `npm ci && npm test`), the classification is an explicit decision table, and the output target (`dependency-sweeper-state.md`) is named. It falls short of anchor 5 because "Lockfile analysis" is vague and no commands are given for actually performing updates per ecosystem.

4 / 5

Workflow Clarity

The scan → classify → output sequence is present and one validation checkpoint exists ("Run `npm ci && npm test` (or equivalent) before approving"), but the steps are presented as unordered sections rather than a sequenced workflow, and there is no feedback loop for what to do when validation fails (e.g. revert the update). This matches anchor 3 ('checkpoints missing or implicit') rather than anchor 4's 'clear sequence with most checkpoints present'.

3 / 5

Progressive Disclosure

The skill is under 50 lines, self-contained, and needs no external references, with well-organized, clearly headed sections (Scan Sources, Classification, Output, Rules, Untrusted input). Per the rubric's simple-skill guidance, this earns a 5 with just well-organized sections; no bundle files exist to reference, and the only path mention (`scripts/sync-untrusted-input.mjs`) is a generated-block provenance comment, not navigation.

5 / 5

Total

16

/

20

Passed

Description

53%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 is concise, third-person, and states a clear, concrete capability, but it omits any 'when to use' trigger guidance and misses several natural trigger terms (audit, CVE, upgrade, ecosystem names). These gaps leave it at the midpoint of the rubric.

Suggestions

Add an explicit trigger clause, e.g. 'Use when the user mentions outdated or vulnerable dependencies, npm/cargo/pip audit results, CVEs, or dependency upgrades.'

Include ecosystem and synonym keywords users naturally say: 'npm audit', 'cargo audit', 'CVE', 'security advisory', 'upgrade dependencies'.

Optionally name one more concrete action (e.g. 'apply patch and minor updates automatically') to lift specificity from 1-2 actions toward comprehensive coverage.

DimensionReasoningScore

Specificity

"Scan package manifests and lockfiles for outdated and vulnerable dependencies" and "Classify by severity and update type" name the domain plus two concrete actions, but coverage is not comprehensive (no applying updates, reporting, or named ecosystems). This matches anchor 3; it falls short of anchor 4, which expects several specific actions with only minor gaps.

3 / 5

Completeness

The description clearly answers 'what' (scan manifests/lockfiles, classify by severity and update type) but contains no 'Use when...' clause or equivalent explicit trigger guidance, which caps completeness at 3 per the judging guidelines. It is not a 2 because the 'what' is concrete and specific.

3 / 5

Trigger Term Quality

Terms like "outdated", "vulnerable", "dependencies", and "lockfiles" are natural keywords users would say, but common variations and synonyms are missing ("upgrade", "audit", "CVE", "security advisory", npm/cargo/pip). This fits anchor 3 rather than anchor 4's 'good keyword coverage; a few natural terms missing', since multiple common phrasings are absent.

3 / 5

Distinctiveness Conflict Risk

The dependency-scanning niche ("package manifests and lockfiles", "outdated and vulnerable dependencies") is mostly distinct from other skills with only minor overlap risk against generic package-update helpers. It is below anchor 5, whose examples pair the niche with explicit distinct trigger phrases that this description lacks.

4 / 5

Total

13

/

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

frontmatter_unknown_keys

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

Warning

referenced_paths_exist

Referenced path issues: 1 missing

Warning

Total

14

/

16

Passed

Repository

cobusgreyling/loop-engineering

Path

starters/dependency-sweeper-opencode/skills/dependency-triage/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.