MoveIt is open source and released under the BSD License v3. Each individual file in the MoveIt source code should contain a copy of the license.

Source Code

MoveIt code is hosted on GitHub in the moveit organization in the following repos:

  • moveit - Main repo of MoveIt, contains the following packages:
    • moveit - Metapackage
    • moveit_core - Core functionality including RobotModel, RobotState, collision checking
    • moveit_ros_planning - planning components, execution manager, plugin loaders
    • moveit_ros_move_group - The move_group main node for using MoveIt via ROS messages
    • moveit_ros_planning_interface - Python and ROS msg interfaces to communicate with move_group
    • moveit_ros_perception - Octomap and other perception plugins
    • moveit_ros_manipulation - High level pick and place pipeline
    • moveit_ros_robot_interaction - Interactive marker tools for Rviz
    • moveit_ros_visualization - Rviz tools
    • moveit_ros_warehouse - Database plugins for storing scene and configuration data
    • moveit_ros_benchmarks - Benchmarking using PlannerArena
    • moveit_ros - Metapackage
    • moveit_planners - Metapackage
    • moveit_planners_ompl - Open Motion Planning Library plugin
    • moveit_commander - terminal-based control interface using Python-like syntax
    • moveit_setup_assistant - GUI for quickly setting up MoveIt
    • moveit_plugins - plugins for controller managers
    • chomp_motion_planner - Gradient Optimization Techniques for Efficient Motion Planning
    • chomp_interface - adapter for using CHOMP with MoveIt
  • moveit2 - The beta version of MoveIt for ROS 2
  • moveit_msgs - ROS messages
  • moveit_task_constructor - An approach to hierarchical, multi-stage manipulation planning
  • moveit_grasps - A geometric-based grasp generation library for manipulation
  • moveit_visual_tools - display and debugging data in Rviz
  • moveit_resources - large file assets such as testing robots
  • moveit_calibration - hand-eye calibration routines with GUI
  • moveit_advanced - Experimental advanced capabilities
  • moveit_ci - script to run with Travis for continuous integration
  • rqt_moveit - Plugin for the GUI framework of ROS, RQT
  • srdfdom - Semantic Robot Description Format used exclusively by MoveIt

Dependencies maintained by the MoveIt team:

The following repos are where documentation can be found:

Code Health

We use Travis continuous integration combined with the moveit_ci for testing pull requests and overall code health. Travis status badges should be visible on the of every MoveIt repository.

To see an overview of the activity for MoveIt check our Open HUB Project Summary.

ROS Noetic Code API

Move Group Interface

MoveIt ROS

This API is meant for advanced developers. Most users should use the Move Group interface (above).

  • Planning - The planning components in MoveIt ROS, especially the planning scene, kinematics and monitors
  • Move Group - The move_group_node
  • Perception - The perception components in MoveIt ROS
  • Robot Interaction - The Interactivity components in MoveIt ROS

MoveIt Core

This API is meant for advanced developers. Most users should use the Move Group interface (above).

  • Core - The core components in MoveIt for kinematics, planning scene, constraints, motion planning, collision checking and plugin interfaces

MoveIt OMPL Interface

This API is meant for advanced developers. Most users should use the Move Group interface (above).

  • OMPL Interface - The set of classes that allow MoveIt to talk with OMPL.