CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

golang-security

Security best practices and vulnerability prevention for Golang — injection (SQL, command, XSS), cryptography, path traversal, SSRF and HTTP security headers, cookies, secrets management, memory safety, PII in logs, STRIDE/DREAD threat modeling, plus `gosec` SAST, race detection, and fuzz testing. Apply when writing, reviewing, or auditing Go code for security, or when touching crypto, file or network I/O, secrets, user input, or authentication. Not for non-exploitable defensive bugs such as nil panics or slice aliasing (→ See `samber/cc-skills-golang@golang-safety` skill), dependency vulnerability scanning with govulncheck (→ See `samber/cc-skills-golang@golang-dependency-management` skill), or wiring security scanners into CI pipelines (→ See `samber/cc-skills-golang@golang-continuous-integration` skill).

90

1.13x
Quality

90%

Does it follow best practices?

Impact

91%

1.13x

Average score across 3 eval scenarios

SecuritybySnyk

Passed

No findings from the security scan

SKILL.md
Quality
Evals
Security

Quality

Content

78%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.

A well-structured security skill: dense severity-ranked reference tables, executable tooling commands, a clear three-mode operating model, and an excellent one-level-deep reference bundle that keeps the SKILL.md body lean. The main improvements are trimming concept explanations Claude already knows and adding an explicit post-fix verification loop.

Suggestions

Trim or move to references the background explanation Claude already knows (the defense-in-depth Overview paragraph and the STRIDE acronym expansion), keeping the body to skill-specific guidance.

Add an explicit verification loop to Coding mode, e.g. 'after fixing a finding, re-run gosec/govulncheck/go test -race on the changed package to confirm remediation before reporting it resolved'.

Inline 2-3 short copy-paste fix snippets for the Critical categories (parameterized query, exec.Command with separate args, AES-GCM) so the most common cases are actionable without opening reference files.

DimensionReasoningScore

Conciseness

The body is mostly tight, high-signal tables (Quick Reference, Common Mistakes, Anti-Patterns) with details correctly delegated to 12 reference files, but includes a few explanations Claude already knows — 'Security in Go follows the principle of defense in depth… vigilance is still required' and the STRIDE acronym expansion — that could be trimmed. Not a 3 because padding is minor; not a 5 because the Overview paragraph, persona/thinking/orchestration preamble, and known-concept expansions spend tokens without adding skill-specific value.

4 / 5

Actionability

Concrete, executable guidance is present throughout — 'go tool gosec ./...', 'go tool govulncheck ./...', 'go test -race ./...', 'go test -fuzz=Fuzz', and named stdlib solutions like 'crypto/subtle.ConstantTimeCompare', 'os.Root', 'filepath.IsLocal + filepath.Rel' — plus a documented decision-comment convention. Not a 5 because the vulnerability-fix guidance in the body is mostly one-line table entries; the copy-paste-ready fix examples live only in the reference files.

4 / 5

Workflow Clarity

Modes (Review/Audit/Coding) are clearly defined, 'Research Before Reporting' is a numbered 4-step sequence acting as a validation gate on findings, and audit-mode fan-out with per-fix worktree isolation and DREAD scoring is well specified. Not a 5 because there is no explicit re-verify step after a fix (e.g., re-run gosec/-race to confirm remediation) in Coding mode; not a 3 because checkpoints (trace data flow, check upstream validation, severity-adjust-not-dismiss) are explicit rather than missing.

4 / 5

Progressive Disclosure

The body is a genuine overview hub — every one of the 12 referenced files (cryptography.md, injection.md, filesystem.md, network.md, cookies.md, third-party.md, memory-safety.md, secrets.md, logging.md, threat-modeling.md, architecture.md, checklist.md) exists in ./references/, is linked with a one-line description, and is exactly one level deep with no nested-reference chains. Navigation is easy and content is appropriately split.

5 / 5

Total

17

/

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.

An exemplary description: concrete capability enumeration, an explicit 'Apply when…' trigger clause, natural keyword coverage with synonyms, and explicit not-for boundaries that steer away sibling skills. Its length is functional rather than padded.

DimensionReasoningScore

Specificity

The description lists many specific concrete capabilities and tools — 'injection (SQL, command, XSS)', 'path traversal, SSRF and HTTP security headers, cookies, secrets management, memory safety, PII in logs, STRIDE/DREAD threat modeling, plus gosec SAST, race detection, and fuzz testing' — with comprehensive coverage of the Go security domain and no vague filler.

5 / 5

Completeness

It explicitly answers 'what' ('Security best practices and vulnerability prevention for Golang — injection … plus gosec SAST, race detection, and fuzz testing') and 'when' ('Apply when writing, reviewing, or auditing Go code for security, or when touching crypto, file or network I/O, secrets, user input, or authentication'), with concrete trigger phrases and an explicit negative boundary.

5 / 5

Trigger Term Quality

It covers the natural terms a user would actually say — 'security', 'SQL injection', 'XSS', 'crypto', 'secrets', 'path traversal', 'SSRF', 'audit' — plus synonyms ('Golang' and 'Go code') and tool names (gosec, govulncheck), matching the comprehensive-with-synonyms anchor.

5 / 5

Distinctiveness Conflict Risk

The niche is unambiguous (Go security), and it actively disambiguates from overlapping skills — 'Not for non-exploitable defensive bugs … (→ See samber/cc-skills-golang@golang-safety skill), dependency vulnerability scanning with govulncheck …, or wiring security scanners into CI pipelines' — minimizing wrong-skill triggering.

5 / 5

Total

20

/

20

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.

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

metadata_field

'metadata' should map string keys to string values

Warning

Total

15

/

16

Passed

Repository

samber/cc-skills-golang

Path

skills/golang-security/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.