---
title: 4.7.3 — Buttons that say they are working
layout: default
parent: English
nav_order: 1003
description: Setup guide for MulmoTerminal 4.7.3 — the worktree buttons hold themselves and show progress instead of making a second worktree on the second click, a refused create finally says why, a cell being removed greys out behind a spinner, and Enter takes a scrolled-up terminal back to the latest output. A snapshot of 2026-08-08.
---

# 4.7.3 — Buttons that say they are working

**A snapshot of 4.7.3 as released on 2026-08-08.** It will go out of date as the app moves on; that
is fine and expected. For the reference that is kept current, follow the links to the living guide
in each section.

```bash
npx mulmoterminal@latest
```

**One thing to decide in this release**, and it is a checkbox: whether pressing Enter should take a
scrolled-up terminal back to the latest output. It is **on** by default — see
[Return to the latest output when you send](#return-to-the-latest-output-when-you-send). Everything
else is on the moment you run 4.7.3, with nothing to configure.

---

## The bug this release is built around

**`+ New worktree` looked like it did nothing, so people pressed it again — and got another
worktree.**

`git worktree add` checks out the whole tree. On the reporter's monorepo — around 33,000 files —
that is about six seconds, and for all six the launcher looked *identical to the moment before the
click*. No spinner, no disabled button, nothing. So it got pressed again, and again, and each press
succeeded: `agent/fix-login`, `agent/fix-login-2`, `agent/fix-login-3`, three copies of the same
working tree.

The same missing line hid failures. A create that the server refused showed **nothing at all** —
the reporter's real cause was a base branch that did not exist locally, and finding that out took
reading the shipped JavaScript bundle.

### What it looks like now

Press it once and the button holds itself, spins, and says what it is doing. Press it again and
nothing happens, because there is nothing to press.

![The New worktree button mid-create: disabled, dimmed, with a spinner and the label "Creating…"](../images/v4.7.3-worktree-creating.png)

The same rule now covers **every** control in that section, because they all run git in one
repository: the worktree rows, and the delete button beside each one. Whichever you pressed spins;
the rest are simply held until it finishes.

And when the server refuses, it says so, in the server's own words:

> fatal: Not a valid object name: 'main'.

The message appears under the worktree section, the task name stays in the field so you can try
again, and the button comes back. **Nothing to configure** — this is how the launcher behaves as of
4.7.3.

> **If you hit the `Not a valid object name` case:** it means the branch a worktree forks from is
> not checked out locally. `git branch main origin/main` in the repository fixes it. This can
> happen after you remove a worktree that had `main` checked out with "delete the branch" — see
> [Worktrees in the guide](worktree.html).

---

## Closing a worktree now looks like closing a worktree

Removing a worktree runs `git worktree remove`, which on a large repository takes just as long as
creating one — and the cell used to sit there looking completely alive while it ran.

Now the whole cell greys out, header included, behind one spinner naming what is going:

![A cell being removed: the whole cell dimmed behind a centred spinner reading "Removing acme-web (fix-login)…"](../images/v4.7.3-cell-removing.png)

While it runs, nothing in that cell can be clicked or reached with the keyboard — the confirmation
cannot be dismissed part-way, because by then the terminal has already been ended and the branch is
being deleted. If the removal **fails**, the confirmation comes back with the reason, and you can
retry or close the cell.

Nothing to configure. See [Worktrees](worktree.html) for what a worktree is and when to reach for
one.

---

## Return to the latest output when you send

This is the one thing in 4.7.3 you may want to change.

Scroll up in a Claude Code cell to read something, then press Enter. Until now you stayed where you
were — which is not what an ordinary terminal does, and not what a **shell** cell in MulmoTerminal
does either. The difference is real: a full-screen agent like Claude Code owns its own scroll
position, so there was nothing on our side to send back down.

What 4.7.3 does is **unwind exactly the scrolling you did**. MulmoTerminal is what synthesised those
wheel events in the first place, so it counts them and sends the same number back down when you
send. If you have not scrolled, not a single byte goes anywhere.

**It is on by default.** To turn it off: **Settings** (the gear in the toolbar) → **Terminal scroll
speed** → the checkbox underneath.

![The Settings panel showing the "Return to the latest output when you send" checkbox, ticked, under Terminal scroll speed](../images/v4.7.3-scroll-setting.png)

The setting is **per browser**, like the scroll speed above it — it lives in that browser's local
storage, so your laptop and your phone can disagree, and it does not travel to another machine.

**Turn it off if** you like to read back through a turn while it runs and do not want the view
jumping to the bottom when you send the next message.

**How to tell it is working:** open a Claude Code cell with a few screens of history, scroll up two
or three notches, type anything and press Enter. The view should land back at the newest output.
Scroll nowhere and it behaves exactly as before.

See [Features](features.html) for where this sits among the terminal's other behaviours.

---

## How to tell you have 4.7.3

```bash
npx mulmoterminal@latest --version
```

Or, in a running instance, type a task name into a worktree section and press `+ New worktree`: if
the button dims and reads **Creating…**, you are on 4.7.3.

---

## Everything in this release

| | |
|---|---|
| [#1549](https://github.com/receptron/mulmoterminal/issues/1549) | `+ New worktree` made one worktree per click. Every worktree control now holds itself, shows progress, and reports the server's own reason for a refusal. |
| [#1551](https://github.com/receptron/mulmoterminal/issues/1551) | A cell whose worktree is being removed greys out behind a spinner and cannot be clicked or tabbed into. |
| [#1546](https://github.com/receptron/mulmoterminal/issues/1546) | Enter takes a scrolled-up terminal back to the latest output. On by default; a checkbox in Settings. |

---

Older releases: [4.7.2](v4.7.2.html) · [4.7.1](v4.7.1.html) · [4.7.0](v4.7.0.html).

## Where to read on

- [Basics — how to read the screen](basics.html) — the launcher form, the chips, the roster
- [Worktrees](worktree.html) — isolated branches per task
- [Features](features.html) — Collections, the Wiki, accounting and the file explorer
- [Configuration](config.html) — every setting, kept current
- [Changelog](https://github.com/receptron/mulmoterminal/blob/main/docs/ChangeLog.md) — every
  release, with the pull requests
