Amp (amp)
Set up this tool
Amp gets AGENTS.md, skills, MCP servers, x-amp settings, and orb setup from environment specs. It has no file-based agents or commands.
Set outputs.amp.agents: skill to write agents as on-demand skills; see agents as skills.
First rule
Install the client using the official setup guide, then open your project in it.
Select amp in agnostic-ai.yaml, then follow First rule to add the shared commit-prefix rule and sync it. With the default paths, it reaches AGENTS.md.
Agent prompts can become skills, but Amp has no native file-based custom agents.
For existing files, check what import amp reads before syncing.
Verify
Run agnostic-ai sync --check and inspect AGENTS.md for the commit-prefix rule. Open the project in Amp and ask for a commit subject for a small fix; it should use fix:.
Next, add a skill.
Output
AGENTS.md # entry-point pointer body (written by sync, shared by every tool that reads AGENTS.md)
.agents/skills/<name>/SKILL.md # one folder per skill (Amp's native skills path)
.agents/setup # executable dependency setup when an environment sets install
.amp/services.yaml # supervised services when an environment sets terminals
.amp/settings.json # when MCP entries or settings keys exist (merged with existing user config)
Native mappings
Field mappings, discovery, and compatibility
Rules
Root rules go into AGENTS.md. Scoped rules use <scope>/AGENTS.md. See directory-specific instructions for how other tools read them.
Skills
Amp's native skills layout. Frontmatter carries name and description. Files next to the skill are copied as they are. Amp replaced custom slash commands with skills, so skills are no longer written as .agents/commands/skill-<name>.md.
- Amp has no user-only skill: it removed user-invokable skills on 2026-05-06, and the model decides when to load every skill. So
disable-model-invocationis dropped with a note, and commands are skipped. - Any
x-ampkey passes through.x-amp.mcpServersties MCP servers to one skill and hides their tools until it loads. Amp recommends this over user settings for most cases (Amp skills docs). A siblingmcp.jsonalso works, and frontmatter wins. - Amp also loads
.claude/skills/,~/.claude/skills/, and~/.claude/plugins/cache/. The first skill with a givennamewins, and.agents/skills/comes before.claude/skills/(skill order). A skill synced to bothclaudeandamploads once. A skill forclaudeonly still loads. - A skill with the same name in
~/.config/agents/skills/,~/.agents/skills/, or~/.config/amp/skills/hides the project skill.~/.claude/skills/does not. amp.skills.disableClaudeCodeSkillsskips the Claude Code directories.amp.skills.disableGlobalAgentsSkillsskips~/.config/agents/skills/and~/.agents/skills/(settings schema). Set both withx-ampon a settings spec. Neither has a portable field.amp.skills.pathadds directories, separated by colons or semicolons.
Agents
No native agent output. The default writes no agent file; outputs.amp.agents: skill converts the prompt to a skill. Amp removed custom commands, so sync no longer writes .agents/commands/<name>.md and removes old ones.
- With
outputs.amp.rules-fileset, agent bodies reach Amp in the combined document. Otherwise Amp only gets the entry-point pointer to the source specs, andsyncsays so. - By default, agents do not go to
.agents/skills/<name>/SKILL.md. Other tools share that tree, so an agent would duplicate the spec and overwrite a skill with the same name. - Amp's native agent API (
amp.createAgent(...)/amp.registerAgentMode(...)in plugins) works only in code.
Commands
Not supported. Commands register in plugin code via amp.registerCommand(...) (Amp docs index). A command spec for amp is skipped with a warning (on-unsupported: warn by default). .agents/checks/ is gone from Amp's docs, so there is no review output either.
MCP
Under amp.mcpServers (one dotted key, not a nested object). Stdio writes command, args, and env. HTTP and SSE write url and headers. Other fields go through x-amp.
x-amp.includeToolslimits the tools a server exposes (tool names or glob patterns, Amp skills docs). Amp recommends fewer tools for better model performance. It stays underx-ampbecause Amp's MCP page does not mention it.- Sync changes only
amp.mcpServers. Other keys (theme, editor settings) stay. - Workspace MCP servers need approval: the CLI asks when it first finds one, and orbs ask separately. An orb approval can cover later orbs, yours or (from a workspace admin) every member's, until a synced change to that server's entry makes orbs ask again.
Settings
Amp does not read portable settings. Each sync reports unsupported permissions.allow, permissions.deny, permissions.ask, and model fields. Your portable deny list is not enforced. Only x-amp keys, in Amp's spelling, are written.
They go to
.amp/settings.json, Amp's workspace settings file. Amp finds it by searching up from the working directory to the repository root. Workspace settings override user settings, exceptamp.keymap: keymap entries in user settings override workspace ones. MCP servers and settings are merged in one write, and every other key stays.allowandaskcannot be written. Amp's settings schema has no tool allow-list.amp.tools.disableonly disables, andamp.mcpPermissionsmatches MCP servers, not tools. Amp does not ask for approval by default and points to a permissions plugin.modelhas no key either, because Amp picks models through the Dial.Portable
denyis not enforced.amp.tools.disabletakes native tool names,builtin:toolname, and*patterns. Runamp tools list, then copy the names you want to disable intox-amp.amp.tools.disable. Use names from your installed version; a name Amp does not recognize leaves the tool available.A settings spec cannot set
amp.mcpServers, because that would replace every server from MCP specs.The nearest file wins, with no merging. A subdirectory with its own
.amp/hides the root file for that subtree, for settings andamp.mcpServers. Delete the nested.amp/or copy the generated keys into it.
Environments
install writes an executable .agents/setup, which Amp runs while preparing a project orb or snapshot. Named terminals write .amp/services.yaml: services Amp keeps running, apart from the setup script.
- Each service needs
command. Its name uses only lowercase letters, numbers, and hyphens, starts with a letter or number, and has at most 32 characters. x-amp.terminalscan setcwd,port,env,health,portal,portals,review, andplatforms.platformsis an optional list oflinuxordarwin. Amp skips a service that leaves out the OS it runs on. An empty list is invalid.- There is no
.agents/resume. It runs after activation and on every wake with thread credentials, so it is neither dependency setup nor a service. - Environment specs merge by top-level field, and the last one wins.
Old AGENT.md files
Amp uses AGENTS.md (plural). On the first sync after upgrading, a generated AGENT.md at the configured root is renamed to AGENT.md.bak. A hand-written AGENT.md (no Generated by agnostic-ai marker) is left alone.
Config keys
| Key | Default | Notes |
|---|---|---|
outputs.amp.skills-dir | .agents/skills | |
outputs.amp.agents | unset (agents are dropped) | skill writes each agent as an on-demand skill. Sync keeps it off with a note while another tool with subagents writes the same skills folder; see agents as skills |
outputs.amp.mcp-file | .amp/settings.json | also carries settings; one file, one override |
outputs.amp.setup-file | .agents/setup | |
outputs.amp.environment-file | .amp/services.yaml | |
outputs.amp.rules-file | unset | writes legacy joined rules and skips the write of instructions that point to source specs |
outputs.amp.commands-dir no longer has an effect.
Import
agnostic-ai import amp reads AGENTS.md, skills from .agents/skills/, and MCP servers from .amp/settings.json. Skill folders are restored in full, with bundled files and executable modes. Settings keys are not imported, because none has a portable field. An old .agents/commands/ tree still imports, one agent per file.
Protected paths
Not enforced. Sync cannot write an edit-blocking rule or hook for this tool, so it prints a protected-path coverage note.