virtuoso-bridge-lite connects LLM agents to Cadence Virtuoso so analog and mixed-signal design steps can be driven programmatically, locally or on a remote EDA server. It uses the same SKILL inter-process facility as a thin Python client (ipcBeginProcess with evalstring) and adds SSH remote access, higher-level Python APIs, Spectre simulation, and agent skill files.
Three components are decoupled. VirtuosoClient is a pure TCP SKILL client that sends SKILL as JSON and returns results, with no SSH awareness, so it works over a tunnel, VPN, direct LAN, or locally. SSHClient multiplexes one persistent connection for TCP port forwarding, remote shell commands, and file transfer. SpectreSimulator runs standalone Spectre jobs locally or through SSH and parses PSF ASCII results into Python data. SKILL execution and Spectre simulation are independent, so either works without the other.
A CLI drives setup: virtuoso-bridge init writes the configuration, start opens the tunnel and prints the CIW load line, and status reports tunnel, daemon, and Spectre availability against a daemon identity file so a host mismatch is diagnosable. Configuration is a .env file with a single host in the simple case, or separate GUI, deployment, daemon, and Spectre hosts where Virtuoso runs on a login machine and the daemon on a compute node. An optional Paramiko backend provides real multi-session multiplexing where OpenSSH ControlMaster is unavailable, with an optional SOCKS5 proxy for commands and transfers.
Features
- Virtuoso coverage: schematic editing, layout generation, simulation setup in Maestro, and standalone Spectre with PSF parsing
- Flexible programming: inline SKILL strings, .il file loading, or Python APIs with layout and schematic context managers
- Remote execution: SSH tunnel with jump host and auto-reconnect, plus a local mode that points at localhost
- Multi-server scale: multi-profile SSH connections, independent tunnels, and parallel simulations across servers and accounts
- Deterministic schematic planning: explicit connectivity with hard and soft grid, polarity-row, differential-pair, pin-column, and output-stage constraints
- Agent skills: pre-defined skill files to link into a coding agent’s skill directory, with a CLI-first surface and command logging
- Split host roles: separate GUI, deployment, daemon, and Spectre hosts for installations where the daemon lands on a compute machine
- SSH backends: OpenSSH ControlMaster or Paramiko with a client-side session gate and optional SOCKS5 proxying
- Bootstrap safety: the X11 bootstrap only targets a window identified as a CIW and refuses arbitrary SKILL text
- Cross-platform: verified on macOS, Windows, and Linux
