logoalt Hacker News

Show HN: Bash4LLM+ – A lightweight, dependency-free Bash wrapper for LLM APIs

38 pointsby kamaluduyesterday at 7:43 PM15 commentsview on HN

Bash4LLM is a single-file Bash wrapper for interacting with LLMs from the terminal. I created it because I wanted something simple that worked without installing Python, Node, or any other runtime.

It uses only Bash, curl, and jq. You can send prompts, start a small chat, process files line by line, stream output, and save session metadata in JSON format.

I tried to make it safe and predictable: no use of the system /tmp, no use of eval. Groq is supported by default, and other providers can be added with dedicated Bash scripts in the extras/providers/ folder.

Example:

  echo "explains the command: ls -l" | ./bash4llm

Comments

Chu4eenoyesterday at 7:51 PM

You really should either just write it manually, or at least clean it up, 5kLOC of bash for POSTing and reading/writing files is a bit overkill (the code is extremely repetitive, verbose and just hard to follow).

show 2 replies
kamaluduyesterday at 8:36 PM

well, i write Bash4LLM to be:

. Portable - You need only: bash, coreutils, findutils, util-linux, gawk, curl, jq. No Python (slow), no Node (heavy), no Golang (need too many binaries, one for each OS, hard to maintain for one single person like me).

. Single file - only one. I write many extras, but all are optional.

. Idempotent - you copy it where you want and go!

. Transparent - open the file and read.

. Extras for all, and all optional: help file, extra providers, improved session engine, small GUI/CGI, etc...

Default (embedded) provider is Groq, because when I start the project, was the best free API service for AI.

I'm ready to answer to your question... with my terrible english...

Cristian (kamaludu)

show 1 reply
ifh-hnyesterday at 10:35 AM

Why is this flagged?

show 1 reply