Skip to content

Axis Worlds and Auth

World Discovery

Axis discovers active worlds using Cartridge factory SQL. Only upcoming or ongoing worlds are shown.

axis worlds                        # List discovered worlds
SLOT_NAME=my-world axis run        # Auto-select a world, skip picker

Password Auth (Headless)

Decrypts your Cartridge credentials, registers a Controller session with paymaster, and writes session data to disk:

axis auth my-world --method=password --username=me --password=secret
axis auth --all --method=password --username=me --password=secret --json

Sessions last 7 days. Re-run to refresh.

Browser Auth (Interactive)

Default for TUI mode. Generates a session URL that you approve in a browser:

axis auth my-world

On VPS without a password account, Axis compresses the session URL into a QR code:

# 1. Generate QR + auth URL (exits immediately)
axis auth my-world
#   → ~/.eternum-agent/.cartridge/my-world/auth-qr.png
 
# 2. Scan QR or open URL on another device, approve on Cartridge
# 3. Paste the redirect URL back
axis auth my-world --redirect-url="http://localhost:PORT/callback?startapp=..."

The QR points to a redirect page (default https://auth.axis.gg, override with AXIS_AUTH_REDIRECT_URL) that decompresses the payload and redirects to the full Cartridge auth URL.

You can also pass raw session data directly:

axis auth my-world --session-data="<base64>"

Or start a callback server if your VPS has a public endpoint:

axis auth my-world --callback-url=http://my-host:3000

Check Status

axis auth my-world --status
axis auth --all --status --json

Private Key Fallback

Bypasses Cartridge Controller entirely. No paymaster — you pay gas directly:

PRIVATE_KEY=0x... ACCOUNT_ADDRESS=0x... axis run --headless --world=my-world --auth=privatekey

Artifact Layout

Per-world artifacts stored under ~/.eternum-agent/.cartridge/<world>/:

FilePurpose
session.jsonController session keypair
profile.jsonWorld profile (chain, rpc, torii, worldAddress)
manifest.jsonResolved manifest with live contract addresses
policy.jsonSession policies
auth.jsonAuth URL and status metadata
auth-qr.pngCompressed auth URL QR code