the AI shell
Lacy™ Shell
█   ▄▀▀▀▄ ▄▀▀▀▀▀ █   █
█   █▀▀▀█ ▀▀▀▀▀█ █▀▀▀█
▀▀▀ ▀   ▀ ▀▀▀▀▀▀ ▀   ▀

A beautiful terminal
for your code

Shell first, AI second. Type commands or talk naturally. Commands run in your shell. Questions go to your AI agent. No prefixes. No mode switching.

$ brew install lacymorrow/tap/lash
$ npm install -g lash-cli
$ curl -fsSL https://lash.sh/install | bash
What it looks like
>ls -lashell
drwxr-xr-x 12 user staff 384 Feb 3 09:21 .
>what files are hereagent
You have 12 files including package.json, src/, ...
>git statusshell
>fix the build error in src/index.tsagent
>bun test --watchshell
>make sure the tests passreroute
No rule to make target 'sure' → rerouting to AI…

How it works

Commands run.
Questions route.

Lash intercepts your input before the shell sees it. If the first word is a valid command, it executes normally. If it looks like natural language, it goes to your AI tool.

Shell mode

Everything goes to your shell. Normal terminal.

Agent mode

Everything goes to AI. Every line is a prompt.

Auto mode

Smart routing. Commands to shell, questions to AI.

Smart reroute

Ambiguous input? Shell tries first. If it fails, AI takes over automatically.

Live indicator

A colored bar changes as you type. Green = shell. Magenta = AI.

Preheated

Background servers and session reuse eliminate cold-start latency.


Supported tools
Claude Code
claude -p "query"
Anthropic
lash
lash -c "query"
recommended
Gemini CLI
gemini -p "query"
Google
Codex
codex exec "query"
OpenAI
custom
your-command "query"
anything

Each tool handles its own authentication. Lash just routes — nothing to configure beyond picking a tool.


Open terminal.
Type naturally.
Ship code.