← ClaudeAtlas

setup-trunklisted

Use when integrating trunk.io into a repository for the first time, or when configuring trunk linters, git hooks, and pre-commit/push validation in an existing codebase with legacy lint violations.
AndrewDongminYoo/cc-agents-kit · ★ 2 · Code & Development · score 71
Install: claude install-skill AndrewDongminYoo/cc-agents-kit
# Setup Trunk ## Overview Trunk.io is a meta-linter and git hook manager. Its core principle is "hold-the-line": existing violations are acknowledged and ignored initially, but new violations on changed files are blocked. This lets teams adopt linting incrementally without a big-bang cleanup. This skill covers first-time integration and configuration. Running trunk day to day is a different job — `trunk check` / `trunk fmt` at milestones, cache corruption, aligning trunk-pinned linter versions with the workspace, vulnerability triage — and is out of scope here. ## Initialization Flow ### 1. Inspect the repository before selecting linters Do not start from a memorized linter bundle. First inspect the repository's manifests and lockfiles, existing CI workflows, declared package scripts, language and generated-file layout, and any existing linter configuration. Use that evidence to identify tools the project already runs, file types that actually exist, and checks CI already owns. ```bash git ls-files | grep -E '(^|/)(package.json|pubspec.yaml|pyproject.toml|Cargo.toml|go.mod|Podfile)$' git ls-files '.github/**' git ls-files | grep -Ei '(^|/)([^/]*(eslint|prettier|ruff|markdownlint|shellcheck)[^/]*)$' ``` Read the files found, including scripts in manifests and the commands used by CI, before proposing `lint.enabled`. Enable a linter only when a repository artifact or an explicit user requirement supports it; do not infer that mobile, web, infrastructure, and documentatio