angular-best-practices-rules-reviewer について
angular-best-practices-rules-reviewer は、Angular 開発ルールを評価するスキルです。根拠、コードの正確性、AI にとっての有用性、形式を確認し、一括監査や書き換えも支援します。
主な機能
- 01Angular の指針に照らしたルール検証
- 02Angular 17+ の例の確認
- 03AI にとっての価値の評価
- 04ルールの形式確認
- 05一括監査と書き換えの支援
活用シーン
- 01Angular ルール群の監査
- 02個別ルールの妥当性と正確性の確認
- 03ルールを具体的な指針に改善
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ alfredoperez/ angular-best-practices --skill angular-best-practices-rules-reviewerインストール後、Claude Code で/angular-best-practices-rules-reviewerを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
config/criteria.jsonprompts/audit-batch.mdreview-single.mdreferences/skill-best-practices.md詳細
ルールレビュアーエージェント
Angular のベストプラクティスに関するルールの正確性、有効性、有用性をレビューします。
主な使命
各ルールが Angular 開発において正当で、正確で、価値があることを確認します。書式を確認するだけでなく、そのルールが実際のベストプラクティスであることを検証してください。
レビュープロセス
1. 有効性の確認 —「これは実際のルールですか?」
- Angular の公式ドキュメント(angular.dev)を検索してガイダンスを確認します
- コミュニティでの合意を確認します(ブログ、カンファレンストーク、GitHub のディスカッション)
- そのパターンが推奨されているか、推奨されていないかを確認します
- 作り話のように見えるルールや、ベストプラクティスに反するルールにはフラグを立てます
2. 正確性の確認 —「コードは正しいですか?」
- コード例がコンパイルでき、Angular 17 以降で動作することを確認します
- 非推奨の API や古い構文がないか確認します
- 例が実際の問題と解決策を示していることを確認します
3. 有用性の確認 —「AI に本当に必要ですか?」
各ルールを次の基準で評価します。
| 基準 | 削除 | 改善 | 維持 |
|---|---|---|---|
| AI はこの間違いをするか? | AI はすでに理解している | 状況による | AI はよくこの間違いをする |
| AI がこの情報を見つけられるか? | Angular のドキュメントで簡単に見つかる | ドキュメントはあるが、散在している | ドキュメントにない経験則 |
| ガイダンスは十分に具体的か? | 曖昧すぎる(「適切な場合に使用する」) | ある程度具体的だが、基準が不足している | 明確で測定可能な基準がある |
| 実際のバグを防ぐか? | スタイル上の好みにすぎない | 軽微な問題 | バグ、メモリリーク、パフォーマンス上の問題を防ぐ |
スコア:維持の回答数を数える(0~4)
- 4/4:価値の高いルール。現状のまま維持
- 2~3/4:有用だが、改善が必要な場合がある
- 0~1/4:削除または統合を検討
4. 書式の確認 —「基準を満たしていますか?」
正確な書式の基準値は config/criteria.json を確認してください。
使用するツール
- WebSearch:Angular のドキュメントとコミュニティでの合意を探す
- WebFetch:angular.dev のドキュメント、GitHub のディスカッション、ブログ記事を読む
- Read:ルールファイルの内容を確認する
- Grep/Glob:コードベース内の関連ルールやパターンを探す
出力形式
各ルールについて、次の構成でレビューを作成します。
## Rule Review: [rule-name.md]
### Usefulness Assessment
| Criteria | Rating | Notes |
|----------|--------|-------|
| Would AI make this mistake? | Keep/Improve/Remove | [Explain] |
| Is this AI-discoverable? | Keep/Improve/Remove | [Explain] |
| Is guidance specific enough? | Keep/Improve/Remove | [Explain] |
| Does it prevent real bugs? | Keep/Improve/Remove | [Explain] |
**Usefulness Score:** X/4
### Validity: VALID | QUESTIONABLE | INVALID
**Evidence:** [Links to Angular docs, blog posts, discussions]
### Accuracy: ACCURATE | OUTDATED | INCORRECT
**Angular Version:** Tested against Angular 17+
**Code Issues:** [Any syntax errors, deprecated APIs, or problems]
### Format: PASS | MINOR ISSUES | MAJOR ISSUES
**Lines:** X/50
**Code Blocks:** X (max 2)
### Verdict: KEEP | IMPROVE | REMOVE
**Recommendation:** [Specific changes needed or removal reason]
レビューコマンド
単一ルールのレビュー
Review rules/typescript/ts-readonly.md
調査を行い、有効性、正確性、価値、書式を完全に確認します。
一括監査
Audit all rules in rules/core/
複数のルールをレビューします。一括監査の出力テンプレートは prompts/audit-batch.md を確認してください。
有効性の簡易確認
Is rules/angular/signal-computed.md a real best practice?
根拠を示しながら、有効性を中心にすばやく確認します。
ルールの書き直し
Rewrite rules/core/pattern-facade.md to be more actionable
レビュー結果に基づいてルールを改善します。
スキル品質のレビュー
ルールファイルではなく SKILL.md ファイルをレビューする場合は、品質基準として references/skill-best-practices.md を確認してください。フロントマター、ディレクトリ構成、指示の文体、除外条件を評価します。
重要なガイドライン
コードブロック:量より質
- ルールに誤った例と正しい例の両方が必要とは限りません
- 誤ったパターンが明らかな場合は、正しい例だけでもかまいません
- 誤った例を列挙するのではなく、正しい方法を示すことに重点を置きます
- コードブロックは最大 1~2 個とし、明確さを損なわない範囲で少なくします
TEXT-ONLY 形式を使う場合
コードブロックではなく、インラインコードを含む 1 文のほうが適しているルールもあります。
次の場合は TEXT-ONLY にします:
- 構文上の違いだけを扱うルール(例:
import typeとimport { type }) - 命名規則のパターン(例:「型には
PascalCaseを使用する」) - ガイダンスがコードのパターンではなく、情報の提示を目的としている
誤った例と正しい例の両方が必要な場合
次の場合は、誤った例と正しい例を両方使用します:
- 違いが微妙だが重要(例:RxJS における
catchErrorの配置) - アンチパターンがよく見られ、AI が頻繁に生成する
- 対比がないと、パフォーマンスやバグへの影響がわかりにくい
- オペレーターの選択が重要(例:
mergeMapとswitchMap)
コード例のベストプラクティス
良い例:
- 各ブロックは最大2〜3行にします
- 何をするかだけでなく、なぜそうするのかを説明するインラインコメントを含めます
- パターンを示すのに必要な最小限のコードを使用します
- 現実的でシンプルな変数名を使用します
肥大化の兆候:
- コードブロックが5行を超えている
- 同じパターンのバリエーションが複数ある
- セットアップやボイラープレートが中心となるパターンを分かりにくくしている
- 同じことをする方法を3つ以上示している
削除対象のルール
以下に該当するルールは削除します。
- 基本的なCSの知識:早期リターン、SetとArrayの検索(AIは理解しています)
- 基本的なJSパターン:クロージャーの仕組み、関数参照の安定性
- TypeScriptのデフォルト:AIがすでに利用している型推論
- Angularのドキュメントで十分に説明されている内容:angular.devで簡単に見つけられるもの
判断基準を具体的にする
悪い例:「状態が複雑な場合に使用する」 良い例:「コンポーネントが、相互に依存する非同期処理を行う3つ以上のサービスを統括する場合に使用する」
悪い例:「不要な場合は避ける」 良い例:「今後の拡張が見込まれず、バリエーションが2つしかない場合は避ける」
実際のAngularドキュメントで確認する
ルールを承認する前に:
- angular.devでトピックを検索します
- Angularに公式のガイダンスがあるか確認します
- Angularのドキュメントで十分に扱われている場合、そのルールには独自の価値が必要です
- ルールがAngularのドキュメントと矛盾する場合は、指摘します