v0.14.0
A web app running in a workspace can be opened at a URL of its own — a subdomain minted on every start, behind sign-in by default and shareable with your tenant. The File pane now renders PDFs and gives Office documents a text preview, and the user guide has become a tree of its own in English and Japanese.
- Every workspace start mints a preview URL of its own. The ports you allow
(
3000, 8080by default) are served at the root ofhttps://{slug}-{port}.{preview domain}/, which is what a React / Next.js or Spring Boot pair needs and the/preview/{port}sub-path cannot give. Sign-in is required by default; the URL can be kept stable across starts, opened to the members of your tenant, or made readable without signing in — the last one returns to off on every start. The deployment has to carry a preview domain (see Upgrade notes); without one, the sub-path preview stays as it was. - PDFs open in the File pane instead of stopping at “(binary, 86.8 KB)”: continuous scrolling, zoom, page numbers, and Japanese documents that carry no embedded fonts.
- Word, Excel, PowerPoint, OpenDocument and EPUB files get a simplified preview. The text and tables are shown; page layout, shapes and cell colours are not reproduced, which the screen says, and the original stays one click away.
- You can start a repository that does not exist anywhere yet — create a folder and it is initialised as a git repository, then you continue straight into starting work. Until it has its first commit, a session cannot be given a new worktree, and the dialog says so.
- The sessions themselves now carry a cost figure. The personal settings tab, renamed
Agent usage, estimates what a session’s tokens would have cost through the API,
including models that are not Anthropic’s. Estimates are marked
≈and kept apart from the amounts actually reported, and consumption whose model has no published price is declared rather than silently counted as zero. - The terminal header shows the round-trip time to the workspace, which separates a slow connection from a slow screen when typing feels heavy.
Improved
Section titled “Improved”- The terminal answers faster. Esc arrived half a second late — and with it every Esc-based key in Claude, Codex and vim — and a keystroke could be held up by a database write on the way through.
- The documentation is now split by who reads it: a user guide in English and Japanese, a README about the product, and the developer material apart from both. Every workspace receives the whole guide, where the shelves used to be cut by role and left links inside it going nowhere for some readers.
- A tab answers a right-click with the same menu as the session’s row in the left rail — stop, rename, hand off, archive — and the menu key opens it.
- A long work-in-progress or thinking block can be closed from its foot, without scrolling back up to the heading.
- A cancelled question came back as a card that answered to nothing. Cancelling a question in the mirror could bring the same question back with its answer form, where choosing, sending and cancelling all did nothing at all.
- An approved plan was badged “rejected” when the plan’s own text happened to mention rejecting or redoing something.
- A shared session showed nothing while a question was pending: the conversation looked like it had simply stopped, and only the chip in the list said otherwise.
- A message from another session could disappear on the way. When Claude delivered it through its own channel the message reached the CLI but never the screen; those arrivals now appear, labelled with the session that sent them, and turning cross-session messaging off blocks that route as well.
- A session on a new worktree could start weeks behind. The branch is now taken from
the tip of
origin— inside the new working copy only, leaving the one it was cut from untouched. - A freshly installed control plane on SQLite lost the columns added after its first release, so per-workspace settings had nowhere to be saved. A new database repairs itself; databases that already exist were never affected.
- The transcript floated off the newest message with every keystroke in the mirror’s composer, far enough to break following the tail.
- The OpenCode model list came out in a different order each time the picker was opened.
- On
ecs-ec2, a scheduled run could quietly not happen — the morning one, in practice. Waking a stopped workspace was allowed 90 seconds, which is where that platform’s start times sit; it now gets the five minutes the platform already grants itself, and a run that could not be delivered is retried instead of being recorded as done. - On
ecs-ec2, rebuilding the golden image could leave an ECS service and a 50 GiB disk behind without a line in the log, and the bill kept running. - Smaller interface fixes: assistant chat tabs are named after the conversation instead of all reading “Chat”, and issue tracker rows match the text size of the rows around them.
Upgrade notes
Section titled “Upgrade notes”Host-based previews need a preview domain on the deployment. Pass
PreviewDomain=pv.example.com to 30-ingress — a sibling of the Console’s name, in the
same hosted zone — and the stack adds a wildcard certificate, a wildcard DNS record and
AF_PREVIEW_DOMAIN for the control plane. The existing certificate is not touched, and
leaving the parameter empty creates none of it.
On ecs-ec2, the scheduler’s timings can now be set on the stack
(ScheduleWakeTimeout and its neighbours); left empty they are the product’s defaults,
which is what the fix above changed.
Agent CLI pins: Claude Code 2.1.251, Codex 0.151.0, Copilot 1.0.82. The others are unchanged from 0.13.1.