Virtuoso Connect 是做什麼的?
負責本機 → SSH → 虛擬機 → Virtuoso CIW 的連線與診斷。連線成功後將任務交給對應領域技能;這裡不修改電路、PDK 或模擬設定。
ChatGPT / Codex 執行約定
- 先讀 platform.md。使用當前會話實際提供的檔案、命令或電腦操作工具,不假定 Claude Code、Antigravity 的工具、後台參數或斜杠命令存在。
- 本機 Python 呼叫
virtuoso_bridge,SKILL 在遠端 CIW 執行;本機路徑和虛擬機路徑分別記錄。橋接庫是外部執行依賴,本技能不實現通訊服務。 - 寫呼叫前核對實際安裝原始碼或簽章;用 api_probe.py 做純本地探測,無需連線虛擬機。介面參考與實機不一致時,以當前安裝程式碼、Cadence 文件及最小驗證為準,不猜介面。
- 已驗證過連線、繪圖、ADE 調參、版圖基礎操作和獨立 OCEAN 讀取;具體版本邊界、成功入口及未測試範圍見 runtime-capabilities.md,當前環境從本地配置讀回。
連線流程
- 按 環境配置協議 讀取本技能目錄中的
config.local.json(或用戶明確指定的配置),從中取得直譯器、bridge 配置檔案、主機、工作範圍和 PDK 資訊。主技能不存個人路徑;先複用已有環境,不重裝到全域 Python。 - 使用 workflow_config.py 明確選擇配置中的 bridge
.env並核對端點;配置缺失或欄位無效時定位缺項,不回退到歷史機器。用當前 CLI 幫助核對行為。只檢查必要欄位,不列印密碼、私鑰或整個.env;僅在缺少配置時初始化。 - 在所選環境內檢查 CLI 幫助、啟動橋接並查詢狀態。PowerShell 下透過直譯器或
.venv/Scripts/程式的絕對路徑執行;不用 Bash 的source,不拼接多層引號的python -c。 - 隧道連通與 CIW 已監聽是兩個獨立條件。若遠端需要載入初始化
.il,使用當前啟動輸出中的路徑,不硬編碼歷史/tmp路徑。有可用且已授權的 CIW 操作管道時執行,否則向使用者給出準確的 CIW 指令。 - 用
getCurrentTime()等唯讀呼叫驗證result.ok和非錯誤輸出;記錄 bridge 版本、直譯器、配置來源及連線狀態。遠端版本未查到时標記未知。 - 保留本次建立的服務和隧道供後續操作使用。不要在命令退出後假定後台行程仍然存活;獨立檢查其狀態。
多行 SKILL 優先儲存 .py 或 .il 檔案。CLI eval --stdin 是否可用由當前版本驗證,不能繼承舊版的永久禁用結論。
故障處理
讀 recovery.md,按本機程式、SSH、埠轉發、遠端監聽、CIW 模態對話框逐層定位。連線逾時不等於電路失敗。只處理已識別、屬於本次操作的對話框;不批量確認未知彈窗,不自動刪除設計鎖檔案,不終止其他使用者的行程。
轉交
- 參數掃描、最佳化 → virtuoso-params。
- 原理圖、symbol、ADE、測試平台和設計庫複製 → virtuoso-testbench。
- layout、DRC/LVS/PEX → virtuoso-layout。
- 快捷鍵、選單、解釋和文件查詢 → virtuoso-helper。
函數檢索細節見 skill-finder-python-api.md。只有需要查詢遠端函數文件時才使用連線,不為純檔案檢查啟動虛擬機服務。