Skip to content

Improve error messages for nouns owned by uninstalled plugins - #108

Open
sawka-harness wants to merge 1 commit into
mainfrom
sawka/plugin-nouns
Open

Improve error messages for nouns owned by uninstalled plugins#108
sawka-harness wants to merge 1 commit into
mainfrom
sawka/plugin-nouns

Conversation

@sawka-harness

Copy link
Copy Markdown
Collaborator

When a noun belongs to a plugin (e.g. har) that isn't installed, the noun is never registered, so cobra previously fell through to a generic "unknown command" error regardless of whether the user typed or . The registry now tracks plugin-owned nouns (and their aliases) via RecordPluginOwnedNouns, populated from embedded plugin specs during spec loading, and both unknownNounError and SuggestRootCommand check this map first to surface a clear "is provided by the X plugin, which isn't installed" message with an install hint.

specloader no longer skips embedded module_type: plugin specs entirely — it now records their noun ownership before bailing out of builtin registration, since a plugin's spec never reaches the registry unless it's actually installed in the home spec dir.

AI-Tool: claude-code
AI-Model: Claude Sonnet 5

When a noun belongs to a plugin (e.g. har) that isn't installed, the noun is never registered, so cobra previously fell through to a generic "unknown command" error regardless of whether the user typed <noun> <verb> or <verb> <noun>. The registry now tracks plugin-owned nouns (and their aliases) via RecordPluginOwnedNouns, populated from embedded plugin specs during spec loading, and both unknownNounError and SuggestRootCommand check this map first to surface a clear "is provided by the X plugin, which isn't installed" message with an install hint.

specloader no longer skips embedded module_type: plugin specs entirely — it now records their noun ownership before bailing out of builtin registration, since a plugin's spec never reaches the registry unless it's actually installed in the home spec dir.

AI-Session-Id: c83166db-7854-4800-8983-47a0fb3e7525
AI-Tool: claude-code
AI-Model: unknown
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant