Why AITerm is 5.7 MB of native Swift, not 500 MB of Electron
When you build a tool whose whole job is hosting terminals, two numbers decide whether people keep it open all day: input latency and memory. Everything else is negotiable. Those two are not.
So before writing a line of AITerm we made the least fashionable decision in modern app development: no web stack. Native Swift, SwiftUI for the chrome, and SwiftTerm — the terminal engine Miguel de Icaza built, trusted by serious Mac terminal projects — for the PTYs.
The numbers
- 5.7 MB — the entire release app bundle. Smaller than most website homepages.
- ~50–60 MB of RAM at launch with the full UI, and it barely moves as sessions accumulate. An idle native terminal pane costs almost nothing.
- 2.7 MB — the DMG you download. Faster to fetch than your next
npm install.
For comparison, an Electron shell alone — before your first terminal renders a single glyph — typically starts in the hundreds of megabytes of memory, and every xterm.js pane adds a canvas the browser has to composite. Multiply that by the eight panes a serious agent workflow needs, and your cockpit costs more than the agents it manages.
What native buys you beyond numbers
The translucency in AITerm is real macOS vibrancy — the compositor blurring your actual desktop behind the terminal glass, all the way through the terminal background itself. The notifications are real notifications. The menu bar badge is a real status item. ⌘K, split panes, drag & drop between panes: it all behaves the way your hands already expect, because it's the same machinery every Mac app you love is built on.
What we gave up
Honesty section: a web stack would have given us Windows and Linux almost for free, and a bigger hiring pool of contributors. We chose depth-first instead — make the Mac version indecently good, then decide. If AITerm on your Mac doesn't feel obviously better than the fifty-tabs status quo, no amount of cross-platform reach would have saved it anyway.
The app is a 2.7 MB download with a 14-day free trial. The fastest way to check our numbers is to run them yourself.