By wirenboard
Wiren Board controller skills — operate, configure, troubleshoot WB hardware via SSH and wb-cli.
Backup and restore of a Wiren Board controller — collect a tar.gz with configs, /etc, data, package lists, network settings. Use when user wants to save controller state, prepare for firmware flash or controller replacement, transfer settings, restore after factory reset, roll back. NOT for diagnostic archive (that's wb-troubleshooting).
Writing software FOR Wiren Board controllers — custom daemons (C++/Python/Go), MQTT bridges (Zigbee2MQTT → WB, Modbus → WB, custom hardware), MQTT-RPC services, wbdev cross-compilation, Debian packaging, /devices/X/controls/Y topic conventions. Use when user wants to write a daemon, integration bridge, or hardware adapter. NOT for wb-rules JS automation.
Reconfigure WB controller MOD slots via wb-hwconf-helper — switch a slot away from its default (usually RS-485) into raw UART (/dev/ttyMODx), bit-banged I2C (/dev/i2c-modN), CAN, SPI, or 1-Wire by loading the matching device-tree overlay module. Use when user wants to repurpose a MOD slot, expose UART/I2C on MOD pins for chip programming or a non-Modbus device, mentions wb-hwconf-helper, /etc/wb-hardware.conf, wbe2x-generic-uart, wbe2x-generic-i2c, or sees /dev/ttyMOD3 give `stty: Input/output error`.
Mosquitto MQTT broker administration on Wiren Board — listeners, users, ACLs, password files, TLS, bridges to external brokers. /etc/mosquitto/conf.d/. Use when user mentions MQTT broker config, mosquitto, MQTT auth/password, MQTT TLS, external MQTT bridge, broker not running, MQTT client can't connect from outside.
Network configuration on a Wiren Board controller — NetworkManager, wb-connection-manager, Ethernet/WiFi/4G/OpenVPN, static IP, failover priorities, DNS, hotspot. Use when user mentions networking, can't reach controller, no internet, ping fails, IP address, WiFi setup, 4G modem, VPN.
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
English · Русский
Two things in one repository, both built to help AI coding agents work with a Wiren Board controller:
wb-plc plugin — methodology skills for AI agents that drive a controller over SSH. Distributed as a Claude Code / GitHub Copilot CLI plugin and as plain markdown for any other agent. See Skills below.wb-cli package — Debian package installed on the controller. CLI with a stable JSON envelope contract, built so an agent can SSH in and call wb-cli --json <command> to get structured output. See wb-cli below.The two are independent: you can use the skills without the controller package, and vice versa.
The wb-plc/skills/ directory holds nine skills covering everything a remote agent needs to operate a WB controller: discovery, troubleshooting, network, MQTT, Modbus, automation rules, Zigbee, backup/restore, and writing custom software for the controller.
| Skill | What it covers |
|---|---|
wiren-board | Master entry: mDNS discovery, SSH conventions, wb-cli usage. Load first. |
wb-troubleshooting | Failed systemd units, disk, kernel/firmware mismatch, Docker, diagnostic archive. |
wb-serial | RS-485 / Modbus — custom templates, device configuration, bus diagnostics (CRC, timeouts). |
wb-rules | wb-rules JavaScript automation (ES5, virtual devices, cron, sensors). |
wb-mqtt-broker | Mosquitto MQTT broker — auth, ACLs, TLS, external bridges. |
wb-network | Ethernet, WiFi, 4G, OpenVPN, failover, DNS, hotspot. |
wb-zigbee | Zigbee via zigbee2mqtt (pairing, OTA, native vs Docker). |
wb-controller-backup | Full controller backup and restore. |
wb-dev | Writing software for WB — daemons, MQTT bridges, MQTT-RPC, cross-compilation, Debian packaging. |
Both agents read the same plugin manifest. One command to register the marketplace, one to install the plugin:
/plugin marketplace add wirenboard/wb-ai-skills
/plugin install wb-plc@wb-ai-skills
Updates: /plugin marketplace update wb-ai-skills then /plugin update wb-plc@wb-ai-skills.
Use install-skills.sh — it materializes the skills into the format each agent expects.
# Claude Code (skill format — directory with SKILL.md + side files)
./install-skills.sh claude # → ./.claude/skills/ (project-local)
./install-skills.sh claude --global # → ~/.claude/skills/ (user-wide)
# OpenCode (flat .md per agent, frontmatter rewritten: allowed-tools → mode: primary)
./install-skills.sh opencode # → ./.opencode/agents/
./install-skills.sh opencode --global # → ~/.config/opencode/agents/
# Any other agent (frontmatter trimmed to name + description)
./install-skills.sh manual --dest /path/to/agent/prompts
# Uninstall
./install-skills.sh uninstall claude --global
./install-skills.sh --help lists all flags and defaults.
PowerShell — copy the skill directories from wb-plc/skills/ to the agent's skills folder.
| Agent | Destination |
|---|---|
| Claude Code (user-wide) | %USERPROFILE%\.claude\skills\ |
| Claude Code (project) | .claude\skills\ inside the project |
| OpenCode (user-wide) | %APPDATA%\opencode\agents\ (flatten — extract SKILL.md as <name>.md, rewrite allowed-tools: to mode: primary) |
The wb-cli .deb also drops the skill markdowns into /usr/share/wb-cli/skills/ so an agent that SSH'd in can read them locally.
Command-line tool that runs on the controller, exposing controller state and operations through a stable JSON contract.
ssh root@wirenboard-A25NDEMJ wb-cli info
# serial_number A25NDEMJ
# release_name wb-2602
# hostname wirenboard-A25NDEMJ
# uptime_seconds 407130.59
ssh root@wirenboard-A25NDEMJ wb-cli --json info
# → {"data": {"serial_number": "A25NDEMJ", "release_name": "wb-2602", ...}}
ssh root@wirenboard-A25NDEMJ wb-cli --json dev wb-mr6c_2/K1 1
# → {"data": {"device": "wb-mr6c_2", "control": "K1", "value": "1", "ok": true}}
Code review automation
npx claudepluginhub wirenboard/wb-ai-skills --plugin wb-plcUltra-compressed communication mode. Cuts ~75% of tokens while keeping full technical accuracy by speaking like a caveman.
Frontend design skill for UI/UX implementation
Comprehensive UI/UX design plugin for mobile (iOS, Android, React Native) and web applications with design systems, accessibility, and modern patterns
Memory compression system for Claude Code - persist context across sessions
Marketing skills for AI agents — conversion optimization, copywriting, SEO, paid ads, ad creative, and growth
Standalone image generation plugin using Nano Banana MCP server. Generates and edits images, icons, diagrams, patterns, and visual assets via Gemini image models. No Gemini CLI dependency required.