<< All versions

Skill v1.0.1

currentLLM-judged scan90/100
kronael/tools/emacs

+1 new

──Details
PublishedOctober 21, 2026 at 06:52 AM
Content Hashsha256:ac8d80451bfab82a...
Git SHAd138bd6ad64e
Bump Typepatch
Compare with v1.0.0
──Files
Files (1 file, 3.0 KB)
SKILL.md3.0 KBactive
SKILL.md · 70 lines · 3.0 KB

version: "1.0.1" name: emacs description: Emacs configuration — a package stack for completion, navigation, git, and AI. NOT for host or service configuration (use ops), NOT for writing elisp application code. when_to_use: set up Emacs, configure Emacs, Emacs packages, init.el, elisp config, use-package, MELPA, completion stack, vertico, orderless, marginalia, corfu, consult, avy, magit, gptel, codeium, aidermacs, vterm, AI in Emacs, Claude Code in Emacs, Emacs keybindings


Emacs Setup

Ask the user which sections they want before generating any elisp. Default: all. Each section is independent.

Completion, navigation, git

Every package loads through use-package … :ensure t.

  • Completion: vertico (vertico-mode), orderless (`completion-styles

'(orderless basic)), marginalia, corfu (global-corfu-mode), consult with C-s → consult-line and C-x b → consult-buffer`.

  • Navigation: avy, C-; → avy-goto-char.
  • Git: magit, C-x g → magit-status.

AI

Three layers: autocomplete (codeium), chat (gptel), agentic (Claude Code / aidermacs).

elisp
;; Autocomplete — free, 70+ languages
(use-package codeium :ensure t
:init (add-to-list 'completion-at-point-functions #'codeium-completion-at-point))
;; Chat — multi-provider
(use-package gptel :ensure t
:bind ("C-c a g" . gptel)
:config
(require 'gptel-anthropic)
(setq gptel-model 'claude-sonnet-5-5
gptel-backend (gptel-make-anthropic "Anthropic"
:stream t
:models (cons '(claude-sonnet-5-5
:capabilities (media tool-use cache)
:mime-types ("image/jpeg" "image/png" "image/gif"
"image/webp" "application/pdf"))
gptel--anthropic-models)
:key (lambda ()
(or (getenv "ANTHROPIC_API_KEY")
(user-error "ANTHROPIC_API_KEY is not set"))))))
;; Agentic — Claude Code in vterm at project root
(defun my-claude ()
(interactive)
(let ((root (or (and (project-current) (project-root (project-current)))
default-directory)))
(vterm)
(vterm-send-string (format "cd %s && claude\n" root))))
(global-set-key (kbd "C-c a c") #'my-claude)
;; Inline pair programming via Aider (optional)
(use-package aidermacs :ensure t
:config (setq aidermacs-backend 'vterm))

Notes

  • Requires use-package (built-in since Emacs 29; M-x package-install use-package on older)
  • codeium.el is on MELPA — ALWAYS add (add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/") t) to init.el first
  • ALWAYS export ANTHROPIC_API_KEY before starting Emacs — gptel errors loudly without it
  • vterm requires a C compiler; fallback: replace (vterm) with (ansi-term "/bin/bash")
  • Claude Code is terminal-native — no Emacs-specific config needed beyond the keybind
← v1.0.0All versions