How to install SillyTavern on Android with Termux
Updated
Install Termux from F-Droid or its GitHub releases, run pkg update and pkg install git nodejs-lts, clone SillyTavern's release branch and start it with ./start.sh. Then open http://127.0.0.1:8000 in your phone's browser. The phone only runs the interface, so connect a hosted model such as UnsavedAI's free gemma-4-12b instead of trying to run one on the phone.
Try it now, free, no account neededStart a story with Georgie PrattYou met her in a Hanoi hostel twelve hours ago. Now you're riding the mountain loop together.Before you start
SillyTavern is a small Node.js server plus a web page. Termux gives Android a Linux-style terminal that can run that server, so the whole thing lives on your phone with no root and no computer. What the phone cannot sensibly do is run a roleplay-sized model as well: memory and heat get in the way. Plan on connecting a hosted API.
Get Termux from F-Droid or from the project's GitHub releases page, and take any Termux add-ons from the same place. Add-ons installed from a different source than the app refuse to work together. Leave about 1 GB free for SillyTavern and its packages.
The install, command by command
Open Termux and type these one at a time, answering y when asked:
- pkg update && pkg upgrade
- pkg install git nodejs-lts
- git clone https://github.com/SillyTavern/SillyTavern -b release
- cd SillyTavern
- ./start.sh
The first start downloads SillyTavern's own packages and can take several minutes on a phone. When the terminal says it is listening on port 8000, switch to Chrome or any browser and go to http://127.0.0.1:8000. If ./start.sh answers "permission denied", run bash start.sh instead.
The release branch is the stable one. The plain clone without -b gives you whatever the default branch is that day, which may be the development branch.
Starting it again tomorrow
Termux opens in your home folder, so the daily routine is cd SillyTavern then ./start.sh. To shorten that to two letters, run this once:
- echo "alias st='cd ~/SillyTavern && ./start.sh'" >> ~/.bashrc
Restart Termux and type st. To stop the server, go back to Termux and press Ctrl+C (the CTRL key on Termux's extra keys row, then C). Starting a second copy while the first is still running fails because port 8000 is taken.
In the browser, the menu option to add the page to your home screen gives you an icon that opens straight into SillyTavern, as long as Termux is running.
Keeping Android from killing it
Android pauses or closes background apps to save battery, and a closed Termux means a dead tab in your browser. Three things help:
- Pull down the Termux notification and tap Acquire wakelock, or run termux-wake-lock. Release it when you are done.
- In Android's battery settings, set Termux to unrestricted or not optimised.
- On Android 12 and later, the system can end Termux with "[Process completed (signal 9)]". Some phones have a developer option to relax child process restrictions; on others the fix needs a computer and adb.
The server itself does very little between messages, because the model runs on the provider's machines. Most battery drain comes from the screen and the wakelock, not from SillyTavern.
Connecting a model and protecting your chats
In the browser, open API Connections (the plug icon) and connect a hosted API. For UnsavedAI, make a key on Setup and follow the SillyTavern guide; the free gemma-4-12b lane needs no payment details. If Connect fails on the phone, the Termux window prints the real error, and SillyTavern API connection failed explains each one.
Your chats, cards and settings sit in ~/SillyTavern/data, inside Termux's private storage. Uninstalling Termux or clearing its data deletes them with no warning. Copy that folder somewhere safe before you experiment; backing up SillyTavern has a one-line command for Termux.
Questions people ask
Do I need to root my phone to run SillyTavern?
No. Termux runs as a normal app, and SillyTavern only needs git and Node.js, which install without root.
How do I update SillyTavern in Termux?
Stop the server, then run cd SillyTavern and git pull, and start it again. Run pkg upgrade now and then too, so Node.js stays current.
Can I open my phone's SillyTavern from a computer?
Yes, but it is off by default. You have to turn on listening in config.yaml and allow the other device by IP or with a password; the iPhone guide covers those settings from the other direction.
