Amp runs your lint commands without asking
Amp reads Ultracite’s rules from AGENTS.md in your working directory and every parent up to $HOME, so they’re in context from the first message. It doesn’t ask before running tools by default, so when the rules say to run ultracite fix after editing, it runs it and fixes what’s left.
Amp by AmpChecked against October 2026
# Ultracite Code Standards
This project uses **Ultracite**, a zero-config preset that enforces strict code quality standards through automated formatting and linting.
## Quick Reference
- **Format code**: `npx ultracite fix`
- **Check for issues**: `npx ultracite check`
- **Diagnose setup**: `npx ultracite doctor`
Oxlint + Oxfmt (the underlying engine) provides robust linting and formatting. Most issues are automatically fixable.
…- 1
System AGENTS.mdSystem-wide guidance, always included when present:/etc/ampcode/AGENTS.mdon Linux,/Library/Application Support/ampcode/AGENTS.mdon macOS. - 2
~/.config/amp/AGENTS.mdYour own guidance for every project;~/.config/AGENTS.mdworks too. - 3
AGENTS.mdUltraciteIn the working directory and each parent up to$HOME, always included. - 4
src/**/AGENTS.mdA subtree’s file, included when Amp reads a file in that subtree.
How Amp reads the rules
Amp includes several AGENTS.md files at once: system-wide, personal, and the project’s from your working directory up to $HOME. Files deeper in the tree join when Amp reads a file below them.
- Fallback
AGENT.mdorCLAUDE.md, read only in a folder with noAGENTS.md.- Monorepos
- Parents count up to
$HOME, so a repo root’sAGENTS.mdstill applies when you start Amp inside a package. - Mentions
@pathpulls another file in, relative to the file that mentions it. Absolute paths,@~/and globs work; mentions in code blocks don’t.- Scoped mentions
- A mentioned file with
globsin its front matter loads only after Amp reads a matching file. - Opt out
AMP_IGNORE_GUIDANCE_FILEStakes colon-separated globs of files to skip;*turns automatic loading off.- Workspace
- Admins can set guidance for every member. It loads before personal and repository guidance and doesn’t reach subagents.
Amp runs the checks the rules ask for
Ultracite doesn’t install an Amp plugin, so the loop is the one in AGENTS.md: edit, run ultracite fix, then fix what it reports. Amp plugins can handle tool.result and replace a result before the model sees it, but Ultracite doesn’t configure one yet.
- **Format code**: `npx ultracite fix`
- **Check for issues**: `npx ultracite check`
- **Diagnose setup**: `npx ultracite doctor`- 01Amp edits a file in the thread.
- 02Following
AGENTS.md, it runsultracite fixin the shell, with no approval prompt by default. - 03It reads what
ultracite fixcouldn’t settle and edits again. - 04On a pull request, Amp subscribes to the checks before reporting it complete, so a failing
ultracite checkin CI comes back to the thread.
Worth knowing about Amp
No approval prompts by default
Amp doesn’t ask before running tools, so
ultracite checkandultracite fixrun as soon as the rules call for them. If you want a gate, Amp’s docs point to a plugin that handlestool.call.Orbs need your dependencies
Orbs are remote machines where Amp works a thread without your computer. Commit an executable
.agents/setupthat installs your dependencies sonpx ultraciteresolves there; Amp reuses the prepared snapshot for up to 72 hours, and editing the script doesn’t refresh it.Pull requests stay subscribed
Before reporting a pull request complete, Amp subscribes to its comments, reviews and checks, and new reviews continue the same thread. Run
ultracite checkin CI and a failure reaches Amp without you pasting it in.The Ultracite skill
Amp loads skills from
.agents/skills/in the project and its parent folders, so it finds the Ultracite skillinitinstalls there. It also reads.claude/skills/; runamp skills listto see what it found.
Amp questions, answered
- Does Amp read AGENTS.md?
- Yes. Amp always includes the
AGENTS.mdin your working directory and in each parent folder up to$HOME, and adds a subtree’s file when it reads a file there.ultracite init --agents ampwrites Ultracite’s rules to the root one. - Does Amp read CLAUDE.md?
- Only as a fallback. Amp reads
AGENT.mdorCLAUDE.mdin a folder that has noAGENTS.md, so onceinitwritesAGENTS.md, aCLAUDE.mdbeside it is skipped. Move what you need intoAGENTS.md, or pull it in with an@CLAUDE.mdmention. - Does Amp support hooks?
- Amp has plugins instead: TypeScript or JavaScript files in
.amp/plugins/that handle events such astool.callandtool.result. Atool.resulthandler runs before the result goes back to the model and can replace it. Ultracite doesn’t ship an Amp plugin yet. - Can I make Amp ask before it runs commands?
- With a plugin. Amp doesn’t ask before running tools by default, and its docs point to a
tool.callhandler that returnsallow,reject-and-continueor another action. Workspace admins can share one with every member as a workspace plugin.
Keep going
- AgentCodexOpenAI’s coding agent for the terminal, IDEs, the ChatGPT desktop app and cloud tasks.
- AgentDroidFactory’s coding agent CLI, run interactively or headless in CI.
- AgentPiMinimal open-source terminal agent you extend with TypeScript extensions and skills.
- DocsAgent rulesWhat
initwrites for every agent, and how to keep it current.
Ship less slop
One command sets up your linter, formatter, editor and agents. Works with Oxlint, Biome and ESLint.