Turn natural-language intent into a shell command — without leaving the terminal.
Type your intent, hit ??, pick a command. It lands in your buffer ready to run or edit. No browser, no prompt takeover, no clipboard gymnastics.
brew install k-leumas/tap/quequeNote
The homebrew script automagically appends the shell-integration command and sources your .zshrc, which is shown during install.
Install via npm or source
npm install -g @k-leumas/queque-cli
qq init zsh >> ~/.zshrc && source ~/.zshrcQueQue resolves ANTHROPIC_API_KEY in order:
- Environment variable —
export ANTHROPIC_API_KEY="sk-ant-..."in your shell or.zshrc .env.localfile — place a.env.localin your project directory (or any parent). QueQue searches upward from the current working directory:ANTHROPIC_API_KEY=sk-ant-...
The .env.local option is useful for project-specific keys or keeping the key out of your shell profile.
Type anything before ?? and QueQue turns it into a shell command:
list files by size??
find docker containers using port 3000??
git undo last commit but keep changes??
A selection UI opens in-terminal. Pick a command with arrow keys or fuzzy search, press Enter, and the command lands in your buffer — ready to run or edit before you commit.
Press Esc to cancel and return to what you were typing.
QueQue detects Zellij automatically and opens in a floating pane instead of inline. Same trigger, same result, better layout.
- zsh
- Node.js ≥ 20
- jq
ANTHROPIC_API_KEY
| Variable | Default | Description |
|---|---|---|
ANTHROPIC_API_KEY |
— | Required. Your Anthropic API key. |
QQ_MODEL |
claude-haiku-4-5-20251001 |
Override the Claude model. |
QQ_DEBUG_LOG_FILE |
— | Path to write a debug log (e.g. /tmp/qq.log). |
Both env vars and .env.local are supported for all variables.
git clone https://github.com/k-leumas/queque
cd queque
pnpm install
pnpm dev # watch build
pnpm test:run # run testsTo wire up the dev build as the live ?? trigger:
export QQ_DEV_ROOT="$PWD"
qq init zsh >> ~/.zshrc
source ~/.zshrcChanges to src/ rebuild automatically and the widget picks them up immediately.