chipweaver/veripower
An open-source agent flow from natural language spec through Verilog RTL and UVM verification to front-end signoff on commercial EDA tools
项目介绍Project Overview
VeriPower 是开源芯片前端设计代理流程,可从自然语言规格经八阶段推进到商用 EDA 签核。确定性引擎以追加日志记录动作,按需推导状态,上游变更会使下游结论失效;参考模型源自规格,EDA 裁决为准。适用于 RTL 设计、验证与功耗分析流程。注意:LLM 编写的 oracle 可用于迭代,但签核必须人工批准,且内容变更后批准失效。
VeriPower is an open-source agent flow for front-end chip design, taking a natural-language spec through eight stages to signoff on commercial EDA tools. A deterministic engine records every action in an append-only log and derives pipeline status on demand; upstream edits invalidate downstream conclusions, the reference model comes from the spec, and EDA verdicts are authoritative. Use it for RTL design, verification, and power analysis. Caveat: LLM-authored oracles need human signoff, which lapses if the oracle changes.
请帮我了解并安装插件:【veripower】【https://github.com/chipweaver/veripower】
把上面这条消息直接发给当前会话里的 DSH,让它帮你了解并安装。安装命令不一定准确,发给 DSH 更稳。Send this message to DSH in your current session. CLI install commands may not be accurate across systems — DSH will figure it out for you.
或使用命令行安装(适合开发者)Or use CLI install (for developers)
命令行安装CLI Install
dsh plugin --profile web add "veripower@git+https://github.com/chipweaver/veripower.git"
把 chipweaver/veripower 加入你的 DSH 配置(web profile)即可启用。
READMEREADME
An open-source agent flow for front-end chip design
VeriPower is an open-source agent flow that takes a natural-language spec all the way to front-end signoff on commercial EDA tools. A deterministic engine sits underneath, recording every action in an append-only log. All pipeline status is derived from that log on demand, never stored as a flag or snapshot. The agent can iterate on its own, but every LLM-authored oracle needs a human sign-off.
Ships as a plugin for Claude Code, opencode, and DeepSeek Harness.
How it works
A deterministic engine owns the facts. Agents and humans are proposers. The engine keeps an append-only record of every action and conclusion, and whether a stage is done, stale, or failed gets computed from that record each time you ask. An orchestrator queries the engine for one action, carries it out, queries again. No state carried between queries.
Every verification conclusion is fingerprinted against the content it consumed and produced. Edit something upstream and the downstream conclusions go invalid on the next query. Design and verification both start from the spec but then diverge, so the reference model is derived from the spec, not from the implementation. EDA tool verdicts are authoritative. LLM-authored oracles are good enough for iteration but need human endorsement for signoff, and that endorsement lapses if the oracle content changes.
More in ARCHITECTURE.md (中文).
Pipeline
Eight stages, spec through power analysis. The dependency graph falls out of each rule's artifact declarations.
Reference implementation wraps Synopsys tools (SpyGlass, Design Compiler, PrimeTime, VCS+UVM). Each stage is a self-contained skill, so you can swap one (Verilator for simulation, Yosys for synthesis) without touching the rest.
Results
Three front-end design tasks, bare Claude Code vs. Claude Code + VeriPower. Same LLM, same spec, same EDA tools. Paper forthcoming.
| Benchmark | Scale | Baseline | + VeriPower |
|---|---|---|---|
| gateGPT — fixed-point GPT inference | 346K gates | 3 of 4 coverage metrics below 90% | pass |
| FSA — FlashAttention accelerator | 32K gates | 2 unresolved CDC violations | pass |
| Coral-NPU — RISC-V ML accelerator | 3.4M gates | 6/19 tests | 19/19 |
Bare agents write correct RTL but can't catch their own blind spots when testing it.
Quickstart
Claude Code
claude plugin marketplace add chipweaver/veripower
claude plugin install veripower@chipweaver
Or point at a working copy: claude --plugin-dir /path/to/veripower.
opencode — add the plugin to ~/.config/opencode/opencode.json, or to a project-level
opencode.json:
{ "plugin": ["veripower@git+https://github.com/chipweaver/veripower.git"] }
Stage dispatch runs subagents in the background, which opencode gates behind an environment variable, so start it with:
OPENCODE_EXPERIMENTAL_BACKGROUND_SUBAGENTS=true \
OPENCODE_EXPERIMENTAL_OUTPUT_TOKEN_MAX=131072 opencode
Without the second flag, opencode (as of 1.18.x) caps every completion at 32,000 tokens regardless of the model's declared limit. Subagents authoring whole-module RTL think past that cap and die silently. 131072 matches the GLM-5.x declared limit, and models declaring less keep their own.
DeepSeek Harness — install into the profile you run:
dsh plugin --profile web add "veripower@git+https://github.com/chipweaver/veripower.git"
Run the web profile (dsh web), not the one-shot headless profile.
Ask it to list its skills — the twelve VeriPower ones confirm the install.
Run the brainstorm skill to settle requirements first, then tell the agent:
Run the design flow for {module_dir}
Full walkthrough in the user manual (中文).
Requirements. Python 3, jsonschema, referencing. Synopsys EDA tools, swappable per skill.
Citation
Paper forthcoming.
Status: alpha (v0.1.9). MIT License. Contributing. Issues.
nexu-io/open-design
ruvnet/ruflo
amruthpillai/reactive-resume
esengine/DeepSeek-Reasonix
volcengine/OpenViking
Molunerfinn/PicGo
titanwings/distilly
titanwings/colleague-skill