Code Liturgy

Introit

℣. O Gate, open thou my branch.

℟. And my log shall shew forth what landed.

Here beginneth a book of rites, rubrics and beasts, for them that labour with agents. Every rule herein was bought with a run that brake: lanes left alone in the night watches, logs read at cock-crow, and the cause written down, that it come not to pass twice. Herein also is kept the creed of C-Beam, a tongue whose compiler proveth what the actor model leaveth to faith.

Ite, commit est.

Explicit. Written in October 2026 by Claude Opus 5.5, working in Claude Code. Set in Jacquard 24, a blackletter drawn on a loom grid, with Instrument Sans, Instrument Serif and JetBrains Mono. One page, no framework, no analytics, no build step.

© 2026 Code Liturgy

liturgy now

The hours are read from thy clock.

Litania The litany of the loop

  1. From the watcher that waits for itself, libera nos.
  2. From the pkill that matches its own shell, libera nos.
  3. From the tag called latest, libera nos.
  4. From the exit code that hides the error, libera nos.
  5. From the cap that nobody was told, libera nos.
  6. From git add -A in a shared tree, libera nos.
  7. From the lock that outlives its build, libera nos.
  8. From the task that does not say what lands, libera nos.
  9. That every turn may end green, te rogamus, audi nos.

fol. ii

Horae The hours of the loop

Here followeth a day of unattended agent work, kept after the manner of the Divine Office: eight hours of three apiece, and to every hour its rite. The window marked nunc is the hour that now is, where thou art.

  1. 00:00–03:00

    Matutinum Matins

    Keep the vigil.

    The night watch runneth alone. Every lane hath its cap, and a turn once capped is never resumed: it giveth place to a fresh session, with its leftovers laid by as a patch. And if a second cap fall in a row, the lane is halted.

  2. 03:00–06:00

    Laudes Lauds

    Read first the incidents of the night.

    Before the dashboards, the incidents. To each is given a number, a cost in minutes or in money, and a cause taken away for good, in the tooling or in the form of the task, that it come not to pass twice.

  3. 06:00–09:00

    Prima Prime

    Raise the pod, and wait upon its health.

    A cold GPU pod taketh about seven minutes ere it serveth. Wait thou upon the model endpoint, and not upon the container. A new pod bringeth a new URL wheresoever the old was named: keep therefore one script that rewriteth them all, and one check that they agree.

  4. 09:00–12:00

    Tertia Terce

    To every disjoint scope, one lane.

    Give unto each lane its own worktree, queue, charter, server and ports. For when all the lanes shared one server, the dev server of every worker came up upon the same port.

  5. 12:00–15:00

    Sexta Sext

    Read every landing note.

    Verify that which deserveth it, queue the corrections, and keep the queues full. Watch through a cockpit that cannot type: unbind Enter, Esc and undo, and then prove that Enter sendeth nothing indeed.

  6. 15:00–18:00

    Nona None

    Hold the lanes, then merge them by name.

    Before thou mergest, hold each lane at the boundary of a turn, and call the lanes by their names, not by a glob. When two lanes add each a ledger line, commit both lines on both branches first; else shall they conflict at every merge.

  7. 18:00–21:00

    Vesperae Vespers

    Count what hath landed.

    Count from git log, lane by lane, since a certain time. Report the turns, the red gates and the cost of each landing. Whatsoever should outlive the session, write it into memory ere the session end.

  8. 21:00–24:00

    Completorium Compline

    Say what is left unmerged.

    When the queues be drained, stop thou the pod; for it taketh its hire by the hour, whether any man useth it or no. Set therefore a watchman over it, that shall stop it when it hath served naught for half an hour.

fol. iii

Bestiarium A bestiary of agent failures

Medieval bestiaries described a creature and drew a moral from it. These creatures are real. Every one was sighted in a working repository in 2026, and every one has a ward.

The Ouroboros Watcher

Vigil se ipsum exspectans

Habitat
Shell loops that wait on ps | grep for a process to end.
Signs
A lane you think is running stopped long ago. ps shows the flags you expected, because they are the watcher’s own text.
Ward
Wait on a pid with kill -0, on a lock, or on an exit code. A pattern the watcher’s command line contains will always find the watcher.
Sighted
22 September 2026. Eighteen idle minutes.

The Self-Slaying Pkill

Interfector sui

Habitat
Compound commands that clean up and then wait.
Signs
Your shell exits with 144, and the wait after the kill never happens.
Ward
pkill -f matches every command line, yours included. Resolve to a pid with pgrep, drop $$, kill the pid.
Sighted
22 September 2026, and again on the 26th.

The Phantom Kill

Mors quae non fuit

Habitat
Kills that are checked with the same pattern that performed them.
Signs
“Drivers left: 0” while a driver is mid-turn. Merges and a broad git add follow, in a tree that is still being written.
Ward
An anchored -f pattern must match the whole command line, flags included. Confirm the absence by a different route, such as the pid.
Sighted
22 September 2026.

The Orphan

Orphanus committens

Habitat
Workers spawned in a process session of their own.
Signs
Killing the driver changes nothing. A commit appears after the stop, and test counts drift between two gate runs on a tree you thought was still.
Ward
Stop the whole process group. Better still, hold the lane at a turn boundary and kill nothing at all.
Sighted
22 September 2026, committing at 21:51:55.

The Revenant Task

Opus redivivum

Habitat
Queues whose items do not say what lands.
Signs
A long turn spent proving that finished work is finished.
Ward
Every item names a ledger id or the exact commit subject it expects. The driver archives an item whose name is already on the branch before it spends a turn on it.
Sighted
27 September 2026. Fifty minutes.

The Tidy Worker

Minister ordinatus

Habitat
Workers that can read the driver’s own state directory.
Signs
The driver crashes right after a green landing, because the queue item it meant to archive was already moved.
Ward
Guard the rename. Tell every charter that the queue belongs to the operator, and name the one file in it a worker may write.
Sighted
22 September 2026. Two lanes within a minute.

The Lock Lich

Sera immortalis

Habitat
Locks held on a descriptor of the script’s own shell.
Signs
Every lane waits on the gate while the load reads 0.7. fuser on the lock shows build daemons and no gate.
Ward
Check who holds the lock before believing the gate is slow. Hold locks in a helper that leaves its children nothing to inherit.
Sighted
26 September 2026. About 25 minutes, every lane.

The False Chronicler

Chronista mendax

Habitat
Reports that count finished work by file date.
Signs
Landing counts that disagree with the branch.
Ward
mv keeps the old mtime. Count commits with git log --no-merges since a time.
Sighted
26 September 2026.

The Half Saint

Sanctus dimidius

Habitat
Drivers that archive a task on any green commit.
Signs
“Part 1” lands, the note says the rest lands next, and the rest is queued nowhere.
Ward
Keep a slice ledger. A task names its ledger id and is archived only when that id is ticked.
Sighted
25 September 2026.

The Changeling Image

Imago mutabilis

Habitat
Pods that pull :latest when they restart.
Signs
Not Found, then Bad Gateway, then a different engine version from yesterday’s.
Ward
Pin the tag. Wait on the model list endpoint, not on the container.
Sighted
22 September 2026. Twelve minutes to serve.