https://github.com/day50-dev/eschatch
Take your contextual llm along with you throughout your shell journey.
https://github.com/day50-dev/eschatch
Last synced: about 1 year ago
JSON representation
Take your contextual llm along with you throughout your shell journey.
- Host: GitHub
- URL: https://github.com/day50-dev/eschatch
- Owner: day50-dev
- License: mit
- Created: 2025-05-29T19:13:38.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-05-29T19:20:14.000Z (about 1 year ago)
- Last Synced: 2025-05-29T20:35:00.468Z (about 1 year ago)
- Language: Python
- Size: 4.88 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
**ESChatch** is a new concept, generally. It shepherds your input and output as a true wrapper and logs both sides of the conversation into files. Then when you invoke the llm it will pre-empt any existing interaction, kind of like the ssh shell escape. This is what the reversed triangle input in the video is. That's invoked with a keyboard shortcut, currently `ctrl+x`.
Then you type your command in and press enter. This command, plus the context of your previous input and output is then sent off to the llm and its response is wired up to the stdin of the application.
So for instance:
* Inside the `zsh` shell it gives shell commands.
* Inside a full screen program, in this case `vim`. The vim session is pre-empted with a keystroke then just start typing. The llm infers it's vim and knows what mode it's in from the previous keystrokes and correctly exits.
* Interactive Python is opened. It uses the context to infer it and responds appropriately.
This works seamlessly over ssh boundaries, in visual applications, at REPLs --- anywhere.
[ESChatch.webm](https://github.com/user-attachments/assets/29530ecf-15b6-4db1-9928-302c8674228e)