Skip to content

v1.5.0

Choose a tag to compare

@luis3132 luis3132 released this 11 Sep 20:15
· 188 commits to master since this release
8a2933f

One window, one panel for every agent

Control Code used to be an app of pages that opened windows. Every workspace spawned native windows, tabs were dragged between them, and opening any section covered the terminal you were reading. This release replaces all of that with a single window built out of panels — and that window is now a place you can actually leave an agent running in.

Your data is kept. The database migrates itself on first launch.


🗂 A workspace is a folder

The panel on the left lists your agents grouped by the folder they run in, and folders of the same repository stay together — so two worktrees of one project read as one project, not two unrelated things.

Selecting a workspace expands it in place with its agents; the rest shrink to a line. There are no windows to arrange any more.

Close a workspace and reopen it exactly as it was. Right-click → Close workspace. It stays in the panel, dimmed, saying how many agents it will bring back. Reopening restores each agent's conversation, not just an empty terminal in the right folder, along with the skills that were attached to it.


🧩 Skills, scoped where you actually want them

Right-click a workspace to attach skills to that whole folder; right-click an agent to attach them to that tab alone. Both open the same palette: it starts with your installed catalogue and reaches into the Marketplace as you type, so finding and installing is one flow instead of two screens.

Skills attached to a folder apply to every agent you open there from then on — including new ones, which now get their skills mounted before the agent boots. That matters: several of these CLIs read their skills folder once, at startup.


📊 What your plan has actually used

The bottom bar shows every account you're signed in to, with real numbers rather than estimates:

  • Tokens come from the transcripts already on disk.
  • Plan usage — session and weekly — is read from the CLI itself. Control Code runs /usage in a background terminal with that account's profile and parses what it prints.

Cached for five minutes, saved between launches, with the time of the reading and a button to ask again. Click any account to see it.


🖥 Terminals that render properly

Three separate causes of blurry, torn or broken terminals, all fixed:

  • The Unicode 11 addon needed an option that wasn't set, which threw on mount and took every terminal with it.
  • Every open tab was opening its own GPU context. Only the terminal you're looking at does now — the rest fall back, and there's a switch in Settings → Terminal if your driver misbehaves.
  • Changing monitor scaling now rebuilds the glyph atlas instead of leaving the text smeared.

🔎 Sessions, Skills and Marketplace

All three are now command palettes: type to filter, arrows to move, Enter to act, and the selection stays in view as you move.

Sessions groups your closed conversations by repository and folder — the same shape as the workspaces panel, because it's the same thing at a different moment. Skills and Marketplace are two-pane: the list on the left, the detail with the rendered SKILL.md on the right.

They open over your terminals instead of replacing them, so an agent you left working is still there behind, and Escape brings you back.


👤 Accounts have their own screen

Signed-in accounts were buried inside Settings between the skills folder and the pre-launch commands. They now have their own button in the left rail and their own screen, with a column of services on the left.

Adding an account no longer asks which CLI it's for twice — you're already in that service's section, so it creates it there.

Settings itself shows one section at a time instead of a long scroll with an index pinned beside it.


📥 Which file do I want?

You're on Download
Ubuntu / Debian .deb — amd64 for a normal PC, arm64 for ARM
Fedora / RHEL / openSUSE .rpm — x86_64 or aarch64
Any other Linux .AppImage — amd64 or aarch64; chmod +x and run it
Windows .exe — the .msi is there for deployment tooling
Mac, M1 and newer the aarch64 .dmg
Mac, Intel the x64 .dmg

On Linux the same machine is called different things by different packagers: a normal 64-bit PC is amd64 in the .deb and the AppImage but x86_64 in the .rpm, and an ARM one is arm64 in the .deb but aarch64 in the other two. Pick the row, not the word.

The macOS builds are unsigned, so Gatekeeper will stop the first launch: right-click the app → Open → Open.