lint

Run golangci-lint and static analysis on Go code. Use before pushing or to check code quality.

12 stars

Best use case

lint is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Run golangci-lint and static analysis on Go code. Use before pushing or to check code quality.

Teams using lint should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/lint/SKILL.md --create-dirs "https://raw.githubusercontent.com/PeterBooker/veloria/main/.claude/skills/lint/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/lint/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How lint Compares

Feature / AgentlintStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Run golangci-lint and static analysis on Go code. Use before pushing or to check code quality.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

Related Guides

SKILL.md Source

# Go Linting

Run golangci-lint to check code quality and catch issues before CI.

## Usage

- `/lint` - Lint all packages
- `/lint ./internal/repo/...` - Lint a specific package

## Steps

1. **Run golangci-lint**
   ```bash
   golangci-lint run $ARGUMENTS 2>&1
   ```

   If no arguments provided, run on all packages:
   ```bash
   golangci-lint run ./... 2>&1
   ```

3. **If golangci-lint is not installed**, install it:
   ```bash
   go install github.com/golangci/golangci-lint/cmd/golangci-lint@latest
   ```
   Then re-run step 2.

4. **Parse and report findings**

   Group issues by severity and file:
   ```
   ## Lint Results

   ### Errors
   - [list of errors with file:line references]

   ### Warnings
   - [list of warnings with file:line references]

   ### Summary
   - Total issues: N
   - Files affected: N
   ```

5. **Offer to fix auto-fixable issues**
   If issues are auto-fixable, offer to run:
   ```bash
   golangci-lint run --fix $ARGUMENTS 2>&1
   ```

## Configuration

The project uses `.golangci.yml` in the repo root. Read this file to understand which linters are enabled/disabled before interpreting results.

Current exclusions:
- `internal/codesearch/` - excluded from linting and formatting (forked upstream code)

## CI Alignment

The CI pipeline runs `golangci-lint`, `go vet ./...`, and `gosec` (see `/security-scan` skill).

Running `/lint` locally before pushing catches most CI failures.

Related Skills

test

12
from PeterBooker/veloria

Run Go unit tests. Use after code changes to verify correctness.

security-scan

12
from PeterBooker/veloria

Run gosec and govulncheck to find security vulnerabilities. Use before releases or after dependency changes.

reindex

12
from PeterBooker/veloria

Trigger reindexing of a specific WordPress extension. Use to rebuild the search index for a plugin, theme, or core version.

race-check

12
from PeterBooker/veloria

Run Go race detector to find data races in concurrent code. Use after any change to mutexes, goroutines, or channels.

profile

12
from PeterBooker/veloria

Run CPU and memory profiling with pprof to identify performance hotspots. Use when investigating high resource usage.

migrate

12
from PeterBooker/veloria

Create and manage database migrations using goose. Use for schema changes, new tables, or index optimization.

integration-test

12
from PeterBooker/veloria

Run integration tests that require Docker (Postgres, MinIO via testcontainers). Use to validate database and storage behavior.

generate

12
from PeterBooker/veloria

Run go generate to build templ templates and frontend assets. Use after changing templates or CSS/JS.

deps

12
from PeterBooker/veloria

Check and tidy Go module dependencies. Use after adding/removing imports or before releases.

coverage

12
from PeterBooker/veloria

Run tests with coverage analysis and identify untested code paths. Use to find gaps before releases.

check

12
from PeterBooker/veloria

Run pre-push quality checks (vet + lint + tests with race detector). Use before pushing code.

benchmark

12
from PeterBooker/veloria

Run Go benchmarks and compare results to detect performance regressions. Use before and after performance-related changes.