I have set up Matrix clients inside Pen.el, and I demonstrate AI completion using cterm (Codex) and TabNine.



This one is completely emacs-based.

It’s actually very new, so there are still a few issues, and it doesn’t have feature parity yet.

It seems I need to do a little bit more work on getting AI completion going for ement, surprisingly because of the way insertion is currently done through the emacs minibuffer.