pyslang-verilog-context — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited pyslang-verilog-context (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Use pyslang-mcp as read-only compiler-backed context for Verilog and SystemVerilog work. Keep normal file editing outside the MCP tools.
Use pyslang-mcp when the answer depends on any of these:
Use direct file reads and rg first for tiny lexical questions, comments, renames, or incomplete snippets where a compiler frontend cannot add much.
project_root, files, filelist, include dirs,defines, and top modules.
source set.
project_root.pyslang_parse_filelist for .f inputs.pyslang_parse_files for explicit .sv, .svh, .v, or .vhinputs.
include_dirs, defines, and top_modules; do not inventthem when the repo does not provide them.
pyslang_get_diagnostics before making structural claims.limit downstream analysis.
pyslang_list_design_units to discover modules, interfaces, andpackages.
pyslang_describe_design_unit for ports, declarations, and childinstances.
pyslang_get_hierarchy for instance tree questions.pyslang_find_symbol for declarations and references.pyslang_summarize_diagnostics_by_code before scanning long rawdiagnostics in large RTL projects.
pyslang_find_member when the question is local to one design unitand pyslang_find_symbol is too broad.
pyslang_get_assignments for "what drives this signal" or "where isthis signal used on the RHS" questions.
pyslang_get_instance_connections when one instance's port bindingsare needed without a full hierarchy dump.
pyslang_trace_connectivity for bounded structural tracing throughassignments and instance port bindings.
pyslang_preprocess_files for include/define questions.pyslang_dump_syntax_tree_summary for syntax-shape questions.pyslang_get_project_summary when a compact overview is enough.Before modifying existing RTL, collect enough compiler context to avoid breaking the local design shape:
After editing, run the same parse mode again and report diagnostics. If pyslang-mcp is unavailable, say so and use text-grounded checks instead.
pyslang-mcp is not a simulator, synthesizer, linter replacement, CDC/RDC signoff tool, timing signoff tool, waveform analyzer, or formal engine.
Clean frontend diagnostics mean the analyzed source set parsed and elaborated under this frontend. They do not prove behavioral correctness, timing closure, CDC safety, reset safety, or synthesis quality.
pyslang_trace_connectivity is structural frontend evidence only. It does not prove functional behavior, complete fanin/fanout, CDC/RDC safety, multiple-driver cleanliness, synthesis quality, or timing closure.
The MCP tools are read-only. Never present them as the mechanism that edits, formats, simulates, or synthesizes RTL.
Use evals/manifest.json and scripts/validate_eval_fixtures.py when updating this skill. The eval corpus includes local fixtures and public upstream HDL examples with preserved source provenance.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.