Eb
Experimental backend for collaborative code editors following a client server architecture. 🚧
Install / Use
/learn @gbaranski/EbREADME
Architecture

Project status
I'm trying to develop a working proof-of-concept.
Problem
No separation of client/server in current editors.
Separating editors to client and a server has few advanteges:
- Server can be started on a beefy machine while running frontend on a small and slow laptop, without slowing down your development experience or consuming battery.
- Easy collaborative programming.
- Easier to create a new frontend which can use native GUI toolkits such as GTK and Cocoa, or a frontend which will be have Vim-like editing. Without need of implementing LSP communication or filesystem operations.
- Long-running sessions. You can run the server in background, while having editor closed, that'd greatly improve it's startup time.
- Frontend can be implemented on almost any platform, it could be made for Web and work similarly to Github Codespaces.
Protocol
JSON-RPC is used for communication between frontend and backend.
Check protocol.md for more information
Q&A
Why not Vim over SSH/Mosh?
I've been doing this for a long time, this works, but it has few cons:
- Quite high input latency.
- Mosh doesn't support true color, unless we use
masterbranch which isn't available on Termux. - No native feeling. Not a big issue on Laptop/PC, but on mobile it is hard to use.
What's different from Kakoune server?
Kakoune makes server used only by the kakoune frontend. eb wants to be something that can be used by many editors such as VSCode. Similarly how Microsoft came up with LSP which is now used by most of the editors right now.
Why not xi-editor?
xi-editor is dead, but I'd like to take some inspiration from it's design.
Related Skills
himalaya
343.1kCLI to manage emails via IMAP/SMTP. Use `himalaya` to list, read, write, reply, forward, search, and organize emails from the terminal. Supports multiple accounts and message composition with MML (MIME Meta Language).
node-connect
343.1kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
90.0kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
coding-agent
343.1kDelegate coding tasks to Codex, Claude Code, or Pi agents via background process
