Agent skill

Rtl Specification Consistency Checker

by ArabelaTso in ArabelaTso/Skills-4-SE

Check behavioral consistency between high-level hardware specifications and RTL implementations.

Apache-2.0Auto-check passed

Install Rtl Specification Consistency Checker

skills CLI
$ npx skills add ArabelaTso/Skills-4-SE --skill rtl-specification-consistency-checker -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install ArabelaTso/Skills-4-SE rtl-specification-consistency-checker --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/ArabelaTso/Skills-4-SE.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/rtl-specification-consistency-checker .claude/skills/rtl-specification-consistency-checker && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
rtl-specification-consistency-checker
GitHub stars
253
Token cost
~2.3k tokens
SKILL.md length
760 words
Files
3 (incl. references)
Skills in repo
170
Repo updated
First seen
Licence
Apache-2.0

At a glance

Check behavioral consistency between high-level hardware specifications and RTL implementations.

  • Works in 7 steps: Parse and Understand Inputs → Extract Behavioral Requirements → Map Requirements to RTL → …
  • Asked to check RTL consistency
  • SKILL.md covers Overview, Consistency Checking Workflow, Report Structure and Common Verification Patterns, plus 3 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Rtl Specification Consistency Checker is an agent skill from ArabelaTso/Skills-4-SE. Check behavioral consistency between high-level hardware specifications and RTL implementations. Use when asked to check RTL consistency, verify RTL against spec, check hardware specification compliance, validate RTL implementation, find spec violations in RTL, check behavioral consistency, or when working with hardware designs that need verification against protocol specifications, timing requirements, or functional specifications in Verilog, VHDL, or SystemVerilog.

Its SKILL.md is about 2.3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 3 other files, including reference files (for example `references/common_violations.md` and `references/hdl_patterns.md`).

The repository describes itself as: A curated list of 180+ useful Claude Skills for Software Engineering and resources for customizing AI for SE workflows. The licence is Apache-2.0.

When your agent uses it

  • Asked to check RTL consistency
  • Verify RTL against spec
  • Check hardware specification compliance
  • Validate RTL implementation

Example prompts

  • “/rtl-specification-consistency-checker”

Workflow steps

7 steps, taken from the step headings in SKILL.md.

  1. Parse and Understand Inputs
  2. Extract Behavioral Requirements
  3. Map Requirements to RTL
  4. Check Consistency
  5. Classify Requirements
  6. Document Violations
  7. Generate Consistency Report

What it can do on your machine

Read from SKILL.md and the folder at commit 4f38503. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are verilog and vhdl).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Rtl Specification Consistency Checker loads about 2.3k tokens when it runs, and up to ~7.4k if it reads all its reference files. Until then it costs about 127 tokens; SKILL.md has 760 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~127
When it runs · the whole SKILL.md, loaded when a task matches
~2.3k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~7.4k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from ArabelaTso/Skills-4-SE at commit 4f38503, republished under its Apache-2.0 licence (© ArabelaTso). 760 words, ~2,264 tokens.

Download SKILL.mdSave it as .claude/skills/rtl-specification-consistency-checker/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.
name
rtl-specification-consistency-checker
description
Check behavioral consistency between high-level hardware specifications and RTL implementations. Use when asked to check RTL consistency, verify RTL against spec, check hardware specification compliance, validate RTL implementation, find spec violations in RTL, check behavioral consistency, or when working with hardware designs that need verification against protocol specifications, timing requirements, or functional specifications in Verilog, VHDL, or SystemVerilog.

RTL-Specification Consistency Checker

Overview

This skill enables systematic checking of behavioral consistency between high-level hardware specifications and RTL implementations. It extracts requirements from specifications, maps them to RTL logic, and classifies each requirement as satisfied, violated, underspecified, or uncheckable.

Consistency Checking Workflow

Follow this sequential process to check RTL-specification consistency:

1. Parse and Understand Inputs

Read and analyze both the specification and RTL code:

Specification Analysis:

  • Identify the format (natural language, tables, timing diagrams, protocol rules)
  • Extract all behavioral requirements
  • Note any assumptions or constraints
  • Identify ambiguous or incomplete sections

RTL Analysis:

  • Identify the HDL language (Verilog, VHDL, SystemVerilog)
  • Locate key modules and their interfaces
  • Identify state machines, registers, and control logic
  • Note clock domains and reset strategies
2. Extract Behavioral Requirements

Formalize each requirement from the specification:

Requirement Types:

Functional Requirements:

  • Input-output relationships
  • State transitions
  • Data transformations
  • Protocol sequences

Timing Requirements:

  • Setup/hold times
  • Latency constraints
  • Throughput requirements
  • Clock cycle counts

Safety Properties:

  • Invariants that must always hold
  • Forbidden states or transitions
  • Mutual exclusion constraints
  • Data integrity conditions

Liveness Properties:

  • Progress guarantees
  • Eventual responses
  • Fairness conditions

For each requirement, document:

  • Requirement ID
  • Description in natural language
  • Formalized property (if possible)
  • Source location in specification
  • Priority/criticality
3. Map Requirements to RTL

Identify RTL constructs corresponding to each requirement:

Signal Mapping:

  • Map specification signals to RTL signals
  • Identify relevant registers and wires
  • Note signal widths and types

Logic Mapping:

  • Identify modules implementing each requirement
  • Locate state machines and control logic
  • Find combinational and sequential logic blocks
  • Note line numbers and code locations

State Mapping:

  • Map specification states to RTL state encodings
  • Identify state registers and transition logic
  • Document state machine structure
4. Check Consistency

For each requirement, verify RTL behavior:

Verification Methods:

Static Analysis:

  • Check signal connectivity
  • Verify state machine completeness
  • Analyze control flow paths
  • Check for missing cases or conditions

Trace Analysis:

  • Construct example execution traces
  • Check if traces satisfy requirements
  • Look for counterexamples
  • Verify timing constraints

Pattern Matching:

  • Compare RTL patterns against specification patterns
  • Check for common implementation errors
  • Verify protocol compliance
5. Classify Requirements

Assign each requirement to one of four categories:

✅ Satisfied:

  • RTL correctly implements the requirement
  • All test cases pass
  • No violations found

❌ Violated:

  • RTL behavior contradicts the requirement
  • Counterexample exists
  • Clear mismatch identified

⚠️ Underspecified:

  • Specification is ambiguous or incomplete
  • Multiple valid interpretations exist
  • Missing details prevent verification

❓ Uncheckable:

  • Missing environmental assumptions
  • Depends on external components
  • Requires information not provided
6. Document Violations

For each violated requirement, provide detailed analysis:

Violation Report Structure:

Requirement ID: REQ-XXX
Status: ❌ VIOLATED

Description:
[What the requirement specifies]

RTL Location:
Module: [module_name]
File: [file_path]
Lines: [line_numbers]

Mismatch Explanation:
[Clear explanation of how RTL differs from spec]

Example Trace:
Cycle | Signal1 | Signal2 | State | Expected | Actual
------|---------|---------|-------|----------|-------
  0   |    0    |    1    | IDLE  |   IDLE   |  IDLE
  1   |    1    |    1    | IDLE  |   BUSY   |  IDLE  <- Violation
  2   |    1    |    0    | IDLE  |   DONE   |  IDLE

Root Cause:
[Analysis of why the violation occurs]

Suggested Fix:
[Proposed correction to RTL]
7. Generate Consistency Report

Produce a structured report with all findings:

Report Structure

Executive Summary
Total Requirements: X
✅ Satisfied: Y (Z%)
❌ Violated: A (B%)
⚠️ Underspecified: C (D%)
❓ Uncheckable: E (F%)

Critical Violations: G
Detailed Findings

For each requirement, include:

REQ-001: [Requirement Name]

Status: [✅/❌/⚠️/❓] Priority: [High/Medium/Low] Category: [Functional/Timing/Safety/Liveness]

Specification: [Requirement description from spec]

RTL Mapping:

  • Module: [module_name]
  • Signals: [signal_list]
  • Lines: [line_numbers]

Analysis: [Detailed consistency check results]

[If violated] Violation Details: [Explanation, trace, root cause, suggested fix]

[If underspecified] Clarification Needed: [What information is missing or ambiguous]

[If uncheckable] Missing Assumptions: [What additional information is required]


Show full SKILL.md (278 more words)Show less
Recommendations

Specification Improvements:

  • [List of specification clarifications needed]

RTL Fixes:

  • [List of required RTL corrections]

Verification Suggestions:

  • [Additional checks or formal verification recommendations]

Common Verification Patterns

Protocol Compliance

Specification Pattern: "When valid is asserted, data must remain stable until ready is asserted"

RTL Check:

verilog
// Look for:
always @(posedge clk) begin
    if (valid && !ready) begin
        // data should not change
        assert(data == $past(data));
    end
end

Violation Example: Data changes while valid=1 and ready=0

State Machine Verification

Specification Pattern: "System must transition from IDLE to BUSY when start signal is asserted"

RTL Check:

verilog
// Look for:
case (state)
    IDLE: if (start) next_state = BUSY;
    // Check if this transition exists
endcase

Violation Example: Missing transition or wrong next state

Timing Constraints

Specification Pattern: "Output must be valid within 3 clock cycles of input"

RTL Check:

  • Trace signal propagation through pipeline
  • Count register stages
  • Verify latency matches specification

Violation Example: Output appears after 4 cycles instead of 3

Reset Behavior

Specification Pattern: "All registers must reset to known values"

RTL Check:

verilog
// Look for:
always @(posedge clk or negedge rst_n) begin
    if (!rst_n) begin
        // Check all registers have reset values
    end
end

Violation Example: Register missing from reset logic

HDL-Specific Considerations

Verilog/SystemVerilog

Key Checks:

  • Blocking vs non-blocking assignments
  • Sensitivity list completeness
  • Latch inference (unintended)
  • Race conditions in always blocks
  • X-propagation issues

Common Patterns:

verilog
// State machine
always @(posedge clk) begin
    state <= next_state;
end

// Combinational logic
always @(*) begin
    case (state)
        // Check all states covered
    endcase
end
VHDL

Key Checks:

  • Process sensitivity lists
  • Signal vs variable usage
  • Incomplete case statements
  • Uninitialized signals
  • Clock edge detection

Common Patterns:

vhdl
-- Sequential process
process(clk, rst)
begin
    if rst = '1' then
        -- Reset logic
    elsif rising_edge(clk) then
        -- State updates
    end if;
end process;

Tips for Effective Checking

  • Start with critical requirements: Focus on safety-critical and high-priority items first
  • Use concrete examples: Create specific test scenarios for each requirement
  • Check edge cases: Verify boundary conditions and corner cases
  • Trace signal flow: Follow signals through the design hierarchy
  • Verify completeness: Ensure all specification requirements are addressed
  • Check for unintended behavior: Look for RTL functionality not in spec
  • Document assumptions: Make all implicit assumptions explicit
  • Suggest improvements: Recommend specification or RTL enhancements

Reference Materials

For detailed HDL syntax and common patterns:

© ArabelaTso, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 2 other files (references) in skills/rtl-specification-consistency-checker of ArabelaTso/Skills-4-SE.

  • SKILL.md
  • references/common_violations.md
  • references/hdl_patterns.md

Open the folder on GitHubat commit 4f38503

Compare with similar skills

Rtl Specification Consistency Checker next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Rtl Specification Consistency Checker compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Rtl Specification Consistency Checker this skillArabelaTso/Skills-4-SE253—~2.3kAutomated safety check: PassApache-2.0
Specificity Managementthedaviddias/Front-End-Checklist74k—~477Automated safety check: PassMIT
Agent Specificationruvnet/ruflo74k2 repos~1.8kAutomated safety check: PassMIT
Consistency Checker Across Manuscriptaipoch/medical-research-skills2k—~2.9kAutomated safety check: PassMIT
Comment Checkercode-yeongyu/oh-my-openagent70k—~160Automated safety check: PassCustom licence
Hardware Securitysickn33/agentic-awesome-skills47k1 repos~598Automated safety check: PassMIT

Similar skills

  • Specificity Management

    thedaviddias/Front-End-Checklist

    A skill your agent uses when reviewing stylesheets, component styles, and responsive behavior related to Keep CSS specificity low and flat.

    74k GitHub stars~477 tokensUpdated 3 days ago
    Frontend & DesignAuto-check passed
  • Agent skill for specification - invoke with $agent-specification

    74k GitHub starsUsed in 2 repos~1.8k tokens
    Product & Project ManagementAuto-check passed
  • Consistency Checker Across Manuscript

    aipoch/medical-research-skills

    Checks consistency across title, abstract, methods, results, figures, tables, and supplements to identify internal contradictions and version drift in biomedical manuscripts.

    2k GitHub stars~2.9k tokensUpdated 22 days ago
    Research & ScienceAuto-check passed
  • Comment Checker

    code-yeongyu/oh-my-openagent

    A skill your agent uses when Codex needs to understand or respond to automatic comment-checker feedback emitted after an edit-like PostToolUse hook.

    70k GitHub stars~160 tokensUpdated today
    Auto-check passed
  • Hardware Security

    sickn33/agentic-awesome-skills

    Authorized hardware and embedded interface security research: UART/JTAG discovery, debug-pad triage, secure-boot overview, and offline firmware analysis.

    47k GitHub starsUsed in 1 repo~598 tokens
    SecurityAuto-check passed
  • Create Specification

    github/awesome-copilot

    Official

    Create a new specification file for the solution, optimized for Generative AI consumption.

    40k GitHub starsUsed in 1 repo~1.4k tokens
    Auto-check passed

More from ArabelaTso/Skills-4-SE

All 170 skills in this repo
  • Framework Migration Assistant

    ArabelaTso/Skills-4-SE

    Automatically migrate Python web applications between frameworks (Flask → FastAPI, Django → FastAPI).

    253 GitHub stars~1.9k tokensUpdated 1 mo ago
    Auto-check passed
  • Metamorphic Test Generator

    ArabelaTso/Skills-4-SE

    Generate test cases using metamorphic testing by applying transformations based on metamorphic properties.

    253 GitHub stars~798 tokensUpdated 1 mo ago
    Auto-check passed
  • Reproduction Trace Instrumenter

    ArabelaTso/Skills-4-SE

    Instruments programs to capture execution traces specifically for reproducing reported bugs, enabling consistent replay and diagnosis of failures.

    253 GitHub stars~2.4k tokensUpdated 1 mo ago
    Auto-check passed
  • Spring Mvc To Boot Migrator

    ArabelaTso/Skills-4-SE

    Automatically migrate Spring MVC applications to Spring Boot.

    253 GitHub stars~2.2k tokensUpdated 1 mo ago
    Auto-check passed
  • State Snapshot Instrumenter

    ArabelaTso/Skills-4-SE

    Instrument programs (Python, C/C++, Java) to capture snapshots of key program states at runtime, including variables, memory, and call stacks.

    253 GitHub stars~2.2k tokensUpdated 1 mo ago
    Auto-check passed

Questions about Rtl Specification Consistency Checker

What does Rtl Specification Consistency Checker do?

Check behavioral consistency between high-level hardware specifications and RTL implementations. Rtl Specification Consistency Checker is an agent skill from ArabelaTso/Skills-4-SE. Check behavioral consistency between high-level hardware specifications and RTL implementations.

When should I use Rtl Specification Consistency Checker?

Rtl Specification Consistency Checker fits situations like: asked to check RTL consistency; verify RTL against spec; check hardware specification compliance; validate RTL implementation.

How do I install Rtl Specification Consistency Checker in Claude Code?

Run `npx skills add ArabelaTso/Skills-4-SE --skill rtl-specification-consistency-checker -a claude-code`. Or copy the skill folder (skills/rtl-specification-consistency-checker in ArabelaTso/Skills-4-SE) into .claude/skills/rtl-specification-consistency-checker in your project. Claude Code loads it when a task matches its description.

How do I install Rtl Specification Consistency Checker in Codex?

Run `npx skills add ArabelaTso/Skills-4-SE --skill rtl-specification-consistency-checker -a codex`. Or copy the skill folder (skills/rtl-specification-consistency-checker in ArabelaTso/Skills-4-SE) into .agents/skills/rtl-specification-consistency-checker in your project. Codex loads it when a task matches its description.

Can I use Rtl Specification Consistency Checker in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add ArabelaTso/Skills-4-SE --skill rtl-specification-consistency-checker -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/rtl-specification-consistency-checker, .gemini/skills/rtl-specification-consistency-checker, .github/skills/rtl-specification-consistency-checker and .opencode/skills/rtl-specification-consistency-checker in your project.

What does Rtl Specification Consistency Checker need to run?

SKILL.md names no scripts, command-line tools or credentials: Rtl Specification Consistency Checker is instructions for the agent only.

Does Rtl Specification Consistency Checker access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Rtl Specification Consistency Checker safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Rtl Specification Consistency Checker use?

Rtl Specification Consistency Checker is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Rtl Specification Consistency Checker use?

About 2.3k tokens (SKILL.md is roughly 9.1k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 5.2k tokens, read only when the agent opens those files.

What are the alternatives to Rtl Specification Consistency Checker?

Skills that share tags, products or a category with Rtl Specification Consistency Checker: Specificity Management (thedaviddias/Front-End-Checklist, 74k stars), Agent Specification (ruvnet/ruflo, 74k stars), Consistency Checker Across Manuscript (aipoch/medical-research-skills, 2k stars) and Comment Checker (code-yeongyu/oh-my-openagent, 70k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Rtl Specification Consistency Checker?

ArabelaTso (a GitHub user) maintains it in ArabelaTso/Skills-4-SE, which has 253 GitHub stars. The repository holds 170 skills in this directory. The repository was last updated on August 21, 2026.

Source: ArabelaTso/Skills-4-SE on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.