Skip to content
Back to skills

K1 Firmware Ops

ASecurity

Build selected K1.node2 pattern(s), upload firmware to the ESP32-S3 over LAN, verify the web API/UI, capture artifacts, and draft release notes.

  • 666 stars
  • 0 votes
  • 0 copies
  • 3 views
  • Added February 9, 2026
devopsbashnoderailsapi

Works with

  • cli
  • api

Security analysis

A100/100

Scanned February 12, 2026

npx -y skills add majiayu000/claude-skill-registry --skill k1-firmware-ops --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of K1 Firmware Ops?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for K1 Firmware Ops
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/majiayu000-k1-firmware-ops/badge)](https://www.skillsdirectory.com/skills/majiayu000-k1-firmware-ops)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: k1-firmware-ops
description: Build selected K1.node2 pattern(s), upload firmware to the ESP32-S3 over LAN, verify the web API/UI, capture artifacts, and draft release notes.
---

# K1 Firmware Ops

## Purpose
Create a repeatable, end-to-end flow for K1.node2: **codegen → compile → OTA → API/UI QA → release notes**.

## Prerequisites
- PlatformIO CLI (`pio`) installed and on PATH.
- Node.js 18+ and npm installed.
- Playwright runtime installed (the steps below run `npx playwright install`).

## Config
Edit `tools/k1.config.json` in the repo root to match your setup:
```json
{
  "device_ip": "192.168.1.50",
  "ota_method": "arduino",
  "dashboard_path": "/",
  "pattern": "Twilight",
  "upload_port": "3232"
}
```

## Procedure (follow these steps in order)
1. **Build & Upload** (uses existing project scripts and/or PlatformIO):
   ```bash
   bash tools/k1_firmware_ops.sh --pattern "<PATTERN_NAME>" --ip "<DEVICE_IP>" --qa false
   ```
   - Artifacts land under `artifacts/<timestamp>/` (build log and metadata).

2. **Install QA deps** once:
   ```bash
   cd tools/qa/playwright
   npm ci
   npx playwright install
   cd ../../..
   ```

3. **Run API + UI tests** (captures JSON report + screenshots):
   ```bash
   bash tools/k1_firmware_ops.sh --pattern "<PATTERN_NAME>" --ip "<DEVICE_IP>" --qa true
   ```

4. **Generate release notes** (Markdown summary with links to artifacts):
   ```bash
   node tools/release/generate_release_notes.mjs
   ```

## Examples
- Rebuild and upload **Twilight** to `192.168.1.50` and run QA:
  ```bash
  bash tools/k1_firmware_ops.sh --pattern "Twilight" --ip "192.168.1.50" --qa true
  ```

- Build only (no QA), using `tools/k1.config.json` defaults:
  ```bash
  bash tools/k1_firmware_ops.sh
  ```

## Guardrails
- Treat IPs and Wi‑Fi credentials as secrets; do not commit secrets.
- Prefer ArduinoOTA unless an HTTP OTA endpoint is **documented and reachable**.
- If `/api/params` POST semantics differ from the tests, update `tools/qa/params.sample.json` and the tests accordingly.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.