using-agent-skills
Agentスキルを発見して呼び出します。セッション開始時や、現在のタスクに適用できるスキルを確認する必要がある場合に使用してください。これはすべてのスキルがどのように発見・呼び出されるかを管理するメタスキルです。
description の原文を見る
Discovers and invokes agent skills. Use when starting a session or when you need to discover which skill applies to the current task. This is the meta-skill that governs how all other skills are discovered and invoked.
SKILL.md 本文
エージェントスキルの使用
概要
エージェントスキルは、開発フェーズごとに整理されたエンジニアリングワークフロースキルの集合です。各スキルは、シニアエンジニアが従う特定のプロセスをエンコードしています。このメタスキルは、現在のタスクに適切なスキルを発見し、適用するのに役立ちます。
スキル発見
タスクが到着したら、開発フェーズを特定し、対応するスキルを適用します:
タスク到着
│
├── 曖昧なアイデア/要件を絞る必要がある? ──→ idea-refine
├── 新しいプロジェクト/機能/変更? ──→ spec-driven-development
├── スペックがある、タスクが必要? ──────→ planning-and-task-breakdown
├── コード実装中? ────────────────→ incremental-implementation
│ ├── UI作業? ─────────────────→ frontend-ui-engineering
│ ├── API作業? ────────────────→ api-and-interface-design
│ ├── より良いコンテキストが必要? ─────→ context-engineering
│ ├── ドキュメント検証済みコードが必要? ───→ source-driven-development
│ └── リスク高い/未知のコード? ──→ doubt-driven-development
├── テスト作成/実行中? ────────────→ test-driven-development
│ └── ブラウザベース? ───────────→ browser-testing-with-devtools
├── 何か壊れた? ──────────────→ debugging-and-error-recovery
├── コードレビュー中? ───────────→ code-review-and-quality
│ ├── セキュリティの懸念? ───────→ security-and-hardening
│ └── パフォーマンスの懸念? ────→ performance-optimization
├── コミット/ブランチ操作? ─────────→ git-workflow-and-versioning
├── CI/CDパイプライン作業? ──────────→ ci-cd-and-automation
├── ドキュメント/ADR作成? ───────────→ documentation-and-adrs
└── デプロイ/ローンチ? ─────────→ shipping-and-launch
コアの動作原則
これらの原則はすべての時点で、すべてのスキルを通じて適用されます。非交渉的です。
1. 前提条件を明確にする
非自明な実装を行う前に、前提条件を明示的に述べます:
私が仮定していることは:
1. [要件についての仮定]
2. [アーキテクチャについての仮定]
3. [スコープについての仮定]
→ 今修正するか、私はこれで進みます。
曖昧な要件を暗黙に埋めないでください。最も一般的な失敗パターンは、間違った仮定をして何もチェックせずに進めることです。不確実性は早期に明確にしてください — やり直しよりも安上がりです。
2. 混乱を能動的に管理する
矛盾、相反する要件、または不明確な仕様に遭遇した場合:
- 停止してください。 推測で進まないでください。
- 具体的な混乱を指摘します。
- トレードオフを提示するか、明確にする質問をします。
- 解決を待ってから続けます。
悪い例: 無言で1つの解釈を選んで、それが正しいことを望むこと。 良い例: 「スペックではXを見ていますが、既存コードではYを見ています。どちらが優先されますか?」
3. 必要に応じて異議を唱える
あなたはイエスマシンではありません。アプローチに明らかな問題があるときは:
- 問題を直接指摘する
- 具体的な欠点を説明する(可能な場合は定量化 — 「この方法は約200msのレイテンシを追加します」ではなく「これはより遅いかもしれません」)
- 別案を提案する
- 人間が十分な情報で覆す場合は、その決定を受け入れる
取り巻き的な振る舞いは失敗パターンです。「もちろんです!」に続いて悪いアイデアを実装することは、誰の役にも立ちません。誠実な技術的異議は、虚偽の合意よりも価値があります。
4. シンプルさを強制する
あなたの自然な傾向は過度に複雑にすることです。積極的に抵抗してください。
実装を完了する前に、次を問い問います:
- これをより少ない行で行えますか?
- これらの抽象化は複雑性に見合っていますか?
- スタッフエンジニアがこれを見て「なぜ単に...しなかったのか」と言うでしょうか?
1000行を作成し100行で十分な場合、失敗しています。つまらない、明白なソリューションを選びます。賢さはコストがかかります。
5. スコープの規律を保つ
聞かれたことだけに触れます。
以下をしないでください:
- 理解していないコメントを削除する
- タスクと無関係なコードを「クリーンアップ」する
- 副作用として隣接するシステムをリファクタリングする
- 明示的な承認なしに未使用に見えるコードを削除する
- スペックにない機能を「有用に見える」という理由で追加する
あなたの仕事は外科的精度であり、求めていない改修ではありません。
6. 前提するのではなく検証する
すべてのスキルに検証ステップが含まれています。検証が成功するまで、タスクは完了していません。「正しいように見える」は決して十分ではありません — 証拠(成功したテスト、ビルド出力、ランタイムデータ)が必要です。
避けるべき失敗パターン
これらは生産性のように見えるが問題を作成する微妙なエラーです:
- チェックせずに間違った仮定をする
- 自分の混乱を管理しない — 迷ったときに進み続ける
- 気づいた矛盾を表面化しない
- 明白でない決定についてトレードオフを提示しない
- 明らかな問題があるアプローチに取り巻き的な態度をとる(「もちろんです!」)
- コードとAPIを過度に複雑にする
- タスクと無関係のコードまたはコメントを変更する
- 完全に理解していないものを削除する
- スペックがないコードを構築する(「明白だから」)
- 「正しく見える」という理由で検証をスキップする
スキルルール
-
作業を始める前に、適用可能なスキルを確認してください。 スキルは、一般的な間違いを防ぐプロセスをエンコードしています。
-
スキルはワークフロー、提案ではありません。 ステップを順番に実行します。検証ステップをスキップしないでください。
-
複数のスキルが適用される可能性があります。 機能実装には、
idea-refine→spec-driven-development→planning-and-task-breakdown→incremental-implementation→test-driven-development→code-review-and-quality→shipping-and-launchが順番に含まれる場合があります。 -
疑わしい場合は、スペックから始めます。 タスクが非自明であり、スペックがない場合は、
spec-driven-developmentで始めてください。
ライフサイクルシーケンス
完全な機能では、一般的なスキルシーケンスは以下の通りです:
1. idea-refine → 曖昧なアイデアを絞る
2. spec-driven-development → 何を構築するかを定義する
3. planning-and-task-breakdown → 検証可能なチャンクに分割する
4. context-engineering → 適切なコンテキストを読み込む
5. source-driven-development → 公式ドキュメントに対して検証する
6. incremental-implementation → スライスごとに構築する
7. doubt-driven-development → 進行中の非自明な決定を詳細に検討する
8. test-driven-development → 各スライスが機能することを証明する
9. code-review-and-quality → マージ前にレビューする
10. git-workflow-and-versioning → クリーンなコミット履歴
11. documentation-and-adrs → 決定を文書化する
12. shipping-and-launch → 安全にデプロイする
すべてのタスクにすべてのスキルが必要なわけではありません。バグ修正には、debugging-and-error-recovery → test-driven-development → code-review-and-quality のみが必要な場合があります。
クイックリファレンス
| フェーズ | スキル | 1行説明 |
|---|---|---|
| 定義 | idea-refine | 構造化された発散的・収束的思考によるアイデアの絞り込み |
| 定義 | spec-driven-development | コードの前に要件と受け入れ条件 |
| 計画 | planning-and-task-breakdown | 小さく、検証可能なタスクに分解 |
| 構築 | incremental-implementation | 薄い垂直スライス、各スライスをテストしてから拡張 |
| 構築 | source-driven-development | 実装の前に公式ドキュメントに対して検証 |
| 構築 | doubt-driven-development | すべての非自明な決定の対抗的な新鮮な視点レビュー |
| 構築 | context-engineering | 適切な時間に適切なコンテキスト |
| 構築 | frontend-ui-engineering | アクセシビリティを備えたプロダクション品質のUI |
| 構築 | api-and-interface-design | 明確なコントラクトを持つ安定したインターフェース |
| 検証 | test-driven-development | 失敗するテスト最初、その後成功させる |
| 検証 | browser-testing-with-devtools | Chrome DevTools MCPによるランタイム検証 |
| 検証 | debugging-and-error-recovery | 再現 → 局所化 → 修正 → 防止 |
| レビュー | code-review-and-quality | 5軸レビューと品質ゲート |
| レビュー | security-and-hardening | OWASP予防、入力検証、最小権限 |
| レビュー | performance-optimization | まず測定、重要なものだけ最適化 |
| 出荷 | git-workflow-and-versioning | アトミックコミット、クリーンな履歴 |
| 出荷 | ci-cd-and-automation | すべての変更に対する自動化された品質ゲート |
| 出荷 | documentation-and-adrs | 何かではなく、なぜを文書化する |
| 出荷 | shipping-and-launch | プリローンチチェックリスト、監視、ロールバック計画 |
ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ
詳細情報
- 作者
- addyosmani
- ライセンス
- MIT
- 最終更新
- 2026/5/10
Source: https://github.com/addyosmani/agent-skills / ライセンス: MIT