jk
Writing

Making a terminal on another computer feel local

6 October 2026

When you open a terminal that runs on another computer, two things decide whether it feels local: how fast the first screen appears, and how many bytes sit in front of your next keystroke. In early October I worked on both in Kodosi.

The first screen

Each device now keeps one connection, and a new view gets the visible rows first, about half a kilobyte, before the history behind them. A later view of the same terminal sends 8 KB where it used to send 57 KB. At a 200 ms round trip the first screen shows in 0.23 s instead of 1.4 s.

Room for your keys

When a program floods the terminal with output, everything queued ahead of your Ctrl-C has to arrive first. Kodosi now sizes its send window from the measured link speed, between 16 KB and 4 KB. At 128 kbit/s an interrupt during a flood shows in 0.3 to 0.4 s. It used to take 2.6 to 3.6 s.

A direct connection, built and removed the same day

A direct connection over the local network looked like an easy win, so I built one. It came out the same day. It only helped devices on one home or office network. It opened a port, set off the macOS local network prompt, failed behind firewalls, and could only be turned on with environment variables.

How the connections work now is in ARCHITECTURE.md.