1
0
Fork 0
dotfiles/.emacs.d/include/priime-ai.el

54 lines
1.4 KiB
EmacsLisp

;;; priime-ai.el --- AI completion -*- lexical-binding: t -*-
;;; Commentary:
;; Contains configuration for AI completion.
;;; Code:
(defun gptel-context-delete ()
"Wrapper over `gptel-context-remove'."
(interactive)
(gptel-context-remove))
(defvar-keymap gptel-context-keymap
"a" #'gptel-add
"d" #'gptel-context-delete
"k" #'gptel-context-remove-all
"n" #'gptel-context-next
"p" #'gptel-context-previous
"v" #'gptel-context-visit
"RET" #'gptel-context-confirm
"f" #'gptel-add-file)
(defvar-keymap gptel-keymap
"c" gptel-context-keymap
"a" #'gptel
"e" #'gptel-send
"r" #'gptel-rewrite-menu
"o" #'gptel-menu)
(use-package gptel :straight t
:config
(keymap-global-set "C-c a" gptel-keymap)
(setq gptel-model 'claude-sonnet-4-2025051)
(setq gptel-backend
(gptel-make-anthropic "Claude"
:stream t
:key #'gptel-api-key-from-auth-source)))
(use-package claude-code
:straight (:type git
:host github
:repo "stevemolitor/claude-code.el"
:branch "main"
:depth 1
:files ("*.el" (:exclude "images/*")))
:bind-keymap ("C-c c" . claude-code-command-map)
:bind (:repeat-map my-claude-code-map ("M" . claude-code-cycle-mode))
:custom (claude-code-terminal-backend 'vterm)
:config (claude-code-mode))
(provide 'priime-ai)
;;; priime-ai.el ends here