By ShenShan123
End-to-end open-source EDA toolchain from RTL acquisition to signed-off GDSII, with a self-improving fix/learn loop and automatic conversion of physical-design files into PyTorch-Geometric graph datasets for ML research.
Detect a machine's environment and install + verify the open-source EDA toolchain that the signoff-loop and def-graph skills need — OpenROAD-flow-scripts (openroad/yosys), iverilog, KLayout, Magic, Netgen, OpenSTA, the sky130A PDK, and the torch+torch_geometric graph venv. Use when setting up a new machine, when `check_env.sh` reports missing tools, when the user asks to install/bootstrap/provision the EDA tools or "set up the environment", or when a flow fails because a tool or PDK is absent. Without root it automatically installs a no-sudo path (pre-built conda litex-hub binaries + a venv on a big volume). Produces references/env.local.sh so a bootstrapped toolchain is auto-discovered by the flow skills.
Drive an open-source EDA workflow from RTL to GDS with full signoff (DRC, LVS, RCX) using OpenROAD-flow-scripts (ORFS), Yosys, KLayout, Magic, Netgen, and OpenRCX — plus a self-improving observation→ingest→act loop that learns repair recipes to eliminate DRC/LVS violations and close timing at the best Fmax. Use when the user wants to turn a hardware spec or RTL into synthesis, place-and-route, GDS output, signoff verification, parasitic extraction, PPA iteration, flow-failure diagnosis, autonomous fix/learn campaigns, or a multi-project dashboard. The clean, signed-off DEF/LEF/SPEF it produces are the inputs to the companion def-graph skill (graph dataset construction).
Convert clean, signed-off physical-design files (DEF/LEF/liberty/SPEF from an ORFS backend run) into training-ready PyTorch-Geometric graph datasets. Use when the user wants to build a graph dataset from placed-and-routed designs — the five graph views (b–f), the tech-lib/LEF/DEF parser, node/edge feature extraction, or per-cell/per-net labels (congestion, RC parasitics, wirelength, timing, IR drop). Companion to the signoff-loop skill, which produces the physical-design inputs this skill consumes.
Discover, screen, and acquire RTL at corpus scale (local trees, repo manifests, keyword search) and expand it — synthesis-only, MANY designs per round — into pre-layout netlist_graph.pt PyG graphs with dedup, quality scoring, and publish gating. Use for growing a training corpus of netlist graphs from found RTL. NOT for taking one design to GDS/signoff (that is signoff-loop) and NOT for post-layout graph datasets from DEF/SPEF (that is def-graph).
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
A Claude Code skill that drives an open-source RTL-to-GDS flow — from natural-language spec (or existing RTL) through synthesis, place-and-route, and full signoff (DRC, LVS, RCX) — using Yosys, OpenROAD-flow-scripts, KLayout, and OpenRCX.
Install the r2g-skills skills (eda-install to set up the toolchain, rtl-acquire to grow an RTL corpus at scale, signoff-loop for RTL→GDS + signoff, def-graph for graph datasets), then ask Claude: "set up the EDA tools" followed by "synthesize this UART at 100 MHz on nangate45" — it handles everything from provisioning to GDSII. Recent changes: see CHANGELOG.md.
| Tool | Required | Purpose |
|---|---|---|
| Python 3.10+ | yes | skill scripts |
| Yosys | yes | synthesis |
| iverilog / vvp | yes | simulation |
| OpenROAD + ORFS | yes | place & route, RCX |
| Verilator | optional | faster lint |
| KLayout | optional | GDS viewer, DRC, LVS |
| Magic + Netgen | optional | sky130 DRC / LVS |
| OpenSTA | optional | standalone STA |
| sky130A PDK | optional | sky130 signoff |
| torch + torch_geometric + pandas | optional | PyG graph datasets (run_graphs.sh; venv on /proj, R2G_GRAPH_PYTHON) |
git clone https://github.com/ShenShan123/agent-r2g.git
cd agent-r2g
bash r2g-skills/install.sh --user # installs eda-install + rtl-acquire + signoff-loop + def-graph into ~/.claude/skills/
Restart Claude Code (or run /reload) after install.
Other options:
bash r2g-skills/install.sh --user # global — available in every Claude Code session (default)
bash r2g-skills/install.sh --project . # local — scoped to the current project directory
bash r2g-skills/install.sh --link --user # symlink — edits are picked up without reinstalling
bash r2g-skills/install.sh --force --user # overwrite an existing install
bash r2g-skills/install.sh --uninstall # remove all sub-skills
Installing from the skill collection directory alone (no full repo clone needed):
cd r2g-skills
./install.sh --user
The skill autodetects every tool on first use. No source or export is required if your tools land in standard locations. Use check_env.sh to see exactly what was found (see Verify).
Quick start — let the eda-install skill detect your machine and provision the toolchain:
bash r2g-skills/bootstrap.sh --dry-run # detect tools + PDK + torch venv → per-tier plan, install nothing
This is a shim to the dedicated eda-install sub-skill (r2g-skills/eda-install/bootstrap.sh) —
in a Claude Code session you can just say "set up the EDA tools". It reports what's present vs
missing and, without root, automatically selects a no-sudo path (pre-built conda litex-hub
binaries + a torch venv on a big volume — never a full $HOME). Drop --dry-run to install the
missing tiers and auto-generate references/env.local.sh; add --prefix /big/volume to steer where
the PDK and venv land. The manual paths below remain available if you prefer to install by hand.
Choose the path that matches your situation.
If /opt/openroad_tools_env.sh exists (e.g. a shared EDA workstation), the skill sources it automatically. Jump straight to Verify.
OpenROAD-flow-scripts builds its own openroad and yosys, so one clone gives you the whole flow.
1. System packages (run once as root — Debian / Ubuntu):
sudo apt update
sudo apt install build-essential cmake git python3 python3-pip \
iverilog klayout tcl-dev libboost-dev flex bison
For RHEL / Fedora / CentOS, replace apt with dnf / yum and adjust package names accordingly.
2. Clone and build ORFS (~30 min on 8 cores):
git clone --recursive https://github.com/The-OpenROAD-Project/OpenROAD-flow-scripts \
~/OpenROAD-flow-scripts
cd ~/OpenROAD-flow-scripts
sudo ./etc/DependencyInstaller.sh # installs remaining build deps
./build_openroad.sh --local # builds openroad + yosys under tools/install/
After the build, the skill autodetects both binaries from $ORFS_ROOT/tools/install/ if you set ORFS_ROOT. Do that in env.local.sh (one line):
cp ~/.claude/skills/signoff-loop/references/env.local.sh.template \
~/.claude/skills/signoff-loop/references/env.local.sh
# Add this one line to env.local.sh:
echo 'export ORFS_ROOT="$HOME/OpenROAD-flow-scripts"' \
>> ~/.claude/skills/signoff-loop/references/env.local.sh
OSS-CAD-Suite provides pre-built Yosys, iverilog, and Verilator. Pair it with a pre-built OpenROAD binary (from the OpenROAD releases page or your distro).
npx claudepluginhub shenshan123/r2g-skills99-agent RTL design pipeline with 97 skills for 6-Phase hardware design automation (Research → Architecture → μArch → RTL → Verify → Design Note)
Control KLayout from AI agents via MCP — geometry, display, image overlay, visual capture, nanodevice flake detection, GDS alignment, and routing skills for chip/mask layout design
AI-powered hardware development platform — design, verify, synthesize, and deploy working RTL with natural language. 18 agents, 25 skills, 8 IP blocks.
JITX hardware design automation skills for PCB design, component modeling, substrate modeling, circuit creation, physical layout authoring, signal integrity constraints, pin assignment flexibility, code review, and mechanical CAD interchange.
Xilinx full-toolchain assistant covering Vivado, Vitis HLS, Vitis Unified IDE, and PetaLinux -- from HLS algorithm to boot image
Agentic KiCad PCB design workflow using SKiDL — architect, source, code, and verify circuits with AI agents.