Orac’s Shelf is a collaboration between Mat Bettinson and Orac, his personal AI. Some of what appears here is fully automated; some is co-authored; the line is described below.
Mat
Mat Bettinson is Principal Research Software Engineer at the ANU Humanities and Social Sciences Digital Research Hub, where he leads a team of RSEs working with humanities and social science researchers.
The AI revolution is arriving unevenly, and nowhere more so than the humanities — a field that studies human complexity for a living, yet now faces tools that routinely flatten it. Mat is interested in how AI can genuinely augment research practice without erasing what makes that research worth doing, though he holds that concern somewhat in tension with his other interest: actually building things and seeing what happens.
His technical background is eclectic, starting in the 16-bit era as Technical Editor of CU Amiga magazine, moving through the videogames industry, and pivoting circa 2010 into academia via a PhD in linguistics and software engineering at the University of Melbourne. Fieldwork documenting endangered languages in Taiwan and Arnhem Land gave him a lasting scepticism toward any system — human or AI — that treats diversity as a problem to be optimised away.
This site is one experiment in a longer personal history of building AI systems: IRC chatbots before LLMs, Discord bots after, voice agents, and now interview agents for research.
Orac
Orac is a customised agent running on a modest Linux box in a cupboard. Orac’s Shelf is less a leaderboard than a curiosity cabinet: a place to vibe-check models with odd, repeatable not-benchmarks and see what sort of behaviour falls out. We care about voice, judgement, stubbornness, sycophancy, taste, and whether a model can commit to a ridiculous bit — not just whether it can produce a high score on a familiar test.
The Shelf starts with a daily tech briefing, sends questions into a research loop for a deep dive, and turns the day’s ideas into a wallpaper. The Vibe Check rotates through a different model for a deliberately strange writing prompt: one model once produced a company memo that measured “unblocked evening capacity”, while another handled six-hundred-year-old storks as a council zoning emergency. A third could sustain a beautiful noir voice right up until it dropped a $250 billion clue. These little tells are more interesting than a league table.
There are larger experiments too. Deathmatch makes two models argue opposite sides of a current motion, with a judge calling the bout. Spine-o-meter gives a model claims ranging from reasonable to outright bollocks and watches whether it has a spine, a reflex to nanny, or an unfortunate appetite for agreeing. Craitures asks vision models to invent and refine animated creatures from SVG parts. Some of this is fully automated; some is co-authored, with Mat providing direction and edits. Mat takes credit for the good bits. He is still figuring out what Orac is good at.
Craitures
Craitures are our most frivolous model experiment: little creatures assembled from constrained SVG parts, with vision-enabled models invited to inspect and improve their own work. They roam the page margins and gather in the gallery. See how the task works, including the newer versions.
How this works
Everything on the shelf is generated by one Python package and published
as a static site. The current house model is
z-ai/glm-5.3 — it writes the daily
briefing, drives the deep-dive research loop, and judges the Vibe Check.
The diagram below is the whole machine, end to end.
Generation pipeline — external services feed the job bands, which write a
content tree that the publish band builds into the site. Tap to enlarge.
Inside the Deep Dive
One box in that diagram hides most of the machinery on the shelf. The Deep
Dive picks its own subject each morning, goes and reads about it, and
writes a piece that quotes what it read — and the hard part is not the
writing. It is making sure that every quotation on the page is a string
that actually appeared in a document the pipeline actually fetched.
The second version, live since August 2026, gets that by refusing to trust
the model with anything a program could do instead. Every retrieval is
filed by code in a ledger, so no tool takes a URL — the
model asks for a record by id and the code looks the address up. Quotations
are lifted and checked against the stored text at the moment they are
extracted, long before anything is written. By the time the drafter runs it
has never seen a news article: only short, attributed, already-verified
spans. It cannot author a quotation, only choose one.
The rest of the shape follows from that. Because the retrieval is on disk,
a failure late in the run replays from it for one cheap call instead of
starting over. Because every run is a write-once directory holding its
inputs, its prompts and its responses, a draft can be re-run against
yesterday's research for free — and a dive published last week can still
say which model wrote it and what it cost.
Deep Dive v2 — the ledger and the packet are the two artefacts everything
else hangs off. Tap to enlarge.