mcpField
W
wp-wpcli-and-ops

wp-wpcli-and-ops

github.com/jorgerosalクラウド・DevOps11260 回インストール21 週間前に更新
リポジトリ

wp-wpcli-and-ops について

WP-CLI を使う WordPress 運用ワークフロー向けのレビュースキルで、コマンド、スクリプト、手順書を確認します。対象範囲、副作用、可逆性、マルチサイト操作を重点的に扱います。

主な機能

  1. 01カスタム WP-CLI コマンドのレビュー
  2. 02コマンドの対象と環境範囲の確認
  3. 03破壊的操作の安全策の評価
  4. 04マルチサイト運用のレビュー
  5. 05高リスクなコマンドパターンの検出

活用シーン

  1. 01データベースの検索置換計画の評価
  2. 02保守スクリプトとデプロイ自動化のレビュー
  3. 03マルチサイト移行手順の確認

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/jorgerosal/wordpress-skills --skill wp-wpcli-and-ops

インストール後、Claude Code で/wp-wpcli-and-opsを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
automation-and-safety.md
command-patterns.md
multisite-and-search-replace.md
sample-maintenance-runbook.md
sample-wp-cli-command.php

詳細

WordPress WP-CLI と運用スキル

概要

WP-CLI を中心とする WordPress の運用ワークフローに関する体系的なレビューガイダンスです。**基本原則:**運用コマンドは、データに触れたり本番環境で作業を実行したりする前に、対象範囲、環境、副作用を明確にする必要があります。レビュー対象には、カスタム CLI コマンド、検索・置換の計画、マルチサイトの対象指定、cron とキャッシュの操作、メンテナンススクリプト、デプロイ時の自動化が含まれます。

使用するタイミング

次の場合に使用します:

  • カスタム WP-CLI コマンドやコマンドクラスをレビューする場合
  • wp コマンドを実行するシェルスクリプトやドキュメントを監査する場合
  • 安全な検索・置換や移行の操作を計画する場合
  • マルチサイトやネットワーク全体に関わる運用手順を確認する場合
  • cron、キャッシュ、エクスポート、インポート、メンテナンスのワークフローをレビューする場合

次の場合には使用しないでください:

  • 運用面がない一般的なプラグインアーキテクチャ
  • 運用ワークフローを伴わないパフォーマンス調整
  • Playground のみを対象としたセットアップフロー(wp-playground-development を使用してください)
  • 静的解析の設定(wp-phpstan-review を使用してください)

コードレビューワークフロー

  1. 運用対象を特定する

    • カスタム WP_CLI::add_command() の登録
    • wp コマンドの例を含むプロジェクトドキュメント
    • デプロイスクリプト、CI ジョブ、メンテナンススクリプト
    • マルチサイトの手順書や移行計画
  2. まず対象範囲と対象指定を確認する

    • コマンドはサイト固有、ネットワーク全体、または環境依存のいずれですか?
    • --url、--path、または明示的なテーブル指定が必要ですか?
    • ワークフローは現在のインストールに関する前提に依存していますか?
  3. 安全性と可逆性をレビューする

    • 可能な場合はドライランに対応している
    • 破壊的な手順では確認またはログ記録を行う
    • 高リスクな変更の前にバックアップ/エクスポート手順がある
    • 調査コマンドと変更コマンドが明確に区別されている
  4. コマンドの実装をレビューする

    • 入力検証と引数処理
    • 妥当なデフォルト値
    • 有用な成功/エラー出力
    • 読み取り専用コマンド中に隠れた書き込みがない
  5. 指摘事項を分類する

    • **CRITICAL:**安全策のない破壊的な操作、誤ったマルチサイトの対象範囲、本番環境に不適切な検索・置換、データ損失を引き起こす未検証の CLI 入力
    • **WARNING:**対象環境の指定が曖昧、脆弱なシェルの例、ドライランの欠如、不十分なログ記録、バッチ処理のない長時間タスク
    • **INFO:**エイリアスをドキュメント化できる、コマンドの UX を改善できる、または読み取りコマンドと書き込みコマンドを分離できる

ファイル種別ごとの確認項目

カスタム WP-CLI コマンド
  • CRITICAL:引数の検証や権限/コンテキストの確認がない書き込みコマンド
  • WARNING:コマンド名やシノプシスから副作用が伝わらない
  • WARNING:読み取り専用の調査と変更を同じコマンドで行っている
  • INFO:構造化出力や、より明確なステータスメッセージを返せる
検索・置換と DB 操作
  • CRITICAL:--dry-run や対象範囲の制限がない wp search-replace の例
  • CRITICAL:明示的な --network の検討やテーブル指定がないネットワーク全体の置換
  • WARNING:URL の置換時に --skip-columns=guid がない
  • WARNING:パフォーマンスへの注意喚起なしに正規表現による検索・置換を安易に使用している
マルチサイト運用
  • CRITICAL:ネットワーク全体の状態を操作する際に、現在のサイトを前提とするコマンド
  • WARNING:マルチサイトでサイト固有のタスクに --url の指定がない
  • WARNING:ロールバックに関する注記がないサイトの作成/削除ワークフロー
  • INFO:wp site / wp super-admin の影響をより明確にドキュメント化できる
自動化とメンテナンススクリプト
  • WARNING:より安全なカスタムコマンドが使える場面で wp eval/wp eval-file を使用している
  • WARNING:バッチ処理や進捗出力のない長時間のメンテナンスジョブ
  • INFO:調査、エクスポート、変更を個別の手順に分割できる

すばやく検出するための検索パターン(OPS-21)

次の rg コマンドを使うと、WP-CLI と運用ワークフローをすばやく見つけられます。

コマンドの検出
rg -n "WP_CLI::add_command|class .* extends WP_CLI_Command" . -g '*.php'
rg -n "\bwp [a-z0-9:-]+" . -g '*.{md,sh,yml,yaml,json}'
高リスクな変更
rg -n "wp search-replace|wp db reset|wp db drop|wp site delete|wp plugin deactivate" . -g '*.{md,sh,yml,yaml}'
rg -n "wp eval|wp eval-file" . -g '*.{md,sh,yml,yaml}'
マルチサイトとスケジュール設定
rg -n "wp site|wp super-admin|--network|--url=" . -g '*.{md,sh,php,yml,yaml}'
rg -n "wp cron|wp cache|wp transient" . -g '*.{md,sh,php,yml,yaml}'

参照ファイル

  • references/command-patterns.md - カスタムコマンドの設計、引数の処理、運用時の UX
  • references/multisite-and-search-replace.md - マルチサイトの範囲、wp site、安全な wp search-replace の使用方法
  • references/automation-and-safety.md - デプロイスクリプト、メンテナンスジョブ、バッチ処理、ロールバックの考え方
  • references/sample-wp-cli-command.php - 検証、ドライラン、バッチ処理を含むカスタムコマンドのサンプル
  • references/sample-maintenance-runbook.md - 調査、ドライラン、実行、検証の各段階を含むランブックのサンプル

出力形式(OPS-23)

各指摘について、以下を記載してください。

  1. 重大度:CRITICAL、WARNING、または INFO
  2. ファイル名と行番号
  3. 運用上のリスクの概要
  4. WP-CLI または実行時の運用で重要となる理由
  5. より安全な推奨パターン

問題が見つからなかった場合は、その旨を明確に伝え、ドライランの欠如、ログ記録の不備、ロールバックに関するドキュメントの不足など、残存する運用上の課題があれば記載してください。

コメント