CtrlK
BlogDocsLog inGet started
Tessl Logo

golang-concurrency

Golang concurrency patterns. Use when writing or reviewing concurrent Go code involving goroutines, channels, select, locks, sync primitives, errgroup, singleflight, worker pools, or fan-out/fan-in pipelines. Also triggers when you detect goroutine leaks, race conditions, channel ownership issues, or need to choose between channels and mutexes.

86

1.18x
Quality

81%

Does it follow best practices?

Impact

98%

1.18x

Average score across 3 eval scenarios

SecuritybySnyk

Passed

No known issues

SKILL.md
Quality
Evals
Security

Evaluation results

94%

1%

Concurrent Job Queue with Test Coverage

Goroutine leak detection in tests

Criteria
Without context
With context

goleak import

100%

100%

goleak in TestMain

100%

100%

TestMain signature

100%

100%

Race flag usage

100%

100%

Context-based goroutine exit

100%

100%

WaitGroup Add before go

100%

100%

Channel direction in functions

50%

50%

Sender closes channel

62%

75%

ctx.Done in select

100%

100%

No time.After in loops

100%

100%

100%

24%

Service Metrics Collector

Typed atomics and mutex embedding

Criteria
Without context
With context

Typed atomic counter

0%

100%

Typed atomic flag

0%

100%

Mutex above protected fields

100%

100%

Mutex is unexported

100%

100%

RWMutex for read-heavy fields

100%

100%

No mutex across I/O

100%

100%

Atomic over mutex for simple values

100%

100%

sync.Map only for read-heavy

100%

100%

No RLock-to-Lock upgrade

100%

100%

Context-based goroutine lifecycle

100%

100%

100%

18%

Distributed Report Generator

sync.Once modern helpers and wg.Go

Criteria
Without context
With context

OnceValue or OnceFunc usage

0%

100%

wg.Go() for goroutines

100%

100%

errgroup.SetLimit for bounded fan-out

100%

100%

errgroup.WithContext cancellation

100%

100%

No unbounded goroutine spawning

100%

100%

ctx.Done in select

100%

100%

Channel direction specified

100%

100%

Sender closes channel

100%

100%

No hand-rolled worker pool

100%

100%

Repository
samber/cc-skills-golang
Evaluated
Agent
Claude Code
Model
Claude Sonnet 4.6

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.