        sd/ws-add-trace-ns!*)
   (send-status-done msg))
 
-(defn sayid-remove-all-traces
+(defn ^:nrepl sayid-remove-all-traces
   [{:keys [transport] :as msg}]
   (sd/ws-remove-all-traces!)
   (send-status-done msg))
 
-(defn sayid-disable-all-traces
+(defn ^:nrepl sayid-disable-all-traces
   [{:keys [transport] :as msg}]
   (sd/ws-disable-all-traces!)
   (send-status-done msg))
 
-(defn sayid-set-printer
+(defn ^:nrepl sayid-set-printer
   [{:keys [transport printer] :as msg}]
   (println printer)
   (if (.startsWith printer ".")

         (apply sd/set-printer!)))
  (send-status-done msg))

(defn sayid-get-workspace
  [msg]
  (reply:clj->nrepl msg
                    (sd/with-this-printer [:children]
                      (so/tree->meta-string-pairs (sd/ws-deref!)))))

(def sayid-nrepl-ops
  {"sayid-query-form-at-point" #'sayid-query-form-at-point
   "sayid-replay-with-inner-trace" #'sayid-replay-with-inner-trace
   "sayid-get-workspace" #'sayid-get-workspace
   "sayid-clear-log" #'sayid-clear-log
   "sayid-reset-workspace" #'sayid-reset-workspace
   "sayid-trace-all-ns-in-dir" #'sayid-trace-all-ns-in-dir
   "sayid-trace-ns-in-file" #'sayid-trace-ns-in-file
   "sayid-remove-all-traces" #'sayid-remove-all-traces
   "sayid-disable-all-traces" #'sayid-disable-all-traces
   "sayid-buf-query-id-w-mod" #'sayid-buf-query-id-w-mod
   "sayid-buf-query-fn-w-mod" #'sayid-buf-query-fn-w-mod
   "sayid-buf-def-at-point" #'sayid-buf-def-at-point
   "sayid-buf-pprint-at-point" #'sayid-buf-pprint-at-point
   "sayid-set-printer" #'sayid-set-printer
   "sayid-show-traced" #'sayid-show-traced
   "sayid-replay-at-point" #'sayid-replay-at-point
   "sayid-replay-workspace" #'sayid-replay-workspace
   "sayid-get-meta-at-point" #'sayid-get-meta-at-point})


(defn wrap-sayid
  [handler]

;; ======================


(defn ^:nrepl sayid-get-meta-at-point
  [{:keys [transport source file line] :as msg}]
  (t/send transport
          (response-for msg
                        :value (str (get-meta-at-pos-in-source file line source))))
  (send-status-done msg))

(defn ^:nrepl sayid-show-traced
  [{:keys [transport] :as msg}]
  (t/send transport (response-for msg :value (clj->nrepl (sd/ws-show-traced*))))
  (send-status-done msg))

(defn ^:nrepl sayid-replay-workspace
  [{:keys [transport] :as msg}]
  (println "sayid-replay-workspace")
  (let [kids (:children (sd/ws-deref!))]
