Site architecture

Three sites publish the work. All three are static files served by GitHub Pages and deployed by GitHub Actions. A fourth publication, the Substack newsletter, is hosted by Substack and only read by the crawler.

SiteBuilt withRepositoryRole
machinebehavior.ioHand-written HTML, one shared stylesheet, Python generators for the slips page, the map data and these docsuncovertechtalent/machinebehavior.io (public)Research programme: claims, experiments, objections, case files, Inside, map, docs
tychat.ioStatic pages and plain-text lessonsuncovertechtalent/tychat.io (public)Lessons a chat model reads on request, indexed in llms.txt
uncovertechtalent.comHugoprivate repositoryBlog and the Uncover Tech Talent offer
SubstackSubstacknoneNewsletter; canonical home of some pieces

Shared parts

  • Conformity action. The checks live in a composite action at .github/actions/conformity/ and run on all three sites with a per-site configuration. See Conformity gate.
  • Machine-readable entry points. Each site serves sitemap.xml and llms.txt. On machinebehavior.io, llms.txt lists every page with a one-line summary, including the docs.
  • Conformity record. Each site publishes /conformity/latest.json; Inside reads all three to show site status.

machinebehavior.io layout

PathContents
/ and one directory per pageindex.html per page, root-absolute links only
style.cssShared stylesheet of the research pages
conformity/Rendered gate page, latest.json, site-tier.json (rule tiers), requirements.json, probe records
map/The map page and graph.json
inside/Inside front page; inside/docs/ holds this tree
predictions/Hashed predictions, checked by the gate
scripts/Generators and the crawler; scripts/docs/ holds the docs sources

Several Claude Code sessions push this repository, each owning one track of work. The gate is the shared control between them: a session can push, and only a passing check deploys.