All apps/signal-cli

signal-cli

signal-cli

A commandline interface for the Signal messenger.

Runs as signal-cli|macOS, Linux, Windows|github.com

Command form

ai-draft · 3 tasks · 13 fields

Global account and output options; send and receive are separate forms. Registration, linking, groups and daemon mode are left out.

Opens the form; the finished command lands at your prompt, unrun
otty gui signal-cli
signal-cliExample values, fixed in this page — nothing here reaches a terminal
Basic
Account (phone number)
string
Output mode
2 choicesenum
ParametersOnly these flags are editable in the form
Account (phone number)
Include the country code, starting with +. Optional when only one account exists locally.
string
--account-a
Output mode
enum
--output-oplain-textjson

signal-cli send

Send a message

Send a text message, optionally with one attachment, to recipients or a group.

Send a messageExample values, fixed in this page — nothing here reaches a terminal
Basic
Recipients*
string
Message*
string
TasksEach one presets the form for one job
Send a text message
recipientmessage
Message a group
group_idmessage
ParametersOnly these flags are editable in the form
Recipients
Phone numbers including country code. Leave empty when using a group or note to self.
string · positional 0 · repeatable
Message
string
--message-m
Group ID (base64)
string
--group-id-g
Attachment
One file. Several attachments are not offered in this form.
path
--attachment
Send to myself
boolean
--note-to-self
Read message from standard input
boolean
--message-from-stdin
View-once message
boolean
--view-once

signal-cli receive

Receive messages

Fetch pending messages and print them.

Receive messagesExample values, fixed in this page — nothing here reaches a terminal
Basic
Timeout (seconds)
integer
Maximum messages
integer
TasksEach one presets the form for one job
Check for new messages
timeoutmax_messages
ParametersOnly these flags are editable in the form
Timeout (seconds)
integer
--timeout-t
Maximum messages
integer
--max-messages
Skip attachment downloads
boolean
--ignore-attachments
Send read receipts
boolean
--send-read-receipts
SourcesEvery flag above is checked against these
signal-man
*signal-cli* [--data-dir DATA_DIR] [-h | -v | -a ACCOUNT | --dbus | --dbus-system] command [command-options] *-a* ACCOUNT, *--account* ACCOUNT:: Specify your phone number, that will be your identifier. *-o* OUTPUT-MODE, *--output* OUTPUT-MODE:: Specify if you want commands to output in either "plain-text" mode or in "json".
manualmaster

github.com

signal-man
=== send Send a message to another user or group. RECIPIENT:: *--note-to-self*:: *-g* GROUP, *--group-id* GROUP:: *-m* MESSAGE, *--message* MESSAGE:: *--message-from-stdin*:: *-a* [ATTACHMENT [ATTACHMENT ...]], *--attachment* [ATTACHMENT [ATTACHMENT ...]]:: *--view-once*::
manualmaster

github.com

signal-man
=== receive Query the server for new messages. *-t* TIMEOUT, *--timeout* TIMEOUT:: *--max-messages* MAX_MESSAGES:: *--ignore-attachments*:: *--send-read-receipts*::
manualmaster

github.com

Before it fills your prompt, Otty checks the installed signal-cli against its version. A form that does not match your version is not offered.