scli
Terminal user interface for Signal messaging with Vim-like navigation and external editor support
scli is a terminal user interface for Signal messaging that provides a text-based alternative to the standard Signal clients. It acts as a frontend to signal-cli, combining it with the urwid Python library to create an interactive TUI experience. The tool supports Vim-like navigation with j/k movement keys, g/G for jumping to first/last items, and command entry with the colon prefix.
The interface includes features like emoji reactions on messages (press 'e' or 'R'), message deletion (both local with 'd' and remote with 'D'), clipboard integration for copying messages, and external editor support through the $EDITOR environment variable. Users can send attachments using the :attach command, read file contents with :read, and search through conversations using the '/' key. Optional emacs-like readline bindings are available when urwid_readline is installed.
scli requires signal-cli v0.11.0+ as a dependency and must be linked to an existing Signal account before use. The tool supports contact management for accounts registered as primary devices, conversation history saving, and customizable color schemes for message display. Installation involves setting up signal-cli, installing Python dependencies like urwid, and ensuring DBus is available on the system.
Installation
# via Git
git clone https://github.com/isamert/scli
# via Pip
pip install urwid
Alternatives & related tools
tempy
Terminal weather report tool displaying current and near-future conditions without requiring API keys
buku
Command-line bookmark manager with search, browser import, encryption, and local web UI
jrnl
Command-line journal application that creates, searches, and views entries stored as plain text, with optional AES encryption.
cheat.sh
Cheat sheet service queried with curl or the cht.sh client, covering 1000+ UNIX/Linux commands, 56 programming languages and several DBMSes.
caps-log
Terminal-based journaling tool that saves daily entries as Markdown files with calendar navigation and tag organization
add a badge to your README
Maintain scli? Show that it's featured on trmn. The badge links back to this page.
[](https://www.trmn.sh/tools/scli?utm_source=badge)<a href="https://www.trmn.sh/tools/scli?utm_source=badge"><img src="https://www.trmn.sh/badge/scli.svg" alt="Featured on trmn" height="20"></a>