Related: README, Getting started, spec/README.md
This Alpha already includes:
- a file-backed
broker-coreunderbroker-core/ - a
simctladapter for provisioning, lifecycle control, and drift observation - the
simbrokerCLI underclient/bin/simbroker.mjs - a local
brokerdservice underclient/bin/brokerd.mjsandclient/service/ - broker-mediated
boot,shutdown,erase, andrepair - stable exit codes for invalid requests, unavailable capacity, repair-needed aliases, override-required flows, and internal failures
host init --bootstrap-configthat provisions real simulator devices, including dual iPhone UI aliases (ui-1,ui-2) and a dedicatedbuild-fastaliaserase-on-acquireleases behind a reset lock, with rollback if reset fails before a lease is handed out- lease selection that prefers a matching pin, then compatible warm capacity, then shutdown capacity
- optional Automatic shutdown configured only through broker commands
- a macOS operator app with Overview, Simulators, Projects, and Events
- a broker-owned
app-snapshot.jsonread model - app-driven first-run setup and per-repo onboarding commands. Public
first-run order is Homebrew CLI, Homebrew cask, then Set Up This Mac
/ Complete first-time setup (or
host init --bootstrap-configandservice start). Homebrew does not create simulators. Hello world runs only after a host config exists and aftercapacity checkforagent-ui-session. Readpurposes[].status, not the top-levelstatus. Stop onunavailableand preview withcapacity reconcile. Stop onrepair_neededand usedoctorplussimulators repair --alias <alias> - CLI-only install through
bash scripts/install_local.sh --cli-only, plus the contributor app+CLI pathnpm run install:local - tagged Alpha CLI tarball through
npm run package:cliand GitHub Releases - public Node test CI on GitHub-hosted Ubuntu for broker-core, client, harness-adoption, and public-surface checks
- GitHub issue forms for install failure, bug, and feature, plus a light PR template that does not require a harness session
- Homebrew formula
fiveonecode/simulator-broker/simbrokerfor the Alpha CLI tarball. Homebrew clonesfiveonecode/homebrew-simulator-brokerfor that tap name;Formula/andCasks/in this repository stay the source of truth. Packablesimbrokernpm CLI (npm run package:npm), and a Homebrew cask that installsSimulator Broker.appfrom the signed, notarized GitHub Release zip when that zip is attached - local-debug packaging through
npm run package:local - signed distribution packaging through
npm run package:distribution simbroker project initfor.simulator-broker/project.jsoncapacity checkand human-confirmedcapacity reconcileidleinspect, reconcile, and confirm-only cleanup- sample consumer artifacts under
examples/harness-adoption/ - the
broker-harness-adoptionskill under.agents/skills/broker-harness-adoption/
Automatic shutdown is unconfigured on a fresh install. Choose a duration in the app or CLI. Do not create or edit broker state files by hand.
Tracked-text public safety is checked with npm run verify:public-surface.
For an extra machine-local denylist, create an ignored .public-safety.local
with one private name, alias, or path per line.
npm test
npm run verify:public-surface
npm run test:install-smoke
npm run test:app
npm run test:client
node client/bin/simbroker.mjs service start
node client/bin/simbroker.mjs service status
node client/bin/simbroker.mjs app snapshot
node client/bin/simbroker.mjs capacity check --repo-root "$PWD" --purpose agent-ui-session --json
node client/bin/simbroker.mjs idle status --json
node client/bin/simbroker.mjs pin create --repo-root "$PWD" --purpose manual-testing --alias manual-1
node client/bin/simbroker.mjs lease release --lease-file /tmp/simbroker-lease.json
node client/bin/simbroker.mjs simulators boot --alias ui-1The Alpha GitHub Release attaches the signed, notarized
Simulator-Broker-<version>.zip used by the Homebrew cask.