Skip to main content
如果您維護 CLI 或 SDK,您的工具可以提示 Claude Code 使用者安裝您的外掛程式。當您的 CLI 偵測到它在 Claude Code 內執行時,應該將一行 <claude-code-hint /> 標籤寫入 stderr。Claude Code 會在模型看到輸出之前從 Bash 和 PowerShell 工具輸出中移除該行,然後向使用者顯示一次性安裝提示。 此頁面僅適用於您的外掛程式列在 claude-plugins-official 或其他具有 Anthropic 官方市場名稱的市場中的情況。社群市場 claude-community 不是其中之一。
若要發佈外掛程式,請參閱發佈和分發外掛程式。

發出提示

僅在設定 CLAUDECODE 或 CLAUDE_CODE_CHILD_SESSION 時發出標籤,以便在使用者直接執行您的 CLI 時不會出現。 Claude Code 在透過 Bash 和 PowerShell 工具執行的命令以及 hook 命令中設定 CLAUDECODE=1。在 v2.1.172 及更新版本上,它也在那裡設定 CLAUDE_CODE_CHILD_SESSION=1。這些變數在哪些程序中攜帶它們方面有所不同:
  • CLAUDECODE:由每個 Claude Code 版本設定。IDE 擴充功能也在其整合終端中設定它,因此僅在 CLAUDECODE 上的閘道也會在使用者在其中一個終端中直接執行您的 CLI 時發出標籤
  • CLAUDE_CODE_CHILD_SESSION:僅在 Claude Code 本身啟動的子程序中設定。當您可以要求 v2.1.172 或更新版本時使用它
環境變數參考有詳細資訊。 以下範例在 CLAUDECODE 上設定閘道以獲得最廣泛的覆蓋範圍,並為官方市場中名為 example-cli 的外掛程式發出提示:
將 example-cli 替換為您的外掛程式在官方市場中的名稱。 您可以在每次呼叫時發出提示,因為 Claude Code 會為每個外掛程式提示一次。 若要檢查發出器,請在終端中執行 CLAUDECODE=1 example-cli 並確認標籤行出現在 stderr 上,然後執行 example-cli 而不使用變數,並確認沒有額外的列印。

提示格式

標籤必須佔據自己的一行;Claude Code 會忽略嵌入在行中間的標籤。 標籤採用三個屬性,全部必需: 值可以是雙引號或不帶引號;不帶引號的值不能包含空格。 即使 v 或 type 無法識別,Claude Code 也會從輸出中移除該行。

檢查提示何時出現

提示僅在互動式終端工作階段中出現。在 claude -p 執行、子代理執行和 hook 命令輸出中,標籤會被移除,不會顯示提示。以下所有檢查也必須通過:
  • 官方且可安裝:value 命名一個 Claude Code 在其官方市場本機副本中找到的外掛程式,該外掛程式尚未安裝,且沒有原則阻止
  • 分析開啟:Claude Code 分析關閉的工作階段永遠不會提示,例如設定了 DISABLE_TELEMETRY、DO_NOT_TRACK 或 CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC 的工作階段,或在第三方提供者(例如 Amazon Bedrock)上的工作階段,其中自動遙測選擇退出適用
  • 頻率限制:每個工作階段一個提示,每個外掛程式一個提示(無論使用者的答案如何),以及在該機器上已提示 100 個外掛程式後沒有提示
  • 未關閉:使用者未選擇否,且不再顯示外掛程式安裝提示
  • 本機、有人值守的工作階段:工作階段的工作區是本機而不是在雲端或遠端機器上,且工作階段不是無人值守執行。例如,使用 --cloud 啟動的工作階段、提供遠端控制的工作階段或代理團隊隊友永遠不會提示

預覽使用者看到的內容

當檢查提示何時出現中的檢查通過時,Claude Code 會顯示一個外掛程式推薦對話框,如下所示:
對話框命名 Claude 執行的 shell 命令的第一個單詞,以便使用者可以發現不匹配。每個答案都有一個效果:
  • 是,安裝:在使用者範圍安裝外掛程式
  • 否,且不再顯示外掛程式安裝提示:關閉該使用者的未來提示提示
  • 30 秒內無答案:計為否

後續步驟