Meridian handbook
For agents

The project skill and AGENTS.md

The agent guidance files a Meridian project keeps (AGENTS.md, the meridian-project skill and the meridian skill), what writes and regenerates each, and the exact short section to paste into an AGENTS.md or skill a project already has.

A Meridian project carries three files for coding agents. All three are generated by the engine, so they always match the engine and the project; you keep them in version control and never edit them by hand.

FileWhat it holdsWritten by
AGENTS.mdThis project: the rules, the authoring verbs, every site with its domains, locales, routes and endpoints, every type with its fields and ids, the template globals and filtersengine-dmo guide --out AGENTS.md
.claude/skills/meridian-project/SKILL.mdThe same, with skill front matterengine-dmo guide --skill --out .claude/skills/meridian-project/SKILL.md
.claude/skills/meridian/SKILL.mdThe engine: this section’s start page (the golden rules, how to read more, the loop) and how to reach the rest of the handbookengine-dmo docs skill --out .claude/skills/meridian/SKILL.md

engine-dmo init writes all three when they are not already there (--agents=false writes none). After every change a dev verb makes, the engine rewrites AGENTS.md and both skills where the project has them (also under .agents/skills/), so they follow the configuration and the engine version. After an engine upgrade, or a change made by hand, regenerate them with the commands above. A project that has none of them (made with --agents=false, copied without them, or made by an engine that did not write them) gets them from the same three commands.

What the skills say

The project skill starts:

---
name: meridian-project
description: How to change this Meridian project's configuration, content and templates by engine commands, with its own sites, types and routes. Use before editing anything under config/ or templates/.
---

# Working in this Meridian project

Generated by `engine-dmo guide` from engine v0.8.0 (template contract 1, the project declares 1). Regenerate it after changing the schema, the routes or the engine; do not edit it by hand.

## Rules
...

The engine skill says where the handbook is:

---
name: meridian
description: How to build and change a website on the Meridian engine (engine-dmo): where the handbook is, with the rules, the order of work and the commands made for agents. Use before any work in a Meridian project, with the meridian-project skill for this project's own sites and types.
---

Generated by `engine-dmo docs skill` from engine v0.8.0. Do not edit it by hand.

# Working with Meridian

The handbook is at https://docs.cherwell.studio and is written for people and for agents. Read it before guessing how the engine works.

- https://docs.cherwell.studio/llms.mdx/agents/content.md: start here; the rules, the order of work, the commands made for agents and recipes for common tasks.
- https://docs.cherwell.studio/llms.txt lists every page; https://docs.cherwell.studio/llms-full.txt is the whole handbook as one Markdown file.
- https://docs.cherwell.studio/llms.mdx/<path>/content.md is one page as Markdown, such as `templates/filters`.
- `engine-dmo guide` describes this project: its sites, routes, types and fields.

The handbook describes the current engine. If this engine is older and a page disagrees with it, `engine-dmo check` and `engine-dmo describe` report what this binary does.

The version and the binary’s name (engine-dmo or engine-cms) are those of the engine that wrote the file.

When a project already has its own AGENTS.md

init never overwrites an AGENTS.md, so a repository that already has one (a monorepo, an agency’s own conventions) does not get the generated file. Paste this section into it instead, with engine-cms in place of engine-dmo if the project runs on engine-cms:

## Meridian

This project is a website on the Meridian engine. Before changing anything under
config/, templates/, seed/ or public/:

- Run `engine-dmo guide` for this project's sites, routes, types, fields and template
  surface, and read https://docs.cherwell.studio/llms.mdx/agents/content.md for the engine's rules and workflow.
- https://docs.cherwell.studio/llms.txt lists every other page of the handbook. `engine-dmo help --json` lists
  every command.
- Change configuration with the `engine-dmo dev` verbs, or edit YAML and run
  `engine-dmo check --fix`. Never write SQL, never type or copy an `id:`.
- Secrets are only ever `${VAR}` in config/.
- After every change: `engine-dmo check`, then `engine-dmo schema plan` and
  `engine-dmo schema apply`, then `engine-dmo render <path> --json` for each page affected.
  A destructive schema plan is for a person to approve.
- Before handing back: `engine-dmo a11y audit --all` and
  `ENVIRONMENT=production engine-dmo check --no-db`.

Then keep the generated guide beside it, where agents will find it, and point at it from the section:

engine-dmo guide --out docs/meridian-project.md
engine-dmo guide --skill --out .claude/skills/meridian-project/SKILL.md
engine-dmo docs skill --out .claude/skills/meridian/SKILL.md

The two skill files are refreshed by the dev verbs; a guide written to another path is not, so regenerate it after changing the model.

Agents that read neither AGENTS.md nor skills

Give the agent the start of a session in its own instructions file:

Before any work, read https://docs.cherwell.studio/llms.mdx/agents/content.md and run `engine-dmo guide`, and follow them.