CtrlK
BlogDocsLog inGet started
Tessl Logo

configure-container-scan

Add container image scanning steps to existing Harness pipelines using Harness STO scanners. Supports Harness SCA (default), Aqua Trivy, Grype, Snyk, Prisma Cloud, Anchore, Black Duck, and Wiz. Supports Docker Hub, ECR, GCR, and other Third-Party registries as well as Harness and Local registries. Can insert the scan step into an existing CI stage or create a dedicated SecurityTests stage. Use when asked to add container scanning, configure image scanning, set up SCA for Docker images, scan container images for vulnerabilities, or add container security checks to a pipeline. Trigger phrases: add container scan, scan docker image, configure image scanning, set up SCA, add vulnerability scan for container, scan container before deploy, add Trivy scan, add Grype scan, add Snyk container scan.

68

Quality

82%

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

SKILL.md
Quality
Evals
Security

Quality

Content

65%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 highly actionable with concrete MCP calls and copy-paste YAML across the scanner/registry matrix, but it is verbose from duplicated YAML and a redundant Performance Notes section, lacks a pre-update validation checkpoint before the mutating harness_update call, and keeps all reference-style material inline in a single large file.

Suggestions

Add a validation checkpoint before Step 7: e.g. lint/validate the assembled pipeline YAML (correct 2-space indentation, identifier pattern ^[a-zA-Z_][0-9a-zA-Z_]{0,127}$, valid SecurityTests infrastructure block) and only call harness_update once validation passes — turning the post-hoc Troubleshooting checks into a pre-update feedback loop.

Remove duplicated content to tighten token budget: the HarnessSCA step YAML in Step 6 Scenario A is identical to Step 5 (reference it instead), and the Performance Notes section largely restates guidance already in the steps — keep only the non-obvious points there.

Move bulk reference material into one-level-deep reference files (e.g. references/scanner-yaml.md for the per-scanner step templates and references/registry-fields.md for the registry field tables) and link from SKILL.md, so the main file stays an overview.

DimensionReasoningScore

Conciseness

Mostly concrete with little concept-overview fluff, but padded by repetition: the full HarnessSCA step YAML is duplicated verbatim in Step 5 and Step 6 Scenario A, and the 'Performance Notes' section restates guidance already given in the steps (ask the user which scanner, set privileged: true, ask for delegate only on new stages, default mode/config, resource limits).

3 / 5

Actionability

Provides executable MCP tool calls with named parameters, copy-paste YAML templates for each scanner category and registry type, field-by-field tables, and exact secret-reference formats like <+secrets.getValue("project.snyk_api_token")> covering the common cases.

5 / 5

Workflow Clarity

The eight steps are clearly sequenced with interactive checkpoints (ask user for stage, scanner, image details), but the pipeline update in Step 7 is a mutating operation with no pre-update validation/dry-run checkpoint — the destructive-operation cap applies, and validation guidance only appears after the fact in Troubleshooting.

3 / 5

Progressive Disclosure

The file is well-sectioned with headers but entirely monolithic (~280 lines, no bundle files): bulk reference material such as the per-scanner YAML templates and registry field tables is inlined rather than split into one-level-deep reference files, and the simple-skill exception does not apply given the length.

3 / 5

Total

14

/

20

Passed

Description

100%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 third-person, comprehensive, and well-structured: it states concrete capabilities, the supported scanner and registry matrix, and explicit 'Use when' guidance with natural trigger phrases. Both the what and the when are clearly answered with minimal conflict risk.

DimensionReasoningScore

Specificity

Lists multiple concrete actions (add scanning steps to existing pipelines, insert into a CI stage or create a SecurityTests stage) and enumerates specific scanners (Harness SCA, Aqua Trivy, Grype, Snyk, Prisma Cloud, Anchore, Black Duck, Wiz) and registries (Docker Hub, ECR, GCR, Third-Party, Harness, Local) for comprehensive coverage.

5 / 5

Completeness

Clearly answers both what ('Add container image scanning steps to existing Harness pipelines using Harness STO scanners') and when ('Use when asked to add container scanning, configure image scanning, set up SCA for Docker images...') with concrete trigger phrases.

5 / 5

Trigger Term Quality

Explicit 'Trigger phrases' cover natural user wording and synonyms ('add container scan', 'scan docker image', 'configure image scanning', 'set up SCA', 'add Trivy scan', 'add Snyk container scan'), matching what a user would actually say.

5 / 5

Distinctiveness Conflict Risk

Occupies a clear niche — Harness-pipeline container image scanning with named STO scanners — with distinct, specific triggers, making overlap with unrelated skills minimal.

5 / 5

Total

20

/

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
harness/harness-ai
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.