What problem does it solve? Manually driving a specific vehicle in a running CARLA simulation requires juggling raw VehicleControl semantics, autopilot conflicts, persistent control state, and version-specific physics APIs. This Skill encodes those procedures and failure modes so an agent can steer, brake, set target speeds, toggle lights, open doors, and tune physics without improvising against the Python API. ## Core Features & Use Cases - Raw and Ackermann control: Apply throttle/steer/brake/reverse inputs with timed holds, or drive to a target speed using the built-in Ackermann controller; both disable autopilot first since manual and Traffic Manager control are mutually exclusive. - Lights, doors, and physics: Toggle VehicleLightState flags (headlights, blinkers, hazards), open/close doors (FL, FR, RL, RR, All), and read or modify VehiclePhysicsControl fields like mass, drag, and max RPM, with handling for the 0.9.x PhysX vs 0.10.0 Chaos field differences. - ROS 2 integration reporting: The ros-info command reports the native ROS 2 command topics (vehicle_control_cmd, ackermann_control_cmd) for hero vehicles, including a ready-to-run ros2 topic pub line and guidance on the required carla_msgs message definitions. - Use Case: A user asks to "drive the ego forward for a few seconds, then put the hazards on" — the Skill checks prerequisites, applies a timed throttle input, then sets both blinker flags on the hero vehicle. ## Quick Start Ask the agent to drive the ego vehicle forward at half throttle for three seconds using the control-vehicle skill, then stop it.