3 ms·
Also I forgot to one other built on llm. This one is a ZSH plugin that uses zle to translate your English to shell commands with a keystroke. https://github.c
by kristopolous 1y ago
Also I forgot to one other built on llm.
This one is a ZSH plugin that uses zle to translate your English to shell commands with a keystroke.
https://github.com/day50-dev/Zummoner https://github.com/day50-dev/Zummoner
It's been life changing for me. Here's one I wrote today:
$ git find out if abcdefg is a descendent of hijklmnop
In fact I used it in one of these comments
$ for i in $(seq 1 6); do
printf "%${i}sh${i}\n\n-----\n" | tr " " "#";
done | pv -bqL 30
Was originally
$ for i in $(seq 1 6); do
printf "(# $i times)\n\n-----\n"
done | pv (30 bps and quietly)
I did my trusty ctrl-x x and the buffer got sent off through openrouter and got swapped out with the proper syntax in under a second.
- kazinator 1y agoThe brace expansion syntax in Bash and Zsh expands integer ranges: {1..6}; no calling out to external command. It's also intelligent about inferring leading zeros without needing to be told with options, e.g. {001..995}.
- deleted 1y ago[deleted]
- CGamesPlay 1y agoI built a similar one to this one: https://github.com/CGamesPlay/llm-cmd-comp https://github.com/CGamesPlay/llm-cmd-comp Looks from the demo like mine's a little less automatic and more iterative that yours.
- kristopolous 1y agoInteresting! I like it! The conversational context is nice. The ongoing command building is convenient and the # syntax carryover makes a lot of sense! My next step is recursion and composability. I want to be able to do things contextualized. Stuff like this: $ echo PUBLIC_KEY=(( get the users public key pertaining to the private key for this repo )) >> .env or some other contextually complex thing that is actually fairly simple, just tedious to code. Then I want that <as the code> so people collectively program and revise stuff <at that level as the language>. Then you can do this through composability like so: with ((find the variable store for this repo by looking in the .gitignore)) as m: ((write in the format of m))SSH_PUBLICKEY=(( get the users public key pertaining to the private key for this repo )) or even recursively: (( (( ((rsync, rclone, or similar)) with compression )) $HOME exclude ((find directories with secrets)) ((read the backup.md and find the server)) ((make sure it goes to the right path)) )); it's not a fully formed syntax yet but then people will be able to do something like: $ llm-compile --format terraform --context my_infra script.llm > some_code.tf and compile publicly shared snippets as specific to their context and you get abstract infra management at a fractional complexity. It's basically GCC's RTL but for LLMs. The point of this approach is your building blocks remain fairly atomic simple dumb things that even a 1b model can reliably handle - kinda like the guarantee of the RTL. Then if you want to move from terraform to opentofu or whatever, who cares ... your stuff is in the llm metalanguage ... it's just a different compile target. It's kinda like PHP. You just go along like normal and occasionally break form for the special metalanguage whenever your hit a point of contextual variance.
- kristopolous 1y agohttps://github.com/day50-dev/ono https://github.com/day50-dev/ono It's happening
- rglynn 1y agoAh this is great, in combo with something like superwhisper you can use voice for longer queries.
- vicek22 1y agoThis is fantastic! Thank you for that. I use fish, but the language change is straightforward https://github.com/viktomas/dotfiles/blob/master/fish/.config/fish/functions/zummoner.fish https://github.com/viktomas/dotfiles/blob/master/fish/.confi... I'll use this daily
- rcarmo 1y agoOkay, this is very cool.