The first section is a table of links, each naming a kind of work and the guide to read before starting it. Documentation is split into three trees by audience, and a section of helper commands replaces the equivalent raw shell tools.
Quoted passages are verbatim. Open one to see it in the source.
01 / Router files
Task guides before rules
Seven links open the file, covering command metadata, install scripts, the desktop shell, the icon font, acceptance tests, visual verification and migrations. Work that touches migrations loads the migrations guide; work that does not, does not pay for it.
02 / From this file
Three documentation trees, split by audience
Task procedure, system reference and end-user documentation each have their own directory, with the audience stated for each. The user manual carries an explicit exclusion.
Source excerpt starting at line 20.
20- `manual/` - end-user documentation for using Omarchy, published; never codebase internals
03 / From this file
Helper commands in place of the obvious tool
A list maps project commands onto the tools they replace: a package helper rather than pacman, a notification helper rather than notify-send. The wrappers handle cases the raw commands do not.
04 / Hard prohibitions
Defensive checks ruled out where they are noise
Commands from the default package set are stated to be runtime invariants, so presence checks around them are wrong. Presence helpers are reserved for genuinely optional dependencies and code that can run before the default set is installed, with a listed set of exceptions.
Source excerpt starting at line 88.
88Commands installed by Omarchy's default package set are runtime invariants. Invoke them directly; do not add defensive `omarchy-cmd-present` / `omarchy-cmd-missing` checks around them. Use command-presence helpers only for genuinely optional dependencies or code that can run before the default package set is installed.
05 / Pointing at the source of truth
One list, not two
The command prefix section gives common examples, then points at the array in the router as authoritative, with the stated reason that a second copy drifts.
Source excerpt starting at line 57.
57Do not maintain a second exhaustive prefix list here. Consult
06 / From this file
A documented footgun
The config refresh helper interpolates its argument into two paths and checks only for existence, so a path containing a traversal resolves and writes outside the config directory. The file states the behavior rather than describing the helper as validating.
Put it to work
Borrow this for your repo
01Lead with a table of task guides. It is the main lever on what every request pays for.
02If you have more than one documentation directory, state the audience for each.
03List the wrapper commands that replace the obvious tool, and say which defensive checks are noise.
04Where two copies of a list could drift, name the authoritative one and refuse to keep the second.
Omarchy's file tells an agent how the codebase works. It cannot tell it which bug three customers hit this week. Modem keeps that context current and attaches it to the work.