Skip to main content

stack-validator

Validates Biome 2.3+, Bun workspace, Clerk, Next.js 16 and Tailwind v4 config and flags deprecated patterns. Use before stack work or when AI-generated config may be outdated.

소스 정보

저장소
shipshitdev/skills
최근 소스 활동
2026년 10월 5일 18:24
감지된 SKILL.md 언어
영어
스타
37
포크
3

설치 방법

기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.

소스 파일 검토

설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.

파일 탐색기
9 개 파일

SKILL.md 표시 중

SKILL.md
소스 지침 · 읽기 전용 미리보기
name
stack-validator
description
Validates Biome 2.3+, Bun workspace, Clerk, Next.js 16 and Tailwind v4 config and flags deprecated patterns. Use before stack work or when AI-generated config may be outdated.
metadata
{"version":"2.2.2","tags":"biome, bun, clerk, nextjs, tailwind, validation, configuration, code-quality"}
when_to_use
biome.json check, middleware.ts to proxy.ts, @theme v3 leftovers, bun workspace
# Stack Validator One validator for the Shipshit.dev stack. Each stack keeps its own checks, behind one script, one report format, and one set of flags. Run it before stack work, after AI generates config, and in CI. ## When This Activates - Setting up or auditing a Biome, Bun, Clerk, Next.js, or Tailwind project - Before any code-quality, auth, or styling work on that stack - After AI generates `biome.json`, `package.json`, Clerk code, `next.config.*`, or Tailwind CSS - CI/CD pipeline validation ## Quick Start ```bash python3 scripts/validate.py --root . # auto-detect stacks from the project python3 scripts/validate.py --root . --stack nextjs # one stack python3 scripts/validate.py --root . --stack biome --stack tailwind --strict python3 scripts/validate.py --root . --stack all --json ``` Auto-detection picks a stack from `package.json` dependencies or its config files: `@biomejs/biome` or `biome.json`; `bun.lock`, `bun.lockb` or `bunfig.toml`; any `@clerk/*` package; `next`; `tailwindcss`. With none detected the script exits with an error and asks for `--stack`. Run from the skill directory, or use the installed path to `scripts/validate.py`. ## Stacks | Stack | Validates | Flags | Reference | |---|---|---|---| | `biome` | `@biomejs/biome` 2.3+, `$schema` version, linter rules and domains, `assist.actions` | `organizeImports` at root, missing domains, leftover ESLint/Prettier configs | `references/biome.md` | | `bun` | Bun 1.3+, private root, workspaces, catalogs, `workspace:` protocol, one root lockfile | dependencies in root, lockfiles inside workspaces, hardcoded local versions | `references/bun.md` | | `clerk` | `@clerk/nextjs` version, `proxy.ts`, `ClerkProvider` in `app/layout.tsx`, env variable names | `authMiddleware`, `withClerkMiddleware`, `middleware.ts` with Clerk, `_app.tsx` provider, `getAuth` | `references/clerk.md` | | `nextjs` | `next` 16+, App Router, `proxy.ts`, `use cache`, `next.config.ts` | `middleware.ts`, `pages/` pages, `getServerSideProps`/`getStaticProps`, `next/router` | `references/nextjs.md` | | `tailwind` | `tailwindcss` 4+, `@import "tailwindcss"`, `@theme`, `@tailwindcss/postcss` | `tailwind.config.*`, `@tailwind` directives, `autoprefixer`, old PostCSS plugin | `references/tailwind.md` | Read the reference for the stack being validated: it holds the GOOD/BAD examples, deprecated-pattern tables, migration steps, and full guide. Open only that file. ## Flags | Flag | Effect | |---|---| | `--root <dir>` | Project root (default `.`) | | `--stack <name>` | Stack to validate; repeat for several, or `all`. Default: auto-detect | | `--strict` | Treat warnings as errors (exit 1 on any warning or error) | | `--ci` | Exit 1 on errors | | `--verbose` | List passed checks | | `--json` | One stack: that stack's report object. Several: an object keyed by stack | Without `--ci` or `--strict` the script reports and exits 0. The Clerk env check reads variable names from env templates only (`.env.example`, `.env.local.example`, `.env.sample`, `.env.template`); real env files are never opened. ## CI/CD Integration ```yaml # .github/workflows/validate.yml - name: Validate stack config run: | python3 scripts/validate.py \ --root . \ --stack all \ --strict \ --ci ``` Pass only the stacks the project uses; `--stack all` validates every stack and reports a missing dependency as an error. ## Integration - `linter-formatter-init` - Sets up Biome from scratch - `project-init-orchestrator` - Creates workspace structure - `git-safety` - Ensures no secrets are committed (Clerk keys)
GitHub에서 보기