quasarframework/quasar · info

App Extension has no commands registered

Error message

App Extension has no commands registered

What it means

`quasar run <extId>` with no command name lists the extension's registered commands. If the extension's `run()` hooks expose an empty `commands` object, the CLI warns that there is nothing to list. Non-fatal; the command returns normally. The extension simply does not define any CLI commands.

Source

Thrown at app-vite/lib/cmd/run.js:54

import { getExtensionLogger } from '../app-extension/logger.js'

import { getCtx } from '../utils/get-ctx.js'

const { appExt } = getCtx()

const ext = appExt.getInstance(extId)
if (ext === void 0) {
  warn()
  getExtensionLogger(extId).warn('No such App Extension is installed')
  warn()
  process.exit(1)
}

const hooks = await ext.run()

const list = () => {
  if (Object.keys(hooks.commands).length === 0) {
    ext.logger.warn(`App Extension has no commands registered`)
    return
  }

  const cmdList = Object.keys(hooks.commands).join(' | ')
  ext.logger.log(`Command list: ${cmdList}`)
}

if (!cmd) {
  list()
  process.exit(0)
}

const fn = hooks.commands[cmd]
if (!fn) {
  list()
  warn()
  ext.logger.warn(`App Extension has no command called "${cmd}"`)
  warn()

View on GitHub (pinned to 4841521b5f)

Solutions

  1. Nothing is broken — this extension registers no commands; use its other interfaces (config, boot files, hooks).
  2. Check the extension's docs for the correct subcommands or a newer version.
  3. Update the extension (`quasar ext update <extId>`) if its docs advertise commands.
Defensive patterns

Strategy: fallback

Try / catch

// not an error; parse the list output to detect command-less extensions
const out = execSync(`quasar run ${extId}`).toString();
if (out.includes('has no commands registered')) useExtensionDocsInstead(extId);

Prevention

When it happens

Trigger: Running `quasar run <extId>` (list path) when `Object.keys(hooks.commands).length === 0` for the installed extension (run.js:52-56).

Common situations: Extensions that only provide install-time hooks (index.js with hooks but no commands) — expected output; running `quasar run` on an extension whose commands live under a different id; outdated extension version where commands were renamed or removed.

Related errors


AI-assisted analysis of quasarframework/quasar@4841521b5f (2026-08-30). Data as JSON: /api/errors/f9cd86c0c9fa311c. Report an issue: GitHub.