task-analyzer について
task-analyzer は、Agent 向けのタスク分析スキルです。タスクの目的・規模・種類を分類し、skills-index.yaml に基づいて関連スキルを選びます。メタ認知の質問と警告パターンも定めています。
主な機能
- 01タスクの根本目的の特定
- 02タスク規模と種類の推定
- 03タグに基づくスキル照合
- 04メタ認知質問の生成
- 05警告パターンの検出
活用シーン
- 01コード変更に使うスキルの選定
- 02実装前のタスク範囲分析
- 03計画やテスト用スキルの要否判断
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ shinpr/ claude-code-workflows --skill task-analyzerインストール後、Claude Code で/task-analyzerを入力して読み込まれたか確認します。
同梱ファイルreferences/skills-index.yaml
詳細
タスクアナライザー
メタ認知的なタスク分析とスキル選択のガイダンスを提供します。
スキルインデックス
利用可能なスキルのメタデータについては、skills-index.yaml を参照してください。
タスク分析プロセス
1. タスクの本質を理解する
表面的な作業を超えて、根本的な目的を特定します。
| 表面的な作業 | 根本的な目的 |
|---|---|
| 「このバグを修正する」 | 問題解決、根本原因の分析 |
| 「この機能を実装する」 | 機能の追加、価値の提供 |
| 「このコードをリファクタリングする」 | 品質の向上、保守性の改善 |
| 「このファイルを更新する」 | 変更管理、一貫性の維持 |
アクション:ユーザーのリクエストを、上記の「表面的な作業 → 根本的な目的」の表のいずれかの行に対応付けます。一致する行がない場合は、続行する前に根本的な目的を明示します。
2. タスクの規模を見積もる
| 規模 | ファイル数 | 指標 |
|---|---|---|
| 小規模 | 1-2 | 単一の関数/コンポーネントの変更 |
| 中規模 | 3-5 | 複数の関連コンポーネント |
| 大規模 | 6+ | 横断的な懸念事項、アーキテクチャへの影響 |
規模はスキルの優先度に影響します。
- 規模が「大規模」以上 → リポジトリの6+ファイル計画要件を維持するため、documention-criteriaを優先度「高」で含めます
- 規模が「大規模」以上で、タスクが実行可能なシステムの動作を変更する、または依存関係/フェーズ戦略を必要とする場合 → implementation-approachも優先度「高」で含めます
- 規模が「大規模」以上でも、タスクが調査、ドキュメントのみ、または機械的な作業である場合 → 実装戦略の判断が実際に必要な場合に限り、implementation-approachを含めます
- 規模が「小規模」 → タスク種別に必須のスキルのみを選択し、最大3つを目安とします。ただし、別のスキルが明示されたリスク、言語、または出力要件に直接関わる場合は、3つを超えてもかまいません
3. タスク種別を特定する
| 種別 | 特徴 | 主なスキル |
|---|---|---|
| 実装 | 新しいコード、機能 | coding-principles, testing-principles |
| 修正 | バグの解決 | ai-development-guide, testing-principles |
| リファクタリング | 構造の改善 | coding-principles, ai-development-guide |
| 設計 | アーキテクチャの判断 | documentation-criteria, implementation-approach |
| 品質 | テスト、レビュー | testing-principles, integration-e2e-testing |
4. タグベースのスキル照合
タスクの説明から関連するタグを抽出し、skills-index.yamlと照合します。
Task: "Implement user authentication with tests"
Extracted tags: [implementation, testing, security]
Matched skills:
- coding-principles (implementation, security)
- testing-principles (testing)
- ai-development-guide (implementation)
5. 暗黙の関連性
隠れた依存関係を考慮します。
| タスクに含まれる内容 | 追加するスキル |
|---|---|
| エラー処理 | デバッグ、テスト |
| 新機能 | 設計、実装、ドキュメント |
| パフォーマンス | プロファイリング、最適化、テスト |
| フロントエンド | typescript-rules, test-implement |
| API/統合 | integration-e2e-testing |
出力形式
skills-index.yamlのスキルメタデータを含む、構造化された分析を返します。
taskAnalysis:
essence: <string> # Fundamental purpose identified
type: <implementation|fix|refactoring|design|quality>
scale: <small|medium|large>
estimatedFiles: <number>
tags: [<string>, ...] # Extracted from task description
selectedSkills:
- skill: <skill-name> # From skills-index.yaml
priority: <high|medium|low>
reason: <string> # Why this skill was selected
# Pass through metadata from skills-index.yaml
tags: [...]
typical-use: <string>
size: <small|medium|large>
sections: [...] # All sections from yaml, unfiltered
注:セクションの選択(関連するセクションの決定)は、実際のSKILL.mdファイルを読んだ後に行います。
コンシューマーへのマッピング:rule-advisorはこの中間形式を使用し、最終スキーマへの変換を担当します。変換内容は、type → taskType(quality → quality-improvement、その他の値はそのまま)、tags → extractedTags、および選択したスキルのセクションを読み取って抽出した後のselectedSkills → selectedRulesです。以下の質問設計に基づいて生成されるmetaCognitiveQuestionsは、独立した最終フィールドとして維持します。
スキル選択の優先順位
- 必須 - タスク種別に直接関連
- 品質 - テストと品質保証
- プロセス - ワークフローとドキュメント
- 補足 - 参考情報とベストプラクティス
メタ認知のための質問設計
スキルの選択、検証、エスカレーションを変更し得る回答を導く質問を最大5つ生成します。これらの判断が変わらない場合は、質問を生成しません。
| タスクの種類 | 質問の焦点 |
|---|---|
| 実装 | 設計の妥当性、エッジケース、パフォーマンス |
| 修正 | 根本原因(5 Whys)、影響範囲、回帰テスト |
| リファクタリング | 現在の問題、目標状態、段階的な計画 |
| 設計 | 要件の明確さ、将来の拡張性、トレードオフ |
警告パターン
以下のパターンを検出して警告します。
| パターン | 警告 | 緩和策 |
|---|---|---|
| 大規模な変更を検出 | implementation-approach と組み合わせます | 戦略に沿ってフェーズに分割します |
| 実装タスクを検出 | testing-principles と組み合わせます | 最初から TDD を適用します |
| エラー修正の依頼 | ai-development-guide と組み合わせます | 修正前に 5 Whys を適用します |
| 計画のない複数ファイルにわたるタスク | documentation-criteria と組み合わせます | 最初に作業計画を作成します |