[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.
[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.preparecommand, which causessystem.runto fail even when explicitly added toallowCommandsin the node configuration.Environment
Current Behavior
When attempting to use
nodes.runto execute shell commands on a macOS node:The node's
describeoutput shows:system.runis in thecommandslistsystem.run.prepareis NOT in thecommandslistsystemis NOT in thepermissionslistExpected Behavior
The macOS/iOS node should implement
system.run.prepareto enable shell command execution viasystem.run, similar to other platforms.Workaround
Currently using screen recording + ffmpeg frame extraction for screenshots instead of
peekaboo:Configuration
Gateway
openclaw.json:Node's
describeresponse (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
peekaboofor screenshots (must use screen recording workaround)Request
Please implement
system.run.preparecommand in the macOS/iOS node software to enable remote shell command execution.