golang
Golang Development Skill
Activation Triggers
- Working with
.gofiles,go.mod,go.sum,go.work - User mentions Go, Golang, or Go-specific terms
- Questions about Go libraries, frameworks, or tooling
- Concurrency patterns (goroutines, channels, context)
Workflow: Research-First Approach
Before implementing, gather context from authoritative sources:
# Context7 docs for repo-specific guidance
context7 docs /gin-gonic/gin "how to set up middleware"
context7 docs /uber-go/zap "structured logging setup"
# gh search code for real-world implementation examples
gh search code "ratelimit.New(" --language=go
gh search code "errgroup.WithContext(" --language=go
# For style/idiom questions
context7 docs /uber-go/guide "style guide patterns and idioms"
Notes
Repository routing table lives in reference.md.
CLI Quick Reference
Module Management
go mod init <module> # Initialize module
go mod tidy # Sync dependencies
go get <pkg>@latest # Add/update dependency
go get <pkg>@v1.2.3 # Specific version
go mod download # Download dependencies
go mod why <pkg> # Why is pkg needed
go mod graph # Dependency graph
Build & Run
go build ./... # Build all packages
go run . # Run current package
go install ./cmd/... # Install binaries
go generate ./... # Run go:generate directives
Testing
go test ./... # Run all tests
go test -v ./... # Verbose output
go test -race ./... # Race detector
go test -cover ./... # Coverage summary
go test -coverprofile=c.out ./... && go tool cover -html=c.out # Coverage HTML
go test -bench=. ./... # Run benchmarks
go test -fuzz=FuzzXxx ./... # Fuzz testing
go test -run=TestName # Run specific test
go test -count=1 # Disable test caching
Linting (golangci-lint)
golangci-lint run # Run all linters
golangci-lint run --fix # Auto-fix issues
golangci-lint linters # List available linters
Workspaces (multi-module)
go work init ./mod1 ./mod2 # Initialize workspace
go work use ./mod3 # Add module to workspace
go work sync # Sync workspace
Other Tools
go fmt ./... # Format code
go vet ./... # Static analysis
go doc <pkg> # View documentation
go env # Environment variables
go version # Go version
Files
reference.md- Go 1.24+ features, project layout, Uber style highlightscookbook/testing.md- Table-driven tests, testify, mocking, benchmarkscookbook/concurrency.md- Goroutines, channels, context, errgroupcookbook/patterns.md- Functional options, DI, error handling
More from anntnzrb/agents
gleam
Develop with Gleam using idiomatic patterns, TDD, and type-driven design. Activate when working with .gleam files, gleam.toml, or user mentions Gleam, BEAM, or Erlang.
16agent-browser
Browser automation CLI for AI agents. Use when the user needs to interact with websites, including navigating pages, filling forms, clicking buttons, taking screenshots, extracting data, testing web apps, or automating any browser task. Triggers include requests to "open a website", "fill out a form", "click a button", "take a screenshot", "scrape data from a page", "test this web app", "login to a site", "automate browser actions", or any task requiring programmatic web interaction.
15ast-grep
Read-only structural code search with ast-grep/sg. Grep/rg/sed alternative for AST-aware CLI exploration, pattern search, and fast code discovery. Activates on ast-grep/sg, structural search, AST search, find usages, tree-sitter.
14summarize
Operate `@steipete/summarize` end-to-end via `bun x @steipete/summarize` for URL/file/media summarization, extract-only output, YouTube transcript and slide workflows, model/language/length tuning, CLI-backend routing (`--cli`), cache/config management, and `refresh-free` model maintenance. Use when users ask to summarize or extract content, transcribe audio/video, run slide extraction, tune summarize config/env keys, or troubleshoot summarize command failures.
14python
Develop Python applications using modern patterns, uv, functional-first design, and production-first practices. Use this whenever working with .py files, pyproject.toml, uv commands, pip/pip3, poetry, virtualenv/venv, inline script metadata, or Python tooling like pytest, mypy, ruff, asyncio, itertools, functools, or dataclasses. If the task involves running Python, managing Python dependencies, creating environments, or building Python packages, load this skill and prefer uv-oriented workflows.
13nix
Develop with Nix including packages, flakes, NixOS, and derivations. Activate when working with .nix files, flake.nix, flake.lock, or user mentions Nix, nixpkgs, NixOS, derivations, flakes, nix-shell, nix develop, home-manager, or packaging.
12