reagin
User🧠 A portable home for reusable AI agent skills shared across Codex and Claude Code—single-source, validation-first, and seamlessly managed with CC Switch. ⚡
Categories
Indexed Skills (53)
golang-benchmark
Design, run, and interpret Go benchmarks, profiles, traces, and compiler diagnostics. Use when measuring a performance question, comparing implementations, or investigating a specific runtime cost.
golang-cli
Design or review the framework-independent behavior and architecture of Go command-line applications: command UX, flags, configuration, output and exit contracts, version/build metadata, cancellation, completion, distribution, and testability. Use for cross-cutting CLI behavior and combine with a framework skill when Cobra or Viper APIs are central.
golang-code-style
Write or review readable, idiomatic Go code with attention to control flow, declarations, comments, file organization, and API clarity. Use for focused style work or project coding conventions; use dedicated naming, lint, documentation, or architecture guidance when those are the main task.
golang-concurrency
Design or review concurrent Go code involving goroutines, channels, locks, atomics, worker pools, or race and leak symptoms. Use when ownership, synchronization, cancellation, backpressure, or shutdown is central; not for ordinary sequential code that merely accepts a context.
golang-context
Design or repair context propagation, cancellation, deadlines, and request-scoped values in Go APIs. Use when work crosses request, goroutine, network, or storage boundaries; not for routine formatting or code that already accepts and correctly forwards a context.
golang-continuous-integration
Create or improve GitHub Actions for a Go repository: tests, linting, vulnerability review, caching, matrices, and release gates. Use when Go CI is requested. Publishing, auto-merge, secrets, OIDC, and write permissions require explicit scope and a separate risk review.
golang-data-structures
Choose or review Go collections and memory representations when access patterns, ownership, copying, allocation, or generic APIs matter. Use for slices, maps, arrays, standard containers, pointers, and custom generic structures; not for synchronization design or speculative micro-optimization.
golang-database
Implement or review Go relational-database code using database/sql, pgx, sqlx, or an existing data layer. Use for query safety, scanning and nullability, transactions, pools, migrations, performance, and database tests while preserving the project's selected datastore and library.
golang-dependency-injection
Design, simplify, or review Go dependency wiring: constructors, composition roots, interface boundaries, lifecycle ownership, test substitution, and DI tool tradeoffs. Use for manual injection, container evaluation, or an existing generated/runtime dependency graph.
golang-design-patterns
Select or review idiomatic Go patterns for constructors, configuration, lifecycle, resilience, streaming, data flow, and package boundaries. Use when an implementation needs an explicit design trade-off rather than a routine local edit.
golang-documentation
Write, update, or review Go documentation: doc comments, package docs, runnable examples, READMEs, contribution guides, API references, and change notes. Use when documentation is a deliverable or public behavior needs an audience-focused explanation.
golang-error-handling
Design or review Go error creation, wrapping, inspection, aggregation, logging boundaries, transport mapping, and panic recovery. Use when callers must classify failures or errors cross package, process, or user-facing boundaries.
golang-google-wire
Maintain or migrate compile-time dependency wiring when a Go project uses `github.com/google/wire` or contains Wire injectors. Covers provider sets, interface bindings, generated injectors, cleanup chains, graph checks, and migration to manual wiring; use a general DI skill for framework selection.
golang-gopls
Use gopls through an available host LSP integration, MCP surface, or CLI for semantic Go navigation, references, implementations, call hierarchy, diagnostics, formatting, imports, and safe refactoring. Use when text search cannot reliably answer a workspace symbol question or when gopls itself needs troubleshooting.
golang-graphql
Build, review, or debug Go GraphQL APIs using `github.com/99designs/gqlgen` or `github.com/graph-gophers/graphql-go`. Use for schemas, resolvers, DataLoaders, authorization, errors, subscriptions, transport integration, and tests.
golang-grpc
Build, review, or debug Go gRPC services and clients using `google.golang.org/grpc`. Use for protobuf evolution, interceptors, status errors, metadata, streaming, credentials, deadlines, graceful shutdown, and transport-level tests.
golang-how-to
Route a Go engineering task across the available Go skills, explain overlaps, or design reusable project guidance. Use when the user asks which skills to apply, how to sequence a multi-concern workflow, or how to configure durable Go-specific agent instructions.
golang-lint
Configure, run, or interpret Go formatting and static-analysis checks, especially golangci-lint, go vet, staticcheck, revive, and nolint directives. Use for lint diagnostics, policy, suppression review, migration, or incremental adoption.
golang-modernize
Modernize Go code for a chosen compatibility target using supported language, standard-library, module, test, and tooling features. Use for Go version upgrades, deprecation cleanup, old-idiom replacement, or a scoped modernization review.
golang-naming
Choose or review names for Go packages, identifiers, APIs, types, errors, files, tests, and serialized contracts. Use for naming decisions, naming-focused review, or a rename whose callers and compatibility need analysis.
golang-observability
Design, implement, or review Go observability: structured logs, metrics, traces, profiles, dashboards, and alerts tied to operational questions. Use for service instrumentation, telemetry correlation, production diagnosis, or migration within an existing observability stack.
golang-performance
Optimize Go code after profiles, benchmarks, traces, or production metrics identify a bottleneck. Use to select and verify CPU, allocation, memory, I/O, caching, concurrency, or runtime improvements against a defined performance target.
golang-pkg-go-dev
Explore published Go packages and modules with the godig CLI or MCP service when available, backed by live pkg.go.dev and Go module sources. Use for API docs, symbols, examples, versions, licenses, dependencies, importers, or vulnerability records; use gopls instead for symbols and call sites in the locally resolved workspace.
golang-popular-libraries
Compare Go libraries for a concrete requirement using current API, module, maintenance, license, security, compatibility, and operational evidence. Use when choosing a new dependency, comparing alternatives, or evaluating a replacement.
golang-project-layout
Design, scaffold, or restructure a Go repository around modules, build targets, package ownership, visibility, tests, generated code, and deployment boundaries. Use for new project layout, monorepos, package splits, module splits, or import-path migrations.
golang-refactoring
Plan, execute, or review behavior-preserving structural changes in Go, including renames, extraction, package moves, import-cycle repair, API evolution, and staged cleanup. Use when existing code structure blocks a change or is itself the requested outcome.
golang-safety
Review or improve Go code for panic prevention, nil and interface traps, slice/map aliasing, numeric conversion, resource lifetime, zero-value invariants, and accidental shared mutation. Use for defensive correctness and subtle runtime failure analysis.
golang-samber-do
Maintain or extend Go dependency graphs built with `github.com/samber/do` or `github.com/samber/do/v2`, including providers, scopes, overrides, health checks, and shutdown. Use when implementing, migrating, testing, or diagnosing samber/do wiring and lifecycle behavior.
golang-samber-hot
Build, tune, or test typed in-process caches with `github.com/samber/hot`, including eviction, TTL, loaders, negative caching, revalidation, sharding, and cleanup. Use when a project already uses hot or deliberately selects it for a bounded local-cache requirement.
golang-samber-lo
Implement, review, or optimize typed collection transformations with `github.com/samber/lo` and its parallel, mutable, iterator, or experimental subpackages. Use when a project already uses lo or deliberately selects it for collection-oriented code.
golang-samber-mo
Implement, compose, or review typed optional, result, either, and computation values with `github.com/samber/mo`. Use when a project already exposes mo types or deliberately selects them for domain states, type-changing pipelines, serialization, or asynchronous abstractions.
golang-samber-oops
Create, wrap, expose, log, or test structured errors with `github.com/samber/oops`, including codes, attributes, public messages, stacks, context builders, and panic recovery. Use when a project already uses oops or deliberately adopts its structured error contract.
golang-samber-ro
Build, compose, or debug typed reactive streams with `github.com/samber/ro`, including observables, operators, subjects, sharing, plugins, cancellation, and teardown. Use when a project already uses ro or deliberately selects it for asynchronous or event-driven pipelines.
golang-samber-slog
Compose, route, sample, format, deliver, or test `log/slog` pipelines built with `github.com/samber/slog-*` modules. Use when a project already imports these extensions or deliberately selects one for multi-handler, middleware, HTTP, or backend behavior.
golang-security
Implement or review Go-specific security controls in a scoped code path: trust boundaries, injection, files, network input, HTTP hardening, secrets, cryptography, and vulnerability reachability. Use for secure coding or focused review; use a dedicated security workflow for an exhaustive audit or formal threat model.
golang-spf13-cobra
Build, extend, or test Go command trees when `github.com/spf13/cobra` is already used or explicitly selected. Covers command hooks, argument validators, local and persistent flags, completions, injected I/O, and isolated command tests; use a general CLI skill for framework-independent behavior.
golang-spf13-viper
Maintain layered configuration when `github.com/spf13/viper` is already used or explicitly selected. Covers source precedence, environment and pflag binding, typed unmarshalling, isolated instances, and validated reloads; use a general configuration or CLI skill when Viper is absent.
golang-stay-updated
Research current Go releases, toolchain changes, security notices, proposals, learning resources, and community updates using live sources. Use when asked what is new, whether a project is current, or how to monitor relevant changes.
golang-stretchr-testify
Write or review Go tests using `github.com/stretchr/testify`. Covers assert versus require, wrapped-error and structural assertions, eventual checks, mock expectations and matchers, suite lifecycle, and test isolation; use the standard testing package directly when Testify is absent and simple checks suffice.
golang-structs-interfaces
Design or review Go structs, interfaces, receiver methods, embedding, type assertions, and serialization tags. Use when defining type boundaries, choosing concrete versus interface dependencies, or resolving method-set, zero-value, embedding, and copy-semantics issues.
golang-swagger
Add, update, or review swaggo/swag annotations and generated OpenAPI documentation: operation contracts, schemas, security declarations, framework integration, generator wiring, and drift checks. Use when a Go API uses or deliberately selects the swaggo annotation workflow.
golang-testing
Write, review, or debug Go tests using the standard testing package, table cases, subtests, parallel tests, fuzzing, race checks, integration isolation, HTTP utilities, examples, fixtures, and test doubles. Use when test design, reliability, or behavior is central.
golang-troubleshooting
Diagnose Go build failures, panics, wrong results, hangs, races, leaks, flaky tests, and production runtime symptoms using reproducible evidence and appropriate Go diagnostics. Use when a Go problem's cause is unknown or competing hypotheses need to be separated.
golang-uber-dig
Maintain reflection-based dependency graphs in Go projects using `go.uber.org/dig`. Covers Provide/Invoke, dig.In and dig.Out, names, groups, interface exposure, decorators, scopes, graph validation, and container tests; use Fx when application lifecycle is central.
golang-uber-fx
Build, review, or test Go applications using `go.uber.org/fx`. Covers providers, invokes, modules, annotations, names and groups, lifecycle hooks, replacements, event logging, graph validation, and fxtest; use Dig when only a container graph is needed.
frontend-file-structure
Use for React TypeScript file-structure work involving ownership or folders for new or moved files, multi-file components with narrow public entries, page and route separation, mirrored tests, path naming, import aliases, or directory-tree review. Trigger only when placement is unresolved or structure must change. Do not use for UI, logic, performance, security, upgrades, or debugging, or for code and tests whose path and structure are already established.
apple-design
Apple's approach to interface design and fluid, physical motion, translated for the web. Use when building or reviewing gesture-driven UI, spring animations, drag/swipe/sheet interactions, momentum and interruptible transitions, translucent materials and depth, typography (optical sizing, tracking, leading), reduced-motion, or the design foundations (feedback, spatial consistency, restraint) behind Apple-style interfaces.
generate-commit-message
Generate, revise, or validate English Conventional Commit messages from Git repository changes, diffs, patches, file lists, or user-provided change summaries. Use when asked to draft a commit message, choose a commit type or scope, describe staged or unstaged work, or add a breaking-change or issue footer. Inspect all uncommitted changes by default, return a single commit message covering the whole change set unless the user explicitly asks for a split, and never stage files or create the commit.
frontend-apple-design
Apple's approach to interface design and fluid, physical motion, translated for the web. Use when building or reviewing gesture-driven UI, spring animations, drag/swipe/sheet interactions, momentum and interruptible transitions, translucent materials and depth, typography (optical sizing, tracking, leading), reduced-motion, or the design foundations (feedback, spatial consistency, restraint) behind Apple-style interfaces.
frontend-react-file-structure
Use for React TypeScript file-structure work involving ownership or folders for new or moved files, multi-file components with narrow public entries, page and route separation, mirrored tests, path naming, import aliases, or directory-tree review. Trigger only when placement is unresolved or structure must change. Do not use for UI, logic, performance, security, upgrades, or debugging, or for code and tests whose path and structure are already established.
git-commit-message
Generate, revise, or validate English Conventional Commit messages from Git repository changes, diffs, patches, file lists, or user-provided change summaries. Use when asked to draft a commit message, choose a commit type or scope, describe staged or unstaged work, or add a breaking-change or issue footer. Inspect all uncommitted changes by default, return a single commit message covering the whole change set unless the user explicitly asks for a split, and never stage files or create the commit.
grill-me
A relentless interview to sharpen a plan, decision, or design. Use when the user wants to stress-test their thinking or uses any "grill" trigger phrase such as "grill me", "grill my plan", or "poke holes in this".
planning-grill-me
A relentless interview to sharpen a plan, decision, or design. Use when the user wants to stress-test their thinking or uses any "grill" trigger phrase such as "grill me", "grill my plan", or "poke holes in this".
Bio shown is the top-scored skill's repo description as a fallback — real GitHub bios land in a future update.