No description
  • Rust 89.5%
  • Python 9.6%
  • Makefile 0.9%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-08-17 22:55:15 -04:00
.vscode move client into separate crate 2026-08-07 22:47:07 -04:00
crates/ai-client review 2026-08-17 22:55:15 -04:00
eval remove os release from params 2026-08-11 08:22:17 -04:00
prompt remove os release from params 2026-08-11 08:22:17 -04:00
src review 2026-08-17 22:55:15 -04:00
.gitignore i said commitment 2026-08-01 15:25:48 -04:00
AGENTS.md review 2026-08-17 22:55:15 -04:00
Cargo.lock smoke tests for ai client 2026-08-10 22:50:16 -04:00
Cargo.toml use rustyline in onboarding 2026-08-10 22:55:44 -04:00
Makefile smoke tests for ai client 2026-08-10 22:50:16 -04:00
README.md cargo metadata 2026-08-08 00:25:33 -04:00

shellbud

sb suggests a shell command from a prompt.

Install

git clone https://source.tube/ilya/shellbud.git
cd shellbud
cargo install --path .

Usage

# TUI
sb

# CLI
sb "find files larger than 100 MB"

# Pipes work both ways
sb "what's eating my RAM?" | pbcopy
echo "weather in brooklyn" | sb

# Live dangerously
sb "find PDFs in my downloads folder" | bash

Configuration

# ~/.config/shellbud/config.toml
base_url = "https://openrouter.ai/api/v1" # OpenAI-compatible endpoint
api_key = "sk-or-..."
# Or get the api_key via a key manager command:
# api_key_cmd = ["op", "read", "op://Personal/OpenRouter/credential"]
model = "google/gemini-2.5-flash-lite"

Environment values override the config file:

  • SHELLBUD_API_KEY or OPENROUTER_API_KEY — API key
  • SHELLBUD_MODEL — model name
  • SHELLBUD_BASE_URL — OpenAI-compatible API base URL

Development

make lint
make test
make eval

Benchmark results

To balance latency and accuracy, I chose Gemini 2.5 Flash Lite.

Model Pass rate Median E2E
GPT-5.4 Nano 30/50 (60%) 327 ms
Amazon Nova Micro 42/48 (87.5%) 516 ms
Gemini 2.5 Flash Lite 45/48 (93.8%) 521 ms
Ling 2.6 Flash 34/50 (68%) 532 ms
Gemini 3.1 Flash Lite 40/50 (80%) 546 ms
Amazon Nova Micro (Bedrock) 48/50 (96%) 746 ms
Mistral Small 2603 43/48 (89.6%) 769 ms
Qwen3 Coder Next 47/48 (97.9%) 804 ms
OpenAI GPT-4.1 mini 48/48 (100%) 925 ms
Claude Haiku 4.5 45/48 (93.8%) 1,035 ms
OpenAI GPT-4.1 mini 50/50 (100%) 1,313 ms
Claude Haiku 4.5 42/50 (84%) 1,357 ms
OpenAI GPT-4o mini 49/50 (98%) 1,382 ms