wisp
A terminal interface for AI coding agents, built on the Agent Client Protocol (ACP).
Wisp launches an ACP-compatible agent as a subprocess, streams markdown responses and tool activity, and provides built-in session management, file attachments, plan review, git review, and settings without leaving the terminal.
Quick start
The --agent flag accepts any shell command that speaks ACP over stdio.
Keybindings
| Key | Action |
|---|---|
Enter |
Send message |
Esc |
Cancel the active operation |
Ctrl+C twice |
Exit |
Tab |
Cycle reasoning effort |
Shift+Tab |
Cycle mode/profile |
/ |
Open command picker |
@ |
Open file picker |
Ctrl+G |
Toggle git review |
Ctrl+R |
Search prompt history when supported |
Global bindings can be overridden in Wisp settings.
Commands
Type / in the composer to open the command picker. Built-in commands include:
| Command | Description |
|---|---|
/clear |
Clear the conversation and start a new session |
/settings |
Open settings and authentication |
/resume |
Resume a previous session |
The connected agent may advertise additional commands.
Settings and themes
UI preferences are stored in ~/.wisp/settings.json. Set WISP_HOME to use a different configuration directory. Supported settings include themes, content padding, status-line segments, and global keybindings.
Place TextMate .tmTheme files in ~/.wisp/themes/ and select one in settings:
Agent-provided options such as model, reasoning effort, modes, provider login, and MCP server authentication are available through /settings.
Logs
Logs are written to /tmp/wisp-logs/wisp.log.YYYY-MM-DD by default. Override the directory with:
Use RUST_LOG to configure verbosity.
Library API
Build the API documentation with:
The primary public entry points are:
run_tui— connect to an ACP agent and launch Wisprun_with_session— launch Wisp with an initializedSessionSession— an initialized ACP sessionUiSettingsand thesettingsmodule — persistent UI configuration
The testing feature exposes Wisp's in-memory integration harness for project tests.