mcpField
O
ota-deployment-guardian

ota-deployment-guardian

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

ota-deployment-guardian について

ESP32、Nano ESP32、Uno R4 WiFi など、導入済みデバイスの OTA 更新を計画・診断するスキルです。デバイス検出とアップロードの失敗を切り分け、遠隔アクセスを失うリスクに備えてロールバックと復旧計画を重視します。

主な機能

  1. 01ボード別の OTA ガイダンス
  2. 02ネットワーク検出とポートのトラブルシューティング
  3. 03ロールバックと復旧計画
  4. 04ネイティブ ESP-IDF のロールバック案内
  5. 05OTA 経路の利用可否確認

活用シーン

  1. 01ネットワークアップロードポートが消える問題の調査
  2. 02導入後も遠隔デバイスを更新可能に保つ
  3. 03リスクの高い OTA 展開前の復旧計画

インストール

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

$npx skills add https://github.com/wedsamuel1230/embedded-engineering-skills --skill ota-deployment-guardian

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

同梱ファイル

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

references/
discovery-and-network-ports.md
native-espidf-rollback.md
ota-safe-sketch.md
recovery-and-rollback.md

詳細

OTA デプロイガーディアン

デバイスをリモートで更新し、更新経路を失うと大きな損失につながる場合に、このスキルを使用します。

リソース

  • references/ota-safe-sketch.md - スケッチ側で最低限必要な OTA の契約とガードレール
  • references/discovery-and-network-ports.md - IDE、mDNS、IP 到達性、消失するネットワークポートのトリアージ
  • references/recovery-and-rollback.md - ロールアウトの安全性、ロールバック、最後の手段としての復旧計画
  • references/native-espidf-rollback.md - ネイティブアプリスロット、ブートの承認、出力停止の確認、ロールバック互換の NVS/キャリブレーションスキーマ
  • ../../docs/board-support/uno-r4-family.md - Uno R4 Minima と Uno R4 WiFi のボードファミリー固有の注意事項

使用する場面

次の内容を含む依頼で、このスキルを使用します。

  • ESP32、Nano ESP32、または Uno R4 WiFi の OTA アップロード
  • ネットワークポートが一時的に表示される、または消失する
  • IDE からデバイスに ping は通るが、アップロードできない
  • リモート気象ステーションや配備済みボードを更新可能な状態に保つ
  • OTA デプロイ後にデバイスが自ら使用不能になるのを防ぐ

通常のベンチでの USB アップロードには使用しないでください。ただし、後で OTA デプロイを行う準備を明らかに進めている場合は除きます。

ワークフロー

  1. ボードファミリーを確認します。
    • ネイティブ ESP-IDF -> references/native-espidf-rollback.md を開きます。ビルドの受付は Arduino スケッチの手順ではなく、embedded-build-workflow に従います。
    • ESP32 または Nano ESP32 -> references/ota-safe-sketch.md を開きます。
    • Uno R4 WiFi -> ../../docs/board-support/uno-r4-family.md も開きます。
  2. ディスカバリーの問題とスケッチの問題を切り分けます。
    • ping は通るがネットワークポートが消失する -> references/discovery-and-network-ports.md を開きます。
    • OTA は一度成功した後、新しいスケッチの実行後に接続できなくなる -> 新しいスケッチが ota-safe-sketch.md の OTA 経路を引き続き実装しているか確認します。
  3. ロールアウトを提案する前に、references/recovery-and-rollback.md を確認し、復旧経路、ロールバック戦略、USB 経由で利用可能な状態を維持する必要があるものを確認します。
  4. 以前は OTA が機能していたのに、後から不安定になった場合は、コアバージョンの変更を変数の候補として扱います。

セキュリティと保守の境界

シークレット、署名済みイメージ、依存関係のバージョン、段階的なロールアウト、ロールバック、脆弱性への対応、廃止については、ルーターの接続デバイス向けセキュリティリファレンスを使用します。このスキルに記載されたボード固有の OTA 手順だけでは、デバイスがセキュアブートや認証済み更新に対応していること、または現場でのデプロイから復旧できることは証明されません。対象のデバイスで、これらの制御を確認してください。

基本ルール

  • スケッチが OTA 経路を維持していない限り、新しいスケッチの後も OTA が利用可能だと決めつけてはいけません。
  • 到達性と OTA のディスカバリーを区別します。ping の成功は、IDE がデバイスを検出またはアップロードできることを証明しません。
  • リモートにあるデバイスで障害時の損失が大きい場合は、少なくとも 1 つの復旧経路を予備として確保します。
  • Uno R4 WiFi では、ボードファミリー固有の注意事項を明示します。WiFi 側の運用モデルは、一般的な ESP32 ボードと同じではありません。

検証

  • スケッチが意図したネットワークに接続し、起動後も OTA 経路に対応し続けることを確認します。
  • 障害がディスカバリーのみ、アップロードのみ、またはデバイスへの到達性全体の喪失のどれに該当するか確認します。
  • リモートデプロイでは、更新を推奨する前にロールバックまたは物理的な復旧計画を確認します。
  • ボードまたはコアのバージョンが最近変更された場合は、障害の原因がユーザーコードにあると結論付ける前に、正確なバージョンを記録します。

連携

  • コマンドラインでのアップロードまたはポートの確認が必要な場合は、arduino-cli-skill と組み合わせます。
  • OTA 経路が USB 接続時以外、または現場の電源条件でのみ失敗する場合は、field-power-and-connectivity-triager と組み合わせます。
  • OTA スケッチ自体がビルドできない場合は、error-message-explainer と組み合わせます。

共通出力規約

Arduino スキル共通規約に従ってください。前提条件、必要なツールとバージョン、実装手順、証明段階ごとのテスト/証拠、既知の制限事項、復旧/セキュリティに関する注意事項を明記します。

コメント