brainstorming
brainstorming
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or planning anything new, in software or out of it (a talk, a business, a renovation).
golang-toolingGo developer toolchain — gopls LSP diagnostics, linting, formatting, and vet. Use when setting up Go tooling, running linters, or integrating gopls with Claude Code.
Independent GitHub snapshot · Automated classification · Original documentation governs
After writing or modifying Go code, run in order:
mcp__ide__getDiagnostics — gopls real-time errors and type warnings (requires gopls-lsp plugin)go vet ./... — catch printf mismatches, unreachable code, shadowed variablesgoimports -w . — organize imports and format in one passgolangci-lint run ./... — run full linter suite (if .golangci.yml present)| Tool | Purpose | When to Use |
|---|---|---|
gopls | LSP: diagnostics, completion, hover | Always (IDE integration) |
go vet | Static analysis — correctness bugs | After every edit |
goimports | Import sorting + gofmt | Before commit |
golangci-lint | Aggregated linters (errcheck, staticcheck, etc.) | CI / pre-commit |
staticcheck | Advanced static analysis | Large codebases |
Configure via .golangci.yml at repo root. Recommended linters:
errcheck — enforce error handlingstaticcheck — bug detection beyond go vetgovet — shadow, compositesrevive — style enforcementgosec — security issuesSee golangci.yml example.
gopls powers mcp__ide__getDiagnostics. Install:
go install golang.org/x/tools/gopls@latest
gofmt alone: Use goimports — it formatting AND imports.goimports manage order.gofmt misses.//nolint comments.