Prerequisites
- Git
- Bun, at the version pinned in the root
package.json - Docker Engine with Compose 2.20 or newer
- Bash, to run the commands below from the repository root
The development server uses the same ports as a released installation. If both run on one machine, stop one before starting the other.
Get the source
git clone https://github.com/raghavpillai/openteam.git
cd openteam
bun install --frozen-lockfile
bun run db:generate
cp .env.example .envIn .env, replace OPENTEAM_CONTROL_TOKEN and OPENTEAM_AUTH_SECRET with different random values. Generate each with openssl rand -hex 32. Set OPENTEAM_TIME_ZONE to your time zone. Don't commit .env.
Start the server
bash scripts/compose.sh up --build -d
bash scripts/compose.sh psWait until server, worker, computer, and postgres are healthy. Setup containers exit with code 0 when they finish; that's expected.
Create an account and connect a model
bun run auth:setup
bash scripts/compose.sh exec computer openteam-pi-auth login openai-codex oauthThe first command creates your account. The second signs in with ChatGPT. For other providers, see model providers.
Open the desktop app
curl http://127.0.0.1:8787/api/v0/health
bun run desktopConnect to http://127.0.0.1:8787 and sign in. To build the iPhone app, see the iPhone app instructions.
Check your changes
bun run typecheck
bun run test
bun run buildbun run check:architecture checks package boundaries and other repository rules.
The contributor reference covers the repository layout, database tests, desktop packaging, and releases.