{
  "schemaVersion": "1.0",
  "item": {
    "slug": "go-linter-configuration",
    "name": "Go Linter Configuration",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/irook661/go-linter-configuration",
    "canonicalUrl": "https://clawhub.ai/irook661/go-linter-configuration",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/go-linter-configuration",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=go-linter-configuration",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "SKILL.md"
    ],
    "primaryDoc": "SKILL.md",
    "quickSetup": [
      "Download the package from Yavira.",
      "Extract the archive and review SKILL.md first.",
      "Import or place the package into your OpenClaw setup."
    ],
    "agentAssist": {
      "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
      "steps": [
        "Download the package from Yavira.",
        "Extract it into a folder your agent can access.",
        "Paste one of the prompts below and point your agent at the extracted folder."
      ],
      "prompts": [
        {
          "label": "New install",
          "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
        },
        {
          "label": "Upgrade existing",
          "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
        }
      ]
    },
    "sourceHealth": {
      "source": "tencent",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-04-30T16:55:25.780Z",
      "expiresAt": "2026-05-07T16:55:25.780Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
        "contentDisposition": "attachment; filename=\"network-1.0.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null
      },
      "scope": "source",
      "summary": "Source download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this source.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/go-linter-configuration"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    },
    "downloadPageUrl": "https://openagent3.xyz/downloads/go-linter-configuration",
    "agentPageUrl": "https://openagent3.xyz/skills/go-linter-configuration/agent",
    "manifestUrl": "https://openagent3.xyz/skills/go-linter-configuration/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/go-linter-configuration/agent.md"
  },
  "agentAssist": {
    "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
    "steps": [
      "Download the package from Yavira.",
      "Extract it into a folder your agent can access.",
      "Paste one of the prompts below and point your agent at the extracted folder."
    ],
    "prompts": [
      {
        "label": "New install",
        "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
      },
      {
        "label": "Upgrade existing",
        "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "Go Linter Configuration Skill",
        "body": "Configure and troubleshoot golangci-lint for Go projects. This skill helps handle import resolution issues, type-checking problems, and optimize configurations for both local and CI environments."
      },
      {
        "title": "Installation",
        "body": "Install golangci-lint:\n\ngo install github.com/golangci/golangci-lint/cmd/golangci-lint@latest\n\nOr use the official installation script:\n\ncurl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b $(go env GOPATH)/bin v1.59.1"
      },
      {
        "title": "Basic Usage",
        "body": "Run linter on entire project:\n\ngolangci-lint run ./...\n\nRun with specific configuration:\n\ngolangci-lint run --config .golangci.yml ./..."
      },
      {
        "title": "Minimal Configuration (for CI environments with import issues)",
        "body": "run:\n  timeout: 5m\n  tests: false\n  build-tags: []\n\nlinters:\n  disable-all: true\n  enable:\n    - gofmt          # Format checking only\n\nlinters-settings:\n  gofmt:\n    simplify: true\n\nissues:\n  exclude-use-default: false\n  max-issues-per-linter: 50\n  max-same-issues: 3\n\noutput:\n  format: tab"
      },
      {
        "title": "Standard Configuration (for local development)",
        "body": "run:\n  timeout: 5m\n  tests: true\n  build-tags: []\n\nlinters:\n  enable:\n    - gofmt\n    - govet\n    - errcheck\n    - staticcheck\n    - unused\n    - gosimple\n    - ineffassign\n\nlinters-settings:\n  govet:\n    enable:\n      - shadow\n  errcheck:\n    check-type-assertions: true\n  staticcheck:\n    checks: [\"all\"]\n\nissues:\n  exclude-use-default: false\n  max-issues-per-linter: 50\n  max-same-issues: 3\n\noutput:\n  format: tab"
      },
      {
        "title": "\"undefined: package\" Errors",
        "body": "Problem: Linter reports undefined references to imported packages\nSolution: Use minimal configuration with disable-all: true and only enable basic linters like gofmt"
      },
      {
        "title": "Import Resolution Problems",
        "body": "Problem: CI environment cannot resolve dependencies properly\nSolution:\n\nEnsure go.mod and go.sum are up to date\nUse go mod download before running linter in CI\nConsider using simpler linters in CI environment"
      },
      {
        "title": "Type-Checking Failures",
        "body": "Problem: Linter fails during type checking phase\nSolution:\n\nTemporarily disable complex linters that require type checking\nUse --fast flag for quicker, less intensive checks\nVerify all imports are properly declared"
      },
      {
        "title": "CI/CD Optimization",
        "body": "For GitHub Actions workflow:\n\nname: Code Quality\n\non:\n  push:\n    branches: [ main, master ]\n  pull_request:\n    branches: [ main, master ]\n\njobs:\n  lint:\n    runs-on: ubuntu-latest\n    steps:\n    - uses: actions/checkout@v4\n\n    - name: Set up Go\n      uses: actions/setup-go@v4\n      with:\n        go-version: '1.21'\n        cache: true\n\n    - name: Download dependencies\n      run: go mod download\n\n    - name: Install golangci-lint\n      run: |\n        curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b $(go env GOPATH)/bin v1.59.1\n\n    - name: Lint\n      run: golangci-lint run --config .golangci.yml ./..."
      },
      {
        "title": "Linter Selection Guidelines",
        "body": "gofmt: For formatting consistency\ngovet: For semantic errors\nerrcheck: For unchecked errors\nstaticcheck: For static analysis\nunused: For dead code detection\ngosimple: For simplification suggestions\nineffassign: For ineffective assignments\n\nChoose linters based on project needs and CI performance requirements."
      }
    ],
    "body": "Go Linter Configuration Skill\n\nConfigure and troubleshoot golangci-lint for Go projects. This skill helps handle import resolution issues, type-checking problems, and optimize configurations for both local and CI environments.\n\nInstallation\n\nInstall golangci-lint:\n\ngo install github.com/golangci/golangci-lint/cmd/golangci-lint@latest\n\n\nOr use the official installation script:\n\ncurl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b $(go env GOPATH)/bin v1.59.1\n\nBasic Usage\n\nRun linter on entire project:\n\ngolangci-lint run ./...\n\n\nRun with specific configuration:\n\ngolangci-lint run --config .golangci.yml ./...\n\nConfiguration File (.golangci.yml)\nMinimal Configuration (for CI environments with import issues)\nrun:\n  timeout: 5m\n  tests: false\n  build-tags: []\n\nlinters:\n  disable-all: true\n  enable:\n    - gofmt          # Format checking only\n\nlinters-settings:\n  gofmt:\n    simplify: true\n\nissues:\n  exclude-use-default: false\n  max-issues-per-linter: 50\n  max-same-issues: 3\n\noutput:\n  format: tab\n\nStandard Configuration (for local development)\nrun:\n  timeout: 5m\n  tests: true\n  build-tags: []\n\nlinters:\n  enable:\n    - gofmt\n    - govet\n    - errcheck\n    - staticcheck\n    - unused\n    - gosimple\n    - ineffassign\n\nlinters-settings:\n  govet:\n    enable:\n      - shadow\n  errcheck:\n    check-type-assertions: true\n  staticcheck:\n    checks: [\"all\"]\n\nissues:\n  exclude-use-default: false\n  max-issues-per-linter: 50\n  max-same-issues: 3\n\noutput:\n  format: tab\n\nTroubleshooting Common Issues\n\"undefined: package\" Errors\n\nProblem: Linter reports undefined references to imported packages Solution: Use minimal configuration with disable-all: true and only enable basic linters like gofmt\n\nImport Resolution Problems\n\nProblem: CI environment cannot resolve dependencies properly Solution:\n\nEnsure go.mod and go.sum are up to date\nUse go mod download before running linter in CI\nConsider using simpler linters in CI environment\nType-Checking Failures\n\nProblem: Linter fails during type checking phase Solution:\n\nTemporarily disable complex linters that require type checking\nUse --fast flag for quicker, less intensive checks\nVerify all imports are properly declared\nCI/CD Optimization\n\nFor GitHub Actions workflow:\n\nname: Code Quality\n\non:\n  push:\n    branches: [ main, master ]\n  pull_request:\n    branches: [ main, master ]\n\njobs:\n  lint:\n    runs-on: ubuntu-latest\n    steps:\n    - uses: actions/checkout@v4\n\n    - name: Set up Go\n      uses: actions/setup-go@v4\n      with:\n        go-version: '1.21'\n        cache: true\n\n    - name: Download dependencies\n      run: go mod download\n\n    - name: Install golangci-lint\n      run: |\n        curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b $(go env GOPATH)/bin v1.59.1\n\n    - name: Lint\n      run: golangci-lint run --config .golangci.yml ./...\n\nLinter Selection Guidelines\ngofmt: For formatting consistency\ngovet: For semantic errors\nerrcheck: For unchecked errors\nstaticcheck: For static analysis\nunused: For dead code detection\ngosimple: For simplification suggestions\nineffassign: For ineffective assignments\n\nChoose linters based on project needs and CI performance requirements."
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/irook661/go-linter-configuration",
    "publisherUrl": "https://clawhub.ai/irook661/go-linter-configuration",
    "owner": "irook661",
    "version": "1.0.0",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/go-linter-configuration",
    "downloadUrl": "https://openagent3.xyz/downloads/go-linter-configuration",
    "agentUrl": "https://openagent3.xyz/skills/go-linter-configuration/agent",
    "manifestUrl": "https://openagent3.xyz/skills/go-linter-configuration/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/go-linter-configuration/agent.md"
  }
}