anchor.diff:  (defmethod password-correct-p ((password-interface keepassxc-interface))
     (when (master-password password-interface)
       (handler-case
  -        (let* ((st (make-string-input-stream (master-password password-interface)))
  -               (output (execute password-interface (list "ls" (password-file password-interface))
  -                                :input st :output '(:string :stripped t))))
  -          (remove "Recycle Bin/" (rest (cl-ppcre:split "\\n" output)) :test #'equal))
  +        (list-passwords password-interface)
         (uiop/run-program:subprocess-error ()
           nil))))
  
positive.code: (push 'keepassxc-interface *interfaces*)
  
  (defmethod list-passwords ((password-interface keepassxc-interface))
    (let* ((st (make-string-input-stream (master-password password-interface)))
           (output (execute password-interface (list "ls" (password-file password-interface))
                            :input st :output '(:string :stripped t))))
      (remove "Recycle Bin/" (sera:lines output) :test #'equal)))
  
  (defmethod clip-password ((password-interface keepassxc-interface) &key password-name service)
    (declare (ignore service))
  
negative.code:   ((executable (pathname->string (sera:resolve-executable "keepassxc-cli")))
     (password-file)
     (master-password nil
                      :type (or null string))
     (entries-cache nil
                    :type list
                    :documentation "The cache to speed the entry listing up."))
    (:export-class-name-p t)
    (:export-accessor-names-p t)
    (:accessor-name-transformer (hu.dwim.defclass-star:make-name-transformer name)))
  