# Updating the panel

> The alfa, beta and stable channels, what an update actually does, and why your servers keep running through it.

Source: https://stygion.eu/docs/panel/aktualizace
Updated: 2026-10-07

![Admin → Updates](https://stygion.eu/shots/panel/updates.webp)

The panel updates itself, from **Admin → Updates**.

## Channels

| Channel | Who it is for |
|---|---|
| **stable** | The default. Versions we do not expect to have to fix in a hurry. (It used to be called "release".) |
| **beta** | Finished, not yet weathered. |
| **alfa** | Today's work. Fixes arrive here first — and so do the bugs. |

The channel is switched on the same screen. Moving to a calmer channel
does not take you off a newer version; it waits until the calmer channel
catches up.

## What pressing Update actually does

The panel does it in steps and names each one:

1. **Downloading the build** — from our server, not straight from
   GitHub.
2. **Verifying the checksum** — against the digest that came with the
   answer. A mismatch stops the update.
3. **Restarting the panel** — the new binary moves in over the old one.

**Managed servers keep running.** The containers are not the panel's
child processes; the panel drives them, it does not contain them. Only
the panel restarts, and that is seconds.

The console drops during it and **reconnects on its own**. You do not
have to reload the page, and commands typed after the restart still
arrive — since 0.3.3 a server's input is
[a pipe the panel owns](/docs/panel/konzole), and that survives the
panel going away.

## When an update fails

The two usual causes:

- **Nowhere to write.** The panel replaces its own binary and needs
  permission to the directory it lives in. An install from our script
  has that; a hand-copied one does not always.
- **The build is gone.** When a release is withdrawn, a channel can
  point at it for a while longer. Try again shortly, or change channel.

The message is always the real one, never "something went wrong".

## By hand

The install script doubles as an updater: run it again and it stops the
panel, swaps the binary and starts it. The version is always confirmable
with

```
stygion-core --version
```

Next: [The panel as an agent (MCP)](/docs/panel/mcp).
