diff --git a/tools/CMakeLists.txt b/tools/CMakeLists.txt
index 6090e2f312dbf0e6472ce982e012b626425b17ad..65f68570c75cfdcea8520155c81b9dd796ba753a 100644
--- a/tools/CMakeLists.txt
+++ b/tools/CMakeLists.txt
@@ -7,6 +7,17 @@ SET(tools
 	test_shell
 )
 
+### Configure shell launch script
+CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/shell.sh.cmake
+			${${PROJECT_NAME}_BINARY_DIR}/tools/shell.sh)
+INSTALL(
+	FILES
+		${${PROJECT_NAME}_BINARY_DIR}/tools/shell.sh
+	DESTINATION
+		 ${CMAKE_INSTALL_PREFIX}/bin/${PROJECT_NAME}
+	PERMISSIONS OWNER_EXECUTE OWNER_WRITE OWNER_READ
+                      GROUP_EXECUTE GROUP_READ )
+
 FOREACH(tool_name ${tools})
 	SET(EXECUTABLE_NAME ${tool_name})
 
diff --git a/tools/shell.sh.cmake b/tools/shell.sh.cmake
new file mode 100644
index 0000000000000000000000000000000000000000..b70a95e66046e4248bbb6985307f23053ec506e3
--- /dev/null
+++ b/tools/shell.sh.cmake
@@ -0,0 +1,4 @@
+echo "-- Launching dynamic-graph C shell with default plugins"
+echo "loadPlugin ${CMAKE_INSTALL_PREFIX}/lib/plugin/shell-functions.so" > ./default_script
+echo "loadPlugin ${CMAKE_INSTALL_PREFIX}/lib/plugin/shell-procedure.so" >> ./default_script
+${CMAKE_INSTALL_PREFIX}/bin/${PROJECT_NAME}/test_shell default_script
\ No newline at end of file