---
title: "DF8400: Command Already Registered"
description: "Command \"{id}\" is already registered"
canonical_url: "https://devfra.me/errors/df8400"
---
# DF8400: Command Already Registered

> Command "\{id}" is already registered

## Message

> Command "`{id}`" is already registered

## Cause

`ctx.commands.register(command)` was called with an `id` that another command already owns. Command ids are unique per hub context.

## Fix

- Pick a different command id (namespace under your tool: `my-tool:reload`, `my-tool:open-settings`, …).
- To replace, call `ctx.commands.unregister(id)` first.

## Source

- [`packages/hub/src/node/host-commands.ts`](https://github.com/devframes/devframe/blob/main/packages/hub/src/node/host-commands.ts): `DevframeCommandsHost.register()` throws when `commands.has(command.id)`.


## Sitemap

See the full [sitemap](https://devfra.me/sitemap.md) for all pages.
