跳至主要內容

篩選 Skills

Skillshare 提供三層過濾機制,控制哪些 Skills 要送到哪些 Targets。 請選擇符合你目標的情境。

只同步某個 Skill 到特定 Targets

在 Skill 的 SKILL.md frontmatter 中加入 metadata.targets(建議做法)。 該 Skill 將只會同步到列出的 Targets。

---
name: my-cursor-only-skill
metadata:
targets: [cursor]
---

支援 Target 別名 — claude 同時符合 claudeclaude-code

📖 SKILL.md targets 欄位 · Filtering Reference

從某個 Target 排除特定 Skills

在該 Target 上使用 --add-exclude,以 glob pattern 封鎖符合的 Skills:

skillshare target cursor --add-exclude "legacy-*"
skillshare sync

📖 Target 過濾旗標 · Filtering Reference

只允許特定 Skills 出現在某個 Target 上

使用 --add-include 建立白名單 — 只有符合的 Skills 會被同步:

skillshare target claude --add-include "team-*"
skillshare sync

📖 Target 過濾旗標 · Filtering Reference

從所有 Targets 隱藏 Skills

在你的 Source 目錄中放置一個 .skillignore 檔案。符合這些 pattern 的 Skills 會在探索階段就被排除在所有 Targets 之外:

~/.config/skillshare/skills/.skillignore
drafts/
experimental-*

新增或移除 pattern 最快的方式是使用 enable / disable 指令:

skillshare disable experimental-*   # 加入 .skillignore
skillshare enable experimental-* # 從 .skillignore 移除

你也可以在 skillshare list TUI 中按下 E 來切換某個 Skill 的開關。

📖 enable / disable · .skillignore 語法 · Filtering Reference

排除 tracked repo 內的 Skills

在 tracked repo 目錄內放置一個 .skillignore。它只會影響該 repo 內的 Skills:

_team-repo/.skillignore
internal-only/*
validation-scripts

📖 Repo 層級的 .skillignore

僅限本機的覆寫規則

.skillignore.local 會附加在 .skillignore 之後 — 最後符合的規則生效。使用否定 pattern 可以在不修改共用檔案的情況下,於本機取消忽略某些 Skills:

_team-repo/.skillignore.local
# 該 repo 忽略了 private-*,但我需要自己的
!private-mine

不要 commit 這個檔案 — 把它加進 .gitignore

📖 .skillignore.local

該用哪一層?

如何驗證過濾結果

指令顯示內容
skillshare sync底部顯示被忽略的 Skill 數量與名稱
skillshare status --json完整的 .skillignore 統計資料(patterns、被忽略的 Skills、啟用中的檔案)
skillshare doctor健康檢查包含 .skillignore 的 pattern 數量與忽略數量
skillshare ui → Sync 頁面可摺疊的「Ignored by .skillignore」卡片並顯示徽章

另請參閱