Skip to content

Developer guide

Run a claimed development instance

Attach a checkout to a development instance that already has an owner, a known login, and a working model.

An unclaimed Server isn't a development environment — it's a waiting room. This path deliberately reuses an instance that already has a human owner, working credentials, and a configured model provider.

Prerequisites: a checkout with dependencies installed, Docker and the runtime available, and a default instance already claimed by someone whose login and model setup you know. Fresh installs, first-time claiming, and remote deployment topologies live in the Administrator guide instead.

Inspect the target before stopping anything

Run the read-only inventory from the checkout you intend to test:

opencircle dev list-instances

Confirm the default row is the instance you actually mean, and check its project, ports, process state, and storage root. Don't stop it just because a default row exists — only continue once you recognize its owner, login, and model configuration.

Stop the proven old server process

opencircle server stop --instance default

This is idempotent — it stops a managed process if one exists, and can also spot a matching Server that was started outside the instance manager.

Start the development stack

OPENCIRCLE_PROFILE=source-default opencircle dev-stack --instance default --i-know-what-i-am-doing --electron

--electron also launches the desktop UI; omit it for server-only or browser work. The profile gives this source-built desktop process its own local auth and cache without creating another Server.

Validate the setup state

opencircle dev setup-status --instance default

This only succeeds once the server reports a ready setup state. Sign in with the instance owner's existing credentials in the printed client. Startup can apply committed migrations to the existing database — check the migration safety guide before switching branches with competing histories.

Stop or recover

Press Ctrl-C in the dev-stack terminal to tear down the processes it started — that's not a database reset. If the owner or login is unknown, ask the owner rather than resetting anything; to start a separate Server instead, follow the local deploy quickstart.