Sentinel DV

io.github.kiranreddi由 GitHub 帳號 kiranreddi 發布v2.3.1更新於 Oct 25, 2026

MCP tools for UVM/cocotb logs, coverage, regressions, and waveform triage.

已驗證STDIO僅桌面開發者工具資料與分析

概覽

AI 產生的概覽

一個唯讀 MCP 伺服器,將匯出的 UVM、cocotb、覆蓋率、回歸與波形產物索引到 DuckDB,讓助理協助驗證結果排查。

可以做什麼
列出、彙總、比對與跨模擬器比較執行紀錄,並產生供人工審閱的試執行提交指令。瀏覽測試的歷史、拓撲、分群與重播指令。檢視失敗、斷言失敗、SVA 狀態與空泛性。檢視功能、程式碼、翻轉與 FSM 覆蓋率、缺口、趨勢及約束候選。檢查回歸健康狀況與即時模擬狀態。從預先計算的波形 JSON 與 VCD 檔案讀取有界的訊號清單與摘要。
適用情境
適合已從模擬器匯出日誌、覆蓋率與波形摘要的設計驗證工程師,希望助理協助回歸排查、單一測試失敗除錯或覆蓋率收斂,而不必手動解析各廠商輸出。
執行需求
本機需 Python 3.10 或更新版本,可透過 uvx 或 pip 安裝 sentinel-dv 執行。需透過 SENTINEL_DV_CONFIG 環境變數或 --config 參數提供 config.yaml 路徑,並設定絕對路徑的產物根目錄。啟動伺服器前須先以索引指令建立索引。未宣告身分驗證。
安裝前請注意
伺服器為唯讀,不執行模擬,也不修改 RTL 或測試平台檔案;runs.submit 與 tests.replay 僅回傳供工程師審閱的試執行指令。它會讀取設定根目錄下的產物,應只指向預期目錄。電子郵件、路徑與常見密鑰的遮蔽可設定,索引正式產物前應先檢查此設定。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Sentinel DV,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

Sentinel DV

[PyPI] [MCP Registry] [CI] [Documentation] [License]

Sentinel DV v2.3.1 is a read-only Model Context Protocol server for design verification evidence. It indexes exported SystemVerilog, UVM, cocotb, assertion, coverage, regression, and waveform artifacts into DuckDB and exposes 28 bounded, schema-driven tools to AI agents.

Documentation | Quick start | Video walkthrough | All tools | Agent skills

What it provides

  • Run and test intelligence: discovery, summaries, history, topology, diffs, replay-command generation, and live-status snapshots.
  • Failure analysis: normalized categories, stable signatures, bounded evidence, assertion failures, and failure clustering.
  • Coverage closure: functional, code, toggle, and FSM metrics; trends; gaps; vacuity; SVA status; and protocol-aware constraint candidates.
  • Waveform context: precomputed *.wave.json and bounded VCD summaries. Native FSDB/WLF streaming is intentionally out of scope.
  • Agent workflows: regression triage, single-test failure debugging, and coverage closure skills for Codex, Claude Code, and GitHub Copilot.

Sentinel DV does not execute simulations, modify RTL or testbench files, or stream unrestricted raw artifacts. runs.submit and tests.replay return dry-run commands for engineer review.

Quick start

Python 3.10 or newer is required. This example indexes the checked-in demo corpus:

For a persistent environment, install sentinel-dv>=2.3.1. The commands below use uvx to run the same release without a persistent install.

bash
git clone https://github.com/kiranreddi/sentinel-dv.gitcd sentinel-dvcp demo/config.example.yaml demo/config.yaml
uvx --from [email protected] \  sentinel-dv-index --config "$PWD/demo/config.yaml" --index-all

Connect one agent:

Codex

bash
codex mcp add sentinel-dv \  --env SENTINEL_DV_CONFIG="$PWD/demo/config.yaml" \  -- uvx --from [email protected] sentinel-dv-server

Claude Code

bash
claude mcp add \  --env SENTINEL_DV_CONFIG="$PWD/demo/config.yaml" \  --transport stdio --scope local sentinel-dv \  -- uvx --from [email protected] sentinel-dv-server

GitHub Copilot CLI

bash
copilot mcp add sentinel-dv \  --env SENTINEL_DV_CONFIG="$PWD/demo/config.yaml" \  -- uvx --from [email protected] sentinel-dv-server

Use an absolute SENTINEL_DV_CONFIG path. Verify the connection in the client's MCP status view, then call runs.list.

See Agent setup for configuration-file examples, project scope, skill discovery, and troubleshooting.

Production configuration

Copy config.example.yaml and define allowed artifact roots:

yaml
artifact_roots:  - /absolute/path/to/regression/artifacts
index:  type: duckdb  path: ./sentinel_dv.db
adapters:  uvm: true  cocotb: true  assertions: true  coverage: true  waveform_summary: true
security:  max_response_bytes: 2097152  max_page_size: 200  max_evidence_refs: 10
redaction:  enabled: true  redact_emails: true  redact_paths: true

Build the index before starting the server:

bash
sentinel-dv-index --config /absolute/path/to/config.yaml --index-allsentinel-dv-server --config /absolute/path/to/config.yaml

Relative paths inside the YAML are resolved from the config file's directory. Production startup never silently falls back to demo data.

MCP tools

The 28 tools are grouped by engineering purpose:

AreaTools
Runsruns.list, runs.get, runs.summary, runs.diff, runs.cross_sim, runs.submit
Teststests.list, tests.get, tests.history, tests.topology, tests.cluster, tests.replay
Failures and assertionsfailures.list, assertions.list, assertions.get, assertions.failures, assertions.sva_status, assertions.vacuity
Coveragecoverage.list, coverage.summary, coverage.gaps, coverage.trend, coverage.advisor
Regression and simulationregressions.summary, regression.health, sim.status
Waveformswave.signals, wave.summary

Every registered tool carries read-only MCP annotations and a versioned output schema. The MCP tools reference documents exact inputs and outputs.

Agent skills

The canonical skills live under skills/:

Deterministic mirrors support project discovery:

HostPath
Codex.agents/skills/
Claude Code.claude/skills/
GitHub Copilot.github/skills/

The repository also contains Codex and Claude plugin manifests. .mcp.json defines the bundled stdio server command; provide SENTINEL_DV_CONFIG or a config.yaml in the server working directory.

After editing a canonical skill:

bash
.venv/bin/python scripts/sync_agent_skills.py.venv/bin/python scripts/sync_agent_skills.py --check

Supported artifact sources

  • UVM logs and topology hints
  • cocotb and generic JUnit XML
  • assertion definition and failure JSON
  • SVA run-status JSON
  • supported JSON, XML, text, and HTML coverage summaries
  • *.wave.json and VCD
  • live simulation status JSON
  • exported VCS, Xcelium, Questa, and Verilator results

Adapter output is normalized into versioned schemas so clients do not need vendor-specific parsing logic.

Security model

  • Tools are read-only and operate on an index plus configured artifact roots.
  • Path resolution is sandboxed to allowed roots.
  • Evidence counts, excerpts, pages, wave signals, bins, and total response size are bounded.
  • Configurable redaction protects common secrets, email addresses, IP addresses, and local paths.
  • Tool output is deterministic; the MCP server does not generate causal conclusions.

Read Security and Production deployment before using production artifacts.

Verification

Create a development environment:

bash
python3 -m venv .venv.venv/bin/pip install -e ".[dev,docs]"

Run endpoint and workflow checks:

bash
.venv/bin/python scripts/verify_all_mcp_tools.py.venv/bin/python scripts/verify_skill_workflows.py

Run the full quality suite:

bash
.venv/bin/pytest.venv/bin/ruff check ..venv/bin/black --check ..venv/bin/mypy sentinel_dv.venv/bin/mkdocs build --strict

The all-tools verifier invokes every registered MCP endpoint. The skill verifier indexes 52 checked-in demo artifacts and executes the published regression triage, failure debugging, and coverage closure sequences.

Project layout

text
sentinel_dv/  adapters/        artifact parsers  indexing/        DuckDB indexing and queries  normalization/   signatures, taxonomy, redaction, coverage guidance  schemas/         versioned response contracts  tools/core.py    tool implementations  server.py        FastMCP registration and stdio entry point
skills/            canonical agent skillsdemo/              license-free exported verification fixturesdocs/              MkDocs documentationscripts/           verification, gallery, release, and skill-sync toolingtests/             unit and integration coverage

Contributing

See CONTRIBUTING.md. Sentinel DV is licensed under Apache-2.0.

來源:README.md,提交 0915256

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v2.3.1最新Sep 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分