Skip to content

Releases: The-AIOS/aios-app

AIOS v0.10.0

Choose a tag to compare

@github-actions github-actions released this 25 Sep 17:08
bea2cbc

What's Changed

  • 0.10.0 — no phantom sessions, what each waiting session needs, live terminal text size by @chuycepeda in #38

Full Changelog: v0.9.9...v0.10.0

AIOS v0.9.9

Choose a tag to compare

@github-actions github-actions released this 24 Sep 01:38
c81877c

What's Changed

  • 0.9.9 — red button hides on macOS, Option types layout symbols, no freezes from big folders by @chuycepeda in #37

Full Changelog: v0.9.8...v0.9.9

AIOS v0.9.8

Choose a tag to compare

@github-actions github-actions released this 23 Sep 03:44
ff57ed9

What's Changed

  • chore(bus): pin sendQueue + busPayload byte-identical; make sync-core refuse to clobber by @chuycepeda in #32
  • fix(sessions): ending one session never closes another that shares its name by @matiasmacera in #33
  • 0.9.8 — reopen last sessions, Windows script policy, live counters, Opus 5.5 by @chuycepeda in #34
  • fix(update): see every /aios:update, not only the first in a session by @chuycepeda in #35
  • docs(whatsnew): 0.9.8 item 3 covers what shipped after it was written by @chuycepeda in #36

Full Changelog: v0.9.7...v0.9.8

AIOS v0.9.7

Choose a tag to compare

@github-actions github-actions released this 15 Sep 22:13
0c2ce23

What's Changed

  • feat(attention): the App tells you what is waiting on you — 0.9.7 by @chuycepeda in #31
  • feat(setup): suggest the strongest model for the one conversation that earns it by @jatres3 in #29
  • docs(rfc): cloud mode — the app as a client of an always-on host by @matiasmacera in #30

New Contributors

Full Changelog: v0.9.6...v0.9.7

AIOS v0.9.6

Choose a tag to compare

@github-actions github-actions released this 13 Sep 20:53
16f7b03

What's Changed

  • fix(theme): restore light-theme muted text to the dark theme's contrast by @jatres3 in #20
  • i18n(es): replace the "correr" calque with the verb each sentence needs by @jatres3 in #21

Full Changelog: v0.9.5...v0.9.6

AIOS v0.9.5

Choose a tag to compare

@github-actions github-actions released this 11 Sep 22:26
ad968bc

What's Changed

  • fix(setup): every missing tool gets every way in, on every OS by @jatres3 in #18
  • feat: the resume verb, and a setup that never offers a command it cannot run by @chuycepeda in #19

New Contributors

Full Changelog: v0.9.4...v0.9.5

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
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

AIOS 0.9.3 — two terminals side by side

Choose a tag to compare

@chuycepeda chuycepeda released this 09 Sep 01:31

An operator ran the App as their daily driver for a day and went back to another editor over one thing: you could only see one terminal at a time. That is the headline here.

Two terminals side by side

⌘\ puts the next tab beside the one you are in. ⌘⇧\ leaves the split. Two more ways in, because a chord is invisible until you know it: right-click a tab → Open to the right, or drag a tab onto a pane. All three run one mechanism.

  • Up to three panes, and the limit is WIDTH, not a count. A count cap wastes a large monitor and ruins a laptop, so the question asked is whether one more pane leaves every pane usable — measured against the zone in front of you. Collapse the panel (⌘B) and a third pane fits where it did not before.
  • Tabs and panes read in the same direction. Pane order is derived from the tab strip, so dragging a tab past another re-tiles the split. There is no second order to keep in step.
  • A new terminal joins the split when there is room, and takes the rightmost slot when there is not — either way it says which happened. It no longer replaces a pane without asking whether there was space.
  • Clicking a pane moves the marks with the caret — the tab highlight and the focus ring both follow, so "where do my keystrokes land" always has an answer.
  • Rename a tab from its right-click menu. A live session renames itself (/rename goes into the pane), so the tab and the session registry can no longer disagree — the bus addresses sessions by name, and the two drifting apart was a real bug. A plain shell just gets a label and stops following its title.

Keep the computer awake

A cup in the title bar, and a setting that decides who is in charge.

  • auto (the default) follows your running sessions — held while one is working, released when they all go idle.
  • manual makes the button the only authority.
  • One click overrides either, for this run, and the dot means your hand is on it. The tooltip names what is actually in force: Keep awake: auto, : manual, or : override.

Cross-platform through Electron's own power blocker rather than a shell-out, so it works the same on macOS, Windows and a real Linux desktop. On Linux without a session bus the platform silently refuses the request — so the button says so instead of claiming success.

You will now be told what changed

A What's New tab opens itself once after an update, and lives in Help → What's New. Release notes that only exist on a web page are notes an auto-updating app never shows you.

Also

  • The shortcuts sheet lists ⌘\ and ⌘S, which were bound and undocumented.
  • The Help menu is regrouped: the four reference items are one group, in the same order as the title-bar icons.
  • The title-bar icons are seven distinct shapes rather than four near-identical pages.
  • Zen, the layout presets and a split all survive each other.

Signed with a Developer ID certificate and notarized by Apple, so Gatekeeper admits it without a detour. Existing installs update themselves; electron-updater verifies the download against that same signature.

macOS .dmg below · Windows and Linux artifacts attach to this release from their own build jobs.

AIOS 0.9.2 — the tier dial actually turns

Choose a tag to compare

@github-actions github-actions released this 07 Sep 21:15
990b224

A correctness release on one dial, and it had been inert on this surface.

The tier dial binds now

When an agent asks the App to open a worker session, it can say how much thinking
this needs
— a rung — instead of naming a model. That request was being
accepted and silently ignored: the worker opened on the session's default model
and nothing said otherwise. Naming a model id directly worked, so the field the
docs recommend was the broken one and the discouraged one was fine.

Worse than a dropped field for two of the rungs: they resolved through a table
that had gone a version stale and launched the wrong model. That looks like it
worked, which is why it survived.

The App no longer keeps its own list of rungs or its own rung→model table. It asks
the framework's hooks/resolve-tier, which is the single place that mapping lives,
and:

  • an unknown rung is refused, with a dead letter naming the valid rungs —
    guessing is safe, because it fails loudly instead of quietly picking something
  • the rung that means "use the frontier default" passes no model flag at all,
    rather than pinning an empty one
  • naming a model id explicitly still wins over a rung

If your framework predates the hook, a rung request refuses and tells you to run
/aios:update — rather than opening a worker on a model you didn't ask for.

The inbox README stops contradicting the App

The App writes a protocol README into its request inbox and says of it "rewritten
to match the handler actually running."
It was still describing two rungs after
the ladder grew to five — and other tooling points agents at that file as the
authority, so following the documented path led away from the rungs that work. It
now points at the one table instead of restating it.

Also

The App removes its own presence record on a clean exit, and only when that record
is its own. A stale one used to sit in the directory indefinitely, misleading
anyone reading it by eye.

Downloads

macOS (Apple silicon) AIOS-arm64.dmg · Windows AIOS-x64.exe · Linux
AIOS-x86_64.AppImage or AIOS-amd64.deb. Existing installs update themselves.

Full commit list: v0.9.1...v0.9.2

AIOS 0.9.1 — closing a session now asks you how

Choose a tag to compare

@github-actions github-actions released this 05 Sep 03:42
6237f6a

A small release about one irreversible click.

The × on a session tab asks first

Every live session has a tab in the RUNNING strip, and its × used to end the
session immediately. In AIOS that is not a lost process — it is a lost record:
the session never ran /close-session, so the day's note gets no entry for
whatever it did and nothing downstream can reconstruct it. The × and the tab
body are the same button, told apart only by which pixel you hit.

It now asks, and it asks your question — the one already in Settings under
"When you kill a session":

  • Ask (capture or kill) — the default. Offers Capture & close (runs
    /close-session first, so the work is written down) or Kill now. The safe
    option holds the selection, so a reflex Return captures rather than kills.
  • Always capture first — the tab stays up while the session wraps itself up.
  • Kill immediately — no dialog, exactly as before.

That setting used to govern one control, the trash button on a RUNNING card
session row. Now it governs every way you can end a session by hand: the tab ×,
⌘W, File → Close Tab, and the Terminals row. Programmatic closes are untouched —
the command bus, a session retiring itself, a capture that has landed.

Cancelling puts you back where you were typing, which is the whole point: a
mis-click should cost nothing.

Enter follows focus

Confirmation dialogs focus Cancel — and Return confirmed anyway, whatever was
focused. So the focus ring said Cancel while the keypress destroyed. This affected
deleting a connector and removing a frequent task. Return now activates whatever
actually holds focus.

Under the hood

The app no longer ships its own compiled test suite inside the bundle, and the
packaged artifact is checked for it on every platform rather than trusted to be
clean.

Downloads

macOS (Apple silicon) AIOS-arm64.dmg · Windows AIOS-x64.exe · Linux
AIOS-x86_64.AppImage or AIOS-amd64.deb. Existing installs update themselves.

Full commit list: v0.9.0...v0.9.1