---
outline: deep
---

# DF8100: Dock Already Registered

## Message

> Dock with id "`{id}`" is already registered

## Cause

`ctx.docks.register(view)` was called with an `id` that another dock already owns. Dock ids are unique per hub context, so the second registration would silently override the first if allowed.

## Fix

- Pick a different dock id (best practice: namespace under your tool's id, e.g. `my-tool:overview`).
- If overwriting is intentional (e.g. a hot-reload scenario), pass `force: true`: `ctx.docks.register(view, true)`.

## Source

- [`packages/hub/src/node/host-docks.ts`](https://github.com/devframes/devframe/blob/main/packages/hub/src/node/host-docks.ts) — `DevframeDocksHost.register()` throws when `views.has(view.id) && !force`.
