diff --git a/core/installer/cmd/launcher.go b/core/installer/cmd/launcher.go
new file mode 100644
index 0000000..d86196b
--- /dev/null
+++ b/core/installer/cmd/launcher.go
@@ -0,0 +1,46 @@
+package main
+
+import (
+	"fmt"
+
+	"github.com/giolekva/pcloud/core/installer/welcome"
+	"github.com/spf13/cobra"
+)
+
+var launcherFlags struct {
+	logoutUrl string
+	port      int
+}
+
+func launcherCmd() *cobra.Command {
+	cmd := &cobra.Command{
+		Use:  "launcher",
+		RunE: launcherCmdRun,
+	}
+	cmd.Flags().IntVar(
+		&launcherFlags.port,
+		"port",
+		8080,
+		"",
+	)
+	cmd.Flags().StringVar(
+		&launcherFlags.logoutUrl,
+		"logout-url",
+		"",
+		"",
+	)
+	return cmd
+}
+
+func launcherCmdRun(cmd *cobra.Command, args []string) error {
+	s, err := welcome.NewLauncherServer(
+		launcherFlags.port,
+		launcherFlags.logoutUrl,
+		&welcome.FakeAppDirectory{},
+	)
+	if err != nil {
+		return fmt.Errorf("failed to create LauncherServer: %v", err)
+	}
+	s.Start()
+	return nil
+}
diff --git a/core/installer/cmd/main.go b/core/installer/cmd/main.go
index 1e4ec1d..5b05381 100644
--- a/core/installer/cmd/main.go
+++ b/core/installer/cmd/main.go
@@ -27,6 +27,7 @@
 	rootCmd.AddCommand(envManagerCmd())
 	rootCmd.AddCommand(welcomeCmd())
 	rootCmd.AddCommand(rewriteCmd())
+	rootCmd.AddCommand(launcherCmd())
 }
 
 func main() {
