comparison
Lacy Shell vs AI Shell
Inline auto-routing vs separate command generator.
The core difference
AI Shell (by Builder.io) is a command you run: ai "find large files". It sends your query to an LLM, gets back a shell command, and lets you review it before running. Lacy doesn’t generate commands — it detects whether what you typed is a command or a question and sends it to the right place.
| Lacy Shell | AI Shell | |
|---|---|---|
| Invocation | Just type — automatic detection | ai "query" |
| What it does | Routes input to shell or AI agent | Generates a shell command from natural language |
| AI backend | Any CLI (Claude, Gemini, OpenCode, etc.) | OpenAI or Ollama |
| API key required | No (uses your installed CLI tool) | Yes (OpenAI key or local Ollama) |
| Real-time indicator | Yes — green/magenta as you type | No |
| Smart reroute | Yes — failed NL commands auto-reroute | No |
| Output | Full agent response (answers, code, explanations) | Generated shell command (confirm to run) |
| Shell integration | Deep — hooks into shell execution pipeline | Standalone binary |
| Language | Shell (ZSH/Bash) | Node.js |
They solve different problems
AI Shell answers: “I know what I want but not the command.” You describe the goal, it gives you the command. It’s a translator.
Lacy answers: “I don’t want to think about whether this is a command or a question.” You type whatever you mean and it goes to the right place. It’s a router.
If you type “find files larger than 100MB” into AI Shell, you get back find . -size +100M. If you type the same thing with Lacy, it sends the full question to your AI agent, which might give you the command, an explanation, or both.
When to use Lacy
- You want commands and AI queries in one workflow, no switching
- You want full AI agent responses, not just command translations
- You already have a CLI agent installed (Claude, Gemini, etc.)
- You don’t want to manage an API key for classification
When to use AI Shell
- You specifically want shell command generation with review
- You prefer the safety of confirming generated commands
- You want to use local models via Ollama
- You don’t want any shell-level hooks
Can you use both?
Yes. AI Shell installs as a standalone ai command. Lacy will recognize ai "..." as a valid command and let it run in the shell. They don’t interfere with each other.
Further reading
- Why I didn’t use AI to classify AI input — how Lacy decides whether your input is a shell command or natural language, without ML.