Repolode
s-kostyaev

s-kostyaev/ellama

An Emacs package for using local and cloud LLMs in chat, text editing, code tasks and agent loops without leaving Emacs.

Open-source alternative to:GitHub Copilot Chat

Stars
964
Forks
66
Open issues
29
Last commit
last month

What is it?

Ellama is an Emacs package that brings large language models into the editor. It supports ordinary chat sessions, one-shot commands on the current buffer or region, and longer agent loops that plan, call tools and continue from earlier turns.

Backend access goes through the llm package, so Ollama can serve a local model while OpenAI-compatible APIs, OpenAI, Claude, Gemini, Vertex, GPT4All and llama.cpp can be configured as providers. Requests can include buffers, files, directories, Info nodes, selections, images and audio files as context. Sessions can be saved, resumed, renamed and compacted automatically when they approach the context window.

For coding agents, Ellama reads project instructions from AGENTS.md, loads skills and blueprint prompts, and runs subagents. Filesystem checks, edit hooks and DLP scans can block or warn on reads, writes, shell commands and tool output.

Key features

  • 01Chat sessions that can be saved, resumed, renamed and auto-compacted.
  • 02Works with Ollama locally and with several cloud and OpenAI-compatible providers.
  • 03Commands for translation, summarization, proofreading, code review and commit messages.
  • 04Context from buffers, files, directories, selections, images and audio.
  • 05Agent loops with planning, tool calls and subagents, plus DLP and filesystem policy checks.

Use cases

  • Summarizing or translating the buffer you are editing without switching apps.
  • Reviewing code or generating commit messages from a diff inside Emacs.
  • Running multi-step coding tasks with an agent that reads project context.
  • Using a local Ollama model so text and code stay on your machine.

Quick start

  1. 1

    Install Ellama from GNU ELPA in Emacs

    M-x package-install RET ellama RET
  2. 2

    Install Ollama from the link in the README

  3. 3

    Pull the default Ollama model

    ollama pull qwen3.6:35b

Things to know

  • Licensed under GPL-3.0, a copyleft license that requires derivative works to remain open source.
  • Needs a configured LLM backend, such as a locally pulled Ollama model or an account with a cloud provider.

In collections

Topics

FAQ

What is ellama?
An Emacs package for using local and cloud LLMs in chat, text editing, code tasks and agent loops without leaving Emacs. Ellama is an Emacs package that brings large language models into the editor. It supports ordinary chat sessions, one-shot commands on the current buffer or region, and longer agent loops that plan, call tools and continue from earlier turns.
Is ellama free to use? What license does it have?
ellama is open source under the GPL-3.0 license. Check the license terms before using it in commercial products.
Is ellama still maintained?
Updated within 6 months. The last commit to ellama was on Oct 7, 2026.
What can I use ellama for?
Summarizing or translating the buffer you are editing without switching apps. Reviewing code or generating commit messages from a diff inside Emacs. Running multi-step coding tasks with an agent that reads project context. Using a local Ollama model so text and code stay on your machine.
How do I install ellama?
Install Ellama from GNU ELPA in Emacs: M-x package-install RET ellama RET Install Ollama from the link in the README Pull the default Ollama model: ollama pull qwen3.6:35b
Where can I get ellama?
The source code and installation instructions are on GitHub: https://github.com/s-kostyaev/ellama

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects