Configuration & CLI CLI Commands

OpenClaw Version Command: Check Your Version and Stay Current

Knowing exactly which OpenClaw build you're running closes the most common debugging dead-end: "is this a known bug in the version I have?" Two forms of the command, one works offline, one checks for updates — here's when to use each.

RN
R. Nakamura
Developer Advocate
Feb 1, 2025 10 min read CLI Commands
Updated Feb 2025
Key Takeaways
openclaw --version prints just the version string and exits — use this in scripts.
openclaw version prints the full build table including Node.js version, OS, and build commit hash.
openclaw version --check-update queries npm for the latest published version and shows the update command if you're behind.
The version command works without a running gateway — it reads installed package metadata only.
If version output differs from npm list -g openclaw, you have a PATH conflict with multiple installations.

Every bug report we've seen get resolved in under 10 minutes starts with the same line: "What version are you on?" Running an outdated build is the cause of roughly 30% of reported issues in the OpenClaw community. The version command is the fastest way to rule it out — and if you're behind, --check-update tells you exactly what to run next.

Two Forms of the Command

OpenClaw gives you two ways to check the version depending on what you need:

# Short form — version string only, instant, no network
openclaw --version
# Output: 1.0.0

# Long form — full build info table
openclaw version
# Output: see below

The short form --version is the right choice for scripts and CI pipelines — it prints exactly one line and exits with code 0. The long form version is the right choice for debugging and support requests.

Full Output Fields

The openclaw version command outputs a table:

OpenClaw Version Info
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  OpenClaw:    1.0.0
  Node.js:     v20.11.0
  npm:         10.2.4
  Platform:    linux/x64
  OS:          Ubuntu 22.04.3 LTS
  Build:       a3f2c18
  Built:       2025-01-15T09:22:41Z

Each field matters in specific situations:

  • OpenClaw — the package version from package.json; this is what you're "on"
  • Node.js — the runtime version; incompatibilities between Node.js versions and npm packages cause subtle bugs
  • Platform — architecture; relevant for native module issues on arm64 vs x64
  • Build — the Git commit hash; lets maintainers pinpoint the exact source code version even between releases
💡
Include Full Version in Bug Reports
When filing an issue on the OpenClaw GitHub, always paste the full output of openclaw version. The build hash and Node.js version are frequently the difference between a maintainer reproducing your bug immediately vs spending an hour chasing environment differences.

Checking for Updates

The --check-update flag queries npm's registry:

openclaw version --check-update

If you're on the latest version:

OpenClaw 1.0.0 ✓ Up to date

If a newer version exists:

OpenClaw 1.0.0
  ⚠ Update available: 1.1.0
  Run: npm install -g openclaw@latest

The command also shows whether the update is a patch, minor, or major version bump — important for assessing whether it's a quick upgrade or one that might include breaking changes.

⚠️
Major Version Bumps Require Review
If --check-update shows a major version update (e.g., 1.x.x → 2.0.0), read the changelog before upgrading. Major versions may change gateway.yaml format, rename CLI flags, or remove deprecated channel types. Minor and patch updates are generally safe to apply immediately.

Using Version in Scripts and CI

The most common scripting patterns:

# Store version in a variable
VERSION=$(openclaw --version)
echo "Running OpenClaw $VERSION"

# Fail CI if below minimum version
MIN_VERSION="1.0.0"
CURRENT=$(openclaw --version)
if [[ "$(printf '%s\n' "$MIN_VERSION" "$CURRENT" | sort -V | head -n1)" != "$MIN_VERSION" ]]; then
  echo "ERROR: OpenClaw $CURRENT is below minimum $MIN_VERSION"
  exit 1
fi

# Check for updates and warn (don't fail)
UPDATE_AVAILABLE=$(openclaw version --check-update 2>&1 | grep "Update available")
if [ -n "$UPDATE_AVAILABLE" ]; then
  echo "Warning: OpenClaw update available"
fi

Handling Multiple Installations

The version command reports the version of the binary that's first on your PATH. If you have multiple OpenClaw installations (global npm, local project npm, nvm-managed), the output may not reflect what you expect.

Diagnose with:

# See which binary is active
which openclaw

# See all global npm packages including version
npm list -g openclaw

# See local project installation
npm list openclaw

If which openclaw points to an unexpected location, update your PATH or specify the full binary path. The most common conflict is between a global npm install and an nvm-managed install that puts a different binary earlier on PATH.

Common Mistakes

  • Using openclaw version in scripts instead of openclaw --version — the long form output format is not guaranteed stable; --version is the stable one-line interface
  • Ignoring Node.js version mismatches — running OpenClaw 1.x with Node.js 16 may work but cause subtle async bugs; stay on Node.js 18+
  • Not checking version when reporting bugs — maintainers will always ask; save time by including it upfront
  • Auto-updating without reading the changelog on major bumps — gateway.yaml config format can change between major versions

Frequently Asked Questions

How do I check my OpenClaw version?

Run: openclaw version or openclaw --version. Both return the current installed version. The full version command also shows the Node.js runtime version, OS, and build commit hash — useful when filing bug reports or confirming a specific build is installed.

How do I check if a newer OpenClaw version is available?

Run: openclaw version --check-update. This queries the npm registry and compares the installed version against the latest published version. If a newer version is available, it prints the new version number and the update command to run.

What is the difference between openclaw version and openclaw --version?

openclaw --version prints only the version string (e.g., 1.0.0) and exits — useful for scripts. openclaw version prints a full table with version, Node.js runtime, OS, build hash, and optional update check. Both are reliable; choose based on how much detail you need.

How do I use openclaw version in a CI pipeline?

Use the short form: openclaw --version. Capture the output: VERSION=$(openclaw --version). Compare against a minimum using sort -V. This ensures your pipeline runs on a supported OpenClaw version before deploying.

Why does openclaw version show a different version than npm list?

This usually means multiple OpenClaw installations exist — one global (npm install -g) and one local (npm install in a project directory). The CLI resolves whichever binary is first on PATH. Run: which openclaw to see which binary is active, then check that installation's version.

Does openclaw version require the gateway to be running?

No. Unlike openclaw status, the version command reads the installed package metadata — it doesn't connect to a running gateway. This makes it safe to run at any time, including in pre-flight checks before starting the gateway.

RN
R. Nakamura
Developer Advocate
R. Nakamura maintains the OpenClaw CLI reference documentation and developer tooling guides. Focused on reducing time-to-debug for builders at all experience levels across the OpenClaw ecosystem.
Stay Current
New OpenClaw guides every week — straight to your inbox.