メインコンテンツまでスキップ

初めてのSkillを最初から最後まで書く

中級

動作するSkillをゼロから構築し、それが起動することを実証しましょう。小さな「changelogエントリ」Skillを作ります — 汎用的で再利用可能なものです。

ステップ1 — フォルダを作成する

mkdir -p .claude/skills/changelog-entry

(すべてのプロジェクトにまたがる個人用Skillには ~/.claude/skills/… を使ってください。)

ステップ2 — SKILL.mdを書く

.claude/skills/changelog-entry/SKILL.md:

---
name: changelog-entry
description: Use when the user wants to turn recent git commits into a Keep a Changelog entry.
---

# Changelog Entry

When asked for a changelog entry:
1. Run `git log --oneline -20` to see recent commits.
2. Group them into Added / Changed / Fixed / Removed (Keep a Changelog style).
3. Write concise, user-facing bullets (not raw commit messages).
4. Output only the formatted entry.

description がトリガーです — 「Use when…」の形式で書くことで、Claude が適切なタイミングでこれを読み込みます。

ステップ3 — (任意)ヘルパースクリプトを追加する

Skillはスクリプトを同梱できます。決定論的なデータ収集を行いたい場合は、scripts/recent.sh を追加し、SKILL.md から参照してください:

#!/usr/bin/env bash
git log --oneline -20

ステップ4 — トリガーされることを実証する

セッションを開始して、こう言います: 「最近の作業のchangelogエントリを下書きして。」 Claude は意図を認識し、Skillを読み込み、その手順に従うはずです。起動しない場合は、おそらく description がそれをいつ使うかについて十分に具体的でないので、より鋭くしてください。

ステップ5 — 共有する

(他のものと一緒に)プラグインにまとめれば、チームが1ステップでインストールできます — あるいは AILmanac のskillパックに貢献しましょう。

落とし穴

  • 曖昧な description → 決してトリガーされない(または常にトリガーされる)。具体的にしましょう。
  • 1つのSkillに詰め込みすぎ → 1つの明確な仕事に絞りましょう。
  • 共有Skillにシークレット → 絶対にやめましょう。サードパーティコードのレビューを参照してください。

次へ