ebb is a Rust terminal app for refining text with an LLM.
It lets you:
- install from prebuilt GitHub Release binaries
- choose an LLM vendor locally with
ebb setup - save the API key in a local
.env - send text from the command line and get a refined result back
Install the latest release with:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/zieen/ebb/main/install.sh)"By default the installer places the binary in ~/.local/bin.
If that directory is not already in your PATH, add it first:
export PATH="$HOME/.local/bin:$PATH"You can also override the install location:
INSTALL_DIR="$HOME/bin" /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/zieen/ebb/main/install.sh)"Run setup first:
ebb setupThe setup flow will:
- ask you to choose a vendor
- ask for the vendor API key
- save
LLM_VENDOR,LLM_MODEL, and the provider key in a local.env
Supported vendors in the setup flow:
- OpenAI
- Gemini
- Anthropic
- DeepSeek
Then refine text from the terminal:
ebb i has a apple$ ebb i has a apple
BB: I have an apple.
Mistakes:
- "has" should be "have"
- "a apple" should be "an apple"Clone the repo and run it locally:
git clone https://github.com/zieen/ebb.git
cd ebb
cargo run -- setup
cargo run -- i has a appleUseful commands:
cargo check
cargo testGitHub Actions builds release binaries for:
- Linux
x86_64 - macOS
x86_64 - Windows
x86_64
The workflow lives in release.yml and runs on tags matching v*.
To publish a release:
git tag v0.1.0
git push origin v0.1.0That workflow packages and uploads:
ebb-linux-x86_64.tar.gzebb-macos-x86_64.tar.gzebb-windows-x86_64.tar.gz
- The installer currently supports Linux
x86_64and macOSx86_64. - macOS
arm64is not published yet. ebbloads configuration from the local.envfile at startup.