From 3475c0dc5881224259cd04f1a6e5b354bd3b703c Mon Sep 17 00:00:00 2001 From: John Doty Date: Mon, 4 May 2026 15:07:16 -0700 Subject: [PATCH] [emacs] AI stuff? --- .emacs.d/custom.el | 15 +++++++++++++-- .emacs.d/init.el | 39 +++++++++++++++++++++++++++++---------- 2 files changed, 42 insertions(+), 12 deletions(-) diff --git a/.emacs.d/custom.el b/.emacs.d/custom.el index da6cd83..91e58e8 100644 --- a/.emacs.d/custom.el +++ b/.emacs.d/custom.el @@ -63,8 +63,19 @@ '(org-odd-levels-only t) '(org-todo-keywords '((sequence "TODO" "|" "DONE" "ABANDONED" "DEFERRED"))) '(package-check-signature nil) - '(package-selected-packages nil) - '(package-vc-selected-packages '((claudemacs :url "https://github.com/cpoile/claudemacs"))) + '(package-selected-packages + '(adaptive-wrap add-node-modules-path bazel blacken cider claude-code-ide + claudemacs company dap-mode deadgrep doom-themes + earthfile-mode eat editorconfig eglot-java + exec-path-from-shell filladapt fish-mode flycheck-elm + ghostel go-mode gptel howm ink-mode jsonnet-mode lua-mode + magit modus-themes monky poly-markdown prettier-js + protobuf-mode request ron-mode rust-mode scala-ts-mode + sql-indent swift-mode terraform-mode typescript-mode vterm + wgsl-mode xterm-color zig-mode)) + '(package-vc-selected-packages + '((claude-code-ide :url "https://github.com/manzaltu/claude-code-ide.el") + (claudemacs :url "https://github.com/cpoile/claudemacs"))) '(reb-re-syntax 'string) '(rmail-mail-new-frame t) '(safe-local-variable-directories '("/home/john.doty/universe/")) diff --git a/.emacs.d/init.el b/.emacs.d/init.el index e0dceb9..32d822b 100644 --- a/.emacs.d/init.el +++ b/.emacs.d/init.el @@ -1386,17 +1386,36 @@ Do this when you edit your project view." ;; ================================================================= ;; AI Shit ;; ================================================================= -(use-package claudemacs - :vc (:url "https://github.com/cpoile/claudemacs") - :bind ("C-c C-'" . claudemacs-transient-menu)) +;; (use-package claudemacs +;; :vc (:url "https://github.com/cpoile/claudemacs") +;; :bind ("C-c C-'" . claudemacs-transient-menu)) -;; (use-package claude-code-ide -;; :straight (:type git :host github :repo "manzaltu/claude-code-ide.el") -;; :bind ("C-c C-'" . claude-code-ide-menu) ; Set your favorite keybinding -;; :config -;; (setq claude-code-ide-terminal-backend 'eat) -;; (setq claude-code-ide-use-side-window nil) -;; (claude-code-ide-emacs-tools-setup)) ; Optionally enable Emacs MCP tools +;; Ghostel: libghostty-vt terminal emulator. +;; Auto-downloads the pre-built native module on first use. +(use-package ghostel + :ensure t + :custom + ;; Auto-install the native module without prompting. Set to 'ask + ;; if you'd rather be prompted the first time. + (ghostel-module-auto-install t)) + +(use-package vterm + :ensure t) + +;; Claude Code IDE: bidirectional MCP bridge to claude-code CLI. +;; Not on MELPA yet, install via :vc from GitHub. +(use-package claude-code-ide + :vc (:url "https://github.com/manzaltu/claude-code-ide.el" :rev :newest) + :bind ("C-c C-'" . claude-code-ide-menu) + :custom + ;; Use ghostel for the terminal buffer. Other options: 'vterm, 'eat. + (claude-code-ide-terminal-backend 'vterm) + ;; Show Claude's proposed edits in ediff before applying. Default t. + (claude-code-ide-use-ide-diff t) + :config + ;; Expose Emacs's xref/tree-sitter/project/diagnostics to Claude + ;; via MCP tools. This is the bidirectional-bridge part. + (claude-code-ide-emacs-tools-setup)) ;; (defun claude-get-api-key () ;; "Get Claude API key from ~/.config/io.datasette.llm/keys.json file."