ultracite

Configure and run zero-config linting and formatting for JavaScript and TypeScript projects.

Updated Sep 16, 2026
One-click install
npx skills add https://github.com/jasonviipers/vipers --skill ultracite-jasonviipers
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: ultracite
Source: https://github.com/jasonviipers/vipers/tree/main/.agents/skills/ultracite
Command: npx skills add https://github.com/jasonviipers/vipers --skill ultracite-jasonviipers

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires ultracite, and includes references (resource) components.

What problem does it solve? Maintaining consistent code style and catching errors across JavaScript/TypeScript projects requires configuring linters and formatters, which is tedious and error-prone. Ultracite provides a zero-config preset that unifies linting and formatting setup, execution, and troubleshooting. ## Core Features & Use Cases - Zero-Config Initialization: Set up linting and formatting with ultracite init, choosing between Oxlint, Biome, or ESLint backends, plus framework presets for React, Next.js, Vue, and more. - Check, Fix, and Diagnose: Run ultracite check for read-only linting, ultracite fix for auto-fixes, and ultracite doctor to diagnose setup problems like conflicting configs. - Code Standards Guidance: Enforces type safety, modern JS/TS patterns, accessibility, security, and performance rules when writing or reviewing code. - Use Case: You join a Next.js project with inconsistent formatting. Run ultracite init --linter biome --frameworks react next to configure the toolchain, then ultracite fix to normalize the entire codebase. ## Quick Start Initialize Ultracite in my project and run a lint check to find and fix any code style issues.

Frequently Asked Questions about ultracite

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I set up linting and formatting in a TypeScript project?

Run `bunx ultracite init` for interactive setup, or pass flags like `--pm bun --linter biome --frameworks react next --quiet` for non-interactive CI use. It creates config files extending Ultracite presets and installs dependencies.

What is the difference between Biome, ESLint, and Oxlint backends in Ultracite?

Oxlint with Oxfmt is the recommended default for speed, Biome offers an all-in-one toolchain with a type-aware preset, and ESLint pairs with Prettier and Stylelint for maximum ecosystem compatibility. All three share the same Ultracite rule presets.

How do I check if a project uses Ultracite?

Look for `ultracite` in package.json dependencies, then detect the active linter by searching upward for biome.json, eslint.config.*, or oxlint.config.ts files. The config should extend ultracite presets like `ultracite/biome/core`.

Why are my Ultracite lint rules not applying?

Rules fail to apply when the config file does not extend the correct presets for your framework, or when legacy configs conflict. Run `bunx ultracite doctor` to diagnose, and delete old `.eslintrc.*` or `.prettierrc.*` files after migrating.

Can Ultracite run in CI pipelines non-interactively?

Yes, pass the `--quiet` flag with explicit options like `--pm`, `--linter`, `--frameworks`, and `--integrations` to skip prompts. Quiet mode is auto-detected when `CI=true`, defaulting to the oxlint linter.