Skip to content

T3 Code for Android with SSH environments (unofficial, 2026-10-30)

Pre-release
Pre-release

Choose a tag to compare

@nickypro nickypro released this 30 Oct 20:42

An unofficial Android build of T3 Code that can reach your machines over SSH with the app's own key. It also carries the Android client-certificate support for servers behind an mTLS proxy. Not made or signed by T3 Tools. Proposal upstream: pingdotgg/t3code#27806.

Built from android-ssh at 6ee594cb, which is upstream main of 30 October 2026 (after v0.1.5) plus 13 commits.

What it does

  • Settings → SSH: creates an ed25519 key on the phone (sealed by the Android Keystore, never backed up), shows the public key to copy or share, and holds a small SSH config: Host, HostName, User, Port, ProxyJump and HostKeyAlias.
  • Add environment → Or connect over SSH: lists the hosts in that config. Picking one asks you to check each new host key's fingerprint, then runs the same launch and pairing scripts the desktop app uses for SSH environments. If the host has no server running, it starts t3 0.1.5 there. The app then forwards the server's port to the phone's loopback and pairs through it.
  • Reconnects reuse the SSH session while it is alive and rebuild it when it isn't. A host key that is unknown or has changed stops the connection with an explanation; it is never trusted in the background.

Install

  1. Download t3code-android-ssh-6ee594cb.apk below and open it. It installs as T3 Code Preview (com.t3tools.t3code.preview), next to the Play Store app.
  2. If Android says App not installed, another build named T3 Code Preview, signed by someone else, is already on the phone. Uninstall it first.

APK SHA-256: b8d1486e3decae4c20ec4758233cd58058e518b7be0f5d82bd6495a090d74412
Signing certificate SHA-256: 86:EF:61:49:91:43:28:5F:62:3E:92:80:ED:6F:42:9F:6A:70:60:EE:01:1F:CC:99:6D:A8:49:94:A7:52:62:C1

Future builds of this fork will be signed with the same certificate, so they install over this one and keep the key.

Set up

  1. Settings → SSH → Create SSH key, then copy the public key.
  2. Add it to ~/.ssh/authorized_keys on each host. On a jump host you only pass through, you can limit it to forwarding:
    restrict,port-forwarding,permitopen="127.0.0.1:2222",command="/bin/false" ssh-ed25519 AAAA… t3code-android
    
  3. Paste a config, for example:
    Host jump
      HostName jump.example.com
      User me
    
    Host devbox
      HostName 127.0.0.1
      Port 2222
      User dev
      ProxyJump jump
    
  4. Add environment → Or connect over SSH → devbox, and compare each fingerprint with ssh-keygen -lf /etc/ssh/ssh_host_ed25519_key.pub on the host.

Known limits

  • Android only. This build has no push notifications.
  • Over-the-air updates are off in this build, so it only changes when you install a new APK.
  • Right after the app starts a server for the first time, the first request can time out; tapping the host again works.

Checks run on this commit: upstream's check:changed (format, lint, knip, typecheck, tests, React Compiler), the SSH module's Kotlin tests, which run against real OpenSSH servers (including a tunnel-only jump key and a dropped network), an end-to-end test that starts and pairs a real t3 0.1.5 through a jump host, the 17 client-certificate TLS tests, and an emulator run of the add flow.