Skip to main content
Manage CLI configuration profiles, and run the agent-help, completion, and update utility commands. None of them need an authenticated profile.

omni config init

Interactively create a new configuration profile. Prompts for a profile name, API endpoint, and authentication method. See CLI authentication for more details about OAuth and API token authentication.
You can authenticate with OAuth or an API token:
  • OAuth opens a browser-based login flow. Approving the verified Omni CLI application creates a user-scoped credential for the profile.
  • API token stores the token in the profile. You can also set OMNI_API_TOKEN or pass --token to override the profile token.

omni config login

Authenticate a profile with browser-based OAuth. If you don’t provide a profile name, the CLI uses the default profile.

omni config logout

Clear OAuth tokens from a profile. If you don’t provide a profile name, the CLI uses the default profile.

omni config show

Display the current configuration. Tokens are redacted in the output.

omni config use

Switch the default profile.

omni config list

List configured profiles.

omni config rename

Rename a profile.

omni config delete

Delete a profile.

omni config set-format

Set the profile’s default output format, overriding the built-in auto default. Format must be one of json, human, auto. See output formats for more information.

omni agent-help

Print a concise usage guide formatted for AI agents.

omni completion

Generate a shell autocompletion script for bash, fish, powershell, or zsh.
Run omni completion <shell> --help for that shell’s install instructions.

omni update check

Check whether a newer Omni CLI release is available. check is the only omni update subcommand - the CLI doesn’t upgrade itself.
The command always contacts the release endpoint and prints human-readable output by default; add --format json for a machine-readable answer. It reports the current and latest versions, the release URL, and the upgrade command for your install method. On failure it writes the standard JSON error envelope to stderr and exits non-zero. See installing the Omni CLI for how to upgrade.

Automatic update notices

The CLI also checks in the background and prints a notice on stderr after a successful command. The notice never touches stdout, so pipelines are unaffected. The check is throttled to one successful check every 24 hours across every process on the machine, coordinated through a lock file next to update.json in your OS user cache directory. A failed or cancelled attempt backs off for 15 minutes instead of retrying on the next command. Notices are suppressed for:
  • Output that isn’t human format, including --format json, --schema requests, and omni config show
  • Non-interactive invocations, where stdout or stderr isn’t a terminal
  • The omni update and omni completion command groups
  • The CI and OMNI_NO_UPDATE_NOTIFIER environment variables, when either is set
  • Builds that aren’t a tagged release
The CLI detects a Homebrew install from the binary path and points those users at brew update && brew upgrade omni. Run brew update first: without it, brew upgrade can report that omni is up to date right after a release. Because the formula can lag the release, Homebrew users aren’t notified about a release in its first 24 hours. Windows users are pointed at the release downloads, because install.sh doesn’t run there.
Every command in this group also accepts the global flags, including --token, --profile, --format, and --compact.