> ## Documentation Index
> Fetch the complete documentation index at: https://zenofirm.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Updating

> How you hear about a new build, what installing one takes, and what it leaves alone

Zeno tells you when a newer build is published and then stops. Downloading is one request; installing is you double-clicking a file. Neither happens on its own, because the installer replaces the program your chat client is running — it can't do that in the middle of your work, and an update that closed your session without asking would be worse than an old version.

A build ships most weeks during the beta. Nothing breaks if you skip one.

## How you hear about it

Your chat client mentions it once, at a break in the work rather than in the middle of a batch: a newer version exists, this workstation is on the older one, and you can have it downloaded now or later. It says this once per version, so a session doesn't nag.

Nothing about your setup stops working meanwhile. An out-of-date workstation posts, reads, and reports exactly as it did the day before.

## Checking yourself

```
Run qb_check_for_update
```

It asks zenofirm.com when you run it rather than repeating an earlier answer, and gives you three facts: the version you're on, the version published, and whether it could reach the internet at all. That last one matters — a workstation behind a firewall gets told the check failed, not that it's up to date.

<Note>
  Checking on demand arrived in 1.2.0-beta.11. Earlier builds answer from a cache up to a day old, so a "you're up to date" from one of them can be a day behind.
</Note>

## Installing the new version

<Steps>
  <Step title="Ask for the download">
    ```
    Download the update
    ```

    That's `qb_download_update`. It fetches about 30 MB into your **Downloads** folder and checks the file against the SHA256 published with the release. A file that doesn't match is deleted rather than left sitting there looking installable.

    Nothing is installed at this point and nothing about this workstation has changed.
  </Step>

  <Step title="Quit your chat client properly">
    The installer can't replace a program that's still running.

    **Claude Desktop and ChatGPT Desktop: closing the window isn't enough.** Right-click the app's icon next to the clock — click the **^** arrow if it's hidden — and choose **Quit**. In Claude Code, end the session.
  </Step>

  <Step title="Run the installer">
    Double-click the file in your **Downloads** folder and follow the prompts. It keeps every setting from the install it replaces, including which chat clients you're connected to.

    <Note>
      Beta builds aren't code signed yet, so Windows shows a blue **Windows protected your PC** box. Click **More info**, then **Run anyway**. Signed builds land before the beta ends.
    </Note>
  </Step>

  <Step title="Open your chat client again">
    Start it from the Start Menu, the same as a first install. Ask it anything to confirm the connection is back:

    ```
    Run qb_status
    ```

    It answers with the version now running.
  </Step>
</Steps>

## What an update leaves alone

Everything you've built stays where it is. It lives under your Windows account rather than next to the program, so replacing the program can't reach it:

* Run journal — every batch this workstation has posted, and who approved it
* [Coding rules, knowledge, and playbooks](/docs/quickbooks-desktop/memory)
* Registered company files and their setup progress
* Local copies of each company file
* Your licence key

Uninstalling leaves them too. [Where your data goes](/docs/quickbooks-desktop/install#where-your-data-goes) lists the exact paths.

Your licence covers every build released inside its update window, permanently. Installing a build published after that window closed is the one case where an update changes what you can do — see [batch size is capped without a licence](/docs/quickbooks-desktop/limits#batch-size-is-capped-without-a-licence).

## A workstation with no internet

`qb_check_for_update` tells you it couldn't reach us, and that's all that happens — no error, no retry loop, nothing slowed down. The licence is checked on the machine itself, so a workstation behind a client's firewall runs indefinitely without ever contacting anything.

To update one, download the installer on a machine that does have a connection, from [the download page](https://zenofirm.com/quickbooks-desktop), and copy the `.exe` across. The SHA256 for each release is on that page if your firm checks downloads before running them.

## What the check sends

Nothing about you or your clients. It's one request for a small public file that says what the current release is, and the comparison against your version happens on your own machine. No licence key, no machine id, no company name, no company data, and no record that your workstation asked.

To switch it off, set `UpdateCheck:Enabled` to `false` in `appsettings.json` next to the program. `qb_check_for_update` then says checking is off rather than pretending you're current, and you can still download by hand from the page above.
