結論:marketplaceとpluginの配布元を別々に固定する
GitLabでClaude Code plugin marketplaceを運用する時は、catalog repositoryのURLとref、各plugin sourceのURLとcommit SHA、利用者の認証、組織allowlistを別項目で固定します。2.1.232でGitLab repository URLのclone判定と認証案内が改善されましたが、追加できることと、安全な内容であることは別です。install前にcomponents、Hooks、MCP、権限、更新差分をreviewします。
読者の具体的な困りごとは、private GitLabから配布できても、catalogと実体のどちらが更新されたか、誰のcredentialで取得したか、どのcommitが端末へ入ったか説明できないことです。この記事を読むと、手動追加、組織配布、公開source、配布HOLDを7軸で選べます。
次の行動:一つのpluginについて、marketplace URL、plugin source URL、commit SHA、必要component、取得credential、許可scope、rollback versionを一行へ書いてください。
正式な対応範囲・認証・料金条件を確認する
Claude Codeのmarketplaceはplugin catalogであり、追加しただけではpluginはinstallされません。利用者はmarketplaceを登録し、個別pluginを選んでinstallします。GitHub以外のGit hostもfull repository URLで利用でき、GitLab、Bitbucket、self-hosted serverに対応します。HTTPSまたはSSHのURLを使い、曖昧なhost shorthandを避けます。
2.1.232のchangelogでは、GitLab plugin marketplaceがbare gitlab.com repository URLをGitHub URLと同様にcloneし、nested subgroupも扱い、認証失敗時に実際のGit hostを示すようになりました。同時にadditionalMarketplacesとallowedMarketplacesが従来設定の読みやすいaliasとして追加されています。古いclientとの差を避けるためversionを固定します。
手動のadd・install・updateでは、Claude Codeは既存のgit credential helperを使います。SSHはhostがknown_hostsにありkeyがagentへload済みであることが必要です。tokenをURL、marketplace.json、plugin fileへ書きません。HTTPS rewriteを使う場合もrepository pathへ限定し、read-only tokenにします。
marketplace機能単体の追加料金は公式docsに示されていません。ただしpluginはSkills、agents、Hooks、MCP・LSP serverを追加し、context cost、外部service利用料、model token、GitLab hosting・runner費用が発生し得ます。Team・EnterpriseのOrganization settings経由ではGitHub AppまたはGitHub Enterprise Appを使う配布条件があり、他host上のprivate sourceはそのまま組織syncできない場合があります。手動GitLab運用と管理画面配布を混同しません。
GitLab配布を7軸で設計する
- catalog:
.claude-plugin/marketplace.jsonのrepository、owner、reviewer、release refを固定します。 - source:各pluginの実体URLをcatalogと分け、可能ならfull 40文字commit SHAへpinします。
- 認証:個人credential、deploy token、CI credentialを用途別にし、read-onlyと期限を設定します。
- 内容:Skills、agents、Hooks、MCP、LSP、command、dependencyをinstall前に一覧化します。
- policy:許可marketplaceをexact URLまたはhost patternで限定し、blocklistと例外承認を用意します。
- 更新:catalog refreshとplugin updateを別changeとしてreviewし、versionとSHAの差分を残します。
- 復旧:旧SHA、cache、無効化、削除、credential revoke、影響端末一覧をrollback手順へ入れます。
marketplace sourceとplugin sourceは別物です。marketplaceはcatalogの取得元で、個別pluginはcatalog内のsourceから取得されます。catalogを固定しても、plugin sourceが動くbranchだけなら内容は変わります。反対にpluginをSHA pinしても、catalog側で別sourceへ差し替えられるため、両方のreviewが必要です。
private GitLab marketplaceを導入する8手順
- Claude Code 2.1.232以降をcanary端末へ固定し、install方法、release channel、rollback versionを記録します。
- GitLab projectのvisibility、owner、protected branch、CODEOWNERS、merge approval、audit eventを確認します。
marketplace.jsonと各plugin.jsonをvalidateし、source、version、components、外部dependencyを一覧化します。- plugin sourceをfull URLとcommit SHAへpinし、tagやbranchを使う場合は変更検知と再reviewを必須にします。
- canary利用者へread-only credentialまたはSSH keyを設定し、tokenがconfig、log、shell historyへ残らないか確認します。
- managed settingsで許可sourceを限定し、URL表記差、
.git、HTTPS・SSH、subgroupを実際の取得形と合わせます。 - 一つのpluginだけinstallし、追加されたSkill、agent、Hook、MCP、command、context cost、network accessをreadbackします。
- 更新、無効化、削除、旧SHAへの復旧、credential revokeを試し、全端末展開かHOLDかを決めます。
allowlistはnetwork operation前に確認されますが、許可されたrepositoryの内容を安全と保証しません。source URLの表記差はexact matchで別物になることがあります。組織内GitLab host全体をpattern許可すると新しいrepositoryまで入るため、最初はcatalog repository単位で限定し、例外は期限付きにします。
公開・展開前チェックリストとHOLD条件
- 2.1.232以降を確認した
- catalog ownerを確認した
- protected branchを設定した
- reviewerを二名以上置いた
- plugin sourceを分けて記録した
- commit SHAへpinした
- read-only credentialを使った
- tokenをfileへ埋めていない
- Skillsとagentsを読んだ
- HooksとMCPを読んだ
- 外部network先を確認した
- allowlistを限定した
- 更新差分を保存した
- 旧versionへ戻せた
HOLDするのは、source ownerが不明、plugin実体が動くbranchだけ、install時に外部scriptを内容未確認で実行する、personal tokenがcatalogへ入る、self-hosted GitLabのTLS・host keyを検証できない、Organization settingsの配布条件を手動installと混同する、rollback用SHAがない場合です。clone成功やvalidate PASSだけを安全証明にしません。
よくある質問と次の行動
GitLabのgroup URLだけで追加できますか?
marketplace catalogを持つ具体的repository URLを指定します。nested subgroupを含む場合も、実際のclone URLとallowlist表記を一致させます。
private repositoryなら安全ですか?
公開範囲が狭いだけで、内容の安全性は保証しません。review、SHA pin、最小credential、更新承認が必要です。
pluginをZIP配布する方法とどちらを選びますか?
GitLab marketplaceは継続更新と複数pluginのcatalogに向き、archiveは一回の固定artifact配布に向きます。更新責任と検証方法で選びます。
GitLab URL、認証、追加操作はClaude Code公式plugin discovery guide、catalog、source pin、policy、private repository条件は公式marketplace guide、2.1.232の変更は公式changelogで公開直前にも確認してください。
固定artifact配布はpluginのZIP配布、plugin内Skillの確認はSkillsの出所管理、repository trustはworkspace trustへつなげます。Miraigentの無料診断では、catalog、source、認証、component、policy、rollbackを一枚の運用表へ整理します。

