This gateway provides authenticated access to AI providers (Anthropic Claude, OpenAI, Google Vertex AI) for Upsun staff.
curl -fsS https://ai-gateway.plat.farm/install.sh | bash
Or manually: GOPRIVATE=go.platform.sh go install go.platform.sh/ai/internal-gateway/cmd/ai-gateway@latest
ai-gateway setup
This walks you through SSO login, installs and starts the background service, and configures your shell.
If you prefer to run each step separately:
ai-gateway login — Authenticate via Okta SSOai-gateway service install — Install and start the proxy serviceai-gateway shell-init --add — Add eval "$(ai-gateway env)" to your shell profileOnce configured, AI tools will automatically use the gateway:
OPENAI_BASE_URL and OPENAI_API_KEY environment variables.ai-gateway service status. View logs on Linux with journalctl --user -u ai-gateway-proxy -f.
ai-gateway setup — Complete guided setup (login, service, shell)ai-gateway login — Authenticate via SSOai-gateway logout — Clear stored tokenai-gateway env — Output environment variablesai-gateway shell-init [--add] — Detect and configure shellai-gateway token — Output current access tokenai-gateway service install|start|stop|status — Manage background proxyFor any OpenAI-compatible tool that supports "bring your own key", configure:
http://127.0.0.1:38089/v1proxyThe local proxy handles authentication automatically.
claude-opus-4-5claude-sonnet-4-5claude-haiku-4-5gpt-5.2, gpt-5.1, gpt-5gpt-5-mini, gpt-4.1, gpt-4.1-mini, gpt-4.1-nanogpt-5-codex, gpt-5.1-codex, gpt-5.1-codex-minigemini-3-pro-preview, gemini-3-flash-previewgemini-2.5-pro, gemini-2.5-flash, gemini-2.5-flash-litemistral-large-latest, mistral-small-latestmistral-medium-3, mistral-small-2503, codestral-2deepseek-ai/deepseek-r1-0528-maas, deepseek-ai/deepseek-v3.1-maasmeta/llama-4-maverick-17b-128e-instruct-maas, meta/llama-3.3-70b-instruct-maasqwen/qwen3-235b-a22b-instruct-2507-maas, qwen/qwen3-coder-480b-a35b-instruct-maasmoonshotai/kimi-k2-thinking-maas, minimaxai/minimax-m2-maasIf you prefer not to run a background service, use token mode:
eval "$(ai-gateway env --no-proxy)"
This configures tools to connect directly to the gateway. Tokens are refreshed on each invocation.