CtrlK
BlogDocsLog inGet started
Tessl Logo

building-devsecops-pipeline-with-gitlab-ci

Configure a GitLab CI/CD pipeline that embeds SAST (Semgrep, SpotBugs, Gosec, Bandit, NodeJsScan), DAST, container scanning, dependency scanning, and secret detection via GitLab's managed security templates. Use when building a shift-left DevSecOps pipeline in GitLab, adding automated vulnerability scanning stages to .gitlab-ci.yml, or triaging scanner findings with GitLab Duo AI before deployment.

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

Low

Low-risk findings worth noting

SKILL.md
Quality
Evals
Security

Quality

Content

65%Weight 40%Scale 1-3

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

The content is highly actionable with complete pipeline config, but loses points for explaining scanner concepts Claude already knows, lacking explicit error-recovery feedback loops, and failing to point to the provided bundle files. Tightening the prose and linking the existing references would lift the weaker dimensions.

Suggestions

Trim concept explanations (what SAST/DAST/Trivy are, the GitLab platform overview) to one-line definitions or remove them; Claude already knows these and they cost context.

Add explicit feedback loops: e.g. 'If a scanner reports Critical/High, do not proceed to deploy-staging; fix or dismiss-with-justification, then re-run the security stage.'

Link the bundle from the body — e.g. under References add 'Scanner template matrix: see references/api-reference.md', 'Compliance mappings: see references/standards.md', 'Implementation checklist: see assets/template.md' — so the one-level-deep material is actually reachable.

DimensionReasoningScore

Conciseness

The bulk is actionable config, but several sections explain concepts Claude already knows — e.g. 'SAST analyzes source code for vulnerabilities before compilation' and 'DAST tests running applications by simulating attack payloads... detects XSS, SQLi, CSRF' — so it is mostly efficient with some unnecessary explanation rather than fully lean.

2 / 3

Actionability

Provides a complete, executable .gitlab-ci.yml, a concrete .gitlab/sast-ruleset.toml, numbered policy-configuration steps, and a metrics table — copy-paste ready with specific variables and thresholds.

3 / 3

Workflow Clarity

The build→test→security→deploy-staging→dast→deploy-production sequence is clear with some gates (severity thresholds, manual production deploy, rollout status), but there are no explicit validate→fix→retry feedback loops for when scans fail or rollouts break, which the rubric expects for risky deploy/batch operations.

2 / 3

Progressive Disclosure

The body has clear section organization, but it is ~230 lines with the full pipeline and reference material inline while bundle files (references/api-reference.md, standards.md, workflows.md, assets/template.md, scripts/*.py) exist but are never linked or signaled from SKILL.md — content that should be split out is inline and the bundle is disconnected.

2 / 3

Total

9

/

12

Passed

Description

100%Weight 40%Scale 1-3

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 concrete, third-person, and well-triggered, explicitly answering both what the skill does and when to invoke it with domain-specific keywords. It is among the strong examples and needs no changes.

DimensionReasoningScore

Specificity

Lists multiple concrete actions (embed SAST, DAST, container scanning, dependency scanning, secret detection) and even names specific analyzers (Semgrep, SpotBugs, Gosec, Bandit, NodeJsScan), matching the 'multiple specific concrete actions' anchor.

3 / 3

Completeness

Explicitly states what it does (configure a pipeline embedding scanners via managed templates) and includes an explicit 'Use when...' clause with three trigger scenarios, satisfying both what and when.

3 / 3

Trigger Term Quality

Covers natural terms a user would say — 'GitLab CI/CD pipeline', 'DevSecOps pipeline', '.gitlab-ci.yml', 'vulnerability scanning stages', 'triaging scanner findings', 'GitLab Duo AI' — giving good coverage of likely phrasings.

3 / 3

Distinctiveness Conflict Risk

A clear GitLab-specific DevSecOps niche with distinct triggers (.gitlab-ci.yml, GitLab Duo); unlikely to fire for unrelated skills.

3 / 3

Total

12

/

12

Passed

Validation

93%

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

Validation15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

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

Warning

Total

15

/

16

Passed

Repository
mukul975/Anthropic-Cybersecurity-Skills
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.