Skip to content
Development
Skill

/ultracite

Ultracite multi-provider linting/formatting (Biome, ESLint, Oxlint). Use for v6/v7 setup, provider selection, Git hooks, MCP integration, AI hooks, migrations, or encountering configuration, type-aware linting, monorepo errors.

From plugin
secondsky-claude-skills
217183 skills42 agents62 commands2 MCP
Install
$ npx -y skills add secondsky/claude-skills --skill ultracite --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/ultracite

Context preview

The summary Claude sees to decide when to auto-load this skill.

Ultracite multi-provider linting/formatting (Biome, ESLint, Oxlint). Use for v6/v7 setup, provider selection, Git hooks, MCP integration, AI hooks, migrations, or encountering configuration, type-aware linting, monorepo errors.

SKILL.md

ultracite.SKILL.md
name: ultracite
description: Ultracite multi-provider linting/formatting (Biome, ESLint, Oxlint). Use for v6/v7 setup, provider selection, Git hooks, MCP integration, AI hooks, migrations, or encountering configuration, type-aware linting, monorepo errors.
license: MIT
metadata:
  version: 2.0.0
  dependencies:
    ultracite: latest
    "@biomejs/biome": ">=2.0.0"
    eslint: ">=8.0.0 (when using ESLint provider)"
    oxlint: ">=0.1.0 (when using Oxlint provider)"
  runtime: Node.js v20+
  package_managers:
    - bun (preferred)
    - npm
    - pnpm
    - yarn
  frameworks_supported:
    - React
    - Next.js
    - Vue
    - Svelte
    - Solid
    - Angular
    - Remix
    - Qwik
    - Astro
  git_hook_managers:
    - husky
    - lefthook
    - lint-staged
  editors_supported:
    - VS Code (Biome extension)
    - Cursor
    - Claude Code
    - Zed
    - Cline
    - Windsurf
  keywords:
    - ultracite
    - biome
    - linting
    - formatting
    - code quality
    - eslint replacement
    - prettier replacement
    - typescript strict mode
    - rust linter
    - fast formatter
    - auto-fix
    - git hooks
    - pre-commit
    - husky
    - lefthook
    - lint-staged
    - react linting
    - nextjs linting
    - vue linting
    - svelte linting
    - monorepo linting
    - turborepo
    - AI coding rules
    - cursor rules
    - claude code rules
    - copilot instructions
    - accessibility linting
    - security linting
    - performance linting
    - jsx linting
    - hooks linting
    - migration from eslint
    - migration from prettier
    - biome.jsonc
    - zero config
    - code formatting
    - import sorting
    - unused imports
    - strict equality
    - type safety
    - oxlint
    - oxfmt
    - eslint integration
    - multi-provider
    - provider selection
    - mcp server
    - ai hooks
    - type-aware linting
    - ultracite doctor
    - programmatic usage
    - v6 upgrade
    - v7 upgrade
    - preset migration

Ultracite Skill

**Fast, zero-config linting and formatting for modern JavaScript/TypeScript projects**

Overview

Ultracite is a unified linting and formatting solution that supports multiple providers: **Biome** (default, Rust-based), **ESLint+Prettier+Stylelint**, and **Oxlint+Oxfmt**. It provides framework-specific presets and zero-configuration defaults, replacing traditional ESLint+Prettier setups with a faster, simpler alternative. Ultracite operates invisibly in the background, automatically formatting code and applying fixes on every save.

**Version 7 Changes**: Multi-provider architecture, preset path migration, MCP server support, AI hooks **Version 6 Changes**: Framework-specific presets introduced (React, Next.js, Vue, Svelte, etc.)

Core Goals

1. **Lightning-Fast Performance**: Leverages Biome's Rust implementation for instant linting/formatting 2. **Zero-Config Design**: Ships with 200+ sensible defaults optimized for modern TypeScript development 3. **Simplicity & Invisibility**: Operates with minimal user interaction 4. **Type Safety**: Enforces TypeScript strict mode and comprehensive null/undefined handling 5. **Tool Compatibility**: Works alongside other development tools without conflicts

Key Benefits vs Alternatives

**vs ESLint + Prettier:**

  • 10-100x faster performance (Rust vs JavaScript)
  • Single tool instead of two
  • Zero configuration needed
  • Auto-fixes on save by default
  • Built-in TypeScript strict mode

**vs Biome alone:**

  • 200+ preconfigured rules
  • Framework-specific presets (React, Next.js, Vue, Svelte)
  • AI editor integration (Cursor, Claude Code, Copilot)
  • Git hook integrations
  • Migration tooling

When to Use This Skill

✅ Ideal Projects

Use Ultracite when:

  • Starting a new JavaScript/TypeScript project
  • Building with React, Next.js, Vue, Svelte, or other modern frameworks
  • Working in monorepos (Turborepo, Nx, Lerna)
  • Teams want consistent formatting without bikeshedding
  • Performance is critical (large codebases, CI/CD optimization)
  • Migrating from ESLint + Prettier to a faster solution
  • Using AI coding assistants (Cursor, Claude Code, Windsurf)
  • TypeScript projects requiring strict type safety
  • Projects with accessibility requirements (ARIA, semantic HTML)

⚠️ Consider Alternatives When

**Limited framework support:**

  • Need Angular/Ember-specific rules (Biome support is basic)
  • Require advanced CSS linting (Stylelint still recommended)

**Specialized requirements:**

  • Need specific ESLint plugins not replicated in Biome
  • Require property ordering in CSS (Stylelint feature)
  • Team has extensive custom ESLint configurations

**Legacy projects:**

  • Large codebases with custom ESLint rules (migration effort required)
  • Projects with extensive Prettier customization

**For detailed limitations and workarounds, see**: `references/limitations-and-workarounds.md`

Interactive Components

This skill provides interactive commands and autonomous agents for streamlined workflows:

Commands

  • `/ultracite:doctor` - Validate project setup, check for v6→v7 preset paths, detect conflicts
  • `/ultracite:migrate` - Interactive migration wizard (ESLint/Prettier → Ultracite, v6→v7 upgrade)

Agents

  • `config-validator` - Analyze biome.jsonc for syntax, preset paths, rule conflicts, performance
  • `migration-assistant` - Guide ESLint/Prettier migrations with rule mapping and gap analysis

**See README.md for complete interactive features documentation.**

Choosing a Provider

Ultracite v7 supports three linting providers. Choose based on your needs:

🚀 Biome (Default) - **Recommended for most projects**

  • **Speed**: Fastest (10-100x faster than ESLint)
  • **Setup**: Zero-config with 200+ preset rules
  • **Best for**: New projects, TypeScript-first development, performance-critical builds
  • **Limitations**: Fewer rules than ESLint, basic CSS/SCSS support

🔧 ESLint + Prettier + Stylelint - **Recommended for maximum compatibility**

  • **Speed**: Slower but mature ecosystem
Read more
Ships withsecondsky-claude-skills

145 production-ready skills for Claude Code CLI 🔌 Platform / Harness Support These plugins ship as Claude Code marketplace plugins (.claude-plugin/ manifests) and Codex CLI plugins (.codex-plugin/ manifests).

Get the whole plugin

Other skills on secondsky-claude-skills.