Getting started
Start worldseq locally, open the dashboard, and choose your first challenge.
You can play a company yourself or connect an agent through the same player tools. Start the local server, choose a company, and make a plan in the dashboard. A model subscription is not needed for human play.
Before you start
You need a worldseq source checkout or a release archive supplied by its maintainer. Run the commands below from the worldseq package directory.
- Bun 1.3.14 runs the server and CLI. Check with
bun --version. - Docker with Compose supplies the local PostgreSQL database. Docker must be running; check with
docker compose version. - Node.js 22.22 or 24.13 is needed when building the dashboard from source. The runtime archive already includes the dashboard.
Python is needed only if you use the Python SDK or its development checks. SDK consumers can connect to an existing server without installing Bun or Docker.
Start the runtime
If you received runtime.tar.gz, extract it first:
tar -xzf runtime.tar.gz
cd runtime
For source.tar.gz, extract it and enter the source directory instead. A source checkout can use its existing worldseq directory.
Install the locked dependencies and start the service:
bun install --frozen-lockfile --ignore-scripts
bun run dev
The launcher starts PostgreSQL, applies migrations, and opens the control and player listeners. A source installation builds the dashboard; the runtime archive serves its existing build. The local dashboard connects automatically.
Open http://127.0.0.1:4311. The player API listens on http://127.0.0.1:4310. The terminal prints the actual addresses if you changed the ports.
Explore the dashboard
Open Companies and choose a business. Its About page describes the starting finances, customer segments, operations, and sources. Those figures are the initial setup; a run has its own changing financial reports.
Choose a challenge and read its About, Financials, and Timeline tabs. Click Start challenge, add work to a plan, save it, then advance to the next review. Play as a human walks through a real seven-day attempt with screenshots.
Keep the play tab open. Refreshing the browser currently loses the interactive controls for that attempt. Saved decisions and results remain readable in Run history. The dashboard’s Refresh report button updates observations without reloading the page.
Run history includes human attempts and connected evaluations. The sidebar shows up to 15 active or recent runs, and each run has its own address. A completed run can still miss its objective; the verification guide explains the result states.
Stop and restart
Press Ctrl+C in the launch terminal to stop the server. Start it again with bun run dev. PostgreSQL data remains in the worldseq-postgres Docker volume, including saved runs. To stop the local database too, run:
docker compose stop
The launcher’s local files are stored under .runtime/world-sequencer inside the package. Set WORLDSEQ_RUNTIME_DIRECTORY to use another location. This directory contains credentials and runtime state and should remain local.
Use the CLI or connect an agent
The CLI is available in both source and runtime distributions:
bun run worldseq catalog check
bun run worldseq --help
Continue with the TypeScript and Python SDKs, evaluations and submissions, or the Harbor examples. To create another company, follow Authoring companies.
If startup fails
A Docker connection error usually means the daemon is not running. Start Docker, confirm docker compose version works, and run the launcher again.
If another process uses the default ports, choose available ports explicitly:
WORLDSEQ_CONTROL_PORT=4411 WORLDSEQ_PLAYER_PORT=4410 WORLDSEQ_DATABASE_PORT=5538 bun run dev
Use the addresses printed by that launch. Additional evaluation terminals need the same database configuration to report progress in its dashboard.
To use an existing PostgreSQL service, configure WORLDSEQ_DATABASE_URL and a control credential, run bun run db:migrate, then bun run start. That direct start does not enable the automatic local browser session unless WORLDSEQ_LOCAL_DASHBOARD=1 is set. See the API and authentication reference for the boundary between local browser, operator, and player access.
Release checks
Building packages and qualifying a release are separate from playing a challenge. SDK and distribution engineering explains the archives, clean installation checks, and retained byte identities. Release qualification explains the mandatory gates. A new source checkout does not inherit the certification of an older release.