26 ms·
https://github.com/vercel-labs/just-bash/blob/main/src/spec-tests/bash/KNOWN_LIMITATIONS.md https://github.com/vercel-labs/just-bash/blob/main/src/spec-... Tha
by gaigalas 8mo ago
https://github.com/vercel-labs/just-bash/blob/main/src/spec-tests/bash/KNOWN_LIMITATIONS.md https://github.com/vercel-labs/just-bash/blob/main/src/spec-...
That's a lot of incompatibilities.
LLMs like to use the shell because it's stable and virtually unchanged for decades.
It doesn't need to worry much about versions or whether something is supported or not, it can just assume it is.
Re-implementing bash is a herculean effort. I wish good luck.
- esafak 8mo agoNo, they use it because there's a lot of training material. pro-tip: vercel's https://agent-browser.dev/ https://agent-browser.dev/ is a great CLI for agent-based browser automation.
- gaigalas 8mo ago[flagged]
- athorax 8mo agoWhy do you think there is a lot of training data? Could it be because it's stable and virtually unchanged for decades? Hmmm.
- esafak 8mo agoBecause bash is everywhere. Stability is a separate concern. And we know this because LLMs routinely generate deprecated code for libraries that change a lot.
- gaigalas 8mo agoThis project runs on all shells, totally portable: https://github.com/alganet/coral https://github.com/alganet/coral busybox, bash, zsh, dash, you name it. If smells bourne, it runs. Here's the list: https://github.com/alganet/coral/blob/main/test/matrix#L50 https://github.com/alganet/coral/blob/main/test/matrix#L50 (more than 20 years of compatibility, runs even on bash 3) It's a great litmus test, that many have passed. Let me know when just-bash is able to run it.
- esafak 8mo agoI have no connection to coral or just-bash. Why don't you do it yourself and let us know, since you are familiar with it?
- gaigalas 8mo agoI've been working with the shell long enough that I know just by looking at it. Anyway, it was rethorical. I was making a point about portability. Scripts we write today run even on ancient versions, and it has been an effort kept by lots of different interpreters (not only bash). I'm trying to give sane advice here. Re-implementing bash is a herculean task, and some "small incompatibilities" sometimes reveal themselves as deep architectural dead-ends.
- esafak 8mo agoThe project does not list portability as a concern. It's for agent use; they are not trying to re-use existing bash code.
- gaigalas 8mo agoBefore, you said: > they use it because there's a lot of training material. Now, you say: > they are not trying to re-use existing bash code. Can't you see how this is a contradiction? --- I'm sorry, I can't continue like this. I want to have meaningful conversations.
- esafak 8mo agoIs English your second language? "They" refers to very different things here.
- gaigalas 8mo agoThe issue here is not language, is basic understanding of how LLMs are trained, how agents act on that training and what is the role of the shell from a systems perspective. I can't have a meaningful conversation with someone that doesn't fully grasp those, no matter in which language.
- simonw 8mo agoIncompatibilities don't matter much provided your error messages are actionable - an LLM can hit a problem, read the error message and try again. They'll also remember that solution for the rest of that session.
- gaigalas 8mo agoI don't think the current incompatibilities can be worked around. Also, huge waste of tokens. And the waste is not even worth it, the sandbox seems insufficient. Again, good luck to the developers. I just don't think it's ready.
- cramforce 8mo agoI would not over-read into that doc. In practice, the only missing stuff are extreme edge cases of the type that is actually not consistent between other implementations of bash. In practice it works great. I haven't seen a failed command in a while [Disclaimer: I made the thing]
- gaigalas 8mo agoI gave it a shot. Failed with a simple `> /dev/null` redirection. LLMs do that a lot. Good luck with the project! I'm sure it will get there.