SuperAPI AI Directory

safe-build-operations

Deployment & operations

View repository

Updated 10-15 23:49

About this skill

Safe Build Operations Skill

This skill enables safe execution of build system operations with appropriate safeguards.

When to Use

  • Building firmware projects
  • Flashing devices
  • Monitoring serial output
  • Cleaning build artifacts
  • Running development workflows

Permitted Operations

Build Commands (containerized)

just build-all
just robocar::build-all
just robocar::build-main
just robocar::build-cam
just webserver::build
just i2s-audio::build
just telegram::build
just kids-audio::build
just xbox::build
just wifitest::build

Flash Commands (native — ports auto-detected)

just robocar::flash-main
just robocar::flash-cam
just webserver::flash
just i2s-audio::flash
just telegram::flash
just kids-audio::flash
just xbox::flash
just wifitest::flash

Monitor Commands (native)

just robocar::monitor-main
just robocar::monitor-cam
just webserver::monitor
just i2s-audio::monitor
just telegram::monitor
just xbox::monitor

Clean Commands

just clean-all
just robocar::clean-all
just webserver::clean
just telegram::clean

Development Workflows (build + flash + monitor)

just robocar::develop-main
just robocar::develop-cam
just webserver::develop
just telegram::develop

Code Quality

just lint
just lint-c
just lint-python
just format
just format-check

Safety Checks

Before Flashing ESP32-CAM

  1. Remind user about GPIO0 → GND requirement
  2. Port is auto-detected from tools/esp32.just — verify with just <module>::info
  3. Override with: PORT=/dev/... just <module>::flash

Before Clean Operations

  1. Confirm user intent (data loss prevention)
  2. List what will be cleaned

Port Auto-Detection

  • USB-serial adapters (CH340/CP2102): auto-detected via /dev/cu.usbserial-*
  • ESP32-S3 native USB: auto-detected by Espressif VID 0x303a
  • Override with PORT env var

Prohibited Operations

This skill does NOT allow:

  • Arbitrary shell commands
  • File deletion outside build directories
  • Network operations
  • Git operations (use dedicated commands)
  • System configuration changes

Usage Examples

Build a project

"Build the robocar main controller" → just robocar::build-main

Flash with specific port

"Flash the camera to /dev/ttyUSB0" → Remind about GPIO0, then PORT=/dev/ttyUSB0 just robocar::flash-cam

Full development workflow

"I want to work on the telegram bot" → just telegram::develop

Check code quality

"Run the linters" → just lint