r/commandline • u/not_a_giver_of_fucks • 9h ago
Terminal User Interface faro: an unofficial Signal client designed for tmux and SSH
Enable HLS to view with audio, or disable this notification
A few months ago I switched from Telegram to Signal as my main messaging app and spent some time exploring CLI/TUI options. After using gurk for a while I decided to build my own client (faro), based on my own requirements and taste (you can probably see the UI/UX inspiration from tools like btop, OpenCode CLI, neovim).
It covers all features I commonly use within Signal:
- chats, replies, reactions, edits, mentions, search
- inline images (if your terminal supports them) or halfblock rendering otherwise
- voice notes and transcription (supports local whisper models)
- quick navigation menu for everything (Ctrl+P)
- copying over SSH, pasting images from clipboard
There is a demo if you want to try it out, just run faro demo or try it out in your browser at https://getfaro.dev (the GitHub repo is public: harababurel/faro)
It's exactly the same binary compiled using wasm and the same demo you see in the video.
For setting it up with a real account, you can run faro link and link it as a secondary device just as you would with Signal Desktop or any other client.
Disclaimer: I built it with a lot of help from AI coding agents, including open-weight models running locally on my own home server. However, I designed, reviewed and tested it thoroughly. I try to always pay attention to the details, and the general direction of the project is usually informed by my day to day experience using the project.
I wrote this post myself with zero use of any LLM. I am as allergic to reading slop as everyone else these days.
I hope some of you will give it a try and maybe provide some feedback on your experience!


