Skip to content

AIOS 0.9.4 — Capture & close closes, and Windows gets its scrollback

Choose a tag to compare

@chuycepeda chuycepeda released this 10 Sep 00:23
· 71 commits to main since this release
9b631db

A maintenance cut, all four items reported by operators using the app.

Capture & close now actually closes

Choosing Capture & close on a session wrote the record and then left the pane live and idle — you had to reach for the kill a second time. It now waits for the capture to finish and closes on its own, and it never closes mid-capture: if a session somehow never settles, the pane is left open on purpose and says so.

A second defect surfaced while fixing it, worse than the one reported: that branch typed the interactive close command, which stops and asks "Session label — correct?" and waits. So the session didn't merely fail to close — it parked on a question nobody knew to answer, which means the record the option exists to protect wasn't reliably written either.

Both halves came from a model already in the app a hundred lines away — the Close-all button has always typed --auto, waited for the session to go busy and back to idle, and only then closed. Reused rather than reimplemented.

Reported as #16.

Open a file outside AIOS

Right-click anything in the explorer: there's a new row under Reveal in Finder that hands the file to your desktop instead of to a pane. An .html goes to your real browser — your extensions, your session, your devtools — and a PDF goes wherever you read PDFs. Folders keep to the row above.

It shipped internally as "Reveal in browser" and got renamed before release, because that name was only true for web files: openExternal asks the OS what handles that type, so a .md opens in your editor and a .pdf in Preview. The behaviour was right; the promise was wrong.

Tabs say what they are

Every tool tab wore the same glyph, so Shortcuts, Settings, Setup, Plugins and Designer were indistinguishable in the strip. And the file-icon rule only ever asked what extension a file has — so the Cheatsheet and the README shared one icon. The framework docs are now matched by name, which means the explorer tree tells them apart too.

Windows

Sessions can be scrolled. A Claude session had no scrollback at all on Windows: you saw one screenful and a long answer was unreadable past it. Sessions now render into the terminal's own history, so the wheel works, the 8000-line scrollback is yours, and the output survives the session instead of vanishing when it ends. The interface stays exactly as rich as before.

A spawn request carrying a tier no longer dies. It failed with spawnSync bash ENOENT — the tier table lives in a bash hook, and the app's process has no shell of its own. It now locates one, and when it genuinely can't, it says which interpreter is missing instead of blaming the hook. It never guesses a model: a loud refusal beats a silent wrong one.

Both are Windows-only by construction. macOS and Linux behave exactly as they did in 0.9.3 — verified, not assumed.


Signed with a Developer ID certificate and notarized by Apple. Existing installs update themselves; electron-updater verifies the download against that same signature. macOS .dmg, Windows .exe and Linux AppImage + deb all attach here.

🤖 Generated with Claude Code