Skip to content

[macOS Node] Missing system.run.prepare command prevents system.run execution #37591

@roamerxv

Description

@roamerxv

[macOS Node] Missing system.run.prepare command prevents system.run execution

Problem

The macOS/iOS node software (version 2026.3.2) does not implement the system.run.prepare command, which causes system.run to fail even when explicitly added to allowCommands in the node configuration.

Environment

  • Node Platform: macOS 26.3.0
  • OpenClaw Version: 2026.3.2
  • Gateway: Linux (2026.3.2)

Current Behavior

When attempting to use nodes.run to execute shell commands on a macOS node:

Error: node command not allowed: the node (platform: macOS 26.3.0) does not support "system.run.prepare"

The node's describe output shows:

  • system.run is in the commands list
  • system.run.prepare is NOT in the commands list
  • system is NOT in the permissions list

Expected Behavior

The macOS/iOS node should implement system.run.prepare to enable shell command execution via system.run, similar to other platforms.

Workaround

Currently using screen recording + ffmpeg frame extraction for screenshots instead of peekaboo:

ffmpeg -i screen_record.mp4 -vframes 1 screenshot.png

Configuration

Gateway openclaw.json:

"nodes": {
  "allowCommands": [
    "camera.snap",
    "camera.clip",
    "camera.list",
    "screen.record",
    "screen.snap",
    "system.run",
    "system.run.prepare",
    "system.which",
    "invoke"
  ]
}

Node's describe response (relevant parts):

{
  "platform": "macOS 26.3.0",
  "version": "2026.3.2",
  "commands": [
    "camera.clip",
    "camera.list",
    "camera.snap",
    "canvas.a2ui.push",
    "canvas.a2ui.pushJSONL",
    "canvas.a2ui.reset",
    "canvas.eval",
    "canvas.hide",
    "canvas.navigate",
    "canvas.present",
    "canvas.snapshot",
    "screen.record",
    "system.notify",
    "system.run",
    "system.which"
    // Note: "system.run.prepare" is MISSING
  ],
  "permissions": {
    "notifications": true,
    "microphone": true,
    "appleScript": true,
    "accessibility": true,
    "screenRecording": true,
    "speechRecognition": true,
    "camera": true,
    "location": true
    // Note: "system" is MISSING
  }
}

Impact

  • Cannot execute shell commands on macOS nodes remotely
  • Cannot use peekaboo for screenshots (must use screen recording workaround)
  • Cannot read calendar, run AppleScripts, or perform other system commands remotely

Request

Please implement system.run.prepare command in the macOS/iOS node software to enable remote shell command execution.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions