What problem does it solve?
Many Go codebases lag behind recent language improvements, deprecated APIs accumulate, and CI/tooling configurations become outdated, causing maintenance burden and potential security or correctness issues. This Skill identifies safe modernization opportunities, prioritizes safety-critical fixes, and provides actionable, incremental changes so teams can adopt new Go features and tooling without risky large-scale rewrites.
Core Features & Use Cases
- Context-aware suggestions: offers file-scoped inline modernizations during active development and broader full-repo scans for CI-driven modernization.
- Language and standard library migrations: recommends replacements for deprecated packages and idioms across Go 1.21–1.26 (e.g., min/max, slices/maps, os.Root, errors.AsType).
- Tooling and CI upgrades: detects lint/tooling gaps, suggests golangci-lint modernization, govulncheck integration, and safer dependency updates with changelog checks.
- Safe, prioritized workflow: runs go.mod detection, respects a .modernize ignore list, validates changelogs before updating dependencies, and generates an ordered migration priority guide.
Quick Start
Run the golang-modernize skill to scan the repository, detect Go version and modernization opportunities, and produce prioritized, safety-first modernization suggestions.