Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add mapleleavessssssss-wq/vivado-mcp --skill vivado-waveform-debuggit clone --depth 1 https://github.com/mapleleavessssssss-wq/vivado-mcpWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/mapleleavessssssss-wq/vivado-mcp/vivado-waveform-debug)<a href="https://agentmods.dev/skills/mapleleavessssssss-wq/vivado-mcp/vivado-waveform-debug"><img src="https://agentmods.dev/badge/skills/mapleleavessssssss-wq/vivado-mcp/vivado-waveform-debug/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/mapleleavessssssss-wq/vivado-mcp/vivado-waveform-debug"><img src="https://agentmods.dev/badge/skills/mapleleavessssssss-wq/vivado-mcp/vivado-waveform-debug.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00062 | $0.01102 |
| Opus 5.5 | $0.00025 | $0.00441 |
| Sonnet 5.5 | $0.00012 | $0.00220 |
| Haiku 4.5 | $0.00006 | $0.00110 |
Grade A, and why
vivado-waveform-debug scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 23d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 49 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Vivado 波形诊断
可用入口:query_waveform、get_project_info、run_tcl、safe_tcl。
先提出可证伪的问题,例如“复位释放后 valid 是否出现未知值”。已有 VCD 时直接离线查询,不启动 Vivado。不支持直接读 WDB/FST,也不执行任意表达式或完整 SVA;此流程不编程硬件。
发现信号与时间单位
query_waveform(file_path="/work/sim/trace.vcd")
从返回清单选择精确层级名,不能猜测 top 或把向量的位范围拼成未列出的路径。start_time/end_time 是整数 VCD ticks;先读 timescale 再换算物理时间,例如 10 ps/tick 的 100 ticks 是 1 ns。
缩小窗口并查询
query_waveform(file_path="/work/sim/trace.vcd", signals=["top.valid", "top.ready"], start_time=0, end_time=1000, max_events=100, condition={"op": "all_equals", "values": {"top.valid": "1", "top.ready": "1"}})
query_waveform(file_path="/work/sim/trace.vcd", signals=["top.data"], start_time=100, end_time=200, max_events=50, condition={"op": "unknown", "signal": "top.data"})
条件还有 equals(signal/value)和 change(signal);value 为二进制字符串,可含 x/z。条件引用的信号必须包含在 signals 中。all_equals 只表示采样值同时满足,不能单独证明某时钟沿发生有效握手。
initial_values 是窗口起点所有同刻更新后的状态;events 记录之后的变化。同刻只保留最终值,不能证明 delta-cycle 或毛刺不存在。equals/unknown/all_equals 也检查起点。依次检查 initial_values_complete、last_complete_time、scan_truncated 和 result_truncated,再解释 matches;截断、未记录信号或空匹配都不能证明问题不存在。simulation_verdict 为 not_evaluated,测试 PASS 仍需 assertion/scoreboard、完成条件和日志。
需要新 VCD 时
只对已选会话和已展开的 XSim 仿真操作。核对 testbench、激励、seed、目标信号与有限运行时间;已有仿真运行过目标窗口时,应保留现有结果,再按原激励重跑,不能补造过去事件。
依据 AMD UG900 的 VCD 命令说明,按以下顺序导出;路径、scope 和时长须替换为本次已核对值,文件使用新的任务路径:
safe_tcl(template="open_vcd {0}", args=["/work/sim/trace.vcd"], session_id="design")
safe_tcl(template="log_vcd {0}", args=["/tb/dut/*"], session_id="design")
safe_tcl(template="run {0}", args=["100ns"], session_id="design")
run_tcl(command="close_vcd", session_id="design")
每步检查实际返回;运行失败后也应关闭本次打开的 VCD 并保留日志。不要向共享会话发送 quit,也不要杀掉机器上全部模拟器。不同 Vivado 版本或会话若不接受仿真命令,记录实际错误并在该工程的 XSim Tcl 上下文使用同一导出序列,不声称 VCD 已生成。
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 23d ago First seen · 49 lines · 62 tokens per session scan A e8b5173e8ab7
vivado-waveform-debug is a skill published in the GitHub repository mapleleavessssssss-wq/vivado-mcp (157 stars, last pushed 24d ago), licensed Apache-2.0. It adds 62 tokens to every session and 1,102 once invoked, about $0.0002 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-23.
Other skills, from other repositories
readable-verilog-generator
Use when creating, writing, reviewing, annotating, repairing, refactoring, or validating readable Verilog RTL, including synthesizable Verilog-2001 .v files, existing-RTL analysis, semantic comment annotation, testbench scaffold planning, ASIC-quality review, local or remote Vivado/xsim validation, evidence-backed…
drc-fix
Diagnose and fix Design Rule Check (DRC) violations in a layout or GDS. Use when the user says "fix DRC", "DRC clean", "resolve spacing errors", "my layout fails DRC", or shares a DRC report from Calibre, Klayout, or Magic.
hw-debug-loop
Closed-loop hardware debug methodology for half-duplex protocol ICs when BFM passes but real-silicon connecttest FAILs (Category B/C from the A/B/C extraction-gap analysis). Use after spec-to-rtl + flowcompliancecheck have all PASSed, the SOF has been burned to FPGA, and the host-side acceptance test (e.g.…
lvs-triage
Triage Layout-vs-Schematic (LVS) mismatches — missing connections, short/open nets, device parameter mismatches, unmatched instances. Use when the user says "LVS", "layout vs schematic", "LVS mismatch", "netlist compare", "Calibre LVS", "Netgen".
synth-doctor
Automatically diagnose and fix EDA tool failures. Parses Yosys synthesis and OpenROAD P&R logs, classifies errors into known patterns, and provides actionable fix commands. Triggers when: synthesis fails, P&R fails, 'why did synth fail', 'fix synthesis error', 'DRC violation', or any EDA tool error during Phase 2.…
fpga-led-probe-allocation
Codify FPGA LED probe allocation patterns (instantaneous / pulse-stretched / sticky / byte-display) and produce an FPGA-top template with comment-table mapping (LED → signal → expected behaviour per test stage). Use when a fresh agent has to verify a chip on a DE10-Lite-class board with no scope and only the on-board…