The inferam CLI
inferam is a small CLI that signs a device in to Inferam and starts coding agents pointed at it. Install it with:
curl -fsSL https://inferam.ai/install | shIt installs to ~/.local/bin; set INFERAM_INSTALL_DIR to install somewhere else.
Commands
Section titled “Commands”| Command | What it does |
|---|---|
inferam auth login |
Signs this device in through your browser and stores a device key |
inferam auth status |
Shows whether this device is signed in, and the model being served |
inferam auth logout |
Revokes this device’s key and removes it |
inferam <agent> [args…] |
Runs an agent on Inferam for this session only. Agents: dsh, claude, codex, opencode, pi |
inferam --yes <agent> |
Installs a missing agent without asking (needed in non-interactive shells) |
inferam update |
Updates inferam to the latest release; --check only reports |
inferam version |
Prints the installed version |
How agents are launched
Section titled “How agents are launched”inferam <agent> sets the agent up with environment variables, command-line flags or a temporary file that is deleted when the agent exits. It never edits the agent’s own config, so running the agent directly afterwards behaves exactly as before. Everything after the agent name passes straight through to the agent, and the agent’s exit code is returned.
For what is set for each agent, and how to do the same by hand, see the coding agent guides.
Resuming sessions
Section titled “Resuming sessions”Each agent saves its sessions where it always does. When an agent exits, inferam prints the command that resumes that session on Inferam:
Resume this session on Inferam: inferam codex resume 01a18409-2fad-7fa0-8235-140bda73fba0It’s the agent’s own resume command with inferam in front:
| Agent | Resume |
|---|---|
| Claude Code | inferam claude --resume <id> (or --continue for the latest) |
| Codex | inferam codex resume <id> (or resume --last) |
| opencode | inferam opencode --session <id> (or --continue) |
| pi | inferam pi --session <id> (or --continue) |
| DeepSeek Harness | Sessions are listed in the web UI; headless runs take inferam dsh headless --session-id <id> |
The hint is printed only when the agent ran in a terminal. If two sessions of the same agent were active in the same folder at once, it’s left out rather than risk the wrong ID. Running the plain agent command (for example claude --resume <id>) resumes the session on the agent’s own provider instead of Inferam.
Device keys
Section titled “Device keys”inferam auth login creates a key named “CLI on <hostname>”. It’s stored in the OS keychain (macOS Keychain, or the Secret Service on Linux), or else in a file readable only by you: ~/.config/inferam/credentials on Linux, ~/Library/Application Support/inferam/credentials on macOS. Device keys expire after 30 days without use. You can see and revoke them on inferam.ai/keys.
Updates
Section titled “Updates”inferam checks for a newer release once a day and tells you when one is available. inferam update downloads it and replaces the binary in place. Releases are signed: from version 0.1.2 on, inferam update only installs a release whose checksums are signed with Inferam’s release key, and it verifies the binary against those checksums.
Environment
Section titled “Environment”| Variable | Effect |
|---|---|
INFERAM_API_KEY |
Use this key instead of the signed-in device key |
INFERAM_NO_UPDATE_CHECK=1 |
Turn off the daily update check |
INFERAM_INSTALL_DIR |
Where the install script puts inferam (default ~/.local/bin) |