← Back to Skills Marketplace
ROS2 Control Execution
by
Brian Robinson
· GitHub ↗
· v1.0.0
· MIT-0
97
Downloads
0
Stars
0
Active Installs
1
Versions
Install in OpenClaw
/install ros2-control-execution
Description
Execute ROS 2 Control state-changing commands (load, switch, unload) in a sandboxed environment. Supports parameter profiles.
Usage Guidance
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.
Capability Analysis
Type: OpenClaw Skill
Name: ros2-control-execution
Version: 1.0.0
The skill provides a legitimate interface for managing ROS 2 controllers using a safety-oriented Python wrapper. The `safe_ros2_control_execution.py` script implements a subcommand allowlist and uses `subprocess.call` with `shell=False` to mitigate command injection risks, while `setup.sh` correctly automates environment configuration. No evidence of data exfiltration, malicious persistence, or prompt injection was found.
Capability Assessment
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).
How to Use
- Make sure OpenClaw is installed (local or Docker)
- Run the install command in chat:
/install ros2-control-execution - After installation, invoke the skill by name or use
/ros2-control-execution - Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
Initial release of ros2-control-execution.
- Provides a sandboxed environment to safely execute ROS 2 Control state-changing commands.
- Supports allowed `ros2_control` commands via a secure wrapper script (`safe_ros2_control_execution.py`).
- Enforces command validation and uses subprocess execution to prevent command injection.
- Adds support for parameter profiles for flexible controller configuration.
- Includes setup instructions and usage examples for all supported commands.
Metadata
Frequently Asked Questions
What is ROS2 Control Execution?
Execute ROS 2 Control state-changing commands (load, switch, unload) in a sandboxed environment. Supports parameter profiles. It is an AI Agent Skill for Claude Code / OpenClaw, with 97 downloads so far.
How do I install ROS2 Control Execution?
Run "/install ros2-control-execution" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.
Is ROS2 Control Execution free?
Yes, ROS2 Control Execution is completely free, licensed under MIT-0. You can download, install and use it at no cost.
Which platforms does ROS2 Control Execution support?
ROS2 Control Execution is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).
Who created ROS2 Control Execution?
It is built and maintained by Brian Robinson (@bigrobinson); the current version is v1.0.0.
More Skills