Agent skill · software engineering · haydenbleasel
ultracite
Ultracite is a zero-config linting and formatting preset for JavaScript/TypeScript projects. Use when: (1) Setting up or initializing Ultracite in a project (ultracite init), (2) Running linting or formatting commands (check, fix, doctor), (3) Writing or reviewing JS/TS code in a project that uses Ultracite — to follow its code standards, (4) Troubleshooting linting/formatting issues, (5) User mentions 'ultracite', 'lint', 'format', 'code quality', or 'biome/eslint/oxlint' in a project with Ultracite installed.
Why this skill is useful
Adds specific commands and configuration patterns for integrating Ultracite linting and formatting in JS/TS projects that the AI wouldn't reliably generate on its own.
What it needs
Requires bun, eslint, oxlint installed locally. About 3k tokens when loaded. Last updated 2026-08-07. 3,119 stars on the source repository.
What this skill does
Ultracite Zero-config linting and formatting for JS/TS projects. Supports three linter backends: Oxlint + Oxfmt (recommended), Biome, and ESLint + Prettier + Stylelint. Detecting Ultracite Check if ultracite is in package.json dependencies or devDependencies. Detect the active linter by looking for (searching upward from the current directory): biome.json / biome.jsonc → Biome eslint.config. (.mjs, .js, .cjs, .ts, .mts, .cts) → ESLint (with Prettier for formatting) oxlint.config.ts → Oxlint (with oxfmt.config.ts for formatting) CLI Commands Replace bunx with npx, pnpx, or yarn dlx depending on the package manager. check and fix accept optional file paths: bunx ultracite check src/index.ts. Unknown options are passed through to the underlying linter (e.g. bunx ultracite check --max-warnings 0). Initialization bunx ultracite init runs an interactive setup. For non-interactive (CI) use, pass flags: Flags: --pm — npm yarn pnpm bun deno nub aube --linter — oxlint (recommended) biome eslint --editors — universal (writes .vscode/settings.json for every VS Code-based editor) vscode cursor windsurf codebuddy antigravity bob kiro trae void zed --agents — universal (writes AGENTS.md) claude codex copilot cline amp gemini cursor-cli + 34 more (41 agents supported) --frameworks — react next solid vue svelte qwik remix tanstack angular astro nestjs jest vitest --integrations — husky lefthook lint-staged pre-commit --hooks — Enable auto-fix hooks: claude copilot cursor windsurf codebuddy --type-aware — Enable type-aware linting (Biome: extends the type-aware preset; Oxlint: installs oxlint-tsgolint) --install-skill — Install the reusable Ultracite skill after setup --skip-install — Skip dependency installation --quiet — Suppress prompts (auto-detected when CI=true); defaults to oxlint when --linter is omitted Init creates config that extends Ultracite presets: Presets available per linter (ultracite/<linter>/<preset>): core, react, next, solid, vue, svelte, qwik, remix, tanstack, …
How to use it
Reference it in AdaL, Claude Code, Cursor or any coding agent — nothing to install:
@skills haydenbleasel/ultracite--dff539