# Counterworld Documentation > Technical documentation for building, running, controlling, and evaluating stateful software worlds for AI agents. A Counterworld world is executable software with persistent state, business rules, interfaces, simulated users, history, and controllable time. It is not an LLM-generated imitation of an application. Agents act through the world's native interfaces, and evaluators inspect exact state changes and delayed outcomes. ## Start here - [Documentation home](https://counterworld.dev/docs/): Documentation map and recommended reading order. - [Quickstart](https://counterworld.dev/docs/quickstart.html): The shortest path from a world definition to an evaluated agent run. - [Core concepts](https://counterworld.dev/docs/concepts.html): Definitions, state, actors, history, time, checkpoints, forks, and outcomes. ## World and runtime model - [Worlds](https://counterworld.dev/docs/worlds.html): How definitions become populated, running software environments. - [Runtime](https://counterworld.dev/docs/runtime.html): How agents interact while the runtime maintains shared state and valid mutations. - [Simulation](https://counterworld.dev/docs/simulation.html): Simulated users, events, history, and controllable time. ## Evaluation and interfaces - [Evaluation](https://counterworld.dev/docs/evaluation.html): Checkpoints, forks, state diffs, invariants, and delayed business outcomes. - [TypeScript SDK](https://counterworld.dev/docs/sdk.html): Definitions, worlds, interfaces, time, checkpoints, forks, simulation, and evaluation. - [Interface contracts](https://counterworld.dev/docs/reference.html): Agent, control, inspection, simulation, and evaluation surfaces. ## Optional - [Product overview](https://counterworld.dev/): Non-technical overview of Counterworld. - [World catalog](https://counterworld.dev/worlds.html): Ways to obtain or build a world.