跳到內容

安裝與管理技能

本指南說明如何用 GitHub 上的技能充實一個工作區:把儲存庫新增為來源、從中安裝你想要的 技能,並讓它們長期保持最新。

開始之前必須先了解一件重要的事:來源儲存庫是不受信任的。 它的名稱、說明與星星 數都由持有它的人填寫。Control Center 唯一信任的安全訊號是防毒掃描判定;任何內容在 抵達磁碟或代理提示之前,每一次安裝都必須先通過這道判定。若你想了解背後的推理,請閱讀 代理模型的技能一節;本頁只談怎麼做。

技能位於 設定 → 工作區 → 技能 (/workspaces/<id>/settings/workspace/skills)。它們以工作區為作用域:你在這裡安裝的 技能只屬於這個工作區。本頁有兩個分頁:已安裝(本機技能,其中包含一個新增技能 編輯器)與來源(GitHub 技能目錄)。兩種寫入都必須通過同一道掃描關卡。

  1. 開啟 設定 → 工作區 → 技能,並切換到來源分頁。
  2. 按下新增儲存庫。
  3. 貼上一個 GitHub 儲存庫 URL,例如 https://github.com/anthropics/skills, 然後確認。

伺服器會用自身的憑證檢查該儲存庫是否存在且可見,接著將它新增到左側欄。中間沒有經過 策畫的市集:任何 GitHub 儲存庫都行,這也意味著聲譽得由你自己判斷——星星數只是證據, 從來不是保證。

一個儲存庫的技能,就是那些包含 SKILL.md 的目錄(最多三層深,另外還包括 Claude 外掛 市集的版面配置 plugins/<plugin>/skills/<skill>,並略過相依性與廠商目錄)。若網格 稍後顯示該儲存庫沒有技能,意思就是如此:其中沒有任何目錄符合技能慣例。

在左側欄中選取一個儲存庫,它的技能會以網格形式出現在右側,網格上方有一個篩選欄位, 可依名稱、說明或 slug 縮小目錄範圍。點選卡片即可開啟詳細資料檢視。它會顯示三項內容:

  • README,以 Markdown 呈現——也就是技能目錄中的 README.md;若沒有 README,則為 SKILL.md 的本文。
  • 掃描預覽——掃描判定(pass、warn 或 quarantine)、技能內容所宣告的能力 (執行 shell、寫入檔案、網路存取……),以及掃描器記錄下來的每一項發現項目。
  • 檔案數量——一次安裝會寫入技能的整個目錄,而不只是它的 SKILL.md。

預覽所掃描的,正是安裝將會寫入的那些位元組,所以你看到的判定就是安裝會得到的判定; 不會在你背後重新判定。

  1. 開啟該技能的詳細資料檢視。
  2. 閱讀掃描判定。若判定為 warn 或 pass,按下安裝。
  3. 若判定為 quarantine,在你勾選我了解風險—仍要安裝之前,安裝會保持停用。 這項覆寫會被記錄下來,而不是被當成預設。

安裝會把技能的目錄寫入工作區,在 skills-lock.json 中記錄一筆固定記錄(來源儲存庫、 路徑、它來自哪個提交,以及內容雜湊),該技能隨後即可供工作區內的代理使用。標示 名稱已被使用的卡片,表示本機已有另一個技能占用了這個名稱——請先解除安裝那一個。

已安裝技能的卡片帶有徽章:已安裝,或當儲存庫已經越過你固定的那個提交時顯示 有可用更新。開啟詳細資料檢視並按下更新,即可依新的提交重新取得。更新與安裝 會通過同一道掃描關卡——新版本若遭判定為隔離,該技能會被拒絕,而你原有的版本保持 不變。舊版本的雜湊會以回復參照的形式保留在鎖定檔中。

解除安裝(位於已安裝技能的詳細資料檢視上,或在已安裝分頁中刪除)會一併移除 技能的目錄與它的鎖定固定記錄——解除安裝後的技能不會留下任何殘留。

從左側欄移除儲存庫只會移除目錄本身:你從它安裝的技能仍保持安裝,也仍會更新, 因為固定記錄是以名稱記錄儲存庫,而不是參照來源項目。若你想再次瀏覽它,把該儲存庫 重新新增回來即可。

技能會在自己的命名空間下被呼叫,因此絕不會與內建斜線指令(/plan、/goal、/loop、 /compact)衝突:

  • /skill:<name>——安裝在此工作區中,或附加到該代理的技能
  • /skill:<repo>:<name>——本空間中已簽出的某個儲存庫所隨附的技能

對於命名空間出現之前寫下的訊息,不帶命名空間的非內建名稱仍會解析。/skill:plan 才會 觸及名為 plan 的技能;/plan 永遠是內建指令。

已簽出的儲存庫可以隨附自己的技能,位於 .agents/skills/、.agent/skills/、 .claude/skills/、.opencode/skills/ 或 skills/。這些技能不透過本頁安裝。一個 代理只會攜帶它目前所在儲存庫的技能;當它移動時,這些技能也會跟著替換。輸入框則不是 這樣限定範圍:/skill:<repo>:<name> 可觸及本空間中的任何儲存庫。

儲存庫技能在本身的 frontmatter 進入提示之前,也會通過同一道失效即拒絕的掃描 (pass / warn / quarantine)。warn 會被放行;quarantine 會被扣下,而這條 路徑上沒有任何操作員覆寫。

參見儲存庫範圍的技能與 斜線指令。