SO NICE × AI 工作流導入

把團隊的 Skill 共用到每個人的 Claude Code

SO NICE 使用的是 Claude Team 方案,這份文件就以此為前提,說明做好一個 Skill 之後,要怎麼讓整個團隊在自己的 Claude Code 裡都用得到——含完整步驟,照著做就能完成。

給 Carol | SO NICE 團隊(Claude Team 方案)| 2026-06-29

一、先搞懂兩個詞

整個流程只牽涉兩個概念,先用一句話分清楚,後面就不會混淆:

Skill(技能)
一個「能力」。一個資料夾 + 一份 SKILL.md,教 Claude 怎麼做某一件事(例如:產出商品分析報表)。
Plugin(外掛包)
一個「安裝包」。可以把一個或多個 Skill 打包在一起,方便發佈、安裝、更新與版本控管。

用 App Store 來比喻最直覺:

Skill = 一個 App
單一功能
Plugin = 上架的安裝包
一包可含多個 App
Marketplace = App Store
列出有哪些包可裝

所以要把 Skill 給整個團隊用,標準做法是:把 Skill 包成 Plugin,放到一個團隊專屬的 Marketplace(其實就是一個 GitHub repo),再由管理者把這個來源集中下發給全團隊。

二、一個重要前提(避免走錯路)

claude.ai 網頁版的「上傳 Skill」和 Claude Code 是兩套系統,彼此不互通。
在 claude.ai 後台上傳的 Skill,不會出現在大家的 Claude Code;反過來也一樣。SO NICE 團隊是用 Claude Code 工作,所以要走下面這套 Plugin / Marketplace 的方式。

三、整體流程一眼看懂

因為是 Team 方案,管理者可以從後台「集中下發」設定,整體流程比個人方案更省事:

管理者把做好的 Skill 包成 Plugin,放進一個 git repo(GitHub 或公司內部 NAS,這個 repo 就是團隊的 Marketplace)。
管理者在 claude.ai 後台一次設定,把這個 repo 自動下發給全團隊、並限定只能裝公司核可的來源。
團隊成員一登入,Marketplace 已自動就位,只需安裝一步:/plugin install sonice-plugin@sonice-marketplace
日後更新管理者改版本推上去 → 自動更新,全團隊同步。

關鍵釐清:不論哪個方案(Pro / Team / Enterprise),Claude Code 的 Skill 內容都需要一個 git repo 當家(GitHub 或公司內部 NAS 皆可)——Anthropic 不會替你「託管」這份內容。Team 方案的價值不在託管,而在於:管理者能把這個 repo 集中下發給所有人、並限定安裝來源,這是個人 Pro 方案做不到的。

四、開始前,先做一個選擇:repo 放哪裡

既然一定要一個 git repo 當家,唯一需要拿主意的就是:這個 repo 放在哪裡?三個選項,依「內容有沒有機密」「要不要放外部雲端」來挑:

A · GitHub 公開

最省事

  • repo 設為 public,把 Skill 放進去即可。
  • 成員不需要帳號、也不用登入,貼一行指令就能裝。
  • 代價:內容公開可見,任何人都看得到。

適合:報表格式、流程提示詞這類不涉及機密的內容。

B · GitHub 私有

安全,但需外部帳號

  • 用 GitHub Organization 開 private repo,加成員給「讀取」權限。
  • 每位成員都要有 GitHub 帳號、電腦登入一次。
  • 內容存在 GitHub(外部雲端),只有被授權的人看得到。

適合:內容需保密、但可接受放在外部雲端。

最適合 SO NICE

C · 公司內部 NAS

不外流 · 免 GitHub 帳號

  • 在 NAS 上開 git 服務(Synology 內建 Git Server,或裝 Gitea),repo 放這裡。
  • 認證用現有的公司 / NAS 帳號,不用辦 GitHub。
  • 內容完全留在公司,不進任何外部雲端。

適合:公司政策不允許文檔外流、不想每人辦帳號。
限制:安裝/更新要在公司內網(遠端需 VPN)。

補充:GitHub Organization 私有 repo 免費;NAS 方案 Claude Code 完全支援——它只認「一個 git 網址」,不管背後是 GitHub 還是內部 NAS。

五、管理者設定步驟

1建立一個 git repo 當團隊 Marketplace

例如取名 claude-skills,放在上一節選的地方(GitHub 或公司內部 NAS)。內部結構都一樣,長這樣:

sonice-claude-skills/
├── .claude-plugin/
│   └── marketplace.json          ← 列出有哪些 plugin 可裝
└── plugins/
    └── sonice-plugin/
        ├── .claude-plugin/
        │   └── plugin.json        ← 這個包的名稱、版本、說明
        └── skills/
            └── 商品分析/
                └── SKILL.md       ← 你的 Skill 本體(注意大寫 SKILL.md)

2marketplace.json(目錄)

這裡的 "name" 就是「來源名稱」(安裝指令 @ 右邊那個)。

{
  "name": "sonice-marketplace",
  "owner": { "name": "SO NICE" },
  "plugins": [
    {
      "name": "sonice-plugin",
      "source": "./plugins/sonice-plugin",
      "description": "SO NICE 內部 AI 工作流工具包"
    }
  ]
}

3plugin.json(這包的身分證)

這裡的 "name" 就是「外掛包名稱」(安裝指令 @ 左邊那個),要和上面 marketplace.json 裡的 plugins[].name 一致。

{
  "name": "sonice-plugin",
  "description": "SO NICE 商品分析、報表等內部 Skill",
  "version": "1.0.0",
  "author": { "name": "SO NICE" }
}

4放入你的 Skill

把已經做好的 Skill 資料夾(含 SKILL.md)放進 plugins/sonice-plugin/skills/ 底下。要加幾個 Skill 就放幾個。

檔名提醒:在 Claude Code 裡,主檔名一律是大寫 SKILL.md。(claude.ai 網頁版用的是小寫 skill.md,兩者不要搞混。)

5Commit 並推上 git repo(GitHub 或 NAS)

終端機 · 可直接請 Claude Code 代跑

git add .
git commit -m "init: SO NICE 團隊 skill marketplace"
git push

其實步驟 1–5(建 repo、寫設定檔、放 Skill、commit、push)都可以直接跟 Claude Code 說「幫我建好並推上去」,它會代為執行。前提是這台電腦的 git 已能連到目標 repo:走 GitHub 就 gh auth login 一次;走 NAS 就用公司 / NAS 帳號登入一次 git(不需 gh)。

6在 claude.ai 後台集中下發給全團隊

這是 Team 方案的關鍵步驟,也是 Claude Code 幫不了你的一步(它進不了後台)。到 claude.ai 後台 → Claude Code → Managed settings,填入:

{
  "extraKnownMarketplaces": {
    "sonice-marketplace": {
      "source": { "source": "github", "repo": "sonice/claude-skills" },
      "autoUpdate": true
    }
  },
  "strictKnownMarketplaces": true
}

上面是 GitHub 的寫法。若走公司 NAS,把 source 換成 git 網址(實際網址問 IT):

"source": { "source": "git", "url": "https://nas.sonice.internal/git/claude-skills.git" }

送出後,所有團隊成員下次登入時,這個 Marketplace 會自動註冊好、自動更新,而且只能安裝公司核可的來源。成員不需要自己手動「加入 Marketplace」。

六、團隊成員安裝步驟

因為管理者已經把 Marketplace 集中下發,成員端只剩一行指令

在 Claude Code 對話視窗輸入

/plugin install sonice-plugin@sonice-marketplace

裝完之後,團隊 Skill 在任何專案裡都能用。

安裝是一次性的。成員只要跑一次上面的指令(或在系統跳出提示時點「安裝」)即可;日後管理者更新版本時,會自動同步到每個人,成員不需要再做任何事。

看懂這行指令:@ 的左右各是什麼

格式是 /plugin install <外掛包名稱>@<來源名稱>,讀法是「從某個來源、裝某個包」:

位置是什麼定義在哪
@ 左邊:sonice-plugin要裝的外掛包plugin.json"name"
@ 右邊:sonice-marketplace從哪個來源裝marketplace.json"name"

完整指令清單(備查)

以下都是 Claude Code 視窗裡的斜線指令。

成員端日常會用到:

# 安裝外掛包(後台已下發 marketplace,成員只需這行)
/plugin install sonice-plugin@sonice-marketplace

# 開啟互動選單:瀏覽 marketplace 裡有哪些 plugin、安裝、啟用/停用
/plugin

# 列出目前加了哪些 marketplace(不吃參數)
/plugin marketplace list

管理者端建置與維護:

# 加入一個 marketplace(沒走後台下發時才需要手動跑)
# 來源可用 GitHub 簡寫、完整 git URL(含 NAS)、或本機路徑
/plugin marketplace add sonice/claude-skills                                # GitHub
/plugin marketplace add https://nas.sonice.internal/git/claude-skills.git   # 公司 NAS

# 更新 marketplace(抓最新的 plugin 清單與版本)
/plugin marketplace update sonice-marketplace

# 移除某個 marketplace
/plugin marketplace remove sonice-marketplace
命名建議:這裡刻意把「來源」取名 sonice-marketplace、「外掛包」取名 sonice-plugin,讓指令一看就懂。正式上線時,外掛包通常會改取功能性名稱(例如 sonice-data-deck),裝多個包時看名字就知道誰是誰。命名一律用連字號(kebab-case),跟 Claude Code 慣例一致。

結語

整套的核心很單純:把 Skill 包成 Plugin、放進一個 GitHub repo、在 claude.ai 後台集中下發、團隊各自安裝一次。之後維護就是「改版本、推上去、自動同步」。SO NICE 是 Team 方案,所以可以善用集中下發與來源限定這兩項,讓管理更省事、更安全。