Marketplace installation doesn't clone git submodules

Resolved 💬 5 comments Opened Jan 10, 2026 by discreteds Closed Mar 3, 2026

When installing a marketplace that uses git submodules to include multiple plugins, Claude Code clones the repository but doesn't initialize or update submodules. This leaves empty placeholder directories where the plugin content should be.

Steps to Reproduce

  1. Create a marketplace repo that uses git submodules (e.g., to include multiple independent plugin repos)
  2. Install the marketplace via Claude Code
  3. Check the installed directory at ~/.claude/plugins/marketplaces/<name>/

Expected Behavior

Submodules should be cloned along with the main repo, equivalent to:

git clone --recurse-submodules <repo-url>
# or
git clone <repo-url> && git submodule update --init --recursive

Actual Behavior

Submodule directories exist but are empty. Running git submodule status shows all submodules with - prefix (uninitialized):

-640fa097d878e015d8547e89ab788211064b6b58 hiivmind-corpus
-821b2331131bed6fbf870856b95aee5b874383ca hiivmind-corpus-airtable
-c0d30fe4d4a366ec7237875bb18b519e8f4fb7d3 hiivmind-corpus-atproto
...

Environment

Workaround

Manually initialize submodules after installation:

cd ~/.claude/plugins/marketplaces/<name>
git submodule update --init --recursive

View original on GitHub ↗

This issue has 5 comments on GitHub. Read the full discussion on GitHub ↗