ROS2 Control Execution

v1.0.0

Execute ROS 2 Control state-changing commands (load, switch, unload) in a sandboxed environment. Supports parameter profiles.

0· 57·0 current·0 all-time
byBrian Robinson@bigrobinson
MIT-0
Download zip
LicenseMIT-0 · Free to use, modify, and redistribute. No attribution required.
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Benign
high confidence
Purpose & Capability
The skill provides a small setup script and a strict wrapper around 'ros2 control' subcommands. The requested actions (sourcing ROS, writing a local config.json, reading parameter profiles) match the stated purpose of executing and parameterizing ROS 2 control commands. There are no extraneous credentials, binaries, or unrelated config paths declared.
Instruction Scope
SKILL.md limits action to configuring and invoking the provided safe wrapper and explicitly requires sourcing the ROS environment. The wrapper enforces an allowlist of subcommands and uses subprocess without shell=True to avoid command-injection. Points to note: (1) it reads parameter/profile YAML files from ~/.openclaw/workspace/ros_profiles and will fail if those files are missing — these files are reasonable for profiles but are reads of user home data; (2) it sources the ROS setup.bash to construct the environment, which executes whatever that setup script contains (this is necessary for ROS but means you should trust your ROS installation).
Install Mechanism
This is an instruction-only skill with two small scripts included; there is no install spec that downloads or executes external code. Nothing is fetched from the network and no archive extraction is performed.
Credentials
The skill does not request environment variables or credentials. It does require that the user has a functioning ROS 2 installation (ros2 on PATH and AMENT_PREFIX_PATH set) and writes a local config.json under the skill's directory. It also reads parameter/profile YAMLs from ~/.openclaw/workspace/ros_profiles when --profile is used. These accesses are proportionate to the feature but you should verify that profile files and your ROS setup are trusted.
Persistence & Privilege
always is false and the skill does not request persistent elevated privileges or attempt to modify other skills or global agent settings. It writes a small config.json under its own config directory (normal).
Assessment
This skill appears to do what it says: safely wrap and run ros2 control subcommands. Before using it: 1) Confirm you source the correct ROS setup (sourcing executes that script — if your ROS installation is untrusted, that could run arbitrary commands). 2) Inspect any parameter/profile YAMLs in ~/.openclaw/workspace/ros_profiles before passing them to the wrapper. 3) Verify the provided scripts (setup.sh and safe_ros2_control_execution.py) are the ones you expect and have not been tampered with. The wrapper uses an allowlist and avoids shell=True (good mitigations), so its design is coherent and proportionate.

Like a lobster shell, security has layers — review code before you run it.

latestvk974qcz164zesavzzgq2v69kzs84c0r4

License

MIT-0
Free to use, modify, and redistribute. No attribution required.

Comments