The demo starts a fictional team with six starter skills. AI is off, so you need no AI account.
The demo is not a production install. It has no OS isolation. Use fictional data only.
#Before you begin
| You need | Version |
|---|---|
| macOS or Linux | Windows users open a prepared server in a browser |
| Git | any recent version |
| Bun | 1.3.12 (the CI pin) |
| Go | 1.27 or newer |
| Native build tools | Xcode command-line tools on macOS |
| A free port | 19760 |
#Start the demo
- Clone and install
git clone https://github.com/trina-app/trina-ax.git cd trina-ax bun install --frozen-lockfile - Start the demo
bun run demoLeave this terminal running. It builds, starts on http://127.0.0.1:19760 and seeds the fictional team.
- Sign in
Open http://127.0.0.1:19760 and sign in as
alicewithteamax-demo-1. The other accounts arebob,admin1and the ownerdion. The password is public on purpose.The sign-in page - Check folder permissions
Open Files → shared → 팀-용어집.md. Then sign in as
bobin a private window. Bob sees the finance group, but not the marketing group.The glossary file, open in Files
Use 127.0.0.1, not localhost. They are different cookie origins, so sign-in would repeat.
#Go further
The demo is the quickest start. When you want more, pick one of these.
Choose another port, a new data folder and the Korean interface:
bun run demo --port 19761 --data "$HOME/.trina-evaluation-new" --locale ko
The data folder must not exist yet. A busy port or an existing folder is refused.
The demo cannot call AI. For a development server that uses your own Claude Code or Codex login, stop the demo first and run:
TEAM_AX_DEV_DIR="$HOME/.trina-ai-evaluation-new" TEAM_AX_DEV_PORT=19761 bun run dev --no-relay
# In a second terminal, before you create a team:
TEAM_AX_DEV_DIR="$HOME/.trina-ai-evaluation-new" bun run demo:seed --base http://127.0.0.1:19761
In development mode the engines run as your OS user, with no production isolation. Connect only accounts you may use this way.
To let teammates on your Tailscale network click through a preview, run a development server with the AI turned off and an extra allowed origin.
- Write a config with the AI off
Save this as
preview.jsonin a new, short folder such as~/.trina-preview. It is the same config the demo writes.{"mode":"dev","listen":{"host":"127.0.0.1","port":19780}, "engine":{"authMode":"local-login","claudeBin":"/nonexistent/trina-demo-no-ai","codexBin":""}, "relay":{"url":null,"officialAvailable":false},"update":{"feedUrl":null,"auto":false}} - Start the server with your tailnet origin
Replace
<your-tailnet-host>with the machine's Tailscale name.MYCEL_CONFIG="$HOME/.trina-preview/preview.json" MYCEL_HOST=127.0.0.1 \ TEAM_AX_DEV_DIR="$HOME/.trina-preview" TEAM_AX_DEV_PORT=19780 \ MYCEL_PUBLIC_ORIGINS="https://<your-tailnet-host>:8443,http://127.0.0.1:19780" \ bun scripts/dev.ts --no-relay - Seed the fictional team
TEAM_AX_DEV_DIR="$HOME/.trina-preview" bun run demo:seed --base http://127.0.0.1:19780 - Serve it on the tailnet only
tailscale serve --bg --https=8443 http://127.0.0.1:19780Use
tailscale serve, nevertailscale funnel: funnel makes it public. - Change the demo passwords
The demo password is public. Change it for every account before you share the address.
To stop: press Ctrl-C in the server terminal, then run tailscale serve --https=8443 off.