Skip to content
Ultracite
Esc
↑↓navigate↵open⌘Jpreview

Agents

The same standard in every coding agent

ultracite init writes the rules into AGENTS.md, which coding agents read before they write a line, and for some adds a hook that checks every edit. 40 agents, one command.

What init writes10 files
  • AGENTS.md39 agents
  • CLAUDE.mdImportClaude Code
  • .claude/settings.jsonHookClaude Code
  • .codex/hooks.jsonHookCodex
  • replit.mdCopyReplit Agent
  • .deepagents/hooks.jsonHookDeep Agents
  • .github/hooks/ultracite.jsonHookGitHub Copilot
  • .aider.conf.ymlConfigAider
  • .gemini/settings.jsonConfigGemini CLI
  • .grok/hooks/ultracite.jsonHookGrok Build

Claude Code and Codex get the deepest setup: the rules before they write, and an ultracite fix flag that hands them whatever autofix can’t settle.

  • Claude CodeAnthropic

    Anthropic’s agentic coding tool that edits files and runs commands from your terminal, IDE or desktop.

    Rules
    AGENTS.mdread on its own, or through an @AGENTS.md import in your CLAUDE.md
    Hook
    .claude/settings.jsonruns ultracite fix --hook after every edit and reports what’s left
    Fix
    npx ultracite fix --claudehands what autofix can’t settle to Claude Code

    Ultracite for Claude Code--agents claude

  • CodexOpenAI

    OpenAI’s coding agent for the terminal, IDEs, the ChatGPT desktop app and cloud tasks.

    Rules
    AGENTS.mdread before every task
    Hook
    .codex/hooks.jsonruns ultracite fix --hook after every edit and reports what’s left
    Fix
    npx ultracite fix --codexhands what autofix can’t settle to Codex

    Ultracite for Codex--agents codex

In the terminal

CLIs and TUIs that read your repo, edit files and run commands.

Agent questions, answered

Which file does Ultracite write for my agent?
AGENTS.md, for every agent. 36 of them read it on their own. Claude Code reads it through an @AGENTS.md import when your project has its own CLAUDE.md, Gemini CLI once .gemini/settings.json lists it, and Aider once .aider.conf.yml does; init sets each of those up. Replit Agent reads only replit.md, so it gets a copy of the rules there.
What happens to my existing AGENTS.md?
Ultracite adds its block, starting at # Ultracite Code Standards, below your own content. Running init again replaces that block in place and leaves the rest of the file alone.
Which agents get checked after every edit?
With --hooks, init sets up a hook that runs ultracite fix --hook on every file the agent edits, in Cursor, Devin Desktop, CodeBuddy, Claude Code, Codex, Deep Agents, GitHub Copilot, and Grok Build. Aider runs ultracite fix on each file it edits through the lint-cmd that init sets in .aider.conf.yml. For OpenCode, add the plugin from its page.
My agent isn’t listed. Will Ultracite work with it?
Most likely. Nearly every coding agent reads AGENTS.md now, so npx ultracite init --agents universal covers it. If yours reads another file, copy the Ultracite block from AGENTS.md into it.
How do I pick agents without the prompt?
init asks which agents you use. Pass --agents with one or more IDs, separated by spaces, to skip the prompts: npx ultracite init --agents claude opencode.
I set Ultracite up before. What happens to CLAUDE.md and GEMINI.md?
Run init again and the rules move to AGENTS.md. init takes Ultracite’s block out of the files earlier versions wrote (.claude/CLAUDE.md, GEMINI.md, Firebender’s rule file and Aider’s ultracite.md), removes any file left with nothing else in it, and sets up the import or settings that agent needs to read AGENTS.md. Your own content in those files stays.

Ship less slop

One command sets up your linter, formatter, editor and agents. Works with Oxlint, Biome and ESLint.