                                         (when (buffer-live-p nrepl-server-buffer)
                                           (get-buffer-process nrepl-server-buffer)))))
            (cljs-proc (apply #'nrepl-start-client-process client-process-args))
-           (cljs-buffer (process-buffer cljs-proc)))
+           (cljs-buffer (process-buffer cljs-proc))
+           (cljs-repl-form (cider-cljs-repl-form (cider-project-type))))
       (with-current-buffer cljs-buffer
         ;; The new connection has now been bumped to the top, but it's still a
         ;; Clojure REPL!  Additionally, some ClojureScript REPLs can actually take

The new buffer will correspond to the same project as CLIENT-BUFFER, which
should be the regular Clojure REPL started by the server process filter."
    (interactive (list (cider-current-connection)))
    (let* ((nrepl-repl-buffer-name-template "*cider-repl CLJS%s*")
           (nrepl-create-client-buffer-function #'cider-repl-create)
           (nrepl-use-this-as-repl-buffer 'new)

        ;; up the list, so it takes priority on Clojure requests.
        (cider-make-connection-default client-buffer)
        (el-patch-remove
          (pcase (assoc cljs-repl-form cider--cljs-repl-types)
            (`(,_ ,name ,info)
             (message "Starting a %s REPL%s" name (or info "")))
            (_ (message "Starting a custom ClojureScript REPL"))))
        (cider-nrepl-send-request
         `("op" "eval"
           "ns" ,(cider-current-ns)
           "code" ,cljs-repl-form)
         (cider-repl-handler (current-buffer)))
        (cider--offer-to-open-app-in-browser nrepl-server-buffer)))))

