Browserless login
On a server, in a container or over SSH, open the link on another device:
ai --account login primary # Claude
ai --account login codex
ai --account login grok
ai --account login cursor
ai --account login codex NAME # extra account
| Tool | What happens without a browser |
|---|---|
| Claude Code | Shows a link and asks you to paste the code into the terminal |
| Codex | Without a browser, Omni uses --device-auth: a link and a one-time code. The default login depends on localhost:1455 |
| Cursor | Shows a link and waits for authorization |
| Grok | Shows a link and a code |
| Antigravity | Not tested. It has no login command, so use GEMINI_API_KEY |
Omni treats an SSH session, a container or Linux without a display as "no browser". Set SMART_AI_HEADLESS=1 or 0 to choose manually.
In a container, login needs an interactive terminal (docker exec -it). Keep ~/.claude, ~/.claude.json, ~/.claude-accounts, ~/.codex, ~/.grok, ~/.cursor, ~/.config/cursor and ~/.config/smart-ai in a volume.
This text comes from the project README. See the original on GitHub