Skip to main content

Synopsis

operator status
operator s

Description

operator status prints a summary of the current Operator installation without starting the agent or the gateway. Use it to verify that your configuration file exists, your workspace is set up, and the correct provider keys or OAuth credentials are in place before running operator agent or operator gateway. The output includes:
  • Operator version and build information
  • Config file path and whether it exists
  • Workspace path and whether it exists
  • Active default model name
  • Each supported provider — whether an API key is configured
  • OAuth/token sessions from ~/.operator/auth.json (if any)

Provider key detection

The status command checks whether each provider entry has an API key or API base set in config.json. It does not make network requests or validate the key — it only checks that the field is non-empty.

Options

operator status accepts no flags.

Examples

Check status with a fully configured installation:
operator status
🕸️ operator Status
Version: 1.4.0 (git: a3f2c91)
Build: 2026-03-15T10:22:00Z

Config: /home/alice/.operator/config.json ✓
Workspace: /home/alice/.operator/workspace ✓
Model: gemini-flash
OpenRouter API: not set
Anthropic API: not set
OpenAI API: not set
Gemini API: not set
Zhipu API: not set
Qwen API: not set
Groq API: not set
Moonshot API: not set
DeepSeek API: not set
VolcEngine API: not set
Nvidia API: not set
vLLM/Local: not set
Ollama: not set

OAuth/Token Auth:
  google-antigravity (oauth): authenticated
Status after setting an OpenRouter key:
operator status
🕸️ operator Status
Version: 1.4.0

Config: /home/alice/.operator/config.json ✓
Workspace: /home/alice/.operator/workspace ✓
Model: gpt4
OpenRouter API: ✓
Anthropic API: not set
OpenAI API: not set
...
Status when config file is missing:
operator status
Error loading config: open /home/alice/.operator/config.json: no such file or directory
Run operator onboard to create the config file.

operator version

The operator version command (alias: v) prints version and build information and then exits. It does not load the config file.
operator version
operator v
🕸️ operator 1.4.0 (git: a3f2c91)
  Build: 2026-03-15T10:22:00Z
  Go: go1.22.2
operator status includes this same version information at the top of its output, so you can use either command to check the installed version.

Providers checked

The following providers are checked for configured credentials:
ProviderWhat is checked
OpenRouterproviders.openrouter.api_key
Anthropicproviders.anthropic.api_key
OpenAIproviders.openai.api_key
Geminiproviders.gemini.api_key
Zhipuproviders.zhipu.api_key
Qwenproviders.qwen.api_key
Groqproviders.groq.api_key
Moonshotproviders.moonshot.api_key
DeepSeekproviders.deepseek.api_key
VolcEngineproviders.volcengine.api_key
Nvidiaproviders.nvidia.api_key
vLLM / Localproviders.vllm.api_base
Ollamaproviders.ollama.api_base
The model_list array is the recommended way to configure providers. The legacy providers block is still checked by operator status for backward compatibility, but new installations should use model_list exclusively.

operator migrate

operator migrate migrates configuration and workspace files from a previous installation (such as OpenClaw) to Operator OS.
operator migrate [flags]
--from
string
default:"openclaw"
Source to migrate from. Currently supports openclaw.
--dry-run
boolean
default:"false"
Show what would be migrated without making any changes.
--refresh
boolean
default:"false"
Re-sync workspace files from the source. Use this to pull in new files added after a previous migration.
--config-only
boolean
default:"false"
Only migrate the configuration file; skip workspace files.
--workspace-only
boolean
default:"false"
Only migrate workspace files; skip the configuration file.
--force
boolean
default:"false"
Skip confirmation prompts.
--source-home
string
Override the source home directory. Defaults to ~/.openclaw.
--target-home
string
Override the target home directory. Defaults to ~/.operator.
Examples:
# Migrate from OpenClaw with confirmation prompts
operator migrate

# Preview what would be migrated (no changes made)
operator migrate --dry-run

# Re-sync workspace files after a previous migration
operator migrate --refresh

# Migrate without any prompts
operator migrate --force

Build docs developers (and LLMs) love