PlugWiki

golang-lint Skill (samber): What It Does and How to Install It

Makes Claude configure and run golangci-lint, read its output, suppress warnings with justified nolint comments and clean up legacy Go code in parallel.

Installs
41.1K
on skills.sh
Stars
3.7K
on GitHub
Files
4
besides SKILL.md
Updated
Nov 2026
last repo commit

golang-lint makes Claude treat linting as part of daily work. It runs golangci-lint, writes or updates a .golangci.yml from a bundled template, and explains each warning by linter name. It has three modes: setup, coding (a background agent runs golangci-lint with --fix on modified files) and interpret and fix. It needs the golangci-lint program installed first.

Good for

  • Go developers setting up golangci-lint and a .golangci.yml for the first time
  • Teams facing a pile of lint warnings on an older Go codebase
  • Claude Code and Codex users who want linting in their daily workflow

Install golang-lint

Claude Code

  1. 1

    Copy this prompt.

    Install the golang-lint skill in Claude Code. Run this command:
    
    /plugin marketplace add samber/cc
    /plugin install cc-skills-golang@samber
    
    Then check that it loaded and tell me how to use it.
  2. 2

    Paste it into Claude Code. It shows the change and asks before running it.

The README says these skills are built as atomic, cross-referencing units, and that installing only a subset gives a partial and potentially inconsistent view of the guidelines. It recommends installing all the general-purpose skills together, which the plugin does. Its manifest lists no hooks or MCP servers, and the repo holds 46 skills. Use the skills CLI line only if you want just this one. Pick one route, not both.

From the project README. Source.

What's in the skill

When it loads

Linting best practices and golangci-lint configuration for Golang projects — running linters, configuring .golangci.yml, suppressing warnings with nolint directives, interpreting lint output, and selecting linters. Use when configuring golangci-lint, asking about lint warnings or nolint suppressions, setting up code quality tooling, or choosing linters. Also use when the user mentions golangci-lint, go vet, staticcheck, or revive. Not for wiring a lint step into a GitHub Actions pipeline (→ See `samber/cc-skills-golang@golang-continuous-integration` skill).

Sections in SKILL.md

  1. Overview
  2. Quick Reference
  3. Configuration
  4. Suppressing Lint Warnings
  5. Development Workflow
  6. Interpreting Output
  7. Common Issues
  8. Parallelizing Legacy Codebase Cleanup
  9. Cross-References

Key facts

Author
samber
License
MIT
Skill version
1.4.1
Installs on skills.sh
41,141 (Nov 2, 2026)
Last repo commit
Nov 1, 2026

What it includes

  • Configures .golangci.yml, chooses linters and enables CI

    Write · Setup mode

  • Runs golangci-lint with --fix on modified files in a background agent while you build

    The main agent keeps implementing the feature and surfaces the results when the background run completes.

    Runs code · Coding mode

  • Reads lint output, suppresses warnings and fixes issues on existing code

    Interpret/fix mode

  • Six commands: run, run --fix, fmt, run --enable-only, linters and run --verbose

    Runs code · Quick Reference

  • Uses the bundled .golangci.yml as the source of truth for enabled linters

    Configuration

  • Four rules: name the linter, give a reason, nolintlint checks both, keep security linters

    Suppressing Lint Warnings

  • Lint after each significant change, auto-fix, format before commit, adopt gradually

    Development Workflow

  • Six-row table: timeouts, too many issues, missing linters, conflicts, v1 config, slow runs

    Common Issues

  • Splits cleanup across 5 sub-agents: auto-fix, security, errors, style, code quality

    Parallelizing Legacy Codebase Cleanup

From the official docs

Permissions

Low risk

It lets Claude run golangci-lint with --fix, which rewrites your Go files, and write a .golangci.yml in your project.

What it can do

  • Read your data
  • Create and change things
  • Delete things
  • Read-only mode

Watch out for

  • It edits Go files and runs go and git commands

    The frontmatter allows Edit, Write and Bash for go, golangci-lint and git. Work on a branch and read the diff before you commit.

  • --fix rewrites files automatically

    Coding mode runs golangci-lint with --fix in the background on files you changed. Commit first so you can see exactly what it changed.

  • It needs a separate tool installed

    SKILL.md lists go install github.com/golangci/golangci-lint/cmd/golangci-lint@latest as the dependency, and the metadata names a brew formula. Install golangci-lint yourself and pick the version.

Security advisories

No published security advisories as of Nov 2, 2026.

Technical details
Turning on read-onlyNo read-only setting is documented in SKILL.md.
Talks toYour AI provider receives the Go code and command output Claude reads
Sign-in and keysSKILL.md names no account or API key.
Scopes
  • Claude edits Go files and may auto-fix them in the background

  • Claude runs go, golangci-lint and git commands

  • It writes or updates .golangci.yml

Questions

How do I install golang-lint?

Use the install box above. The plugin route installs the whole Go skill set (46 skills in the repo), and the skills CLI route installs only this skill. Pick one so you do not get every skill twice. The README says these skills cross-reference each other and installing a subset gives a partial view.

Does golang-lint work in the Claude app?

The README documents no Claude app install, so the Claude tab in the install box is our generic zip-upload route, not a documented one. The skill reads and edits Go files and runs go commands on your machine, so Claude Code or Codex is the better fit.

Does golang-lint need an API key?

SKILL.md names no API key or account. It does need Go installed on your machine.

Is golang-lint safe to run?

It edits your Go files and runs go, golangci-lint and git commands in your project, so work on a branch and read the diff before you commit. The skill bundles no scripts: its other files are reference guides and an evals/evals.json file.

Do I need to install golangci-lint myself?

Yes. SKILL.md lists golangci-lint as a required program and shows a go install command for it; the metadata also names a brew formula. The skill itself bundles no scripts.

How is golang-lint different from golang-continuous-integration?

SKILL.md says golang-lint is not for wiring a lint step into a GitHub Actions pipeline. That goes to the golang-continuous-integration skill. golang-lint covers running linters, configuring .golangci.yml and reading output.

What is the rule about nolint comments?

A nolint directive must name the linter and include a reason, for example //nolint:errcheck followed by a justification. The nolintlint linter enforces both, and security linters such as gosec should not be suppressed without a strong reason.

Information

updated Nov 2, 2026

Folder
skills/golang-lint

samber/cc-skills-golangskills.sh

Sources

Docs, issue trackers and discussions this page is built from.

Show all 7
  1. cc-skills-golang · github.com
  2. cc-skills-golang README · github.com
  3. plugin.json · github.com
  4. skills CLI commands · github.com
  5. README.md#-how-to-use · github.com
  6. golang-lint SKILL.md · github.com
  7. golang-lint on skills.sh · skills.sh

Updated Nov 2, 2026.