Haiku

Overview

How a .haiku spec becomes a runnable test, and how the cache keeps repeated runs fast.

A handful of ideas explain everything Haiku does. Read these once and the rest of the docs read themselves.

  • The .haiku file format — filename rules, frontmatter fields, body conventions. The filename's extension chooses the target; plain .haiku files are not accepted.
  • How recite works — how a spec becomes the artifact your runner expects (a .sim action sequence for iOS, a real test_*.py for Python, a *_test.rs for Rust), how the cache decides when to skip recompiling, and what every exit code means.
  • How record works — how Haiku watches a live UI session or a backend test run and turns it into a .haiku spec, with the same shape you'd write by hand.