Skip to content

lAIfe

Fully unscripted life simulation.

lAIfe is a sandbox where LLM-driven players live in a 2D world. Each player observes what is around it, thinks about a mission, and asks the world to act. The world is the only authority: it validates every request, runs collision and judging, and answers with a typed response. Nothing is scripted; missions, plans, and conversations all emerge from the LLM calls.

For the game pitch and the running list of ideas and features see the project README. For local setup see CONTRIBUTING.

Documentation map

The docs are split in two trees.

  • guides/ - cross-cutting explanations: how to run the game, the overall architecture, the game loop, the LLM chains, and configuration.
  • library/ - one page per source module under src/laife/, describing what each module is for and linking to the code.

Start here

Build and serve locally

The site is built with MkDocs and the Material theme; the API reference under reference/ is generated from the source docstrings, so it is never written by hand.

Install the docs tooling and start a live-reloading server:

uv sync --only-group docs
uv run mkdocs serve

The server prints a local URL, usually http://127.0.0.1:8000, and rebuilds on save. To produce the static site once, with the same strict checks as CI:

uv run mkdocs build --strict

Pushing to main publishes the site to GitHub Pages through the docs workflow.

Conventions

All docs follow the docs standards. The code follows the conventions in the repo Copilot instructions.