Monorepo for Tangled tangled.org
6

Configure Feed

Select the types of activity you want to include in your feed.

at sl/spindle-rewrite 56 lines 1.7 kB View raw View rendered
1--- 2atroot: true 3template: 4slug: ssh 5title: Tail CI logs over SSH 6subtitle: Never leave your terminal to check on CI! 7image: https://assets.tangled.network/blog/pty/astral-projection.webp 8date: 2026-05-28 9authors: 10 - name: Akshay 11 email: akshay@tangled.org 12 handle: oppi.li 13--- 14 15If you push to a new branch on a remote, if CI was 16triggered, Tangled now helpfully supplies an `ssh` command 17for you: 18 19```bash 20λ jj git push -c @- 21 -- snip -- 22remote: → Browse CI logs in your terminal: 23remote: ssh -t -p 3333 tangled.org did:plc:j5hmlfdrwkvtxm7cjmu7j2is 796ecc5b0ce5381ed5b5021e7cc28b4b05e03c92 24``` 25 26Paste that command in a new shell, and you are dropped into 27a fullblown TUI, served over SSH: 28 29<video src="https://assets.tangled.network/blog/pty/Screen%20Recording%202026-05-27%20at%2011.43.11-cropped-half.webm" controls> 30</video> 31 32Try it for yourself: 33 34``` 35ssh -t -p 3333 tangled.org did:plc:j5hmlfdrwkvtxm7cjmu7j2is 796ecc5b0ce5381ed5b5021e7cc28b4b05e03c92 36``` 37 38That SSH commmand runs a "screen based" program on the 39remote machine. In this case, the program is a TUI built 40using 41[bubbletea](https://github.com/charmbracelet/bubbletea) and 42[wish](https://github.com/charmbracelet/wish). 43 44SSH powered interfaces are wonderful for several reasons: 45 46- They require zero installation 47- They work great for interactive bits like menus 48- They have all the upsides of running a TUI: you can 49 persist them over tmux, theme them with terminal colors 50 etc. 51 52But they are doubly wonderful when streaming CI logs, the 53screen-program is totally unaware of ANSI escape codes, but 54they are handled correctly by virtue of writing to a PTY. 55Both ends (the commands running in the CI job and the PTY) 56are speaking the same language.