Skip to content

[Bug]: Linux headless node exec fails with spawn /bin/sh ENOENT despite connected nodes and existing /bin/sh #85202

Description

@jack-span-git

Bug type

Regression (worked before, now fails)

Beta release blocker

No

Summary

exec host=node fails on three connected Linux headless nodes with spawn /bin/sh ENOENT, even though all nodes run OpenClaw 2026.5.20 and /bin/sh exists on each host.

Steps to reproduce

exec host=node node=node-a command="hostname; openclaw --version; uptime -p"
exec host=node node=node-b command="hostname; openclaw --version; uptime -p"
exec host=node node=node-c command="hostname; openclaw --version; uptime -p"

Expected behavior

exec host=node should run the command on each connected Linux headless node and return command output.

Actual behavior

spawn /bin/sh ENOENT

OpenClaw version

Gateway: 2026.5.20 Linux headless nodes: 2026.5.20

Operating system

Linux headless nodes. Exact distro/version: NOT_ENOUGH_INFO

Install method

Gateway runs in Docker. Linux nodes run as user systemd services.

Model

NOT_ENOUGH_INFO

Provider / routing chain

NOT_ENOUGH_INFO

Additional provider/model setup details

NOT_ENOUGH_INFO

Logs, screenshots, and evidence

Node status shows all nodes connected and exposing node exec capabilities:
{
  "displayName": "node-a",
  "platform": "linux",
  "version": "2026.5.20",
  "clientMode": "node",
  "deviceFamily": "Linux",
  "commands": [
    "browser.proxy",
    "system.execApprovals.get",
    "system.execApprovals.set",
    "system.run",
    "system.run.prepare",
    "system.which"
  ],
  "paired": true,
  "connected": true
}

Shell exists on each node:
OpenClaw 2026.5.20
active
/usr/bin/sh
/bin/sh -> dash
/usr/bin/sh -> dash

Gateway bundled code contains:
return [
  "/bin/sh",
  "-lc",
  command
];

Observed error:
spawn /bin/sh ENOENT

Impact and severity

Affected users/systems/channels: Linux headless node exec via exec host=node
Severity: blocks workflow
Frequency: always observed on three connected Linux nodes
Consequence: node-based shell collection fails; SSH fallback is required

Additional information

Regression evidence is incomplete. Last known good version: NOT_ENOUGH_INFO. First observed bad version: 2026.5.20.

Metadata

Metadata

Assignees

No one assigned

    Labels

    P1High-priority user-facing bug, regression, or broken workflow.bugSomething isn't workingclawsweeper:source-reproClawSweeper found a high-confidence source-level issue reproduction.impact:crash-loopCrash, hang, restart loop, or process-level availability failure.issue-rating: 🦞 diamond lobsterVery strong issue quality with high-confidence source-level or clear reproduction.maturity:stableIssue affects a taxonomy feature currently scored M4/M5.

    Type

    No type

    Fields

    Priority

    None yet

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions