skills/.system/guicedee-cerial/SKILL.md
Lifecycle-aware serial port connectivity for GuicedEE using jSerialComm and Vert.x 5: @Named CerialPortConnection injection by port number, CRTP-fluent configuration, automatic reconnect with exponential backoff, idle monitoring, MicroProfile Health reporting, status lifecycle (12 states), message-delimited reads, per-port logging, and optional OpenTelemetry tracing. Use when connecting to serial ports, configuring baud rate and flow control, handling serial data, or monitoring serial device health.
npx skillsauth add guicedee/ai-rules guicedee-cerialInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Lifecycle-aware serial port connectivity for GuicedEE using jSerialComm and Vert.x 5.
Inject @Named CerialPortConnection singletons by port number, configure with CRTP-fluent setters, and let the framework handle connection lifecycle, idle monitoring, automatic reconnect with exponential backoff, MicroProfile Health reporting, and optional OpenTelemetry tracing.
com.guicedee:cerial dependency.@Inject @Named("1")
private CerialPortConnection connection;
connection.setBaudRate(BaudRate.$9600)
.setDataBits(DataBits.$8)
.setParity(Parity.None)
.setStopBits(StopBits.$1)
.setFlowControl(FlowControl.None)
.connect();
// Write
connection.write("Hello, device!");
// Read (callback on Vert.x worker thread)
connection.setComPortRead((data, port) -> {
String message = new String(data).trim();
System.out.println("Received: " + message);
});
module-info.java:
module my.app {
requires com.guicedee.cerial;
opens my.app.serial to com.google.guice;
}
| Method | Default | Values |
|---|---|---|
| setBaudRate() | BaudRate.$9600 | $300 to $256000 |
| setDataBits() | DataBits.$8 | $5, $6, $7, $8 |
| setParity() | Parity.None | None, Odd, Even, Mark, Space |
| setStopBits() | StopBits.$1 | $1, $1_5, $2 |
| setFlowControl() | FlowControl.None | None, RtsCtsIn, RtsCtsOut, XonXoffIn, XonXoffOut |
12 states grouped into Exception, Transitional, and Active sets:
Silent, Running, Logging, SimulationOpening, OperationInProgress, FileTransferOffline, Missing, Failed, InUse, GeneralExceptionsetInitialReconnectDelaySeconds(), setMaxReconnectDelaySeconds()CerialIdleMonitor detects silent connections via Vert.x periodic timer. Status transitions to Silent when idle beyond threshold.
CerialHealthCheck implements @Liveness, @Readiness, @Startup and reports status of all active connections (requires health module).
requires com.guicedee.cerial;.@Named("0") through @Named("999") singletons.opens to com.google.guice.provides needed.IGuicePreDestroy closes all open ports.development
Install Codex skills into $CODEX_HOME/skills from a curated list or a GitHub repo path. Use when a user asks to list installable skills, install a curated skill, or install a skill from another repo (including private repos).
tools
Guide for creating effective skills. This skill should be used when users want to create a new skill (or update an existing skill) that extends Codex's capabilities with specialized knowledge, workflows, or tool integrations.
development
WebAwesome icon integration for JWebMP — modern, open-source icon library. Provides 1,500+ icons with solid/regular styles, sizing, rotation, animation, and CSS utilities. Drop-in FontAwesome alternative with fresh designs. Use when working with WebAwesome icons, modern icon designs, or as FontAwesome alternative in JWebMP applications.
development
WebAwesome Pro integration for JWebMP with premium icons and features. Extends jwebmp-webawesome with additional styles, premium icons, and advanced features. Use when working with WebAwesome Pro icons or premium WebAwesome features in JWebMP applications.