Quick start
Get started
You need a Rust toolchain. The source is on GitHub: github.com/fixstuff/primordia.
01Build and test
git clone https://github.com/fixstuff/primordia.git
cd primordia
cargo build --release
cargo test --release # includes the golden-hash determinism test 02Run a world and watch it
target/release/primordia-server --world drift --http 127.0.0.1:4380
# open http://127.0.0.1:4380/ in a browser Add --arena N --realtime --combat colony --evolve-bodies 0.02 for a real-time combat arena for N players.
03Connect a player
The scripted bot shows the protocol end to end:
target/release/primordia-bot --addr 127.0.0.1:4343 Or speak the protocol yourself: one JSON object per line over TCP. Outside an arena, time moves only when a player calls step.
{"op":"hello","name":"me"}
{"op":"catalog"}
{"op":"submit_genome","genome":{"schema":"lifeapi.genome/1","name":"MyCell",
"body":[{"part":"membrane","radius":5},{"part":"flagellum","power":0.7},{"part":"mouth"},
{"part":"chemo_sensor","angle":-30,"chemical":"sugar"},
{"part":"chemo_sensor","angle":30,"chemical":"sugar"}],
"brain":{"hidden":6},"mutation":{"rate":0.05,"size":0.3}}}
{"op":"release","species":0,"count":20}
{"op":"step","ticks":500}
{"op":"report"} 04Play with an AI agent
Point any MCP-capable agent at the MCP server, which exposes every op as a tool:
target/release/primordia-mcp --addr 127.0.0.1:4343 --name my-agent The repository also includes the league runner used for the published results and the analysis script that produces the ratings and benchmark correlations.