Living without a phone is hard enough already. Signal makes it harder, without good reason. If you’ve seen the “Open Signal on your phone to keep your account active” warning before, you know what I mean. So hopefully this guide helps you keeping your Signal Desktop client active, even when Signal complains about your phone being offline for too long.
We will use the signal-cli tool for this, which is an Open Source 3rd-party-tool that will pretend to be the Signal Android app. You will not have to use it in daily life, only run it every once in a while when the Signal Desktop client complains.
Unfortunately, you still need a sim card and a phone which can receive SMS for this guide to work; but at least you can get rid of them afterwards (it can’t hurt to keep the sim card around though). Alternatively, you can also use a landline phone.
Unfortunately, you will lose any Android chat history if you still had one – but you will retain the chat history you already had on the Desktop client, at least if you keep using the same phone number.
Before you follow this guide, read it completely and closely to make sure you meet all the prerequisites. Use at your own risk.
Install the necessary programs
We tested this guide on Xubuntu 24.04 and Windows 10.
You need to have Signal-Desktop installed, this is the tool which you will use to chat with your friends.
You also need to download signal-cli from github.com/AsamK/signal-cli/releases/latest, one of the files which ends in .tar.gz
(if you use Linux, download the one with Linux-native
in the file name). Unpack it, the signal-cli
command line tool will be in the bin/
directory in the unpacked directory structure.
For signal-cli to work, you need to install Java Runtime Environment 21:
- On Xubuntu, you can do that with
sudo apt install openjdk-21-jre
- On Windows, you can find it included in the Java Development Kit: https://www.oracle.com/java/technologies/downloads/#jdk21-windows
Initialize signal-cli
To run signal-cli, open a terminal, and use the cd command to go to the directory where you have unpacked it, for example cd Downloads/signal-cli*/bin
. Then you can run ./signal-cli --help
to show the available commands. (If you are on Windows, you need to use \ instead of /, and the path might be different).
Now we can initialize signal-cli for your phone number as a first step. This first command will seem to have no effect, but don’t worry. If a command line tool doesn’t output anything, that usually means “it worked”. Type ./signal-cli -u +49174581312 register
(but with your actual phone number) and press enter.
Solve the captcha
Now you need to solve a captcha to prove to Signal that you are a human instead of a spam-bot. Go to https://signalcaptchas.org/registration/generate.html and solve the captcha.
After that, the browser will ask you whether you want to open the link in the Signal Desktop Client. This is not what we want. Instead of accepting, click “cancel”. Then, on the web page with the solved captcha, right-click on “Open Signal” and select “Copy Link” to get the Link address, and copy-paste it to signal-cli in the command line:
./signal-cli -u +49174581312 register --captcha signalcaptcha://signal-hcaptcha.5fad97<a very long text string which represents the solved captcha>dqFFlSUoRh4
(Be sure to include --captcha
or it will not work.)
Add the SMS confirmation code
A few seconds after you executed signal-cli with the captcha code, you should receive a confirmation SMS or phone call with the six-digit confirmation code. Write it down and use it with signal-cli:
signal-cli -u +49174581312 verify SMS-CODE --pin SIGNAL-PIN
For this command, you can also enter a Signal PIN. You only have one if you have used the phone number with Signal before. You need it, if you want to keep your old contacts and group memberships. But on the Desktop client, you will still only see them once they write to you, so don’t be surprised if they don’t appear at once.
Now the account is registered to signal-cli with your phone number.
Connect your Signal Desktop client to signal-cli
If you have used the Signal Desktop client with the same phone number already, it will now be disconnected from your account. Expect it to look like this:

We need to link it to signal-cli, so you can continue using it. Click on the yellow warning, a QR code will appear. Normally, we would scan it with Signal Android, but signal-cli can’t scan QR codes. What do we do about it?
QR codes are just the visual representation of a link; we need to translate the picture to text again, then we can copy-paste the text to the command line. For this, make a screenshot or take a photo. Then upload the image to https://scanqr.org – on the right, a code like this one will appear:
sgnl://linkdevice?uuid=0gng0dajw9_2JdDWAH-14ccpg%3D%3D&pub_key=BffueqAYDWAH9m8dwauwb8e2AB%2Fh3FY1z4VMuHxwxv&capabilities=
Copy-paste it into the following signal-cli command (don’t forget to add the double quotes around the link):
signal-cli -u +49174581312 addDevice --uri "sgnl://linkdevice?uuid=0gng0dajw9_2JdDWAH-14ccpg%3D%3D&pub_key=BffueqAYDWAH9m8dwauwb8e2AB%2Fh3FY1z4VMuHxwxv&capabilities="
After you pressed enter to run the command, the Signal Desktop client will load. This can take a few minutes. After that, you are logged in, and can continue to use the Signal Desktop client without problems.
Avoid the problem in the future
To keep Signal Desktop from complaining, you need to run signal-cli receive
every once in a while. On Linux, I am doing this with a cron job:
@daily /home/user/downloads/signal-cli-0.13.14/bin/signal-cli receive
You can ignore the output, it is just downloading new messages to signal-cli; but you will also see them in Signal Desktop anyway.
Move signal-cli to a new laptop
You might get a new device at some point. For restoring your Signal account on your new device, you now need a backup of both your Signal Desktop client’s and signal-cli’s databases. It depends on your operating system where they are stored exactly.
How to do this with Signal Desktop is documented in this guide.
And you can read in signal-cli’s documentation where signal-cli stores the data.
Conclusion
Signal really makes it not only unnecessarily complicated to use it without a phone, but also to keep your message history and contacts. Imagine Trump shuts down Signal – how many of your friendships will die because that’s your only contact? What important data will be lost once you lose your devices? This severe lock-in effect should be reason enough to find alternatives, even if Signal has other advantages.