golang/tools

[mirror] Go Tools

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 40 minutes ago
Added to GitGenius on September 8th, 2026
Created on November 25th, 2014
Open Issues & Pull Requests: 121 (+0)
GitHub issues: Disabled - open counts may still include pull requests.
Number of forks: 2,411
Total Stargazers: 7,998 (-1)
Total Subscribers: 275 (+0)

Repository Insights (GitGenius)

Most active contributors

Sign in to see contributor activity.

Related repositories by overlapping contributors

No overlapping-contributor repos identified yet.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

GitHub issues are disabled for this repository, so issue analytics and the issue explorer are not available.

Detailed Description

Go Tools is a collection of packages and command-line utilities for static analysis of Go programs, along with gopls, a language-server protocol server that enables IDE-like functionality in editors.

The repository addresses the need for programmatic analysis and tooling around Go source code. It provides foundational packages like go/ssa for intermediate representation, go/packages for loading and type-checking complete programs, and go/analysis as a framework for building modular analysis tools. These building blocks allow developers to inspect, understand, and transform Go code. The gopls language server uses these packages to respond to editor requests, enabling features like code completion, diagnostics, and navigation across a wide range of editors including VSCode and Vim. Specialized commands like goimports automate import management, callgraph visualizes program structure, and stringer generates boilerplate code for enum types.

Adoption suits teams building Go analysis tools, linters, or refactoring utilities who want to avoid reimplementing core analysis infrastructure. The go/analysis framework in particular provides a standardized way to write composable analysis passes. Developers integrating Go into their editor should consider gopls if their editor supports the language server protocol. The repository also serves as a reference for understanding Go's type system and AST structure through its public packages.

The project uses Gerrit for code contributions rather than pull requests on GitHub, with the authoritative repository hosted on go.googlesource.com. Issue tracking occurs on the main Go issue tracker with a required prefix convention. JavaScript and CSS formatting follows prettier conventions, though enforcement is not automated in CI.