Skip to content

Terminal REPL

The Terminal REPL is AI Butler’s command-line chat interface. No configuration, no external services — just run one command and start talking.

Terminal window
aibutler repl
  • Token-by-token streaming responses
  • Multi-line input
  • Command history
  • Shared memory with all other channels
  • Tool execution visible inline
  • No API key required (beyond whatever your model needs)
Terminal window
$ aibutler repl
AI Butler v1.0 type /help for commands, Ctrl-D to exit
> what can you do?
I can help with: coding, research, smart home control, running...
> remember that my favorite editor is neovim
Got it I'll remember you prefer neovim.
> ^D

The REPL shares the same memory, tools, and configuration as every other channel. Ask a question on Telegram, and the answer is visible when you open the terminal — and vice versa.

The REPL supports slash commands for runtime inspection and control:

CommandWhat it does
/helpShow available commands
/clearClear the screen (but keep history)
/model <name>Switch model for this session
/toolsList enabled tools
/memoryShow recent memory entries
/quitExit the REPL

The exact set of slash commands is defined in internal/cli/cmd_repl.go — check there for the latest list.

Start a message with """ to enter multi-line mode, close with """:

> """
Write a Python script that reads a CSV
and calculates the average of each column.
"""

Or paste directly — bracketed paste mode is auto-detected in most terminals.

Terminal window
aibutler voice tui

This opt-in command enables voice capture via arecord (Linux/ALSA) or sox (cross-platform). You’ll need one of those installed:

Terminal window
# Debian/Ubuntu
sudo apt install sox
# macOS
brew install sox
# Arch Linux
sudo pacman -S sox
FeatureSupported
Text streamingYes
Multi-line inputYes (""" or bracketed paste)
Command historyYes (persisted)
Syntax highlightingPlain terminal rendering
Markdown renderingPlain text for now
File inputPipe files: cat report.md | aibutler repl
Voice inputExperimental (aibutler voice tui)
Shared memoryYes (cross-channel)

Sessions persist to disk. You can jump back into a previous conversation:

Terminal window
aibutler resume # pick from a list of recent sessions
aibutler resume <id> # resume a specific session by ID

For programmatic control, use the A2A protocol or MCP server interfaces instead of driving the REPL from a script.