From rtl-agent-team
Provides RTL refactoring policies: decision criteria, naming convention audits, equivalence proof requirements, escalation rules, and checklists for SystemVerilog/Verilog modules.
npx claudepluginhub babyworm/rtl-agent-team --plugin rtl-agent-teamThis skill uses the workspace's default tool permissions.
- Module >500 lines: consider splitting
Generates design tokens/docs from CSS/Tailwind/styled-components codebases, audits visual consistency across 10 dimensions, detects AI slop in UI.
Records polished WebM UI demo videos of web apps using Playwright with cursor overlay, natural pacing, and three-phase scripting. Activates for demo, walkthrough, screen recording, or tutorial requests.
Delivers idiomatic Kotlin patterns for null safety, immutability, sealed classes, coroutines, Flows, extensions, DSL builders, and Gradle DSL. Use when writing, reviewing, refactoring, or designing Kotlin code.
Refactoring plans MUST include naming convention audit:
i_/o_/io_ prefix (NOT suffix _i/_o) — flag violations for correctionclk (single domain) or {domain}_clk (multiple domains) — flag clk_i, clk_sysrst_n (single domain) or {domain}_rst_n (multiple domains) — flag rst_niu_ prefix — flag missing prefixgen_ prefix — flag missing prefixlogic only — flag any reg/wire usageCommon refactoring patterns:
data_i -> i_data, valid_o -> o_valid (suffix to prefix)clk_i -> clk or sys_clk (suffix clock to conformant name)rst_ni -> rst_n or sys_rst_n (suffix reset to conformant name)fifo_inst -> u_fifo (missing instance prefix)reg [7:0] data -> logic [7:0] data (reg to logic)When renaming ports, prefer sv-renamer (https://github.com/babyworm/sv-renamer) when installed:
# Dry-run preview
sv_renamer.py --dir rtl/ --recursive --prefix i_ --dry-run --report json
# Apply + verify equivalence
sv_renamer.py --dir rtl/ --recursive --prefix i_
sv_semantic_diff.py --before original/ --after rtl/ # formal equivalence check
If sv-renamer is not installed, use Grep to find ALL instantiation sites across the codebase and update them in the same task.
sv2v rtl/{module}/*.sv -o rtl/{module}/{module}_v2v.v
cd formal/ && sby -f {module}.sby # .sby must reference _v2v.v, not .sv
i_/o_/io_ prefix (NOT suffix _i/_o)clk or {domain}_clk — NOT clk_irst_n or {domain}_rst_n — NOT rst_niu_ prefix, generates: gen_ prefixreg/wire keywords — logic only