;;; 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))) (defun window-static (&rest r) "Make the current window width static." (interactive) (message "Setting window static.") (setq window-size-fixed 'width)) (use-package claude-code-ide :straight (:type git :host github :repo "manzaltu/claude-code-ide.el") :bind ("C-c c" . claude-code-ide-menu) :config (claude-code-ide-emacs-tools-setup) (advice-add 'claude-code-ide--display-buffer-in-side-window :after #'window-static) (advice-add 'claude-code-ide-switch-to-buffer :after #'window-static)) (provide 'priime-ai) ;;; priime-ai.el ends here