[HN Gopher] Efrit: A native elisp coding agent running in Emacs
___________________________________________________________________
Efrit: A native elisp coding agent running in Emacs
Author : simonpure
Score : 55 points
Date : 2025-08-08 19:20 UTC (3 hours ago)
(HTM) web link (github.com)
(TXT) w3m dump (github.com)
| cmrdporcupine wrote:
| Neat. As a Claude Code plan user can I use this ? I've never
| tried the API access method.
|
| Claude is remarkably effective at writing elisp I surprisingly
| found. I had it whip up a mode today for something today
| (Notation3/N3 RDF triples) complete with etags support, etc. and
| it just... did it.
| Bilal_io wrote:
| Clever name. For thos curious Efrit is Genie in Arabic and
| possibly the same in neighboring languages such as Persian and
| Turkish..
| dragonwriter wrote:
| > For thos curious Efrit is Genie in Arabi
|
| More precisely, as I understand it, "genie" is an anglicization
| of its Arabic equivalent, "jinn"; Efrit is a specific kind of
| jinn.
| kgwgk wrote:
| Genie comes from Latin via French, it's not (just) a
| transliteration.
|
| https://www.etymonline.com/word/genie
|
| https://en.wikipedia.org/wiki/Genius_(mythology)
| foobarqux wrote:
| I managed to get this working with gemini by using a proxy [1]
| and the following config (I used quelpa) (use-
| package efrit :quelpa (efrit :fetcher git :repo
| "steveyegge/efrit") :init (setq efrit-model
| "gemini-2.5-pro") ;; (setq efrit-api-url
| "https://generativelanguage.googleapis.com/v1beta/opena
| (setq efrit-api-url "http://127.0.0.1:8089/v1/messages")
| :config (defun efrit--get-api-key () (key-from-file
| "~/.keys/gemini.txt")) ; this isn't needed, it's set by the proxy
| :ensure t)
|
| I needed to remove the uvicorn version constraint when importing
| the project to uv to get it to find a version solution.
|
| Initially I thought you could send it directly to Gemini but
| apparently you need to proxy and translate the responses.
|
| [1] Seems sketchy, use at your risk:
| https://github.com/coffeegrind123/gemini-for-claude-code
| jwmcq wrote:
| I wonder if this could be updated to use OpenRouter in a similar
| way to Emigo[1] was aiming to do.
|
| (I use the past tense, because Emigo has not been updated in a
| quarter of a year, which seems as if it may as well be decades in
| the timeline of this sort of stuff.)
|
| [1] https://github.com/MatthewZMD/emigo
___________________________________________________________________
(page generated 2025-08-08 23:00 UTC)