---
outline: deep
---

# DF8205: Terminal Session Is Not Restartable

## Message

> Terminal session "`{id}`" is not restartable

## Cause

`hub:terminals:restart` was called for a session registered with
`restartable: false`. That flag marks a session whose lifecycle is owned
elsewhere — for example a one-shot build, or a server (like code-server) that
should be restarted through its own controls rather than by re-spawning the raw
process. A hub-aware terminal UI hides its restart affordance for these
sessions, and the RPC rejects a direct call.

## Fix

- Restart the session through its owner's controls (the plugin or dock that
  started it), not the generic terminal restart.
- If in-place restarts are safe, spawn it with `restartable: true` (the default)
  in the `terminal` descriptor passed to `startChildProcess()` /
  `startPtySession()`.

## Source

- [`packages/hub/src/node/rpc-builtins.ts`](https://github.com/devframes/devframe/blob/main/packages/hub/src/node/rpc-builtins.ts) — the `hub:terminals:restart` handler throws this when the resolved session has `restartable: false`.
