---
title: Agent Skills
description: Install the Ultracite skill for tools that support reusable skills, and keep repo-specific formatting decisions local to each project.
---

Ultracite supports two different AI guidance layers:

1. Repo-local agent rules generated by `npx ultracite init --agents ...`
2. A reusable Ultracite skill you can install once and carry across repositories

Use the global skill when your AI tool understands `SKILL.md`-style skills and you want a shared Ultracite baseline without copying the same instructions into every repo by hand.

## Install the skill

When you run `npx ultracite init`, it offers to install the skill (and skips the question if the skill is already installed). Pass `--install-skill` to install it without being asked, for example in a `--quiet` run:

```bash
npx ultracite init --install-skill
```

`init` installs the skill into your project without prompting. It runs `skills add haydenbleasel/ultracite --yes --agent universal`, plus the agents whose project folders already exist (such as `.claude`, `.windsurf`, `.codebuddy`, or `.roo`). `universal` is the shared `.agents/skills` folder that Codex, Cursor, GitHub Copilot, Gemini CLI, Amp, Cline, OpenCode, and more read.

To choose the agents and scope yourself, including a global install that carries across repositories, run the skills CLI directly:

```bash
npx skills add haydenbleasel/ultracite
```

This installs the reusable skill bundle from the repository so compatible tools can load it as a shared capability.

## What the skill includes

The installable skill ships with:

- `skills/ultracite/SKILL.md` for the main workflow and guidance
- `skills/ultracite/references/code-standards.md` for the detailed standards reference

The skill is designed to help an agent:

- detect when Ultracite is present in a project
- choose the active linter stack
- use the right `ultracite check`, `fix`, and `doctor` commands
- follow Ultracite's code quality, accessibility, performance, and testing standards

## Formatting stays project-local

The global skill intentionally does not hardcode formatter-specific settings such as line width, quote style, semicolons, or trailing commas.

Those details should come from the repository's configured linter and formatter instead:

- Biome projects should follow `biome.jsonc`
- ESLint projects should follow ESLint plus Prettier and Stylelint
- Oxlint projects should follow Oxlint plus Oxfmt

That keeps one global skill portable across multiple repositories without forcing every repo to share the same formatting choices.

## How it fits with repo instructions

The global skill is a baseline, not a replacement for repo-specific instructions.

Use repo-local files such as `AGENTS.md`, `CLAUDE.md`, `replit.md`, or other agent-specific config when you need to add:

- architecture decisions for a single codebase
- framework or deployment details
- project-specific naming or file layout rules
- workflow notes that only apply to one repository

In practice, the best setup is usually:

1. Install the global Ultracite skill once
2. Add repo-local Ultracite agent rules where your tool supports them
3. Let the repository's formatter config control formatting details

## When to use which option

Choose repo-local agent rules when you want committed instructions inside a specific repository and need every collaborator or cloud task to inherit the same contract.

Choose the global skill when you want Ultracite available everywhere by default and prefer to keep formatting and project specifics in each repository's own configuration.
