Skillshub golang-tooling
Go developer toolchain — gopls LSP diagnostics, linting, formatting, and vet. Use when setting up Go tooling, running linters, or integrating gopls with Claude Code. (triggers: gopls, golangci-lint, golangci.yml, go vet, goimports, staticcheck, go tooling, go lint)
install
source · Clone the upstream repo
git clone https://github.com/ComeOnOliver/skillshub
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/ComeOnOliver/skillshub "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/HoangNguyen0403/agent-skills-standard/golang-tooling" ~/.claude/skills/comeonoliver-skillshub-golang-tooling && rm -rf "$T"
manifest:
skills/HoangNguyen0403/agent-skills-standard/golang-tooling/SKILL.mdsource content
Golang Tooling Standards
Priority: P1 (Operational)
Verification Workflow (Mandatory)
After writing or modifying Go code, run in order:
— gopls real-time errors and type warnings (requires gopls-lsp plugin)mcp__ide__getDiagnostics
— catch printf mismatches, unreachable code, shadowed variablesgo vet ./...
— organize imports and format in one passgoimports -w .
— run full linter suite (ifgolangci-lint run ./...
present).golangci.yml
Tool Overview
| Tool | Purpose | When to Use |
|---|---|---|
| LSP: diagnostics, completion, hover | Always (IDE integration) |
| Static analysis — correctness bugs | After every edit |
| Import sorting + | Before commit |
| Aggregated linters (errcheck, staticcheck, etc.) | CI / pre-commit |
| Advanced static analysis | Large codebases |
golangci-lint Setup
Configure via
.golangci.yml at repo root. Recommended linters:
— enforce error handlingerrcheck
— bug detection beyond go vetstaticcheck
— shadow, compositesgovet
— style enforcementrevive
— security issuesgosec
See golangci.yml example.
gopls Integration
gopls powers mcp__ide__getDiagnostics. Install:
go install golang.org/x/tools/gopls@latest
Anti-Patterns
- No
alone: Usegofmt
— it does formatting AND imports.goimports - No manual import sorting: Let
manage the order.goimports - No skipping go vet: Run it — catches real bugs
misses.gofmt - No broad lint disable: Fix the root cause instead of
comments.//nolint