Releases & channels
OAK ships on a stable and a dev channel; this page explains how updates reach you.
OAK ships on two channels — a stable channel of tagged releases and a rolling pre-release channel off the dev branch. Both update the same way, from one chip in the editors or one flag in the terminal. Every release's changes are in the changelog.
0.10.0
Released · downloads and the full release notes
claude-observatory is now OAK: the command is oak, the npm package oak-observatory, and the repository cell-observatory/oak-observatory. The terminal app now runs on herdr, which OAK installs and manages. Upgrading from 0.9.5 takes two steps by hand: reinstall, because the old updaters cannot cross the rename, then run oak init with Claude Code closed. See Upgrading from claude-observatory.
- herdr · Observatory · Review. The terminal app’s three tabs: herdr’s own client, where agents run in panes; a live view of every session; and the review workspace.
oak attachhands a plain terminal to herdr, on this machine or a saved one. - The Observatory. Sessions grouped by machine and herdr workspace, each with its agent, model, edits, tokens and the clock time of its last activity. A click pins a session’s conversation beside the list: your prompts in boxes on a grey ground, the replies, thinking and tool calls with their diffs, then its Workers and Tasks, coloured by state, with the finished ones folded behind one row. Drag across text to copy it; i replies through herdr.
- Other machines.
oak machine addprovisions a machine over SSH. The Review tab reviews a session on the machine that runs it, with that machine’s ownoak, and its session picker lists every saved machine’s sessions; nothing is copied between machines. - Editors. Session lists show the sessions of the machine the workspace runs on, grouped by workspace. The Timeline gains a Feed tab: the selected conversation’s prompts, replies, thinking and tool calls. A session’s store size opens its store folder, and deleting a session says what it removes: the captured edits, never the transcript.
- Codex.
oak initinstalls capture for Codex 0.147.0 or newer beside Claude Code. - Needs you. A desktop notification, an inbox and a one-key jump for every session waiting on you.
- Usage.
5h,wkandmofor Claude and Codex in the terminal and both editors’ status bars, andoak usage --breakdown. Dollar figures priced from token counts at API list prices are marked~; none is a bill. The per-model weekly cap is listed in the status-bar tooltips and the Stats panels. - Session titles from claude.ai. A session renamed in the Claude app or on claude.ai shows that name. OAK reads the titles from your account at most every five minutes;
oak titles --offturns the read off. - Install. Node.js 20 or newer, and
python3on Linux and macOS. npm 12 installs with--allow-scripts=node-pty, and on Linux that build needsmakeand a C++ compiler; the install scripts take care of the flag.
The two channels
Stable
Tagged releases, cut from main — each one a version like v0.10.0. The full three-OS test matrix and the end-to-end suite ran on the exact commit; the artifacts (CLI tarball, VS Code .vsix, JetBrains plugin zip) are attached to the GitHub Release; and the changelog names what changed. This is the default channel — releases/latest serves it, and nothing on it ever moves after it's published.
Pre-release
A rolling build of the dev branch. Every push to dev rebuilds all artifacts, stamps them <next>-dev.<n> (for example 0.11.0-dev.37), and refreshes one GitHub release — tag dev-latest, marked prerelease, so the stable channel never sees it. You get merged features and fixes days or weeks before a tagged release, with correspondingly less soak time.
Every dev build is newer than the stable it forked from, and the eventual tagged release is newer than every dev build that led to it — so promotion lands as an ordinary update, never a downgrade.
Switching & updating
Both editors pin a version chip at the right edge of the Overview's toolbar. It shows the version you're running; when the channel you follow has something newer, a dot appears. Its menu lists what each surface currently has — the CLI, both editor plugins, and the status line carry independent versions — and offers Update now, which installs the newest release of your channel in one pass, then offers the reload or restart that loads it.
From the terminal, the same in two commands:
oak version --check # is there something newer on my channel?
oak update # install it — CLI, both plugins, status line
A surface is refreshed whenever its version differs from the channel's newest, in either direction — so switching from pre-release back to stable steps you down to stable cleanly, not only forward.