為您的組織管理 Claude Code 外掛程式
透過受管設定控制 Claude Code 在組織中每台機器上安裝和允許的外掛程式。
受管設定讓您決定 Claude Code 在組織中每台機器上安裝和允許的外掛程式。使用者無法覆蓋它們。您可以從 claude.ai 管理員主控台以伺服器受管設定的形式提供它們,或透過 MDM 或 managed-settings.json 檔案以端點受管設定的形式提供。此頁面上的大多數控制項僅在受管設定中生效。
此頁面適用於管理員,此處的設定管理 Claude Code。
這些情況涵蓋在其他頁面上:
- 為自己安裝外掛程式:從安裝外掛程式開始
- 控制成員在 claude.ai 和 Cowork 中可以使用哪些外掛程式:請參閱說明中心中的為您的組織管理外掛程式
- claude.ai 管理設定中的外掛程式頁面:組織設定 > 外掛程式與技能為成員的 claude.ai 帳戶開啟外掛程式,這些外掛程式作為同步外掛程式到達 Claude Code。它不設定此頁面上的任何金鑰
這些部分遵循大多數推出所採取的順序:為所有人或每個儲存庫要求外掛程式、為容器和 CI 設定種子、限制使用者可以自行新增的內容、設定更新政策,然後稽核已安裝的內容。若要在一個位置檢視每個政策金鑰,請參閱控制矩陣。
預先安裝和要求外掛程式
市場是外掛程式的目錄,Claude Code 從 git 儲存庫、URL 或本機路徑中擷取。在機器上註冊市場後,Claude Code 可以從中安裝外掛程式。
若要為整個車隊安裝外掛程式,請在受管設定、政策檔案或組織中每台機器讀取的伺服器提供的政策中同時設定兩個金鑰:extraKnownMarketplaces 在每台機器上註冊市場,enabledPlugins 命名要從中安裝和啟用的外掛程式。選擇傳遞機制涵蓋受管設定如何到達每台機器。
選擇傳遞機制
受管設定透過以下三種傳遞機制之一到達機器:
- 伺服器受管設定:在組織設定 > Claude Code > 受管設定將外掛程式金鑰設定為 JSON。需要在您的 Claude 組織中具有擁有者角色。雲端工作階段在安裝外掛程式之前會擷取這些設定。
- MDM 政策:在 macOS 上,提供一個 plist,其頂級金鑰是設定金鑰。在 Windows 上,將整個 JSON 文件儲存為登錄值中的字串。plist 網域和登錄金鑰位於每個機制儲存政策的位置。
- 受管設定檔案:在平台的系統路徑放置
managed-settings.json。您也可以將檔案新增到其旁邊的managed-settings.d/放入目錄。每個平台的檔案路徑位於每個機制儲存政策的位置,放入合併規則位於將基於檔案的政策分割到各個團隊。
如果您在 claude.ai 上有 Claude for Teams 或 Enterprise 組織,且您的裝置並非全部在 MDM 下,請使用伺服器受管設定。否則使用 MDM 政策或受管設定檔案。如需權衡,請參閱在伺服器受管和端點受管設定之間選擇。
哪個受管來源在機器上適用
預設情況下,這三個來源中只有一個在機器上適用。Claude Code 使用第一個提供政策金鑰的來源,首先檢查伺服器受管設定,然後檢查 MDM 政策,然後檢查受管設定檔案。如果伺服器受管設定提供甚至一個不相關的政策金鑰,Claude Code 會忽略該機器上 MDM 政策或受管設定檔案中的外掛程式金鑰,除了它從每個來源讀取的金鑰。
若要改為應用每個來源,請將managedSourcesBehavior設定為 "merge"。
Claude Code 如何組合受管來源也在兩種模式中列出 Claude Code 從每個來源讀取的金鑰。
要求市場及其外掛程式
在 extraKnownMarketplaces 下新增市場,使用市場自己的 marketplace.json 中的 name 作為金鑰。然後在 enabledPlugins 下將每個外掛程式新增為 plugin-name@marketplace-name。每個市場項目都帶有一個 source 物件,其中 source 欄位命名類型,例如 github。此受管設定範例註冊一個組織市場並強制啟用其中的兩個外掛程式:
{
"extraKnownMarketplaces": {
"your-marketplace": {
"source": { "source": "github", "repo": "your-org/your-marketplace" },
"autoUpdate": true
}
},
"enabledPlugins": {
"code-formatter@your-marketplace": true,
"deploy-helper@your-marketplace": true
}
}
設定到達機器後,Claude Code 註冊市場並在使用者下一個工作階段開始時安裝兩個外掛程式。使用者在 /plugin 中看到它們,在自己的範圍禁用其中一個不會阻止它載入,因為受管設定優先於每個其他範圍。
若要在每個範圍阻止外掛程式並將其從市場清單中隱藏,請改為在受管 enabledPlugins 中將其設定為 false。
調整市場的 autoUpdate 和 source 欄位:
autoUpdate:true保持市場及其外掛程式在背景中重新整理,false關閉它。請參閱設定更新政策。source:github是幾種來源類型之一。git來源採用 GitLab 或內部主機的url,url來源採用託管marketplace.json的位址。每個來源形狀都在市場參考中。
如果市場是私人 git 儲存庫,每個使用者都需要對其具有讀取存取權限。git 型市場的複製在使用者的機器上使用 git 執行,使用儲存的認證且無提示。對於沒有 git 主機帳戶的使用者,請改用種子。
受管項目也會覆蓋來自另一個來源的同名市場項目或 --plugin-dir 複本:
- 市場:受管市場項目替換具有相同名稱的較低優先順序項目,兩個項目的欄位不合併。
--plugin-dir複本:--plugin-dir為一個工作階段從本機目錄載入外掛程式。如果該複本的名稱與您的受管enabledPlugins命名的外掛程式相符,請參閱名稱衝突。
Anthropic 的官方市場 claude-plugins-official 當 enabledPlugins 將其中一個外掛程式設定為 true 時不需要 extraKnownMarketplaces 項目。該 name@claude-plugins-official 項目在這些金鑰適用的任何地方自行聲明市場。如果您未啟用其任何外掛程式但仍想在每台機器上註冊它,請給它一個明確項目,如允許官方市場和您自己的所做的。
按儲存庫要求外掛程式
若要涵蓋一個儲存庫的貢獻者而不是整個車隊,請在該儲存庫的 .claude/settings.json 中設定 extraKnownMarketplaces 和 enabledPlugins。extraKnownMarketplaces 項目僅適用於貢獻者已信任的資料夾,在不受信任的資料夾中 Claude Code 會無訊息地忽略它們:
- 互動式工作階段:Claude Code 僅在貢獻者接受該資料夾的工作區信任對話後才註冊市場。
- 非互動式
-p執行:項目僅適用於使用者已互動式接受信任的資料夾,或您在~/.claude.json中設定hasTrustDialogAccepted旗標的資料夾。
市場按相對路徑列出的外掛程式在儲存庫的 extraKnownMarketplaces 項目適用後從市場複本載入。市場項目指向外部來源(例如外掛程式自己的 GitHub 儲存庫)的外掛程式不會單獨從儲存庫的設定安裝。每個貢獻者看到 Plugin "<name>" is enabled in project settings but isn't installed,直到他們執行 claude plugin install <name>@<marketplace> --scope project,如安裝外掛程式所述。
如果您使用具有相對路徑的本機 directory 或 file 來源,路徑會針對您的儲存庫的主要簽出進行解析。當您從 git worktree 執行 Claude Code 時,路徑仍指向主要簽出,因此所有 worktree 共享相同的市場位置。
若要推出具有依賴項的外掛程式組合,請將組合外掛程式放在 enabledPlugins 中,如外掛程式依賴項所述。
每個表面何時應用外掛程式金鑰
該表顯示每種 Claude Code 工作階段何時應用 extraKnownMarketplaces 和 enabledPlugins,來自受管設定和來自儲存庫的 .claude/settings.json。對於 Desktop 應用程式和 IDE 擴充功能,請參閱安裝外掛程式。
| 表面 | 受管 extraKnownMarketplaces 和 enabledPlugins |
儲存庫 .claude/settings.json |
|---|---|---|
| 終端機、互動式 | 在接收設定的每台機器上的工作階段開始時應用 | extraKnownMarketplaces 在信任後應用;enabledPlugins 在工作階段開始時應用 |
-p 和 CI |
在工作階段開始時應用,安裝在背景中執行 | 僅在受信任的資料夾中的 extraKnownMarketplaces;enabledPlugins 已應用 |
| 雲端工作階段 | 在 Anthropic 託管的環境中,僅伺服器受管設定到達工作階段,它在安裝外掛程式之前等待它們。MDM 政策和受管設定檔案保留在使用者的機器上。對於自託管環境,請參閱政策適用的位置和時間 | 請參閱安裝外掛程式下的雲端工作階段標籤 |
在 -p 或 CI 執行中,市場和外掛程式在背景中安裝,因此外掛程式可能在第一個轉向中遺失。設定 CLAUDE_CODE_SYNC_PLUGIN_INSTALL=1 使執行在其第一個查詢之前等待安裝。
確認推出
檢查市場和外掛程式是否到達機器或 CI 執行:
- 在一台機器上:啟動 Claude Code 並執行
/plugin。市場和外掛程式已列出。 - 在 CI 中:使用
--output-format stream-json --verbose執行claude -p。init事件在plugins下列出已載入的外掛程式。
為容器和 CI 設定種子
對於無法在執行時複製的容器映像和 CI 執行器,在建置時預先填充外掛程式目錄並將 CLAUDE_CODE_PLUGIN_SEED_DIR 指向它。Claude Code 在啟動時註冊種子的市場並從種子就地載入外掛程式快取,無需複製。
種子也為沒有 git 主機帳戶的使用者提供服務。
在 CI/CD 環境中,在從私人儲存庫安裝外掛程式之前配置 git 認證幫助程式。在 GitHub Actions 上,匯出具有市場儲存庫讀取存取權限的令牌作為 GH_TOKEN,然後執行 gh auth setup-git。預設工作流程令牌只能存取工作流程自己的儲存庫,因此另一個儲存庫中的私人市場需要個人存取令牌或應用程式令牌。
在建置時安裝到種子中
將 CLAUDE_CODE_PLUGIN_CACHE_DIR 設定為種子路徑,以便市場和外掛程式安裝在那裡而不是 ~/.claude/plugins:
CLAUDE_CODE_PLUGIN_CACHE_DIR=/opt/claude-seed claude plugin marketplace add your-org/your-marketplace
CLAUDE_CODE_PLUGIN_CACHE_DIR=/opt/claude-seed claude plugin install code-formatter@your-marketplace
種子的佈局與 ~/.claude/plugins 相同:known_marketplaces.json、marketplaces/<name>/ 和 cache/<marketplace>/<plugin>/<version>/。您可以在與建置位置不同的路徑掛載種子。
將執行時指向種子
在容器的環境中設定 CLAUDE_CODE_PLUGIN_SEED_DIR=/opt/claude-seed。若要使用多個種子,請在 Unix 上用 : 或在 Windows 上用 ; 分隔它們的路徑。Claude Code 使用包含給定市場或外掛程式快取的第一個種子。
啟用外掛程式
種子中的外掛程式預設不啟用。在受管設定或儲存庫的 .claude/settings.json 中為每個要載入的種子外掛程式設定 enabledPlugins。
若要驗證種子,請在映像中使用 --output-format stream-json --verbose 執行 claude -p。在 init 事件的 plugins 清單中,每個已載入外掛程式的 path 位於種子下,例如 /opt/claude-seed/cache/your-marketplace/code-formatter/1.0.0。
種子市場遵循這些規則:
- 唯讀:Claude Code 永遠不會寫入種子,並強制為種子市場關閉
autoUpdate。 - 種子項目優先:在每次啟動時,種子中聲明的市場會覆蓋使用者的同名項目。使用者使用
claude plugin disable而不是移除市場來選擇退出種子外掛程式。 - 更新和移除失敗:
claude plugin marketplace update <name>和在種子市場上不帶--scope的remove失敗,並顯示命名種子目錄的訊息。 - 政策仍適用:允許清單和封鎖清單也檢查種子市場的記錄來源。允許您建置種子的來源。
對於沒有出站 git 存取的車隊,將種子與共享掛載上的 directory 或 file 市場來源結合。同時設定 CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC=1,這也會關閉外掛程式自動更新。如果有代理可用,請參閱代理配置以了解要設定的變數。
限制使用者可以安裝的內容
受管 strictKnownMarketplaces 允許清單和 blockedMarketplaces 封鎖清單決定外掛程式可能來自哪些市場來源。市場的來源是 Claude Code 從中擷取的 git 儲存庫、URL 或本機路徑。兩個清單都匹配外掛程式來自的市場的來源,而不是該市場內的外掛程式自己的項目。
如需常見的鎖定,允許官方市場和您自己的,請參閱允許官方市場和您自己的。將其與disableSideloadFlags配對,以便使用者無法從本機目錄或 URL 載入外掛程式。
兩個清單在任何東西下載之前和在工作階段開始時應用:
- 下載前:當使用者新增市場以及在每次安裝、更新、重新整理和自動更新時應用清單。
- 在工作階段開始時:清單再次應用於已安裝的外掛程式,因此已安裝的外掛程式其市場來源不再符合不會載入。
/plugin使用Marketplace "<name>" is not in the allowed marketplace list或Marketplace "<name>" is blocked by enterprise policy列出它。
兩個清單的執行位置取決於您在何處設定它們:
- claude.ai 管理員主控台:Claude Code 在讀取伺服器受管設定的工作階段中執行兩個清單。claude.ai 也在您組織中的任何人從 git 儲存庫在 claude.ai 上新增新市場,或從 Claude Desktop 應用程式外其 Code 標籤中的自訂新增時檢查它們。這涵蓋成員為自己的帳戶新增的市場和在組織設定 > 外掛程式下為整個組織新增的市場。claude.ai 拒絕允許清單不允許或封鎖清單命名的儲存庫。它不重新檢查在您設定清單之前在任一位置新增的市場,也不檢查上傳的外掛程式。
- 受管設定檔案、OS 級政策或其他受管來源:Claude Code 在讀取該來源的位置執行兩個清單。claude.ai 不讀取它。
當設定任何允許清單時,或封鎖清單命名除skills-dir之外的任何來源時,Claude Code 找不到其市場的外掛程式不會載入。/plugin 為其顯示政策錯誤而不是找不到錯誤。常見情況是市場沒有人註冊的過時 enabledPlugins 項目。
控制矩陣
該表列出每個外掛程式政策金鑰、它執行的內容以及它無法執行的內容。
| 金鑰 | 它執行的內容 | 它無法執行的內容 |
|---|---|---|
strictKnownMarketplaces |
市場來源的允許清單。[] 阻止每個來源,包括官方市場。別名:allowedMarketplaces |
不註冊市場、限制允許市場內的項目或阻止 --plugin-dir |
blockedMarketplaces |
市場來源的封鎖清單,在允許清單之前檢查 | 不阻止已從不符合的來源註冊的市場 |
syncClaudeAiPlugins |
設定 false 以停止 Claude Code 下載和載入為每個使用者帳戶從 claude.ai 同步的外掛程式。需要 Claude Code v2.1.273 或更新版本 |
不關閉一個同步外掛程式。為此,在enabledPlugins中設定 "<name>@synced": false |
enabledPlugins |
true 強制啟用,false 在每個範圍阻止並隱藏外掛程式 |
不安裝其市場未註冊或不允許的外掛程式 |
disableSideloadFlags |
拒絕 --plugin-dir、--plugin-url、--agents、Agent SDK plugins 選項和非 SDK --mcp-config 在啟動時,並以相同方式拒絕CLAUDE_CODE_PLUGIN_DIRS變數中命名的資料夾 |
不限制 .mcp.json、claude mcp add 或 SDK 提供的伺服器。將其與allowedMcpServers配對 |
disableCommandPluginSources |
阻止具有 command 來源的外掛程式安裝、更新或載入。command 來源是其外掛程式目錄由在機器上執行命令產生的來源。未設定時,它採用 allowManagedHooksOnly 的值 |
不影響其他來源類型 |
allowManagedHooksOnly |
限制哪些 hooks 執行。請參閱allowManagedHooksOnly |
不信任使用者自己啟用的外掛程式中的 hooks |
strictPluginOnlyCustomization |
阻止不來自外掛程式、受管設定或 Claude Code 內建的技能、代理、hooks 和 MCP 伺服器。設定 true 以涵蓋所有四種類型,或 skills、agents、hooks 和 mcp 值的陣列(例如 ["skills", "hooks"])以涵蓋某些 |
不限制使用者安裝的外掛程式。將其與 strictKnownMarketplaces 配對 |
pluginSuggestionMarketplaces |
其外掛程式可能作為安裝建議出現的市場。請參閱推薦外掛程式 | 不影響內建提示 |
pluginTrustMessage |
將您的文字附加到 /plugin 在外掛程式安裝前顯示的信任警告 |
不改變警告自己的文字 |
allowedChannelPlugins |
替換允許推送頻道訊息的預設外掛程式清單。需要 channelsEnabled: true |
請參閱限制哪些頻道外掛程式可以執行 |
CLAUDE_CODE_DISABLE_OFFICIAL_MARKETPLACE_AUTOINSTALL=1 |
停止互動式終端機工作階段自動註冊官方市場 | 不移除已註冊的市場。允許清單和封鎖清單在沒有它的情況下控制相同的自動註冊。在設定它的情況下啟動一次的機器在您取消設定後不會恢復自動註冊 |
表中的每個金鑰都是受管設定,除了 enabledPlugins、syncClaudeAiPlugins 和 CLAUDE_CODE_DISABLE_OFFICIAL_MARKETPLACE_AUTOINSTALL:
enabledPlugins:您可以在任何範圍設定它,受管設定會鎖定它。syncClaudeAiPlugins:每個使用者也可以在自己的使用者或本機設定中設定它。請參閱其設定參考中的範圍。CLAUDE_CODE_DISABLE_OFFICIAL_MARKETPLACE_AUTOINSTALL:這是一個環境變數,您透過關閉整個車隊的更新下顯示的受管env區塊提供。
此處的每個設定金鑰在設定參考中都有一個項目。
市場金鑰的別名
strictKnownMarketplaces 也可以拼寫為 allowedMarketplaces,extraKnownMarketplaces 也可以拼寫為 additionalMarketplaces。
- 版本:別名需要 Claude Code v2.1.232 或更新版本,較舊的用戶端會忽略它們。在混合車隊讀取的檔案中,保持規範名稱。
- 兩個拼寫都設定:當檔案設定兩個拼寫時,規範金鑰的值適用。
使用 `strictKnownMarketplaces` 的允許清單
將允許清單設定為這些來源物件的清單。大多數項目完全匹配,hostPattern 和 pathPattern 項目作為正規表達式匹配,github 擁有者萬用字元按擁有者匹配:
github:{ "source": "github", "repo": "your-org/approved-plugins" },帶有可選的ref和path。github擁有者萬用字元:{ "source": "github", "repo": "your-org/*" }匹配該擁有者下的每個儲存庫。*必須代表整個儲存庫名稱。Claude Code 忽略*/plugins和your-org/tools-*等項目作為無效,因此它們不匹配任何內容。需要 Claude Code v2.1.223 或更新版本。git:{ "source": "git", "url": "https://gitlab.example.com/tools/plugins.git" },帶有可選的ref和path。url:{ "source": "url", "url": "https://plugins.example.com/marketplace.json" },帶有可選的headers。file和directory:{ "source": "file", "path": "/opt/marketplace/marketplace.json" }或{ "source": "directory", "path": "/opt/marketplace/plugins" },帶有絕對路徑。hostPattern:{ "source": "hostPattern", "hostPattern": "^github\\.example\\.com$" },針對github、git和url來源的主機進行匹配。該模式在主機名中的任何地方匹配,因此使用^和$進行錨定如所示以匹配整個主機。github來源始終計為github.com。對於開發人員建立自己的市場的 GitHub Enterprise Server 或 GitLab 主機,使用hostPattern項目。GHES 頁面有工作範例。pathPattern:{ "source": "pathPattern", "pathPattern": "^/opt/approved/" },針對file和directory來源的path進行匹配。該模式在路徑中的任何地方匹配,因此以^開頭以固定目錄前綴。".*"允許每個本機路徑。skills-dir:{ "source": "skills-dir" }在設定允許清單時保持技能目錄外掛程式載入,並不匹配任何市場。
項目如何匹配
url 項目在其 url 值上匹配;headers 不進行比較。對於 github 和 git 項目,repo 或 url、ref 和 path 必須全部匹配,或在兩側都不存在:
- 沒有
ref的項目不涵蓋具有ref: "main"的來源。 your-org/your-marketplace的項目不涵蓋複製相同儲存庫的gitURL。- 尾部斜線、
.git後綴或ssh://代替https://是不同的值。當市場可以由多個 URL 複製時,更喜歡hostPattern項目。
擁有者萬用字元項目遵循 ref 的確切規則,並匹配儲存庫內的任何 path,除非項目固定一個。萬用字元匹配在允許清單上區分大小寫。
保持技能目錄外掛程式載入
技能目錄外掛程式是使用者在 ~/.claude/skills/ 或專案的 .claude/skills/ 下保持的外掛程式,位於帶有 .claude-plugin/plugin.json 的資料夾中。如果您設定任何沒有 { "source": "skills-dir" } 項目的允許清單,它們會停止載入。純技能,意思是沒有該清單的 SKILL.md,保持載入。
託管在 claude.ai 上的市場
允許清單和封鎖清單按其主機匹配託管在 claude.ai 上的市場。若要允許或阻止一個,請新增與 claude.ai 匹配的 hostPattern 項目到 strictKnownMarketplaces 或 blockedMarketplaces。在允許清單上,此類項目允許您組織的 claude.ai 市場和 claude.ai 預設市場,但不允許由成員自己的 claude.ai 上傳組成的市場或其範圍 claude.ai 未聲明的市場。需要 Claude Code v2.1.273 或更新版本。
鎖定每個來源
空允許清單 [] 鎖定每個市場來源,包括官方市場。
此鎖定不涵蓋從 claude.ai 同步的外掛程式,Claude Code 從每個使用者的帳戶而不是市場下載。若要同時停止這些,請在受管設定中將syncClaudeAiPlugins設定為 false,或在 claude.ai 上為您的組織關閉技能。
使用 `blockedMarketplaces` 的封鎖清單
blockedMarketplaces 採用與strictKnownMarketplaces相同的來源物件,並首先檢查,因此兩個清單上的來源被阻止。封鎖清單匹配比允許清單匹配更寬:
- Git URL 被規範化,因此一個
github.com儲存庫的git@和https://形式、.git後綴和尾部斜線都匹配相同的項目。 github項目也阻止等效的gitURL,反之亦然。- 對於
owner/*項目,擁有者比較不區分大小寫。 - 沒有
ref或path的項目阻止它匹配的儲存庫的每個 ref 和 path。
此項目阻止一個 GitHub 擁有者下的每個儲存庫:
{
"blockedMarketplaces": [
{ "source": "github", "repo": "untrusted-org/*" }
]
}
blockedMarketplaces 中的 url 項目也在使用者新增 Claude Code 複製而不是擷取的 https:// 儲存庫 URL 時應用,例如裸 github.com 或 gitlab.com 儲存庫 URL。如果項目命名該 URL,使用者無法新增它。匹配忽略 .git 後綴和使用者在 # 後附加的任何 ref。需要 Claude Code v2.1.232 或更新版本。
此處的 { "source": "skills-dir" } 項目停止技能目錄外掛程式從 ~/.claude/skills/ 和專案的 .claude/skills/ 載入。
僅命名該項目的封鎖清單不計為活躍限制,因此它不停止 Claude Code 找不到其市場的外掛程式載入。
允許官方市場和您自己的
大多數組織允許官方市場和他們自己的,並註冊兩者以便每台機器都有它們。此受管設定政策允許兩個市場,註冊兩者,強制啟用兩個外掛程式,並拒絕 --plugin-dir:
{
"strictKnownMarketplaces": [
{ "source": "github", "repo": "anthropics/claude-plugins-official" },
{ "source": "github", "repo": "your-org/*" },
{ "source": "skills-dir" }
],
"extraKnownMarketplaces": {
"claude-plugins-official": {
"source": { "source": "github", "repo": "anthropics/claude-plugins-official" }
},
"your-marketplace": {
"source": { "source": "github", "repo": "your-org/your-marketplace" }
}
},
"enabledPlugins": {
"code-formatter@your-marketplace": true,
"deploy-helper@your-marketplace": true
},
"disableSideloadFlags": true
}
在具有此政策的機器上,新增清單外的任何來源,例如 /plugin marketplace add https://example.com/other-marketplace.git,失敗並顯示包含 is blocked by enterprise policy 的訊息,後跟允許的來源。claude --plugin-dir ./x 退出並顯示命名 disableSideloadFlags 的訊息。
{ "source": "skills-dir" } 項目在此允許清單下保持技能目錄外掛程式載入。移除該項目,它們停止載入。
使用明確的 extraKnownMarketplaces 項目註冊兩個市場,如此政策所做的,而不是依賴允許清單或官方市場自行註冊:
- 允許清單不註冊任何內容:
extraKnownMarketplaces項目執行,它本身必須通過允許清單。Claude Code 拒絕註冊受管市場,其來源允許清單不匹配。 - 官方市場僅在互動式終端機工作階段中自行註冊:即使在那裡,它也僅在允許清單允許時註冊。
-p執行或附加到雲端工作階段的終端機永遠不會註冊它。 - 被阻止的嘗試被記住:如果機器曾在阻止官方市場的政策下執行,Claude Code 會記錄被阻止的嘗試,並在政策更改後不重試。
[]鎖定是一個此類政策。該機器僅透過此政策中的extraKnownMarketplaces項目、其中一個外掛程式的enabledPlugins項目或手動/plugin marketplace add再次註冊它。
設定更新政策
您可以按市場、整個車隊或透過發佈頻道按使用者群組設定更新政策。
按市場開啟或關閉自動更新
外掛程式自動更新在啟動後在背景中為開啟它的市場執行。如需預設開啟它的市場,請參閱自動更新何時執行。若要為車隊決定,請在受管 extraKnownMarketplaces 項目上設定 "autoUpdate": true 或 false:
- 如果受管項目設定欄位,Claude Code 拒絕使用者的
/plugin切換並顯示以Auto-update for '<name>' is set by開頭的錯誤。 - 如果受管項目保留欄位未設定,使用者的切換保持。
關閉整個車隊的更新
若要為每個市場關閉外掛程式自動更新,請在受管 env 區塊中設定 DISABLE_AUTOUPDATER,如此範例所做的。相同變數也停止 Claude Code 自己的更新:
{
"env": {
"DISABLE_AUTOUPDATER": "1"
}
}
若要停止 Claude Code 自己的更新但保持外掛程式自動更新,請將 "FORCE_AUTOUPDATE_PLUGINS": "1" 新增到相同區塊。其他停止外掛程式自動更新的環境變數以相同方式工作。
DISABLE_AUTOUPDATER 不涵蓋具有command 來源的外掛程式。Claude Code 每個工作階段重新執行每個啟用的命令,並在其更改時安裝輸出。如需停止這些執行的內容,請參閱命令來源何時重新執行。
將發佈頻道指派給使用者群組
若要執行穩定和早期存取頻道,請託管兩個指向相同外掛程式的不同 ref 的市場。然後透過單獨的端點受管設定或閘道政策為每個使用者群組提供自己的市場。來自管理員主控台的伺服器受管設定適用於組織中的每個使用者,因此它們無法為不同的群組指派不同的設定。
- 將單獨的端點受管設定(例如受管設定檔案或 MDM 設定檔)部署到每個群組的裝置。若要檢查每個群組檔案或設定檔是否適用於也有組織範圍來源的裝置,請參閱Claude Code 如何組合受管來源。
- 為每個群組定義一個 Claude 應用程式閘道政策。閘道應用第一個符合使用者的匹配規則的政策,因此排序政策以便每個使用者到達其群組的政策。該政策的
extraKnownMarketplaces對應不與任何其他政策的合併,因此列出群組需要的每個市場,而不僅僅是其頻道市場。
使用任一機制,穩定群組接收此配置:
{
"extraKnownMarketplaces": {
"stable-tools": {
"source": { "source": "github", "repo": "your-org/stable-tools" }
}
}
}
早期存取群組改為接收 latest-tools。若要設定兩個市場,請參閱執行發佈頻道。
推薦外掛程式
市場擁有者可以將 relevance 訊號附加到項目,以便 Claude Code 在專案符合時建議外掛程式。
來自市場的建議僅在其在使用者的機器上註冊、您在受管設定中的 pluginSuggestionMarketplaces 中列出其名稱,並且您在相同政策中聲明其來源時出現。聲明來源作為市場的 extraKnownMarketplaces 項目或允許清單項目。官方市場僅需要名稱。請參閱在受管設定中啟用建議。
稽核和檢視
OpenTelemetry 事件和 Analytics API 告訴您您的車隊安裝和執行的內容。
如需外掛程式可以在機器上執行的內容以及每個信任層允許的內容,在批准市場之前請閱讀外掛程式安全性。
OpenTelemetry 事件
claude_code.plugin_installed 記錄每次安裝,claude_code.plugin_loaded 記錄每個啟用的外掛程式在工作階段開始時。除非您設定 OTEL_LOG_TOOL_DETAILS=1,否則兩個事件都會編輯或省略第三方外掛程式和市場名稱,如您後端中的編輯外掛程式名稱所示。欄位清單位於外掛程式已安裝事件和外掛程式已載入事件。
Analytics API
在 Enterprise 計畫上,GET /v1/organizations/analytics/plugins 返回跨 Claude Code 和 Cowork 的每個外掛程式、每天的安裝和調用計數。您可以按使用者或 RBAC 群組對計數進行分組。到達 Anthropic 而沒有外掛程式名稱的外掛程式活動出現在一個聚合 third-party 列中。請參閱端點參考和以程式設計方式存取資料以了解它需要的金鑰。
規劃受管設定無法執行的內容
這些來自安全檢視的請求在目前設定架構中沒有專用金鑰。最接近的現有控制項是:
- 按使用者或按群組目標:每個外掛程式金鑰適用於接收設定的每個使用者。伺服器受管設定為每個組織提供一個配置。對於按群組政策,使用單獨的端點受管設定或閘道政策,如將發佈頻道指派給使用者群組下所述。
- 限制允許市場內的項目:允許清單匹配市場來源。若要從允許的市場阻止一個外掛程式,請在受管
enabledPlugins中將其設定為false。 - 隱藏
/plugin:沒有金鑰禁用命令。最接近的等效項結合僅命名您的市場的允許清單、您提供的外掛程式的受管enabledPlugins項目和disableSideloadFlags。 - 透過允許清單控制
--plugin-dir:允許清單不涵蓋--plugin-dir。disableSideloadFlags執行。 - 透過這些金鑰執行 claude.ai 外掛程式切換:組織設定 > 外掛程式與技能不設定此頁面上的金鑰。成員和您的組織在那裡開啟的內容作為同步外掛程式到達 CLI,它們有自己的控制項。
疑難排解政策
如果外掛程式政策在機器上的行為不符合預期,請首先檢查這些症狀:
- 受管檔案未解析:當
managed-settings.json不是有效 JSON 時,Claude Code 拒絕啟動並列印命名檔案的錯誤。解析但有一個無效項目的檔案保持其政策的其餘部分。請參閱受管設定中的無效項目。 - 受管來源未載入:執行
/status並在Setting sources行中尋找Enterprise managed settings。如果遺失,來源未載入。 - 使用者報告
blocked by enterprise policy:訊息命名市場或其來源。對於允許清單,它也列出允許的來源。使用者面向的項目位於疑難排解外掛程式。 - 使用者在
~/.claude/settings.json中禁用的外掛程式仍然載入:另一個設定來源重新啟用它,例如強制啟用它的受管enabledPlugins項目。/plugin和claude plugin list顯示Disabled in ~/.claude/settings.json but still loads與該設定來源。
後續步驟
- 市場參考:
extraKnownMarketplaces、strictKnownMarketplaces和blockedMarketplaces接受的source值 - 託管和維護市場:執行您的政策指向的市場
- 外掛程式安全性和信任:外掛程式可以在機器上執行的內容以及在安裝前如何檢視一個
- 伺服器受管設定:從 claude.ai 管理員主控台提供這些金鑰
- 疑難排解外掛程式:政策阻止使用者時看到的訊息