今天 GitHub 日榜 19 個項目,6 個是 Agent Skills 相關。我把這 6 個倉庫的 SKILL.md 逐個數了一次,數到 1,222 個檔案。
一句話結論:Agent Skills 數量沒有單一正確數法——數檔案會多算 48 個,數技能名會少算 4 個,今日日榜 6 個倉真實總數是 1,174 個技能。
差距本身不大。但拆開來看,誤差全部集中在一個倉庫:一個 54,339 星的項目把同一批技能存了兩份,而其中 2 份,兩邊內容已經對不上了。其中一份還停留在 4 個月前,教你把 API key 貼進 .env——新版本明確寫著不要這樣做。
本文所有數字都由我自己經 GitHub API 逐個資料檔重數,不採用 README 或網頁版顯示的數字。讀取時間:2026 年 8 月 30 日 10:12–10:15 UTC(香港時間 18:12–18:15)。星數與榜單會變動,數法不會。
今天 GitHub 日榜長什麼樣?
19 個項目裡有 6 個命中 Agent Skills,佔 31.6%。判定標準我先寫死再去數,避免自己挑順眼的:倉庫的 topics 含 skill 字串,或 description 含 skill 字串。這 6 個倉合計 325,624 顆星。
| 倉庫 | 星數 | 今日新增 | SKILL.md 檔案 | 實際技能 |
|---|---|---|---|---|
| addyosmani/agent-skills | 90,847 | +196 | 25 | 25 |
| ComposioHQ/awesome-claude-skills | 74,029 | +73 | 864 | 864 |
| calesthio/OpenMontage | 54,339 | +806 | 138 | 90 |
| K-Dense-AI/scientific-agent-skills | 38,284 | +1,587 | 163 | 163 |
| anthropics/claude-plugins-official | 35,552 | +358 | 31 | 31 |
| tt-a1i/archify | 32,573 | +3,902 | 1 | 1 |
| 合計 | 325,624 | — | 1,222 | 1,174 |
兩個粗體格就是全文重點。OpenMontage 的檔案數比技能數多;claude-plugins-official 剛好相反,它的技能數比「不重複的技能名」還多。這兩個方向的錯,來自兩種都很常見的數法。
為什麼「數 SKILL.md 檔案」會多算?
因為有些倉庫要同時餵不同的 AI 工具,就把同一個技能放進兩個資料夾。
OpenMontage 是今天榜上唯一這樣做的。它的 138 個 SKILL.md 分佈在兩個目錄:.agents/skills/ 有 89 個,.claude/skills/ 有 49 個。.claude/ 是 Claude Code 讀的路徑,.agents/ 是跨工具的通用路徑。
兩邊有 48 個技能同名。扣掉重複,真實技能數是 90 個。直接數檔案會報 138,等於多報 53.3%。
89 + 49 = 138 個檔案,但只有 90 個技能。多出來的 48 個,是同一批技能的第二份副本。
順帶一提,兩邊並非完全對稱:有 41 個技能只在 .agents/ 出現,另有 1 個(video_toolkit)只在 .claude/ 出現。41 + 1 + 48 = 90,對得上。
那 46 份一模一樣的複本,剩下 2 份呢?
這才是真正值得停下來看的地方。
我沒有只比對檔名,而是比對了 Git 的 blob SHA。同一個 SHA 代表兩個檔案位元組完全相同。48 對同名技能裡,46 對完全一致,2 對不一致。
不一致的是 elevenlabs 和 ai-video-gen。查提交紀錄後,原因很清楚:複本沒有跟著更新。
| 技能 | .agents/ 最後更新 | .claude/ 最後更新 | 差異 |
|---|---|---|---|
elevenlabs | 2026-08-08 | 2026-03-29 | 憑證處理指引相反 |
ai-video-gen | 2026-07-10 | 2026-07-08 | 少一個服務商通道 |
elevenlabs:兩份說明書,對憑證的指示相反
.claude/ 那份的最後更新是 2026-03-29,提交訊息是「Initial release」——也就是說,這個檔案從專案第一次發布之後就沒有再動過,至今超過 4 個月。它對憑證只寫了一句話:需要在 .env 放 ELEVENLABS_API_KEY。
.agents/ 那份在 2026-08-08 更新過,提交訊息寫著「add fal ElevenLabs speech and secure audio routing」。新版多了一整段路由規則,其中一句是這樣寫的:在共用安裝環境下,不要叫使用者去建立 .env、匯出金鑰或貼上憑證,應該把缺少的服務商權限當成管理員設定問題回報。它同時要求優先走集中管理的 fal.ai 通道,那條路根本不需要另外一組 ElevenLabs 憑證。
同一個倉庫、同一個技能名,兩份檔案對「要不要叫使用者貼 API key」給出相反指示。你的 AI 助理讀到哪一份,取決於它讀哪個資料夾。用 Claude Code 開這個專案,讀到的是 3 月那份。
ai-video-gen:少一個通道
這對的落差小一些,只差兩天,但結果一樣具體:.agents/ 版本列出 4 條 API 通道,包含 Kling 官方直連(需要 KLING_API_KEY);.claude/ 版本只列 2 條,沒有 Kling 官方那條,環境變數清單裡也沒有 KLING_API_KEY。讀到後者的助理,不會知道有這個選項存在。
要說明的是:這不是誰造假,也不是倉庫報錯數字。維護兩份副本本來就會有一份先更新、一份後更新。問題在於沒有任何地方會提示你讀到的是舊的那份。
為什麼「數技能名」又會少算?
因為不同的外掛,可以合法地擁有同名的技能。
知道了 OpenMontage 的問題之後,很自然會想:那乾脆改成數「不重複的技能資料夾名」就好。這個方法套在 Anthropic 官方外掛目錄上,會立刻出錯。
anthropics/claude-plugins-official 有 31 個 SKILL.md,但只有 27 個不重複的名字。重複的是 access 和 configure,各出現 3 次:
external_plugins/discord/skills/access/SKILL.mdexternal_plugins/imessage/skills/access/SKILL.mdexternal_plugins/telegram/skills/access/SKILL.md
這是三個不同外掛各自的「連接」技能:連 Discord、連 iMessage、連 Telegram。configure 同理。它們名字一樣,功能完全不同,而且三份內容互不相同(我比對過,三對同名檔案沒有一對的 SHA 相同)。
用「不重複技能名」去數,會把這 6 個技能壓成 2 個,31 變成 27,少報 12.9%。
所以正確的數法是什麼?
先看倉庫怎麼擺,再決定用哪種數法。判斷點只有一個:重複的名字,是出現在「平行的工具目錄」,還是出現在「不同的外掛目錄」?
- 重複名字出現在
.agents/與.claude/這種平行工具目錄 → 是同一個技能的複本,要合併。 - 重複名字出現在不同外掛 / 不同專案子目錄 → 是不同技能剛好同名,不能合併。
把這條規則套回今天的 6 個倉:
| 數法 | 今日日榜合計 | 誤差 |
|---|---|---|
| A:直接數 SKILL.md 檔案 | 1,222 | 多算 48 |
| B:數不重複技能名 | 1,170 | 少算 4 |
| C:看目錄結構再決定 | 1,174 | 基準 |
A 和 B 相差 52 個,兩邊都不對,而且錯的方向相反。整體誤差率只有 4.1%,聽起來不嚴重——但這 4.1% 完全由一個倉庫貢獻,那個倉庫自己錯 53.3%。用整體平均去安慰自己,會剛好錯過唯一有問題的那個。
1,222 這個數字還有什麼要注意?
它高度集中。1,222 個 SKILL.md 裡,有 832 個來自同一個資料夾:ComposioHQ/awesome-claude-skills 底下的 composio-skills/,佔今日全榜的 68.1%。
打開來看,是一整排以 SaaS 服務命名、格式高度一致的自動化技能:ably-automation、abstract-automation、abuselpdb-automation⋯⋯按字母排下去。這些是為每個串接的服務各生一份的目錄,不是 864 個人手寫的技能。它們確實都是有效的 SKILL.md,名字也全部不重複,所以數字沒有錯——但「今日日榜有 1,222 個 skill」這句話,跟你想像的那個生態規模不是同一回事。
把 Composio 整個倉扣掉,其餘 5 個倉合計 358 個檔案、310 個技能。
K-Dense 說 163 個,實際是幾個?
163 個,一個不差。
這條要補一個紀錄。我在 8 月 27 日那篇生態盤點裡,把 K-Dense 標成「未核、本次沒查、不引用」。今天補上了:skills/ 底下 163 個 SKILL.md,資料夾名全部不重複,沒有任何鏡像目錄。
它的 README 在徽章、簡介、分類段等 6 處以上都寫 163,跟實際數到的完全一致。這是今天 6 個倉裡數字最乾淨的一個,值得講明白——盤點數字這件事,對得上也要照樣報。
你自己怎麼三步驗一個 skill 倉?
不需要寫程式,用瀏覽器就能做完前兩步。
- 先看有沒有鏡像目錄。在倉庫首頁看有沒有同時存在
.claude/和.agents/(或.cursor/)。兩個都有,檔案數就一定大於技能數。 - 再看重複名字在哪一層。同名技能在平行工具目錄 → 合併計算;在不同外掛子目錄 → 分開計算。
- 最後比對兩份複本的更新日期。在 GitHub 上打開檔案按 History,看兩邊最後一次提交差多遠。差幾個月的,以新的那份為準,別照舊的做。
第 3 步最容易被跳過,卻是唯一會影響你實際操作的一步。
這對你實際有什麼影響?
分兩種情況。
如果你只是想知道生態多大:影響很小。今天整體誤差 4.1%,記得「檔案數不等於技能數」就夠了。看到任何人報一個大數字,先問他數的是檔案還是技能。
如果你要實際安裝來用:影響是具體的。以 OpenMontage 為例,你用 Claude Code 打開它,助理讀 .claude/skills/,拿到的 elevenlabs 是 3 月那份,它會叫你把 ElevenLabs 金鑰寫進 .env;而 8 月的版本已經改成優先走集中管理的通道,並且明確要求在共用環境下不要叫使用者貼憑證。差別不在功能多寡,在於憑證要不要落地到你的機器上。
遇到這種情況,處理方式很簡單:把 .agents/skills/ 底下對應的那份打開來看一次,以較新的為準。這不是這個專案獨有的毛病,任何維護雙份技能目錄的倉庫都可能出現。
想先了解 OpenMontage 這個工具本身在做什麼,可以看之前那篇評測;想看更多倉庫自述數字與實際數字的落差,可以看生態盤點那篇,以及mattpocock/skills 的 90 天追蹤。生態分層與規格制定者的關係,寫在五層那篇。
常見問題
為什麼倉庫要把技能存兩份?
因為不同 AI 工具讀不同路徑。Claude Code 讀 .claude/skills/,跨工具的通用規格用 .agents/skills/。倉庫想同時支援兩邊,最省事的做法就是各放一份。代價是要自己保證兩份同步,而這件事沒有機制強制。
怎麼知道兩份複本內容一不一樣?
最快的方法是在 GitHub 上分別打開兩個檔案,按 History 比對最後一次提交日期。日期差很多就幾乎肯定不同。要精確確認,可以用 GitHub API 讀取檔案樹,比對每個檔案的 blob SHA,SHA 相同代表位元組完全一致。
Agent Skills 現在總共有多少個?
沒有人知道,因為沒有統一登記處。本文只回答一個有邊界的問題:2026 年 8 月 30 日 GitHub 日榜上的 6 個 Agent Skills 倉庫,合計 1,174 個技能。任何聲稱知道全生態總數的數字,都要先問它怎麼數的。
裝越多技能越好嗎?
不是。K-Dense 自己的 README 就寫著:163 個技能會佔用大量常駐脈絡,建議只安裝需要的子集,不要整包裝。連做最大合集的人都這樣說。
本文所有數字由作者於 2026 年 8 月 30 日 10:12–10:15 UTC 經 GitHub API 逐個資料檔重數,未採用 README 或網頁顯示數值。星數、榜單與倉庫內容隨時變動,引用前請自行複核。本文不構成任何投資或採購建議。




發表迴響