Skills
Skills は再利用可能なプロンプトモジュールです。SKILL.md を読み込んで、特定ドメイン向けの指示をセッションへ追加できます。
概要
- ドメイン知識をスキルとして再利用できる
- プロジェクト間で同じ振る舞いを共有できる
- セッション単位で有効/無効を切り替えられる
SessionConfig の skillDirectories と disabledSkills を使って設定します。
基本的な使い方
skillDirectories はスキルを検出するための明示的なルートです。
enableConfigDiscovery の設定とは独立して利用できます。
親ディレクトリを指定すると、配下の各サブディレクトリにある SKILL.md が検出されます。
これは検出専用であり、エージェントに一般的なファイルアクセス権限を与えません。
スキルを無効化する
disabledSkills を使うと、ロード済みスキルの一部だけ無効化できます。
ディレクトリ構成
skillDirectories には skills/ のような親ディレクトリを指定します。
相対パスは、指定時の有効な workingDirectory を基準に一度だけ解決されます。
- 省略または
null:他の検出元を変更しません []:明示したSDKルートだけをクリアします
disabledSkills、ソース単位の無効化、Managed Settings は明示ルートから検出したスキルにも適用されます。
SKILL.md の形式
SKILL.md は Markdown で、YAML frontmatter を任意で付けられます。
name: スキル識別子(disabledSkillsで指定する名前)description: スキルの短い説明
name を省略した場合はディレクトリ名が使われます。
Custom Agents と組み合わせる
customAgents[].skills にスキル名を指定すると、対象エージェント起動時にそのスキル内容が事前に読み込まれます。
skills を省略した場合、エージェントにスキル内容は注入されません。
RPC での確認・操作
スキルの検出や有効化/無効化は RPC からも操作できます。ベストプラクティス
- スキルはドメインごとに分割する(
skills/security,skills/testingなど) - frontmatter に
nameとdescriptionを付ける - 競合する指示がある場合は
disabledSkillsで明示的に除外する - まず単体で動作確認してから複数スキルを組み合わせる