Go stack pack
Go 1.22+ projects: services, CLIs, libraries, infrastructure tools. The first typed-compiled non-JS pack — proving the stack-pack contract generalises beyond dynamic-typed languages.
Audience #
Pick Go if:
- Your project is a Go codebase (services, CLI tools, libraries, Kubernetes operators, infra tools).
- Your validation pipeline is some combination of
go vet,staticcheck,golangci-lint,go test. - You're greenfield or scaffolding into an existing Go module.
Auto-detection triggers #
aidokit init detects this pack when it sees:
- A
go.modat the project root - Any
.gosource files (high-confidence signal — Go projects are unambiguous whengo.modexists)
Force it:
aidokit init --stack go
What you get #
| Component | Provided |
|---|---|
| Suggested skills | go-conventions, go-test-patterns, error-wrapping-discipline, context-handling, goroutine-lifecycle-discipline |
| Suggested MCPs | Context7, Beads MCP |
| Validation commands | go vet ./..., staticcheck ./... (when configured), go test ./... (auto-detected; falls back to go test) |
| Architecture hint (Strict) | Standard project layout (cmd/, internal/, pkg/), interface-driven design, explicit error wrapping with %w, structured logging |
| Watchdog awareness | Scope check understands Go package boundaries; deletion guard treats go.mod and go.sum as first-class |
Composition #
- Standalone: Go projects most commonly use only this pack — the std lib + a few external modules is the typical surface.
- With React or other frontend stacks: Common pattern for Go
backend + React frontend.
aidokit init --stack go,node-ts,reactworks. - With Python: Polyglot data-pipeline / service repos.
Honest limitations #
- Module mode is assumed. GOPATH-mode projects (
go.modabsent) are not supported. Migrate to modules first. golangci-lintconfig is detected but not authored. If you don't have a.golangci.yml, the pack suggestsgo vetonly. Adding the lint config is a project decision, not a stack-pack default.- No generics-heavy patterns. Patterns for Go's generics are still evolving in the wider community; the included skills hedge rather than commit.
- Cross-compilation tips are absent. Common in Go projects but project-specific enough that they belong in a project-local skill, not the stack pack.