.hatch3r/agents/ configuration files. Supports structured YAML overrides and free-form markdown instruction injection, all propagated to every adapter output on sync.
Customization File Locations
Each agent supports two optional customization files:YAML Customization Schema
Fields
| Field | Type | Default | Description |
|---|---|---|---|
model | string | (from canonical/manifest) | Override the agent’s model preference |
description | string | (from canonical) | Override the agent’s description in adapter frontmatter |
enabled | boolean | true | Set to false to exclude this agent from adapter output generation |
Model Resolution Order
Model is resolved with the following priority (highest wins):.hatch3r/agents/{id}.customize.yaml→modelhatch.json→models.agents.{id}- Canonical agent frontmatter →
model hatch.json→models.default
opus, sonnet, haiku, codex, gemini-pro, etc.
Markdown Customization
Create.hatch3r/agents/{agent-id}.customize.md with free-form markdown to inject project-specific instructions into the agent’s managed block. This content is appended after the canonical agent definition under a ## Project Customizations header.
Example
File:.hatch3r/agents/hatch3r-reviewer.customize.md
How It Works
- During
hatch3r syncorhatch3r init, adapters read the.customize.mdfile - The markdown content is appended inside the managed block, after the canonical agent content
- All adapter outputs (Cursor, Claude, Copilot, etc.) receive the customization automatically
- Changes to
.customize.mdpropagate on every sync — edit once, apply everywhere
Resulting Adapter Output
Per-Agent Customization Examples
| Agent | Common Customizations |
|---|---|
| reviewer | Domain review checklists, severity focus, architecture context |
| security-auditor | Compliance requirements (HIPAA, SOC2, PCI), custom invariants |
| test-writer | Coverage targets, required test types, framework preferences |
| implementer | Architecture constraints, coding patterns, dependency restrictions |
| a11y-auditor | Additional WCAG criteria, custom accessibility requirements |
| perf-profiler | Custom performance budgets, monitoring tool guidance |
| dependency-auditor | Approved/denied dependency lists, update policies |
| docs-writer | Documentation templates, terminology glossary |
| lint-fixer | Custom lint rules, auto-fix preferences |
| ci-watcher | Custom CI job knowledge, failure pattern library |
Disabling an Agent
To exclude an agent from adapter output without deleting its canonical file:.agents/agents/ but no adapter output is generated for it.
Workflow
- Identify which agent to customize
- Create
.hatch3r/agents/{agent-id}.customize.yamland/or.customize.md - Run
npx hatch3r syncto propagate changes to all adapter outputs - Verify the customization appears in the tool-specific files (e.g.,
.cursor/agents/)
Guardrails
- Customization files cannot remove the agent’s core role or boundaries
- Invalid YAML produces warnings but does not prevent agent execution (graceful degradation)
- Customization files should be committed to the repository
Related
- Skill customization:
hatch3r-skill-customizecommand - Command customization:
hatch3r-command-customizecommand - Rule customization:
hatch3r-rule-customizecommand

