Emacs finally gets an AI assistant that stays in its lane
An org-mode minor mode that treats LLMs like just another source block—generate text, images, or speech without leaving your buffer.

What it does
org-ai is a minor mode that adds #+begin_ai...#+end_ai blocks to org-mode. You type a prompt, hit C-c C-c, and ChatGPT (or a local LLM via oobabooga) responds inline. Add :image and you get DALL-E or Stable Diffusion output stored in ~/org/org-ai-images/. It also handles speech input via Whisper and text-to-speech via espeak—because apparently Emacs users want to talk to their editor now.
The interesting bit
The clever part is inheritance: set system prompts, temperature, and model as org properties on a heading, and every AI block underneath picks them up. It’s org-mode’s outline structure repurposed as prompt engineering infrastructure.
Key highlights
- Supports OpenAI, Azure, Perplexity, Anthropic/Claude, and local models via text-generation-webui
- Image generation with DALL-E 3 or Stable Diffusion, including img2img via
:image-ref - Speech input (Whisper/Siri dictation) and output (espeak/greader)
- Global commands like
org-ai-on-projectfor prompting across multiple files outside org-mode - Syntax highlighting inside AI blocks by appending a major mode:
#+begin_ai markdown
Caveats
- Speech setup is platform-specific and involves multiple external tools (Whisper, espeak, portaudio); the README warns macOS and Windows steps differ
- Stable Diffusion requires running AUTOMATIC1111’s webui separately; local LLMs need conda environments and manual API server startup
- The “free tier gets you pretty far” note about OpenAI is the author’s impression, not a guarantee
Verdict
Worth a look if you already live in org-mode and want AI woven into your note-taking workflow, not a separate app. Skip it if you want something that works out of the box without API keys, local servers, and speech toolchain wrangling.