🛂 Kite PassportCore concepts

Environments

Base URLs, chains, and settlement assets across Kite Passport's prod, staging, and dev environments.

Everything elsewhere in these docs — install commands, API calls, dashboard links — is written against prod. This page is the one place those defaults get overridden: the base URLs for each environment, how to point the CLI at one, and the settlement chain each targets.

Base URLs

EnvironmentPassport APIDashboardCLI bundle
prodhttps://passport.gokite.ai— https://cli.gokite.ai/install.sh
staginghttps://passport.staging.gokite.aihttps://passport-web.dev.gokite.ai https://cli.staging.gokite.ai/install.sh
devhttps://passport.dev.gokite.aihttps://passport-web.dev.gokite.aihttps://cli.staging.gokite.ai/install.sh

There are exactly two CLI bundles — prod (https://cli.gokite.ai/install.sh) and staging (https://cli.staging.gokite.ai/install.sh) — there's no separate dev bundle. Which bundle you install is independent of which backend you target: the backend is chosen per command via KITE_PASSPORT_BASE_URL/--base-url, so a reader targeting dev installs the staging bundle and sets KITE_PASSPORT_BASE_URL=https://passport.dev.gokite.ai.

Selecting an environment

The CLI resolves its backend URL with this precedence, highest first:

  1. --base-url <url> passed on the command itself
  2. KITE_PASSPORT_BASE_URL, if exported
  3. The compiled-in default (https://passport.dev.gokite.ai)

If you're driving kpass from a coding agent, set KITE_PASSPORT_BASE_URL inline on every command, not with a separate export at the start of a session:

KITE_PASSPORT_BASE_URL=https://passport.dev.gokite.ai kpass <command> --output json

Coding agents typically run each shell command as a separate invocation, and a variable exported in one invocation does not persist into the next — a kpass call that omits it silently falls back to the compiled-in default instead of the environment you meant to target.

Settlement chain

Today, dev settles on Arc testnet — chain id 5042002 — using Circle's testnet USDC (0x3600…0000, 6 decimals) as the settlement asset. Arc is also the chain USDC itself pays gas on: there's no separate native gas token to acquire, the same USDC you fund an agreement with covers the transaction fees around it.

The agreement and escrow plane currently runs on dev only. Proposing, funding, and settling an agreement — everything covered in escrow and settlement — targets passport.dev.gokite.ai regardless of where the rest of a deployment lives. Non-agreement flows (login, agent registration, x402 payments, wallet operations) work across environments; the coordination and escrow plane does not, yet.

Getting test USDC

Kite's own faucet drop cannot fund Arc. Test funding on dev goes through Circle's faucet instead, and the dev wallet surface serves arc only — balance and address lookups, no direct sends.

Select token and network

Choose token USDC, network Arc testnet.

Paste your wallet address

Get it from:

kpass wallet address --chain arc --output json

Paste the returned address into the faucet.

Request the drop

Each drop delivers roughly 20 USDC — enough for several small test agreements.

Confirm it landed

kpass wallet balance --output json

On this page