Skills gopls-lsp
Go language server (gopls) providing code intelligence, refactoring, and analysis for .go files. Use when working with Go code that needs autocomplete, go-to-definition, find references, error detection, or refactoring support.
install
source · Clone the upstream repo
git clone https://github.com/openclaw/skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/openclaw/skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/bowen31337/gopls-lsp" ~/.claude/skills/openclaw-skills-gopls-lsp && rm -rf "$T"
OpenClaw · Install into ~/.openclaw/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/openclaw/skills "$T" && mkdir -p ~/.openclaw/skills && cp -r "$T/skills/bowen31337/gopls-lsp" ~/.openclaw/skills/openclaw-skills-gopls-lsp && rm -rf "$T"
manifest:
skills/bowen31337/gopls-lsp/SKILL.mdsource content
gopls LSP
Go language server integration providing comprehensive code intelligence through gopls (the official Go language server).
Capabilities
- Code intelligence: Autocomplete, go-to-definition, find references
- Error detection: Real-time diagnostics for compilation errors and issues
- Refactoring: Rename symbols, extract function, organize imports
- Analysis: Static analysis, code suggestions, unused code detection
- Supported extensions:
.go
Installation
Install gopls using the Go toolchain:
go install golang.org/x/tools/gopls@latest
Important: Make sure
$GOPATH/bin (or $HOME/go/bin) is in your PATH.
Verify installation:
gopls version
Usage
The language server runs automatically in LSP-compatible editors. For manual operations:
Format code
gofmt -w file.go
Run linter
go vet ./...
Build and test
go build ./... go test ./...
Configuration
Create
gopls.yaml in your project or workspace for custom settings:
analyses: unusedparams: true shadow: true completeUnimported: true staticcheck: true
Or configure via environment:
export GOPLS_CONFIG='{"staticcheck": true, "analyses": {"unusedparams": true}}'
Integration Pattern
When editing Go code:
- gopls provides real-time diagnostics in LSP editors
- Run
orgo fmt
to format codegofmt - Use
for additional static analysisgo vet - Run tests with
before committinggo test
Common Go Commands
- Initialize Go modulego mod init <module>
- Clean up dependenciesgo mod tidy
- Add dependencygo get <package>
- Compile packagesgo build
- Run programgo run main.go
- Run testsgo test
- Report suspicious constructsgo vet