# Esh – English to Shell

A CLI that translates a plain-English request into a shell command using an LLM, printing only the command so it composes cleanly with the rest of the shell.

esh translates plain English into a shell command using a large language model: ask for what is wanted, get the command back. It prints only the command to stdout, with no explanation or Markdown, so its output can be substituted directly into another command or piped onward. By default esh only translates and leaves running the command to the user; passing --exec shows the command, asks for confirmation, and then runs it.

It works with a local Ollama server by default, so nothing leaves the machine unless a hosted provider is chosen, and can also use OpenAI, Anthropic, Google Gemini or any OpenAI-compatible service, switchable with one command. Repeated requests are served from a local history so the model is not called twice for the same English text.

It installs from prebuilt binaries or by building from source with Cargo, and is written in Rust.

Website: https://github.com/numericalworks/esh
