About ota-deployment-guardian
A skill for planning and troubleshooting OTA updates on deployed devices, including ESP32, Nano ESP32, and Uno R4 WiFi cases. It separates discovery from upload failures and foregrounds rollback and recovery planning to reduce the risk of losing remote access.
Key features
- 01Board-specific OTA guidance
- 02Network discovery and port troubleshooting
- 03Rollback and recovery planning
- 04Native ESP-IDF rollback guidance
- 05Verification of OTA availability
Use cases
- 01Troubleshooting a disappearing network upload port
- 02Keeping a remote device updateable after deployment
- 03Planning recovery before a high-risk OTA rollout
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ wedsamuel1230/ embedded-engineering-skills --skill ota-deployment-guardianAfter installing, type/ota-deployment-guardianin Claude Code to confirm it loaded.
Bundled files
References and scripts installed along with SKILL.md.
references/discovery-and-network-ports.mdnative-espidf-rollback.mdota-safe-sketch.mdrecovery-and-rollback.mdDetails
From the project READMEOTA Deployment Guardian
Use this skill when a device is updated remotely and losing the update path would be expensive.
Resources
references/ota-safe-sketch.md- minimum sketch-side OTA contract and guardrailsreferences/discovery-and-network-ports.md- IDE, mDNS, IP reachability, and disappearing network port triagereferences/recovery-and-rollback.md- rollout safety, rollback, and last-resort recovery planningreferences/native-espidf-rollback.md- native app slots, boot acceptance, stopped-output acknowledgement and rollback-compatible NVS/calibration schemas../../docs/board-support/uno-r4-family.md- Uno R4 Minima and Uno R4 WiFi board-family caveats
When to Use
Use this skill when the request involves:
- OTA uploads for ESP32, Nano ESP32, or Uno R4 WiFi
- network port appears briefly or disappears
- IDE can ping the device but cannot upload
- keeping a remote weather station or deployed board updateable
- avoiding self-bricking after an OTA deployment
Do not use this skill for ordinary bench USB uploads unless the user is clearly preparing for later OTA deployment.
Workflow
- Confirm the board family:
- Native ESP-IDF -> open
references/native-espidf-rollback.md; build intake stays withembedded-build-workflow, not Arduino sketch instructions. - ESP32 or Nano ESP32 -> open
references/ota-safe-sketch.md - Uno R4 WiFi -> also open
../../docs/board-support/uno-r4-family.md
- Native ESP-IDF -> open
- Separate discovery failures from sketch failures:
- ping works but network port disappears -> open
references/discovery-and-network-ports.md - OTA works once, then disappears after the new sketch runs -> verify the new
sketch still implements the OTA path in
ota-safe-sketch.md
- ping works but network port disappears -> open
- Before suggesting a rollout, check
references/recovery-and-rollback.mdfor recovery path, rollback strategy, and what must stay available over USB. - Treat core-version changes as a possible variable when OTA previously worked and later became unreliable.
Security And Maintenance Boundary
Use the router's connected-device security reference for secrets, signed images, dependency versions, staged rollout, rollback, vulnerability response, and decommissioning. This skill's board-specific OTA procedures do not prove that the device has secure boot, authenticated updates, or a recoverable field deployment; verify those controls on the exact target.
Core Rules
- Never assume OTA remains available after a new sketch unless the sketch keeps the OTA path alive.
- Distinguish reachability from OTA discovery. Ping success does not prove the IDE can discover or upload.
- Keep at least one recovery path in reserve for high-cost remote devices.
- For Uno R4 WiFi, keep board-family caveats explicit. Its WiFi side is not the same operational model as a plain ESP32 board.
Verification
- Confirm the sketch still connects to the intended network and services the OTA path after boot.
- Confirm whether the failure is discovery-only, upload-only, or full device reachability loss.
- For remote deployments, confirm the rollback or physical recovery plan before recommending an update.
- If board or core versions changed recently, capture the exact versions before concluding the failure is in user code.
Integration
- Pair with
arduino-cli-skillwhen the user needs command-line upload or port inspection. - Pair with
field-power-and-connectivity-triagerwhen the OTA path fails only off USB or in field power conditions. - Pair with
error-message-explainerwhen the OTA sketch itself does not build.
Shared Output Contract
Use the shared Arduino skill contract: state assumptions, required tools and versions, implementation steps, tests/evidence by proof stage, known limitations, and recovery/security notes.