mattpocock/skills 厳選ガイド:AI Agent Fleet で実際に使っている Claude Code Skills 5選
Claude に「先にテストを書いて、それから実装して」と指示する。Claude は「わかりました、先にテストを書きます」と答える。戻ってみると、実装が完成していて、最後にいくつかの happy path テストが追加されているだけ。問題は Claude の理解力ではない。ワークフローに phase gate がないことだ。
mattpocock/skills は 2026 年 4 月末の公開後に急成長し、2026 年 8 月 30 日時点で約 241K stars に達している(MIT license)。AI に構造化された作業ルールを与え、Red テストが失敗する前に Green の実装へ進まないよう導く。本記事では agent fleet での運用経験から、現在も上流 repo にある 5 つの skills と再利用できる workflow chain を紹介する。
TL;DR
- Skills はより良いプロンプトではなく、phase gate 付きのワークフローモジュール
- 厳選 5 つ:
tdd、to-spec、to-tickets、grill-me、implement - インストール:
npx skills@latest add mattpocock/skills、5 分で完了 - 推奨チェーン:grill-me → to-spec → to-tickets → implement。implement が合意した境界で tdd を使う
- Skills は再利用可能な手順を担い、必ず実行すべき検査は hooks や CI に置く
なぜ Claude は「先にテストを書いて」を無視するのか
Claude Code で開発している人なら、ほぼ全員がこの場面に遭遇している。プロンプトに「TDD で、先にテストを書いて」と明記する。Claude も「了解、先にテストを書きます」と返答する。しかし実際には、先に機能を実装してからテストを後付けすることが多い。
根本原因は Claude の理解力不足ではない。プロンプトレベルの指示は本質的に「提案」だということだ。Claude は複雑なタスク処理時、最も効率的と判断したパスで行動する。言語モデルにとって、先に実装してからテストを導出する方が「自然な」順序だ。プロンプトは nudge(軽い促し)であって、gate(門)ではない。
TDD skill はまさにこの問題を解決する。Red フェーズで失敗するテストを生成し、テストが実際に失敗してから、初めて Green フェーズ(実装)の開始が許可される構造的 phase gate を定義する。prompt nudge から structural enforcement への本質的な転換だ。
Skills の位置づけ:4層アーキテクチャ
Skills を選ぶ前に、Claude Code の 4 層構造を理解する必要がある。間違った層に配置するのが、多くの人が躓く出発点だ。
| 層 | メカニズム | 実行保証 | 適する用途 |
|---|---|---|---|
| CLAUDE.md | セッション毎に全量ロード | 確率的(probabilistic) | 永続的プロジェクト規約、200 行以内推奨 |
| Skills(SKILL.md) | オンデマンドロード(description 常駐、body は invoke 時のみ) | 確率的(probabilistic) | 再利用可能なワークフローモジュール |
| Subagents | 独立コンテキストの分離ワーカー | 決定的スコープ分離 | 並列実行やコンテキスト分離が必要なタスク |
| Hooks | ライフサイクルイベントの Shell scripts | 完全に決定的(deterministic) | 例外なし強制:フォーマットチェック、lint、テスト |
重要な洞察:CLAUDE.md が約 200 行を超えると、Claude はノイズに埋もれたルールを静かに無視し始める。 Marmelab のエンジニアチームがプロダクションで検証し、私たちも同じ問題に遭遇した。特定のルールが静かにスキップされ始め、原因の特定に時間がかかった。
Skills の遅延ロード設計はこれを解決する。常駐コンテキストには description(最大 1,536 文字)のみ。完全な SKILL.md body は /skill-name を呼び出した時だけロードされる。複雑なワークフローを CLAUDE.md から skills に移動し、CLAUDE.md を簡潔に保てる。
CLAUDE.md の三層優先度システムや
.claude/rules/パススコーピングについて詳しく知りたい場合は、Claude Code 設定ガイドを参照。本記事は「どのコミュニティ skills をインストールする価値があるか」に焦点を当てる。
mattpocock/skills が急成長した理由
Matt Pocock は著名な TypeScript 教育者だ。mattpocock/skills は 2026 年 8 月 30 日時点で約 241K stars、MIT license。開発者がプロンプトだけでなく、再現可能なワークフローも必要だと気づいた時期に登場した。
さらに重要なのは、Skills は Claude Code 専用ではないということ。Agent Skills(agentskills.io)は Claude Code、Cursor、Gemini CLI 間のクロス IDE 互換性を持つオープンスタンダードだ。インストールした skills は特定 IDE に縛られたプラグインではなく、クロスプラットフォームのワークフロープロトコルだ。
エコシステムも急速に形成されている:
- hesreallyhim/awesome-claude-code:skills、hooks、orchestrators、plugins を網羅する最も完全なコミュニティディレクトリ
- ComposioHQ/awesome-claude-skills:ロール別バンドル(例:"Web Wizard" = 5 skills のコンボ)
- alirezarezvani/claude-skills:232+ skills、エンジニアリング、マーケティング、コンプライアンス、C-level アドバイザリーまでカバー
これは 1 つの repo の流行ではない。AI ワークフローが「各自でプロンプトを書く」から「共有された標準化フローを使う」へのエコシステム移行だ。
Agent Fleet 厳選 5 Skills:実際に使っているもの
現在の mattpocock/skills と周辺エコシステムから、開発フローを組みやすい 5 つを選んだ:
| Skill | コマンド | コア動作 | 適用場面 |
|---|---|---|---|
| tdd | /tdd | Phase-gated TDD:Red 失敗必須 → Green 許可 → minimal implementation 強制 | テストカバレッジが必要な全機能開発 |
| to-spec | /to-spec | 既存の会話を仕様にまとめ、設定済みの issue tracker に公開 | 明確になった会話を実行可能な仕様へ変換 |
| to-tickets | /to-tickets | 仕様を依存関係付き tracer-bullet tickets に分解 | 大機能を担当可能な単位へ分割 |
| grill-me | /grill-me | 徹底的な decision-tree 質問、全分岐に明確な回答があるまで | コードを書く前に曖昧なアイデアを問い詰める |
| implement | /implement | 仕様または tickets を実装し、合意した境界で TDD、最後に code review | 仕様から検証済み実装まで進める |
私たちの agent fleet も、戦略タスク → 作業分解 → 分離実行 → 完了確認という形で動く。to-spec → to-tickets → implement も同じ構造で、mattpocock は各工程を呼び出せる skill としてまとめている。
TDD Skill 詳解:Phase Gate の意味
TDD skill は mattpocock/skills で最もインパクトの高い単一 skill だ。コアメカニズム:
1. Red Phase(失敗テストを書く):Skill が Claude に、実行して失敗するテストを書くよう指示する。この「失敗」はバグではなく設計通り。実装が存在しない段階では、テストは失敗すべきだ。
2. Green Phase(minimal implementation):Red テストが失敗を確認してから初めて、実装フェーズが開始される。Skill は「テストを通す最小限のコードだけを書く」を強制する。
3. Subagent 分離:TDD skill は context: fork を使用し、テスト記述 agent と実装 agent を別々のコンテキストで動かす。同一コンテキストが「テストの期待値」と「実装方法」の両方を知っていると、Claude は Red をスキップして直接通るコードを書く傾向がある。これを防ぐ。
「Claude にテストを先に書いてと言う」との違い:プロンプトは提案(Claude は無視できる)、phase gate は構造(Red を通過しなければ Green は開始しない)。
Skills と hooks は別の問題を解く。skill はモデルが読める作業方法、hook は特定の lifecycle event で必ず走る script だ。危険な Git 操作の遮断や書き込み後の lint のように省略できない検査は、skill の自動起動だけに任せない。
Workflow Chain(手動連携):grill-me → to-spec → to-tickets → implement
単一 skill にも価値はあるが、複数をつなぐと開発パイプラインになる。自動では連鎖しないため、各ステップを意図的に起動する:
Step 1: /grill-me(要件明確化)
入力:曖昧なアイデア(「ダッシュボードを作りたい」)
出力:decision-tree 完了、全分岐に明確な回答
Step 2: /to-spec(構造化仕様)
入力:grill-me 会話の成果
出力:構造化した仕様を設定済みの issue tracker に公開
Step 3: /to-tickets(垂直スライス)
入力:公開済みの仕様
出力:依存関係を明示した tracer-bullet tickets
Step 4: /implement(各 ticket を実行)
入力:仕様または ticket set
出力:仕様に一致し、合意した境界の TDD と code review を通過したコード
このチェーンのロジックは私たちの fleet の日常運用と同一だ:strategy issue → タスク分解 → 分離実行 → 自動完了。違いは mattpocock が各ノードを標準化 skill としてパッケージ化し、誰でも npx インストール後すぐ使える点。
初回インストール後、/setup-matt-pocock-skills を実行して per-repo 設定(issue tracker、triage labels、docs パス)を行う。
Skills + Hooks コンボ:確率的実行から決定的実行へ
この記事で最も直感に反する部分:Skills は確率的(probabilistic)である。
SKILL.md がどれだけ完璧でも、Claude は複雑なタスク処理に集中している時、skill の指示をスキップする可能性がある。これはバグではなく言語モデルの本質だ。複数の目標間でトレードオフし、「タスク完了」の重みが「プロセス遵守」を上回ることがある。
Hooks は完全に決定的(deterministic)だ。Claude Code のライフサイクルイベント(PreToolUse、PostToolUse など)にバインドされた shell scripts で、トリガー時に無条件実行される。
組み合わせ戦略:
- Skills が「何をするか」を定義:TDD の Red/Green phase gate、PRD の出力構造
- Hooks が「必ず実行される」を保証:各プロンプト前に TDD フェーズチェック、コード書き込み毎に lint 実行
mattpocock/skills の git-guardrails-claude-code が好例だ。hooks で危険な git 操作(force push、reset --hard)をインターセプトする。Claude に「やめて」と「提案」するのではなく、shell レベルで直接ブロックする。setup-pre-commit skill は Husky hooks を設定し、linting とテストを毎コミット前の必須ステップにする。
インストールとクイックスタート
# installer を起動し、skills と対象 Agent を選ぶ
npx skills@latest add mattpocock/skills
installer では対象 Agent とインストール範囲を選ぶため、配置先はその選択によって変わる。Claude Code のプロジェクト単位で入れた場合、一般的な配置先は .claude/skills/。セッションでは:
- インストール確認:Claude Code セッションで
/を入力し、skill リストに/tdd、/grill-me等が表示されることを確認。表示されない場合は.claude/skills/に対応するSKILL.mdファイルがあるか確認 /setup-matt-pocock-skillsを実行:issue tracker、triage labels、docs パスを設定- まず
/grill-meから始める:コード不要、純粋な会話で、通常のプロンプトとの違いを体感 - グローバル vs プロジェクトスコープ:
~/.claude/skills/に配置でグローバル(全プロジェクト共有)、.claude/skills/でプロジェクトレベル(repo に commit してチーム共有) context: forkとは:SKILL.md の frontmatter でこれを設定すると、skill は独立した subagent で実行され、メインセッションのコンテキストと完全に分離
コミュニティリソース:mattpocock/skills で足りない場合、hesreallyhim/awesome-claude-code が最も完全なディレクトリ、ComposioHQ/awesome-claude-skills にロール別バンドル、alirezarezvani/claude-skills に 232+ skills が収録されている。
リスク開示:正直な限界評価
私たちの agent fleet 運用経験から、インストール前に知っておくべきこと:
Skills は依然として確率的。 インストール ≠ 実行保証。複雑なタスク中、Claude は skill 指示をスキップする可能性がある。「入れれば安心」と期待せず、安定した実行には skills + hooks の二重レイヤーが必要。
上流の名称は変わる。 以前の to-prd、to-issues、caveman は現在の主要フローにはない。導入前に repo の README を確認すること。本記事は 2026 年 8 月 30 日時点の to-spec、to-tickets、implement に更新済み。
/grill-with-docs の時間コスト。 完全なインタビューフローに 15-20 分かかる。小機能や hotfix なら、直接コードを書く方が効率的。
forrestchang/andrej-karpathy-skills は mattpocock/skills の補完。 karpathy-skills は「何をすべきでないか」のガードレール(防御)、mattpocock/skills は「どう構造的にやるか」のワークフロー(攻撃)を定義。衝突しないので重ねて使える。
skill を強制機構と見なさない。 自動起動は description、タスクの文脈、実行環境に左右される。必須ルールは hooks、tests、CI に置く。
結論:「賢いが無秩序」から「エンジニアリング規律」へ
Skills は Claude の能力の問題ではなく、行動規律の問題を解決する。phase gate も構造化プロセスもなく何でもできる AI は、テストを絶対に走らせない天才エンジニアのようなものだ。出力は速いが、品質は予測不可能。
まず npx skills@latest add mattpocock/skills を実行し、/grill-me で操作に慣れる。その後 grill-me → to-spec → to-tickets → implement を試す。複数の AI エージェントを管理する場合は、herdr ターミナルマルチプレクサガイドで一つの画面から状態を確認できる。
FAQ
Skills と Claude Code のスラッシュコマンド(.claude/commands/)は同じものですか?
完全には同じではありません。.claude/commands/ はプロジェクトレベルのカスタムスラッシュコマンド(静的プロンプトテンプレート)です。Skills は SKILL.md 構造、frontmatter 定義、オプションの context: fork(subagent 分離実行)、そしてクロス IDE のオープンスタンダード(agentskills.io)を備えた完全なワークフローモジュールです。どちらも / で呼び出せますが、skills は共有可能、組み合わせ可能、クロスプラットフォームのプロダクションワークフローとして設計されています。
Agent Skills はオープンスタンダードですが、Cursor や Gemini CLI でも使えますか?
はい。Agent Skills(agentskills.io)は Anthropic 主導のオープンスタンダードで、Claude Code、Cursor、Gemini CLI 間のクロス IDE 互換性を持つよう設計されています。mattpocock/skills はこのスタンダードに準拠しているため、理論上は skills をサポートする任意の IDE で使用可能です。ただし実際の互換性は IDE バージョンによって異なるため、各 IDE の skills サポートドキュメントを確認してください。
この記事は役に立ちましたか?



