
Tooltitude for Go: the gopls gaps a free extension actually closes
Tooltitude for Go v1.51.1 (VS Code, 29,574 installs, 4.74/5) adds six free-tier capabilities missing or weak in gopls: live CodeLens reference counts, per-row table-driven test debugging, code inspections including variable shadowing, 20+ postfix completions, 50+ code actions, and a Go-specific grouped references view.

The standard Go extension for VS Code runs on
gopls (the official Go language server) and handles completions, go-to-definition, and formatting well enough. What it doesn't give you: a reference count above every function declaration, a "Debug" button on each row of a table-driven test, or a warning when a local variable silently shadows an imported package. Tooltitude for Go (tooltitudeteam.tooltitude) version 1.51.1 — updated May 24 — targets those gaps. 129,574 installs, 4.74/5 across 19 reviews. The free tier requires no account and no config changes. 1
What it adds on top of gopls
Tooltitude runs alongside the standard Go extension — it doesn't replace
gopls on the free tier. Its free layer adds six categories of functionality that gopls either lacks or handles weakly: 2| Feature | What you get | gopls equivalent |
|---|---|---|
| CodeLens reference counts | Live count above every function, method, interface, and field: "15 references · 3 implementations" | None |
| Table-driven test debugger | Per-row "Debug" CodeLens in test files | None — requires manual conditional breakpoints |
| Code inspections | Variable shadowing, unused assignments, unhandled errors, unreachable code | Partial — gopls flags some errors but misses shadowing |
| Postfix completions | .if, .for_range, .print, .return, 20+ more after any expression | None |
| Code actions | 50+ quick-fixes: handle error, extract/inline variable, apply De Morgan's law, generate getter/setter | Some overlap, fewer options |
| Go references view | References grouped by package → containing function, not just flat file list | Flat list only |

Three features worth trying today
1. Debug a single table-driven test case
Standard workflow without Tooltitude: add a conditional breakpoint like
i == 3 or comment out every test case except the one you want. With Tooltitude, each row in the test table gets a "Debug" CodeLens. Click it and the debugger starts at exactly that case, skipping all others.func TestAdd(t *testing.T) {
cases := []struct {
a, b, want int
}{
{1, 2, 3}, // ← "Debug" appears here
{0, 0, 0}, // ← "Debug" appears here
{-1, 1, 0}, // ← "Debug" appears here
}
for _, c := range cases {
got := Add(c.a, c.b)
if got != c.want {
t.Errorf("Add(%d, %d) = %d; want %d", c.a, c.b, got, c.want)
}
}
}2. Postfix completions
Type any expression, add a dot, and Tooltitude shows a list of structural transformations. The most useful ones:
err.if // expands to: if err != nil { }
items.for_range // expands to: for i, v := range items { }
result.return // expands to: return result
val.var // expands to: v := valTooltitude's own description of the intent: "Write Go code faster by using familiar dot notation to generate boilerplate: generate statements, call library functions, iterate over collections and more." 2

. after an expression triggers structural expansions. 13. Error handling code actions
Place the cursor on any unhandled error return — say,
io.ReadAll(r) — and trigger the quick-fix menu. You get three concrete options: wrap the error with context, panic, or return the raw error. No boilerplate to type from memory.data, err := io.ReadAll(r)
// Tooltitude quick-fix options:
// → Handle error (return err)
// → Handle error (panic)
// → Handle error (wrapped: return fmt.Errorf("...": %w, err))
Install
Search Tooltitude for Go in the Extensions panel, or use the identifier: 1
tooltitudeteam.tooltitudeRequirements: VS Code 1.82.0 or later. No Go version requirement is documented. The extension is workspace-scoped — it activates per project, not globally. No configuration needed to get CodeLens and postfix completions working on first open.
Known issues and the Plus pricing problem
Three issues worth knowing before you rely on Tooltitude in production:
- Project sync modifies
go.mod/go.sumon open (GitHub issue #74, filed April 2026): Tooltitude v1.49.0+ automatically syncs the project on open and rewrites these files, which prevents branch switching while the extension is active. No setting to disable this behavior yet. 3 - Completions for unimported packages don't work (issue #65, open since January 2026): typing
fmt.whenfmtisn't yet imported yields no suggestions. gopls handles this correctly. 4 - Full LSP mode is experimental: the Plus-tier feature that lets Tooltitude replace
goplsentirely is marked experimental and doesn't cover all gopls capabilities. 5
The Plus tier ($19.99/month, 30-day trial) adds dependency CodeLens, inline debug values, workspace-wide unused symbol reports, cross-package move declarations, and Protobuf/gRPC CodeLens. 6 The pricing drew pushback when it launched in 2024: one r/golang commenter noted that $19.99/month (~$240/year) is more than GoLand for individuals at $9.90/month. 7 Tooltitude responded that different pricing options are being explored. The free tier, though, covers the features most developers will actually reach for daily — one commenter put it directly: "Honestly even the free version makes vscode so much better." 8
Telemetry: Tooltitude collects usage data and diagnostic information by default, including a truncated
vscode.env.machineId. You can disable it via VS Code's telemetry.telemetryLevel setting. 9Plugin: Tooltitude for Go · Publisher: Tooltitude Team (verified) · Version: 1.51.1 · License: proprietary (GitHub repo MIT)
Language: Go · IDE: VS Code ^1.82.0 · Use case: CodeLens, postfix completions, code inspections, table-driven test debugging
Install: tooltitudeteam.tooltitude on VS Code Marketplace · GitHub support repo
참고 출처
- 1Tooltitude for Go (GoLang) — Visual Studio Marketplace
- 2Tooltitude Features
- 3Issue #74 — allow disabling project sync
- 4Issue #65 — code completion not working for unimported packages
- 5Tooltitude Full LSP Mode
- 6Tooltitude Pricing
- 7r/golang — Tooltitude: productivity extension for Golang
- 8r/golang — Tooltitude for Go VS Code extension
- 9Tooltitude Privacy Policy
이 콘텐츠를 둘러싼 관점이나 맥락을 계속 보강해 보세요.