CtrlK
BlogDocsLog inGet started
Tessl Logo

golang-samber-lo

Functional programming helpers for Golang using samber/lo — 500+ type-safe generic functions for slices, maps, channels, strings, math, tuples, and concurrency (Map, Filter, Reduce, GroupBy, Chunk, Flatten, Find, Uniq, etc.). Core immutable package (lo), concurrent variants (lo/parallel aka lop), in-place mutations (lo/mutable aka lom), lazy iterators (lo/it aka loi for Go 1.23+), and experimental SIMD (lo/exp/simd). Apply when using or adopting samber/lo, when the codebase imports github.com/samber/lo, or when implementing functional-style data transformations in Go. Not for streaming pipelines (→ See `samber/cc-skills-golang@golang-samber-ro` skill).

74

Quality

93%

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

86%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 reference skill: actionable code, clear package-selection guidance, and clean progressive disclosure to three supporting files. The only slack is mild motivational verbosity in the 'Why' section.

Suggestions

Tighten the 'Why samber/lo' section: drop the persuasive framing and keep only the concrete stdlib-gap facts and the progressive-complexity rule, since the rest is inferable from the package table.

Fix the MapErr example's return type (http.Get returns (*http.Response, error), not (Response, error)) so the illustrative code is actually compileable.

Add a short explicit profile-then-switch feedback loop (e.g., 'go tool pprof -alloc_objects → if a lo transform dominates → switch to lom and re-measure') to turn the implicit workflow into a checkpointed one.

DimensionReasoningScore

Conciseness

The body is dense and largely assumes Claude's Go competence, with no padding about what slices or generics are; the 'Why samber/lo' rationale section is the main mildly motivational content that could be trimmed, keeping it just below a 5.

4 / 5

Actionability

Provides copy-paste-ready executable Go examples (Map, Filter+Reduce, GroupBy, MapErr), a real install command, alias/Go-version tables, a package-selection decision table, and a Common Mistakes table with concrete fixes covering common cases.

5 / 5

Workflow Clarity

The package-selection flow is clearly sequenced ('Start with lo', escalate to lop/lom/loi only after profiling) with concrete thresholds (1000+ items, pprof -alloc_objects); no destructive/batch validation is required so no cap applies, but there is no explicit feedback-loop workflow to reach a 5.

4 / 5

Progressive Disclosure

SKILL.md is a well-organized overview that pushes the complete function catalog and detailed patterns to three real, one-level-deep reference files (package-guide.md, api-reference.md, advanced-patterns.md), each clearly signaled with markdown links.

5 / 5

Total

18

/

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.

A high-quality description that is specific, complete, and distinctive. It names concrete functions, gives explicit trigger guidance in third person, and includes a clear negative boundary to a sibling skill.

DimensionReasoningScore

Specificity

Lists multiple specific concrete actions (Map, Filter, Reduce, GroupBy, Chunk, Flatten, Find, Uniq) and enumerates five sub-packages with their distinct purposes, giving comprehensive coverage of capabilities.

5 / 5

Completeness

Explicitly answers both 'what' (500+ type-safe generic functions across named domains) and 'when' ('Apply when using or adopting samber/lo, when the codebase imports github.com/samber/lo, or when implementing functional-style data transformations in Go'), plus a negative boundary clause.

5 / 5

Trigger Term Quality

Includes natural terms and synonyms a user would say — 'functional programming helpers for Golang', 'samber/lo', 'github.com/samber/lo', 'functional-style data transformations in Go' — covering both the library name and the import path.

5 / 5

Distinctiveness Conflict Risk

Occupies a clear niche (samber/lo functional utilities in Go) and explicitly distinguishes itself from the streaming-pipelines skill via the 'Not for streaming pipelines' boundary, minimizing wrong-skill triggering.

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.