Agent Skills by ALSEL
Anthropic Claudeセキュリティ⭐ リポ 0品質スコア 50/100

php-best-practices

PHP 8.x のモダンなパターン、PSR 標準、SOLID 原則に基づいてコードを評価します。PHPコードのレビューや型安全性の確認、コード品質の監査、ベストプラクティスの遵守確認に活用してください。「PHPをレビュー」「PHPコードを確認」「PHPを監査」「PHPのベストプラクティス」などの指示で起動します。

description の原文を見る

PHP 8.x modern patterns, PSR standards, and SOLID principles. Use when reviewing PHP code, checking type safety, auditing code quality, or ensuring PHP best practices. Triggers on "review PHP", "check PHP code", "audit PHP", or "PHP best practices".

SKILL.md 本文

PHP ベストプラクティス

PHP 8.x の最新パターン、PSR標準、型システムのベストプラクティス、SOLID原則。クリーンで保守性の高い PHP コードを書くための 51 個のルールが含まれています。

ステップ 1: PHP バージョンの検出

助言を提供する前に、必ずプロジェクトの PHP バージョンを確認してください。 機能は 8.0 〜 8.5 で大きく異なります。プロジェクトのバージョンに存在しない構文は決して提案しないでください。

composer.json で必要な PHP バージョンを確認してください:

{ "require": { "php": "^8.1" } }   // -> 8.1 以下のルール
{ "require": { "php": "^8.3" } }   // -> 8.3 以下のルール
{ "require": { "php": ">=8.4" } }  // -> 8.4 以下のルール

また、実行時のバージョンも確認してください:

php -v   # 例:PHP 8.3.12

バージョン別の機能可用性

機能バージョンルールプレフィックス
Union型、match、nullsafe、名前付き引数、コンストラクタプロモーション、属性8.0+type-modern-
Enum、readonlyプロパティ、交差型、ファーストクラスコーラブル、never、ファイバー8.1+modern-
Readonlyクラス、DNF型、true/false/null スタンドアロン型8.2+modern-
型付きクラス定数、#[\Override]json_validate()8.3+modern-
プロパティフック、非対称可視性、#[\Deprecated]、括弧なしのnew8.4+modern-
パイプ演算子 |>8.5+modern-

検出されたバージョンで利用可能な機能のみを提案してください。 ユーザーがアップグレードや新しい機能について質問する場合は、各バージョンで利用可能になる機能を説明してください。

適用する場合

以下の場合にこのガイドラインを参照してください:

  • PHP コードを作成または確認する場合
  • クラスとインターフェースを実装する場合
  • PHP 8.x の最新機能を使用する場合
  • 型安全性を確保する場合
  • PSR 標準に従う場合
  • デザインパターンを適用する場合

ルールのカテゴリ(優先度順)

優先度カテゴリ影響プレフィックスルール数
1型システム重大type-9
2PHP 最新機能重大modern-16
3PSR 標準psr-6
4SOLID 原則solid-5
5エラーハンドリングerror-5
6パフォーマンスperf-5
7セキュリティ重大sec-5

クイックリファレンス

1. 型システム(重大) — 9 ルール

  • type-strict-mode - すべてのファイルで厳密型宣言
  • type-return-types - 常に戻り値の型を宣言
  • type-parameter-types - すべてのパラメータに型を付ける
  • type-property-types - クラスプロパティに型を付ける
  • type-union-types - Union型を効果的に使用
  • type-intersection-types - 交差型を使用
  • type-nullable-types - Nullable型を適切に処理
  • type-void-never - 適切な戻り値の型に void/never を使用
  • type-mixed-avoid - 可能な場合は mixed 型を避ける

2. PHP 最新機能(重大) — 16 ルール

8.0+:

  • modern-constructor-promotion - コンストラクタプロモーション
  • modern-match-expression - switch ではなく match を使用
  • modern-named-arguments - 明確にするための名前付き引数
  • modern-nullsafe-operator - Nullsafe演算子(?->)
  • modern-attributes - メタデータの属性

8.1+:

  • modern-enums - 定数の代わりに Enum を使用
  • modern-enums-methods - メソッドとインターフェースを持つ Enum
  • modern-readonly-properties - 不変データのための readonly
  • modern-first-class-callables - ファーストクラスコーラブル構文
  • modern-arrow-functions - アロー関数(7.4+、8.1機能と相性良)

8.2+:

  • modern-readonly-classes - Readonlyクラス

8.3+:

  • modern-typed-constants - 型付きクラス定数(const string NAME = 'foo'
  • modern-override-attribute - #[\Override] で親メソッドのタイポをキャッチ

8.4+:

  • modern-property-hooks - ゲッター・セッターを置き換えるプロパティフック
  • modern-asymmetric-visibility - public private(set) による制御されたアクセス

8.5+:

  • modern-pipe-operator - パイプ演算子(|>)による関数型チェーン

3. PSR 標準(高) — 6 ルール

  • psr-4-autoloading - PSR-4 オートローディングに従う
  • psr-12-coding-style - PSR-12 コーディングスタイルに従う
  • psr-naming-classes - クラス命名規約
  • psr-naming-methods - メソッド命名規約
  • psr-file-structure - 1ファイル1クラス
  • psr-namespace-usage - 適切な名前空間の使用

4. SOLID 原則(高) — 5 ルール

  • solid-srp - 単一責任原則:変更の理由は1つ
  • solid-ocp - オープン/クローズ原則:修正ではなく拡張
  • solid-lsp - リスコフの置換原則:サブタイプは置換可能
  • solid-isp - インターフェース分離原則:小さく焦点を絞ったインターフェース
  • solid-dip - 依存関係逆転原則:抽象に依存

5. エラーハンドリング(高) — 5 ルール

  • error-custom-exceptions - 異なるエラー用の特定の例外を作成
  • error-exception-hierarchy - 例外を意味のある階層に整理
  • error-try-catch-specific - 一般的な\Exceptionではなく特定の例外をキャッチ
  • error-finally-cleanup - 確実なリソースクリーンアップのために finally を使用
  • error-never-suppress - @ エラー抑制演算子を絶対に使用しない

6. パフォーマンス(中) — 5 ルール

  • perf-avoid-globals - グローバル変数を避け、依存性注入を使用
  • perf-lazy-loading - 必要になるまで高コストな処理を遅延
  • perf-array-functions - 手動ループではなくネイティブ配列関数を使用
  • perf-string-functions - 正規表現ではなくネイティブ文字列関数を使用
  • perf-generators - 大規模データセット用のジェネレータを使用

7. セキュリティ(重大) — 5 ルール

  • sec-input-validation - すべての外部入力を検証とサニタイズ
  • sec-output-escaping - 出力をコンテキストに基づいてエスケープ(HTML、JS、URL)
  • sec-password-hashing - password_hash/verify を使用、MD5/SHA1 は禁止
  • sec-sql-prepared - すべての SQL クエリに準備済みステートメントを使用
  • sec-file-uploads - ファイルの型、サイズ、名前を検証;Web ルート外に保存

重要なガイドライン

詳細な例と説明については、ルールファイルを参照してください:

  • type-strict-mode.md - 厳密型宣言
  • modern-constructor-promotion.md - コンストラクタプロモーション
  • modern-enums.md - PHP 8.1+ メソッド付き Enum
  • solid-srp.md - 単一責任原則

主なパターン(クイックリファレンス)

<?php
declare(strict_types=1);

// 8.0+ コンストラクタプロモーション + readonly(8.1+)
class User
{
    public function __construct(
        public readonly string $id,
        private string $email,
    ) {}
}

// 8.1+ メソッド付き Enum
enum Status: string
{
    case Active = 'active';
    case Inactive = 'inactive';

    public function label(): string
    {
        return match($this) {
            self::Active => 'Active',
            self::Inactive => 'Inactive',
        };
    }
}

// 8.0+ Match 式
$result = match($status) {
    'pending' => 'Waiting',
    'active' => 'Running',
    default => 'Unknown',
};

// 8.0+ Nullsafe 演算子
$country = $user?->getAddress()?->getCountry();

// 8.3+ 型付きクラス定数 + #[\Override]
class PaymentService extends BaseService
{
    public const string GATEWAY = 'stripe';

    #[\Override]
    public function process(): void { /* ... */ }
}

// 8.4+ プロパティフック + 非対称可視性
class Product
{
    public string $name { set => trim($value); }
    public private(set) float $price;
}

// 8.5+ パイプ演算子
$result = $input
    |> trim(...)
    |> strtolower(...)
    |> htmlspecialchars(...);

出力形式

コードを監査する場合、結果を以下の形式で出力してください:

file:line - [category] Issue の説明

例:

src/Services/UserService.php:15 - [type] 戻り値の型宣言がありません
src/Models/Order.php:42 - [modern] switch の代わりに match 式を使用してください
src/Controllers/ApiController.php:28 - [solid] クラスが複数の責任を持っています

使用方法

詳細な説明については、個別のルールファイルを参照してください:

rules/modern-constructor-promotion.md
rules/type-strict-mode.md
rules/solid-srp.md

ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ

詳細情報

作者
asyrafhussin
リポジトリ
asyrafhussin/agent-skills
ライセンス
MIT
最終更新
不明

Source: https://github.com/asyrafhussin/agent-skills / ライセンス: MIT

関連スキル

Anthropic Claudeセキュリティ⭐ リポ 8,981

secure-code-guardian

認証・認可の実装、ユーザー入力の保護、OWASP Top 10の脆弱性対策が必要な場合に使用します。bcrypt/argon2によるパスワードハッシング、パラメータ化ステートメントによるSQLインジェクション対策、CORS/CSPヘッダーの設定、Zodによる入力検証、JWTトークンの構築などのカスタムセキュリティ実装に対応します。認証、認可、入力検証、暗号化、OWASP Top 10対策、セッション管理、セキュリティ強化全般で活用できます。ただし、構築済みのOAuth/SSO統合や単独のセキュリティ監査が必要な場合は、より特化したスキルの検討をお勧めします。

by Jeffallan
汎用セキュリティ⭐ リポ 1,982

claude-authenticity

APIエンドポイントが本物のClaudeによって支えられているか(ラッパーやプロキシ、偽装ではないか)を、claude-verifyプロジェクトを模した9つの重み付きルールベースチェックで検証できます。また、Claudeの正体を上書きしているプロバイダーから注入されたシステムプロンプトも抽出します。完全に自己完結しており、httpx以外の追加パッケージは不要です。Claude APIキーまたはエンドポイントを検証したい場合、サードパーティのClaudeサービスが本物か確認したい場合、APIプロバイダーのClaude正当性を監査したい場合、複数モデルを並行してテストしたい場合、またはプロバイダーが注入したシステムプロンプトを特定したい場合に使用できます。

by LeoYeAI
Anthropic Claudeセキュリティ⭐ リポ 2,159

anth-security-basics

Anthropic Claude APIのセキュリティベストプラクティスを適用し、キー管理、入力値の検証、プロンプトインジェクション対策を実施します。APIキーの保護、Claudeに送信する前のユーザー入力検証、コンテンツセーフティガードレールの実装が必要な場合に活用できます。「anthropic security」「claude api key security」「secure anthropic」「prompt injection defense」といったフレーズでトリガーされます。

by jeremylongshore
汎用セキュリティ⭐ リポ 699

x-ray

x-ray.mdプレ監査レポートを生成します。概要、強化された脅威モデル(プロトコルタイプのプロファイリング、Gitの重み付け攻撃面分析、時間軸リスク分析、コンポーザビリティ依存関係マッピング)、不変条件、統合、ドキュメント品質、テスト分析、開発者・Gitの履歴をカバーしています。「x-ray」「audit readiness」「readiness report」「pre-audit report」「prep this protocol」「protocol prep」「summarize this protocol」のキーワードで実行されます。

by pashov
汎用セキュリティ⭐ リポ 677

semgrep

Semgrepスタティック分析スキャンを実行し、カスタム検出ルールを作成します。Semgrepでのコードスキャン、セキュリティ脆弱性の検出、カスタムYAMLルールの作成、または特定のバグパターンの検出が必要な場合に使用します。重要:ユーザーが「バグをスキャンしたい」「コード品質を確認したい」「脆弱性を見つけたい」「スタティック分析」「セキュリティlint」「コード監査」または「コーディング標準を適用したい」と尋ねた場合も、Semgrepという名称を明記していなくても、このスキルを使用してください。Semgrepは30以上の言語に対応したパターンベースのコードスキャンに最適なツールです。

by wimpysworld
汎用セキュリティ⭐ リポ 591

ghost-bits-cast-attack

Java「ゴーストビッツ」/キャストアタック プレイブック(Black Hat Asia 2026)。16ビット文字が8ビットバイトに暗黙的に縮小されるJavaサービスへの攻撃時に使用します。WAF/IDSを回避して、SQLインジェクション、デシリアライゼーション型RCE、ファイルアップロード(Webシェル)、パストトラバーサル、CRLF インジェクション、リクエストスマグリング、SMTPインジェクションを実行できます。Tomcat、Spring、Jetty、Undertow、Vert.x、Jackson、Fastjson、Apache Commons BCEL、Apache HttpClient、Angus Mail、JDK HttpServer、Lettuce、Jodd、XMLWriterに影響し、WAFバイパスにより多くの「パッチ済み」CVEを再度有効化します。

by yaklang
本サイトは GitHub 上で公開されているオープンソースの SKILL.md ファイルをクロール・インデックス化したものです。 各スキルの著作権は原作者に帰属します。掲載に問題がある場合は info@alsel.co.jp または /takedown フォームよりご連絡ください。
原作者: asyrafhussin · asyrafhussin/agent-skills · ライセンス: MIT