Getting started: developer
You've been invited to an org. This gets you from install to a working, disposable Postgres database in a couple of minutes — seconds, if your admin runs a warm clone pool.
If you're setting up the org itself — provisioning the AWS cluster, curating snapshots — see Getting started: admin instead.
1. Install
See Install — one line:
$ curl -fsSL https://stagdb.com/adjoint/install.sh | sh
2. Accept your invite
Your admin sent you one command, something like:
$ adj join adj1.eyJ2IjoxLCJzIjoiaHR0cHM6Ly9hcGkuc3RhZ2RiLmNvbSIsIm8iOiJhY21lIiwidCI6ImRkMTRmYzVmMTIyNTRkZTkxNDNjMmU0NjFkYzUyYjgyNmQ5NTlkYzM1ODk1NTY2ZjRmMTg3MWUwYjk4NTgyMDkifQ
Choose a password (min 8 chars):
Joined acme as [email protected].
Try: adj catalog && adj clone <golden>
Run it exactly as given — the adj1. code carries the server, org, and
invite token, so there's nothing else to configure. You'll be prompted to set
your password.
(If you were instead given a bare token plus a server/org, use the legacy
form: adj join --server <url> --org <slug> <token>.)
3. See what you can clone
$ adj catalog
NAME SUBSTRATE LATEST SHARED ID
prod-pg16 postgres v3 yes 787f7337-0636-4825-a5c7-891477faa0a9
4. Clone one
$ adj clone prod-pg16 --wait
waiting for 0ab2b1ab-bd4a-4e1a-9ab8-c3b0251ee37d: Pending -> Bootstrapping. -> Ready
Instance 0ab2b1ab-bd4a-4e1a-9ab8-c3b0251ee37d is Ready at i-0ab2b1ab-bd4a-4e1a-9ab8-c3b0251ee37d-rw.ns-11d3e4c2-58ea-4a7b-9c19-2f4f60d5a3b7.svc:5432
If your admin set up a warm clone pool, the claim lands in about 15–30
seconds. Without one, an on-demand FSx clone typically reaches Ready in
about 2 minutes (under FSx load it can take up to ~10 minutes, which is why
--wait's timeout is generous). --ttl (default 72h) sets when it's
auto-destroyed; --version pins a specific golden version instead of the
newest.
5. Connect
$ psql "$(adj creds 0ab2b1ab-bd4a-4e1a-9ab8-c3b0251ee37d --uri)"
psql (16.4)
Type "help" for help.
app=>
Or export PG* connection variables into your shell:
$ eval "$(adj creds 0ab2b1ab-bd4a-4e1a-9ab8-c3b0251ee37d --env)"
$ psql
Credentials are fetched live and never persisted to disk by the CLI.
6. Manage your instances
$ adj ls
ID GOLDEN VER PHASE SIZE TTL EXPIRES ENDPOINT
0ab2b1ab-bd4a-4e1a-9ab8-c3b0251ee37d prod-pg16 3 Ready medium 72h 47h12m i-0ab2b1ab-bd4a-4e1a-9ab8-c3b0251ee37d-rw.ns-11d3e4c2-58ea-4a7b-9c19-2f4f60d5a3b7.svc:5432
$ adj get 0ab2b1ab-bd4a-4e1a-9ab8-c3b0251ee37d
Lifecycle
Each of these re-clones under the hood — none of them mutate the running instance in place:
adj reset <id>— discard your changes: re-clones the same golden version fresh.adj refresh <id>— pick up new data: re-clones the latest version of the same golden (or--golden <name>to switch lineages).adj extend <id> --ttl 168h— push out the auto-destroy time (the new TTL must extend the current expiry).adj destroy <id>— delete the instance and reclaim its storage.
Your account
$ adj account view
$ adj account set-name "Dana Lin"
$ adj account set-password
Changing your password revokes every other session — the one you used to change it stays signed in. See who else is signed in, and sign out everywhere:
$ adj account sessions
$ adj logout --all
Quota
Check your own usage against your org's caps at any time:
$ adj quota get
If you hit a cap, adj clone fails with a quota error — ask your admin to
raise it with adj quota set.
Next
Skim the generated CLI reference for every command and flag.