golang/tools
[mirror] Go Tools
Platform-specific configuration:
{
"mcpServers": {
"tools": {
"command": "npx",
"args": [
"-y",
"tools"
]
}
}
}Add the config above to .claude/settings.json under the mcpServers key.
[](https://pkg.go.dev/golang.org/x/tools)
This repository provides the golang.org/x/tools module, comprising various tools and packages mostly for static analysis of Go programs, some of which are listed below. Use the "Go reference" link above for more information about any package.
It also contains the `golang.org/x/tools/gopls` module, whose root package is a language-server protocol (LSP) server for Go. An LSP server analyses the source code of a project and responds to requests from a wide range of editors such as VSCode and Vim, allowing them to support IDE-like functionality.
<!-- List only packages of general interest below. -->
Selected commands:
cmd/goimports formats a Go program like go fmt and additionallyinserts import statements for any packages required by the file after it is edited.
cmd/callgraph prints the call graph of a Go program.cmd/digraph is a utility for manipulating directed graphs in textual notation.cmd/stringer generates declarations (including a String method) for "enum" types.cmd/toolstash is a utility to simplify working with multiple versions of the Go toolchain.These commands may be fetched with a command such as
go install golang.org/x/tools/cmd/goimports@latestSelected packages:
go/ssa provides a static single-assignment form (SSA) intermediaterepresentation (IR) for Go programs, similar to a typical compiler, for use by analysis tools.
go/packages provides a simple interface for loading, parsing, andtype checking a complete Go program from source code.
go/analysis provides a framework for modular static analysis of Goprograms.
go/callgraph provides call graphs of Go programs using a varietyof algorithms with different trade-offs.
go/ast/inspector provides an optimized means of traversing a Goparse tree for use in analysis too
Loading reviews...