Top AI Repos — open-source AI, indexed and scored
Top AI Repos tracks AI repositories on GitHub and answers two different questions about each one: is it moving right now, and would you bet a product on it.
Top AI Repos tracks AI repositories on GitHub and answers two different questions about each one: is it moving right now, and would you bet a product on it.
An unofficial Copilot plugin for Emacs.
| Date | Stars |
|---|---|
| 2026-07-31 | 2324 |
| 2026-08-03 | 2325 |
| 2026-08-06 | 2325 |
Today
— stars today
This week
— stars this week
This month
— stars this month
Momentum
0.0
growth rate 0.00%/day
[](https://jcs-emacs.github.io/jcs-elpa/#/copilot)
[](http://melpa.org/#/copilot)
[](http://stable.melpa.org/#/copilot)
[](https://github.com/copilot-emacs/copilot.el/actions/workflows/test.yml)
[](https://github.com/sponsors/bbatsov)
# Copilot.el
Copilot.el is an Emacs plugin for [GitHub Copilot][]. It provides inline
completions (ghost text), an interactive chat interface, and Next Edit
Suggestions — all powered by the official [@github/copilot-language-server][].

The plugin talks to the Copilot language server over JSON-RPC, using `jsonrpc.el`
directly rather than going through an LSP client like eglot. This is a
deliberate choice — most of the Copilot protocol is non-standard LSP, and a
single global server is shared across all buffers and projects. See
[doc/design.md](doc/design.md) for the full rationale.
> [!NOTE]
>
> You need access to [GitHub Copilot][] to use this plugin. The service introduced a free tier in early 2025.
## Requirements
`copilot.el` requires Emacs 27+ and the following packages (installed automatically from MELPA):
- `editorconfig`
- `jsonrpc`
- `compat`
- `track-changes`
[@github/copilot-language-server][] ships precompiled native binaries for macOS (Apple Silicon & Intel), Linux (x64 & ARM64), and Windows (x64). When npm is not available, `copilot-install-server` automatically downloads and installs the native binary, so Node.js is not required. If you prefer to install via npm, Node.js 22+ is needed.
## Quick Start
```elisp
(use-package copilot
:ensure t
:hook (prog-mode . copilot-mode)
:bind (:map copilot-completion-map
("<tab>" . copilot-accept-completion)
("TAB" . copilot-accept-completion)
("C-<tab>" . copilot-accept-completion-by-word)
("C-TAB" . copilot-accept-completion-by-word)
("C-n" . copilot-next-completion)
("C-p" . copilot-previous-completion)))
```
Then run `M-x copilot-install-server` and `M-x copilot-login`. That's it!
## Installation
### MELPA
The simplest way to install `copilot.el` is from [MELPA](https://melpa.org/#/copilot):
```elisp
(use-package copilot
:ensure t)
```
Or `M-x package-install RET copilot RET`.
### Emacs 30+ (use-package :vc)
```elisp
(use-package copilot
:vc (:url "https://github.com/copilot-emacs/copilot.el"
:rev :newest
:branch "main"))
```
### Emacs 27-29 (straight / quelpa)
`straight.el`:
```elisp
(use-package copilot
:straight (:host github :repo "copilot-emacs/copilot.el" :files ("*.el"))
:ensure t)
```
`quelpa` + `quelpa-use-package`:
```elisp
(use-package copilot
:quelpa (copilot :fetcher github
:repo "copilot-emacs/copilot.el"
:branch "main"
:files ("*.el")))
```
### Manual
Clone this repository, make sure the dependencies listed in [Requirements](#requirements) are installed, then:
```elisp
(add-to-list 'load-path "/path/to/copilot.el")
(require 'copilot)
```
### Doom Emacs
<details>
Add package definition to `~/.doom.d/packages.el`:
```elisp
(package! copilot
:recipe (:host github :repo "copilot-emacs/copilot.el" :files ("*.el")))
```
Configure copilot in `~/.doom.d/config.el`:
```elisp
;; accept completion from copilot and fallback to company
(use-package! copilot
:hook (prog-mode . copilot-mode)
:bind (:map copilot-completion-map
("<tab>" . 'copilot-accept-completion)
("TAB" . 'copilot-accept-completion)
("C-TAB" . 'copilot-accept-completion-by-word)
Excerpt of 52,889 characters
Read on GitHubWould you bet a product on this? Bounded 0–100 and slow moving.
matched fp:a2a67a328edb383f, llm:Description: 'An unofficial Copilot plugin for Emacs.' Language: Emacs Lisp. Repository provides integration of GitHub Copilot (AI code assistant) into Emacs editor.
matched fp:a2a67a328edb383f, llm:Description: 'An unofficial Copilot plugin for Emacs.' Language: Emacs Lisp. Repository provides integration of GitHub Copilot (AI code assistant) into Emacs editor.