                                           " > ")
                                tags)
                          " ")
-                        buffer-file-name
-                        (point)))
-                     )))
+                        'location (cons buffer-file-name (point)))))))
                t 'agenda))
       (mapc #'kill-buffer org-agenda-new-buffers)
       (setq org-agenda-new-buffers nil))))
+
+;;;###autoload
+(defun doom-completing-read-org-headings (prompt files &optional depth include-files initial-input)
+  "TODO"
+  (if-let* ((result (completing-read
+                     prompt
+                     (doom--org-headings files depth include-files)
+                     nil nil initial-input)))
+      (cl-destructuring-bind (file . location)
+          (get-text-property 0 'location result)
+        (find-file file)
+        (goto-char location))
+    (user-error "Aborted")))
 
 ;;;###autoload
 (defun doom/help ()

;;
;;; Documentation commands

;;;###autoload
(defun doom-completing-read-org-headlings (files &optional depth include-files)
  (require 'org)
  (let* ((default-directory doom-docs-dir)
         (org-agenda-files (mapcar #'expand-file-name (doom-enlist files)))

                                    (<= level depth))
                                (or (null tags)
                                    (not (string-match-p ":TOC" tags))))
                       (propertize
                        (mapconcat
                         'identity
                         (list (mapconcat #'identity
