Live data from Hacker News

Show HN: Ell – A command-line interface for LLMs written in Bash

github.com

51–60 of 88 posts

Re: Show HN: Ell – A command-line interface for LLMs written in Bash

#53

This is cool! Using pure bash and unix tools is an interesting approach. I built Plandex[1] which has some similar goals (no dependencies, terminal-based, supports piping into context) but it takes quite a different route to get there—I’m using Go and compiling static binaries. It’s also ‘higher level’ and specifically focused on coding, whereas ell seems like a very lightweight and general purpose LLM tool. It remin…

Thanks! Plandex is also nice! I never thought of such workflow. Unfortunately, I did not know Simon Willinson’s `llm` tool. I would imagine he must have written such softwares. It has support for more in-depth manipulating of LLMs. ell lacks these functionalities and only make use of the most commonly-used and also most basic interfaces but has more user experience improvements like pagination or syntax highlighting…

That’s quite an honest and emotionally mature response, and I am always glad to find Real People(tm) around the internet. Rare these days. Your product looks great btw! Consider me another Stargazer, and keep building it.

Re: Show HN: Ell – A command-line interface for LLMs written in Bash

#54

I wrote a similar tool I'm no longer maintaining: https://github.com/llimllib/gpt-bash-cli/ . Here are my suggestions: - save the conversations in a sqlite db. ~everyone has sqlite available and it allows the user to do things with the data more easily than a text file - use XDG directories instead of suggesting ~/.ellrcd ( https://wiki.archlinux.org/title/XDG_Base_Directory ) - I prefer using system secret stores to…

I don't have sqlite, and I wouldn't know how to use it.

I would much prefer text files.

Thank you.

Re: Show HN: Ell – A command-line interface for LLMs written in Bash

#55
post #43

Ell is really cool! I'm building a similar product called Savvy( https://github.com/getsavvyinc/savvy-cli ) and considered an approach similar to yours (writing in pure bash) but ultimately decided to use Go for a few reasons: - charmbracelet makes it super easy to build rich TUI - Go produces a single binary that's compatible across many platforms and keeps installation simple - It's simpler to support multiple shel…

Just checked out Savvy; is the runbook-generating code (‘savvy record’) also in that repository? The one hosted at api.getsavvy.

Very interesting idea! Your terminal screenshots are excellent as well, very compelling imagery. Love the font.

Re: Show HN: Ell – A command-line interface for LLMs written in Bash

#56
post #54

I wrote a similar tool I'm no longer maintaining: https://github.com/llimllib/gpt-bash-cli/ . Here are my suggestions: - save the conversations in a sqlite db. ~everyone has sqlite available and it allows the user to do things with the data more easily than a text file - use XDG directories instead of suggesting ~/.ellrcd ( https://wiki.archlinux.org/title/XDG_Base_Directory ) - I prefer using system secret stores to…

I don't have sqlite, and I wouldn't know how to use it. I would much prefer text files. Thank you.

you can visit the website https://www.sqlite.org/ where you can find copies of the program, along with instructions on how to use it. I would prefer to use a more advanced file format to hold records. Standing on the shoulders of giants, instead of their toes, as it were. Hopefully we can advance technology beyond the 1980's. Thank you for your understanding.

Re: Show HN: Ell – A command-line interface for LLMs written in Bash

#57

I wrote a similar tool I'm no longer maintaining: https://github.com/llimllib/gpt-bash-cli/ . Here are my suggestions: - save the conversations in a sqlite db. ~everyone has sqlite available and it allows the user to do things with the data more easily than a text file - use XDG directories instead of suggesting ~/.ellrcd ( https://wiki.archlinux.org/title/XDG_Base_Directory ) - I prefer using system secret stores to…

Thanks for the suggestions! I read your code and the support of images is awesome. I would not assume everyone has sqlite but this can be done optionally with a plugin. Will consider writing a demo for this. Using XDG directories and system secrets sounds a lot better than what I did. I will learn how to use them and try to integrate them with my code!

> I would not assume everyone has sqlite but this can be done optionally with a plugin. Will consider writing a demo for this.

Used to be everyone used BerkleyDB or some similar key-value store - for a great many usecases SQLite is just pragmatically better.

And it's arguably less exotic than perl.

You should of course do what want - but "just use SQLite" is pretty solid advice when dealing with structured data - and almost certainly better than "smart" text file.

Re: Show HN: Ell – A command-line interface for LLMs written in Bash

#58

I wrote a similar tool I'm no longer maintaining: https://github.com/llimllib/gpt-bash-cli/ . Here are my suggestions: - save the conversations in a sqlite db. ~everyone has sqlite available and it allows the user to do things with the data more easily than a text file - use XDG directories instead of suggesting ~/.ellrcd ( https://wiki.archlinux.org/title/XDG_Base_Directory ) - I prefer using system secret stores to…

On the contrary please don't use the keyring, its annoying and some systems don't have it. Your llm key is not that critical, and you should trust what runs on your system.

Poetry demands access to my keyring and I don't use poetry (open bug for years, it doesnt even need access).

Re: Show HN: Ell – A command-line interface for LLMs written in Bash

#59
post #26

I also have a similar tool called https://autocomplete.sh https://github.com/closedloop-technologies/autocomplete-sh I really just wanted the feeling of tab-based auto-complete to just work in the terminal. It turns out that getting the LLM responses to 'play nice' with the expected format for bash_completion was a bit of a challenge, but once that worked, I could wrap all the LLMS (OpenAI, grok, Claude, local ones l…

I've watched autocomplete-sh in action at the AI Tinkerers meetup in Cambridge, MA. Was impressed. It is very well integrated with the shell. The idea of writing it directly in bash - bold! But an effective idea to keep it portable.

Re: Show HN: Ell – A command-line interface for LLMs written in Bash

#60
post #43

Ell is really cool! I'm building a similar product called Savvy( https://github.com/getsavvyinc/savvy-cli ) and considered an approach similar to yours (writing in pure bash) but ultimately decided to use Go for a few reasons: - charmbracelet makes it super easy to build rich TUI - Go produces a single binary that's compatible across many platforms and keeps installation simple - It's simpler to support multiple shel…

Just checked out Savvy; is the runbook-generating code (‘savvy record’) also in that repository? The one hosted at api.getsavvy. Very interesting idea! Your terminal screenshots are excellent as well, very compelling imagery. Love the font.

Here's the code for savvy record: https://github.com/getsavvyinc/savvy-cli/blob/8c6a834c5a140b...

Lot of users typically find that they realize they should have recorded something after they've done it. That's why savvy also allows you to select commands from your shell history with savvy record history

The API source code is in a different repo.

Thanks! All credit to the dracula theme for tmux and Kitty terminal emulator.

If you have any questions or feedback feel free to email me at shantanu@getsavvy.so

Post reply on HN