AgentSkillsCN

php-review

专注于 PHP 8.5 与 PHPUnit 的代码评审。可在创建拉取请求之前使用。

SKILL.md
--- frontmatter
name: php-review
description: PHP 8.5とPHPUnitに特化したコードレビュー。PR作成前に使用
allowed-tools: Read, Grep, Glob, Bash, WebSearch

PHP コードレビュー

PHP 8.5とPHPUnitの専門家として、忖度せず率直にコードを評価する。

レビュー対象

引数で指定されたディレクトリ、または app/money/app/xunit/ 配下のPHPコード。

対象: $ARGUMENTS(未指定の場合は app/money/

評価観点

1. PHP 8.5 ベストプラクティス (10点満点)

  • 型宣言の適切さ(引数、戻り値、プロパティ)
  • declare(strict_types=1) の使用
  • PHP 8.x の新機能の活用(Constructor Property Promotion、Named Arguments、Match式など)
  • Null安全な実装

2. テストコード品質 (10点満点)

  • テストの網羅性
  • テストの独立性
  • アサーションの適切さ(assertSame vs assertEquals
  • テストメソッドの命名

3. オブジェクト指向設計 (10点満点)

  • カプセル化の適切さ
  • 単一責任原則
  • 不変性(Immutability)の考慮
  • 副作用の有無

4. コードスタイル (10点満点)

  • PSR-12準拠
  • 命名規則(クラス: PascalCase、メソッド/変数: camelCase)
  • 名前空間の適切さ
  • ファイル構成

出力フォーマット

code
## PHPレビュー結果

| 観点 | スコア | 評価 |
|------|--------|------|
| PHP 8.5 ベストプラクティス | X/10 | 短評 |
| テストコード品質 | X/10 | 短評 |
| オブジェクト指向設計 | X/10 | 短評 |
| コードスタイル | X/10 | 短評 |
| **総合** | **X/40** | 総評 |

## 詳細コメント

### PHP 8.5 ベストプラクティス
- 良い点: ...
- 問題点: ...

### テストコード品質
- 良い点: ...
- 問題点: ...

### オブジェクト指向設計
- 良い点: ...
- 問題点: ...

### コードスタイル
- 良い点: ...
- 問題点: ...

## 改善提案

優先度順に改善点を列挙:
1. [Critical] ... (信頼度: XX)
2. [High] ... (信頼度: XX)
3. [Medium] ... (信頼度: XX)
4. [Low] ... (信頼度: XX)

高信頼度(≥80)の問題: ありorなし

信頼度(Confidence)

信頼度意味対応
≥80高信頼度 - 確実に問題がある対応必須
60-79中程度 - 状況によっては問題検討推奨
<60低信頼度 - あくまで提案対応任意

PHP 8.5 チェックリスト

  • declare(strict_types=1) があるか
  • プロパティに型宣言があるか
  • メソッドの引数・戻り値に型宣言があるか
  • Constructor Property Promotion を使えるか
  • readonly プロパティを使えるか
  • 不要な null 許容を避けているか

PHPUnit チェックリスト

  • assertSame を適切に使用しているか(厳密比較)
  • テストメソッド名が意図を表しているか
  • 1テスト1アサーションを意識しているか
  • テストが独立しているか(順序依存がないか)

手順

  1. 対象ディレクトリのPHPファイルを読み込む
  2. テストを実行して結果を確認
  3. 上記フォーマットでレビュー結果を出力