What problem does it solve? Choosing the wrong Go data structure causes hidden allocation, reallocation, and copying costs that only surface under load. This Skill helps you select slices, maps, arrays, container packages, and pointer types based on their internals rather than familiarity. ## Core Features & Use Cases - Internals-Based Selection: Explains slice header layout, map bucket growth, and array value semantics so you pick the right structure for each access pattern. - Preallocation & Growth Discipline: Enforces make([]T, 0, n), make(map[K]V, n), and slices.Grow to eliminate repeated growth copies and rehashing. - Container & Pointer Guidance: Covers container/list, container/heap, container/ring, bufio, strings.Builder vs bytes.Buffer, generic constraints, unsafe.Pointer spec patterns, and weak.Pointer[T] for GC-safe caches. - Use Case: When auditing a hot loop that appends to a slice without preallocation or stores large structs as map values, use this Skill to identify the copy overhead and apply the correct fix. ## Quick Start Ask the AI to review your Go code for data structure choices and recommend preallocation, container, or pointer improvements based on memory internals.