Skip to main content

Module components

Module components 

Source
Expand description

Per-plugin component + marketplace-manifest scan: the fast path behind the Extensions page. Pure filesystem reads under the config dir ($CLAUDE_CONFIG_DIR/~/.claude) and its plugins/ subtree, settings.json included; no CLI call. The plugin registry (installed_plugins.json) supplies installed-ness, version and the auto-dependency marker; settings.json’s enabledPlugins the enabled state; the marketplace manifests the latest version and LSP server names; each plugin’s own manifest its declared component paths.

Structs§

ExtensionScan
One combined disk scan: everything a refresh needs without a CLI spawn - registry-derived installed entries, manifest-derived available entries and marketplace sources, per-plugin component inventories, and per-marketplace health, over one shared manifest load so a failed manifest surfaces the same error on both halves.

Functions§

plugins_root
The plugins subtree of the config dir the claude CLI itself resolves: $CLAUDE_CONFIG_DIR, else $HOME/.claude. Both env reads are launch-directory-independent; None when neither resolves.
scan_extensions
Scan the plugin cache and marketplace manifests into per-plugin component inventories, one entry per plugin the registry, a manifest or the cache knows about. Installed plugins scan their registry installPath; uninstalled ones their marketplace clone source. A registry entry with no readable install dir - gone, unreadable, or absent from the entry itself - emits a LoadFailed row carrying its reason rather than disappearing, and so does a marketplace whose manifest could not load.