May I?

Getting started

Run May I? locally and create the first workspace.


Requirements

  • Node.js 22 or newer
  • pnpm 10 or newer
  • Docker

Start the service

cp .env.example .env
docker compose up -d postgres
pnpm install
pnpm db:migrate
pnpm dev

Run the browser client in another terminal:

pnpm dev:web

The first normal sign-up creates a personal workspace. Self-hosted installations can set BOOTSTRAP_SECRET to protect creation of the first owner.

From there an agent can start asking: POST /api/approvals/request for approve/deny with a signed receipt, or POST /api/inputs for a select or freeform question. Both resolve as signed events and both work through the @mayiapp/sdk client.

Before production

Generate receipt signing keys, use separate database credentials for migrations and runtime access, configure private artefact storage, and read the repository’s threat model.