CtrlK
BlogDocsLog inGet started
Tessl Logo

golang-data-structures

Golang data structures — slices (internals, capacity growth, preallocation, slices package), maps (internals, hash buckets, maps package), arrays, container/list/heap/ring, strings.Builder vs bytes.Buffer, generic collections, pointers (unsafe.Pointer, weak.Pointer), and copy semantics. Use when choosing or optimizing Go data structures, implementing generic containers, using container/ packages, unsafe or weak pointers, or questioning slice/map internals. Not for applying optimization patterns once profiling has identified a bottleneck (→ See `samber/cc-skills-golang@golang-performance` skill).

69

Quality

86%

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

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.

A well-structured, actionable reference skill with excellent progressive disclosure and concrete code for common cases. Its main gap is the absence of an explicit data-structure selection workflow/checklist, which leaves workflow clarity at the midpoint for a catalog-style skill.

Suggestions

Add a short 'Choosing a data structure' decision checklist or flow (size known? fixed vs growing? insertion pattern? key type?) so selection is a guided workflow rather than implied by tables.

Provide one executable snippet each for container/heap, container/list, and container/ring (or a generic wrapper) to lift actionability from mostly-executable to fully copy-paste ready.

Trim the Copy Semantics table to the non-obvious rows (slice/map/channel/pointer/interface) and condense the Cross-References block, since the value-type rows restate what Claude already knows.

DimensionReasoningScore

Conciseness

Mostly lean and value-adding — internals like the capacity-growth formula and the 6 unsafe.Pointer patterns are exactly what Claude would not recall precisely — but the Copy Semantics table re-states basics (int/bool/string are value-copied) Claude already knows, and the six-entry Cross-References block could be trimmed. Not a 5 because a few tokens do not earn their place; not a 3 because padding is minor.

4 / 5

Actionability

Provides copy-paste-ready, executable examples for the common cases — `make([]User, 0, len(ids))`, `slices.Grow(s, additionalNeeded)`, `make(map[string]*User, len(users))`, and a complete generic `Set[T comparable]` with Add/Contains. Not a 5 because the container/ section gives 'Best For' descriptions without an executable heap/list/ring usage example.

4 / 5

Workflow Clarity

This is a reference/selection catalog rather than a multi-step process, so there is no sequenced workflow or validation checkpoint to evaluate; selection guidance exists only implicitly via 'Best For' columns and a Common Mistakes table, with no explicit decision procedure. Not a 2 because material is organized and usable; not a 4 because no explicit selection workflow or checklist is given.

3 / 5

Progressive Disclosure

Clear overview in SKILL.md with five well-signaled, bolded, one-level-deep links to real reference files (slice-internals.md, map-internals.md, containers.md, generics.md, pointers.md — all present in ./references/), with deep-dive content appropriately split out and easy to navigate.

5 / 5

Total

16

/

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: comprehensive, third-person, with explicit 'Use when' triggers and a concrete 'Not for' boundary that disambiguates it from related Go skills. No vague fluff or over-claims.

DimensionReasoningScore

Specificity

Enumerates concrete capabilities comprehensively — 'slices (internals, capacity growth, preallocation, slices package), maps (internals, hash buckets, maps package), arrays, container/list/heap/ring, strings.Builder vs bytes.Buffer, generic collections, pointers (unsafe.Pointer, weak.Pointer), and copy semantics' — and pairs them with concrete actions ('choosing or optimizing', 'implementing generic containers', 'using container/ packages').

5 / 5

Completeness

Explicitly answers both what (the full topical enumeration) and when ('Use when choosing or optimizing Go data structures, implementing generic containers, using container/ packages, unsafe or weak pointers, or questioning slice/map internals') with concrete trigger phrases.

5 / 5

Trigger Term Quality

Natural Go terms a developer would actually say are densely covered — 'Go data structures', 'slices', 'maps', 'arrays', 'container/list/heap/ring', 'strings.Builder', 'bytes.Buffer', 'unsafe.Pointer', 'weak.Pointer' — including package-name synonyms; file extensions are not applicable to this domain.

5 / 5

Distinctiveness Conflict Risk

Clear niche (Go data structure internals/selection) with an explicit boundary clause ('Not for applying optimization patterns once profiling has identified a bottleneck → See golang-performance skill'), minimizing overlap with sibling skills.

5 / 5

Total

20

/

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.

Validation14 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

allowed_tools_field

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

Warning

metadata_field

'metadata' should map string keys to string values

Warning

Total

14

/

16

Passed

Repository
samber/cc-skills-golang
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.