Skip to main content

context-labs/whip

SkillsMP has collected 48 skills from context-labs/whip. Open a skill to review its source and details.

Latest recorded source activity
SkillsMP catalog refreshed
skills collected
48
GitHub stars
222
GitHub forks
24

Showing 40 of 48 collected skills.

occupation
Software Developers
description

Playbook for building a NET-NEW feature in whip. Use when the user wants to add a feature, tool, slash command, integration, or UX behavior ('build…', 'add…', 'implement…'), even without the word 'feature'. Mines docs/roadmap.md + docs/learnings/. NOT for…

updated
occupation
Software Developers
description

The lazy senior dev: write the least code that works — the ponytail ladder (does it need to exist? already here? stdlib? native? existing dep? one line?), root cause over symptom, deletion over addition, `ponytail:` comments for shortcuts. whip's default…

updated
occupation
Software Developers
description

Golang benchmarking, profiling, and performance measurement. Use when writing or comparing Go benchmarks, profiling with pprof, interpreting CPU/memory/trace profiles, benchstat analysis, CI benchmark regression detection, or production performance issues.…

updated
occupation
Software Developers
description

Golang CLI development — command structure, flags, config layering, exit codes, I/O, signals, shell completion, validation, testing. Use when building or reviewing a Go CLI or code using cobra, viper, urfave/cli. Cobra → `golang-spf13-cobra`; viper →…

updated
occupation
Software Developers
description

Golang code style — line length and breaking, variable declarations, control flow clarity, when comments help vs hurt. Use when writing or reviewing Go code or setting coding standards. Not for naming (→ `golang-naming`), lint (→ `golang-lint`), docs (→…

updated
occupation
Software Developers
description

Golang concurrency patterns. Use when writing or reviewing concurrent Go code — goroutines, channels, select, locks, sync primitives, errgroup, singleflight, worker pools, fan-out/fan-in — or for goroutine leaks, race conditions, channel ownership, or…

updated
occupation
Software Developers
description

Idiomatic context.Context usage in Golang — cancellation, timeouts/deadlines, request-scoped values, WithoutCancel for background work. Use when designing context propagation across layers, debugging leaked contexts, or choosing Background/TODO/WithoutCancel.…

updated
occupation
Network & Computer Systems Administrators
description

CI/CD with GitHub Actions for Golang — testing, linting, SAST, security scanning, coverage, Dependabot, Renovate, GoReleaser, release pipelines. Use when setting up Go project CI, GitHub Actions workflows, linters/scanners, dependency update automation, or…

updated
occupation
Software Developers
description

Golang data structures — slices/maps internals (capacity growth, preallocation, hash buckets), slices/maps packages, container/list/heap/ring, strings.Builder vs bytes.Buffer, generic collections, unsafe/weak pointers. Use when choosing or optimizing Go data…

updated
occupation
Software Developers
description

Go database access — parameterized queries, struct scanning, NULLable columns, transactions, isolation levels, SELECT FOR UPDATE, connection pool, migrations. Use for PostgreSQL, MariaDB, MySQL, SQLite; database testing; or database/sql, sqlx, pgx. Does NOT…

updated
occupation
Software Developers
description

Dependency injection (DI) in Golang — why DI matters, manual constructor injection, library comparison. Use when designing service architecture or wiring dependencies. For google/wire, dig, fx, samber/do → `golang-google-wire`, `golang-uber-dig`,…

updated
occupation
Software Developers
description

Golang dependency management — go.mod, installing/upgrading packages, Minimal Version Selection, vulnerability scanning, binary size, Dependabot/Renovate, conflict resolution, go.work. Use when adding, removing, upgrading dependencies, auditing…

updated
occupation
Software Developers
description

Idiomatic Golang design patterns — functional options, constructors, error flow, resource lifecycle, graceful shutdown, resilience, architecture, dependency injection, streaming. Apply when choosing architectural patterns, implementing functional options, or…

updated
occupation
Software Developers
description

Documentation for Golang projects — godoc comments, README, CONTRIBUTING, CHANGELOG, Go Playground, Example tests, API docs, llms.txt. Use when writing or reviewing doc comments or documentation, adding code examples, setting up doc sites, or documentation…

updated
occupation
Software Developers
description

Idiomatic Golang error handling — %w wrapping, errors.Is/As, errors.Join, custom and sentinel errors, panic/recover, single handling rule, slog logging, samber/oops. Apply when creating, wrapping, inspecting, or logging errors. oops → `golang-samber-oops`;…

updated
occupation
Software Developers
description

Compile-time dependency injection in Golang using google/wire — wire.NewSet, wire.Build, wire.Bind, wire.Struct, wire.FieldsOf, cleanup, wireinject, wire_gen.go. Apply when using google/wire, when code imports `github.com/google/wire`, or wiring at compile…

updated
occupation
Software Developers
description

Golang semantic code intelligence via `gopls` — go-to-definition, references, call hierarchy, symbols, diagnostics, rename, refactors. Use when navigating or refactoring Go code. Not for published ecosystem → `golang-pkg-go-dev`; vuln audits →…

updated
occupation
Software Developers
description

GraphQL APIs in Go using gqlgen or graphql-go. Apply when building GraphQL servers, designing schemas, writing resolvers, handling subscriptions, or integrating GraphQL with Go HTTP services. Also when the codebase imports `github.com/99designs/gqlgen` or…

updated
occupation
Software Developers
description

gRPC usage, protobuf organization, and production patterns for Go microservices. Use when implementing, reviewing, or debugging gRPC servers/clients, writing proto files, setting up interceptors, handling gRPC errors with status codes, configuring TLS/mTLS,…

updated
occupation
Software Developers
description

Golang skills orchestrator — always active on any Go coding, review, debug, or setup task. Loads the most relevant samber/cc-skills-golang skills, disambiguating overlapping clusters. Configures agent-config files (CLAUDE.md, AGENTS.md, GEMINI.md, Cursor,…

updated
occupation
Software Quality Assurance Analysts & Testers
description

Linting best practices and golangci-lint configuration for Go — running linters, configuring .golangci.yml, nolint suppressions, selecting linters. Use when setting up golangci-lint or code quality tooling, handling lint warnings or nolint, or when go vet,…

updated
occupation
Software Developers
description

Modernize Go code to recent language features, standard library improvements, and idiomatic patterns. Trigger proactively when writing or reviewing Go code with old-style patterns or a deprecation warning, or when the user asks for modernization, a Go version…

updated
occupation
Software Developers
description

Go naming conventions — packages, constructors, structs, interfaces, enums, errors, receivers, getters/setters, acronyms, tests. Use when writing/reviewing Go code or picking between naming alternatives (New vs NewTypeName, ErrNotFound vs NotFoundError). Not…

updated
occupation
Software Developers
description

Go observability — always-on production signals: slog logging, Prometheus metrics, OpenTelemetry tracing, pprof profiling, alerting, Grafana. Apply when instrumenting Go services or migrating zap/logrus/zerolog to slog. Not for performance deep-dives (→…

updated
occupation
Software Developers
description

Go performance optimization — if X bottleneck, apply Y: allocation reduction, CPU/memory efficiency, GC tuning, pooling, caching, hot paths. Use when a profiled/benchmarked bottleneck needs the fix pattern. Not for measurement (→ golang-benchmark) or…

updated
occupation
Software Developers
description

Golang package/module docs via `godig`, a pkg.go.dev API client (CLI + MCP) — APIs, symbols, versions, importers, licenses, vulnerabilities. Use to look up Go library docs, signatures, or CVEs — prefer over Context7. Not for deps, library choice, local…

updated
occupation
Computer Systems Analysts
description

Golang project layouts and workspaces. Use when starting a new Go project, organizing an existing codebase, setting up a monorepo, creating CLI tools with multiple main packages, deciding between cmd/internal/pkg conventions, or discussing package…

updated
occupation
Software Developers
description

Golang refactoring — safe restructuring at scale: safety-net tests, tool-driven transforms (gopls Rename/Inline/Extract, `gofmt -r`), import cycles, stacked PRs. Apply for code smells, renames, extracting functions/interfaces, splitting packages. Styles →…

updated
occupation
Software Developers
description

Defensive Go coding to prevent panics, silent data corruption, and subtle runtime bugs. Use for nil panics, append aliasing, concurrent map access, float comparison pitfalls, zero-value design; or when reviewing for nil-safety, numeric overflow, defer in…

updated
occupation
Software Developers
description

Dependency injection in Go using samber/do — service containers, lifecycle, scopes, health checks, graceful shutdown, module organization. Apply when using or adopting samber/do, when the codebase imports github.com/samber/do(/v2), or when refactoring…

updated
occupation
Software Developers
description

In-memory caching in Go using samber/hot — eviction (LRU, LFU, TinyLFU, S3FIFO, ARC, SIEVE), TTL, loaders, sharding, stale-while-revalidate, missing-key caching, metrics. Apply when using samber/hot, on github.com/samber/hot imports, or to cut latency on hot…

updated
occupation
Software Developers
description

Functional helpers for Go using samber/lo — 500+ type-safe generics for slices, maps, strings, concurrency (Map, Filter, Reduce); concurrent (lo/parallel), in-place (lo/mutable), lazy iterators (lo/it). Apply when using/importing github.com/samber/lo. Not for…

updated
occupation
Software Developers
description

Monadic types in Golang via samber/mo — Option, Result, Either, Future, IO, Task, State for type-safe nullable values, error handling, functional composition. Apply when using/adopting samber/mo, when the codebase imports github.com/samber/mo, or for…

updated
occupation
Software Developers
description

Structured error handling in Golang with samber/oops — error builders, stack traces, codes, context, wrapping, attributes, user-facing vs developer messages, panic recovery, logger integration. Apply when using/adopting samber/oops or the codebase imports…

updated
occupation
Software Developers
description

Reactive streams in Golang using samber/ro — ReactiveX with 150+ operators, cold/hot observables, subjects, Pipe pipelines, backpressure. Apply when using/adopting samber/ro, when the codebase imports it, or building async event pipelines. Not for finite…

updated
occupation
Software Developers
description

Structured logging extensions for Golang using samber/slog-* — multi-handler pipelines, sampling, attribute formatting, HTTP middleware (gin, echo, fiber, chi), backend routing (datadog, sentry, loki, syslog). Apply when using slog or on…

updated
occupation
Computer Systems Analysts
description

Security best practices for Golang — injection (SQL, command, XSS), cryptography, filesystem safety, network security, cookies, secrets, memory safety, logging. Apply when writing, reviewing, or auditing Go code for security, or on risky code involving…

updated
occupation
Software Developers
description

CLI command tree library for Golang using spf13/cobra — cobra.Command, RunE vs Run, PreRun hooks, Args validators, persistent vs local flags, shell completion, testing via SetArgs. Apply when using/adopting cobra or the codebase imports…

updated
occupation
Software Developers
description

Golang configuration library using spf13/viper — layered precedence (flag > env > file > KV > default), AutomaticEnv, ReadInConfig, Unmarshal + mapstructure, WatchConfig hot reload. Apply when using/adopting viper or the codebase imports…

updated
occupation
Software Quality Assurance Analysts & Testers
description

Golang testing with stretchr/testify — assert, require, mock, suite: assertions, mock expectations, argument matchers, suite lifecycle, Eventually, JSONEq. Use when writing testify tests, creating mocks, choosing assert vs require, or when the codebase…

updated
Showing 40 of 48 collected skills.