Communitygithub.com

CATEular/skill

Connectez ChatGPT ou Codex à une machine virtuelle Cadence Virtuoso via virtuoso_bridge ; découvrez la configuration Python et du pont, vérifiez la connectivité, inspectez les signatures d'API installées et diagnostiquez les échecs SSH, CIW ou de dialogue bloquant. Utilisez-le pour les problèmes de connexion et de transport, pas pour l'optimisation de circuits ou l'édition de conception.

Qu'est-ce que skill ?

Cette compétence spécialisée permet à un agent d'IA (ChatGPT/Codex) de se connecter et de diagnostiquer la communication entre la machine locale, une machine virtuelle distante via SSH et l'instance Cadence Virtuoso CIW. Elle gère le protocole de connexion complet : lecture de la configuration locale, vérification du pont `virtuoso_bridge`, test de la connectivité réseau (SSH, port forwarding), et validation de l'état d'écoute du CIW. L'agent utilise des scripts Python (comme `api_probe.py`) pour une inspection locale des signatures d'API sans nécessiter de connexion à la VM. Cette compétence est essentielle pour les ingénieurs travaillant avec Virtuoso et souhaitant déléguer les tâches de diagnostic de connectivité à un assistant IA, car elle évite les erreurs de configuration et accélère le dépannage. Elle ne modifie pas les circuits, PDK ou paramètres de simulation ; une fois la connexion établie, elle délègue les tâches spécifiques (paramètres, layout, testbench) à d'autres compétences spécialisées.

Compatible avec✓Claude Code✓Codex CLI~Cursor✓Antigravity
npx skills add https://github.com/CATEular/skill/tree/HEAD/skills/virtuoso-workflow/virtuoso-connect

Demander à votre IA préférée

Ouvre une nouvelle conversation avec cette compétence d'agent déjà préchargée.

Documentation

Virtuoso Connect

Assure la connexion et le diagnostic entre la machine locale → SSH → machine virtuelle → CIW Virtuoso. Une fois la connexion réussie, les tâches sont déléguées aux compétences de domaine correspondantes ; ici, on ne modifie pas les circuits, les PDK ou les paramètres de simulation.

Conventions d'exécution pour ChatGPT / Codex

  • Lire d'abord platform.md. Utiliser les fichiers, commandes ou outils de manipulation d'ordinateur réellement fournis dans la session en cours, sans supposer l'existence des outils Claude Code, Antigravity, des paramètres d'arrière-plan ou des commandes slash.
  • Le Python local appelle virtuoso_bridge, le SKILL s'exécute sur le CIW distant ; les chemins locaux et les chemins de la machine virtuelle sont enregistrés séparément. La bibliothèque de pont est une dépendance d'exécution externe, cette compétence n'implémente pas le service de communication.
  • Avant d'écrire un appel, vérifier le code source ou la signature installée réelle ; utiliser api_probe.py pour une détection purement locale, sans connexion à la VM. En cas de divergence entre l'interface de référence et la machine réelle, se fier au code installé actuel, à la documentation Cadence et à la validation minimale, sans deviner l'interface.
  • La connectivité, le tracé, le réglage des paramètres ADE, les opérations de base du layout et la lecture OCEAN indépendante ont été vérifiés ; les limites de version spécifiques, les points d'entrée réussis et la portée non testée sont documentés dans runtime-capabilities.md. L'environnement actuel est lu à partir de la configuration locale.

Processus de connexion

  1. Suivre le protocole de configuration d'environnement pour lire config.local.json (ou la configuration explicitement spécifiée par l'utilisateur) dans le répertoire de cette compétence, et en extraire l'interpréteur, le fichier de configuration du pont, l'hôte, la portée de travail et les informations PDK. La compétence principale ne stocke pas de chemins personnels ; réutiliser d'abord l'environnement existant, ne pas réinstaller dans le Python global.
  2. Utiliser workflow_config.py pour sélectionner explicitement le fichier .env du pont dans la configuration et vérifier le point d'extrémité ; si la configuration est manquante ou un champ est invalide, localiser l'élément manquant, sans revenir à une machine historique. Utiliser l'aide CLI actuelle pour vérifier le comportement. Ne vérifier que les champs nécessaires, ne pas imprimer les mots de passe, clés privées ou l'intégralité du fichier .env ; n'initialiser que lorsque la configuration est absente.
  3. Dans l'environnement sélectionné, vérifier l'aide CLI, démarrer le pont et interroger le statut. Sous PowerShell, exécuter via l'interpréteur ou le chemin absolu du programme .venv/Scripts/ ; ne pas utiliser source de Bash, ne pas concaténer de python -c avec plusieurs guillemets.
  4. La connectivité du tunnel et le fait que CIW écoute sont deux conditions indépendantes. Si la VM distante nécessite le chargement d'un fichier d'initialisation .il, utiliser le chemin fourni dans le résultat du démarrage actuel, sans coder en dur un chemin /tmp historique. Exécuter lorsque des canaux d'opération CIW disponibles et autorisés existent, sinon donner des instructions CIW précises à l'utilisateur.
  5. Utiliser des appels en lecture seule comme getCurrentTime() pour vérifier result.ok et l'absence d'erreur de sortie ; enregistrer la version du pont, l'interpréteur, la source de configuration et l'état de connexion. Marquer comme inconnu si la version distante n'est pas trouvée.
  6. Conserver le service et le tunnel établis pour cette session afin de les utiliser pour les opérations suivantes. Ne pas supposer que les processus en arrière-plan sont toujours vivants après la sortie de la commande ; vérifier leur état indépendamment.

Pour les appels SKILL multi-lignes, privilégier l'enregistrement dans un fichier .py ou .il. La disponibilité de l'option eval --stdin de l'interface CLI doit être vérifiée pour la version actuelle ; ne pas hériter d'une conclusion de désactivation permanente d'une ancienne version.

Gestion des pannes

Lire recovery.md et localiser la panne couche par couche : programme local, SSH, redirection de port, écoute distante, boîte de dialogue modale CIW. Un délai d'attente de connexion n'équivaut pas à un échec du circuit. Ne traiter que les boîtes de dialogue identifiées et appartenant à cette opération ; ne pas confirmer en masse les fenêtres contextuelles inconnues, ne pas supprimer automatiquement les fichiers de verrouillage de conception, ne pas tuer les processus d'autres utilisateurs.

Délégation

Les détails de recherche de fonctions se trouvent dans skill-finder-python-api.md. N'utiliser la connexion que lorsqu'il est nécessaire d'interroger la documentation des fonctions distantes ; ne pas démarrer le service VM pour une simple vérification de fichier.

Individual skills in this repo

This repo contains 4 individual skills — each has its own dedicated page.

Skills associés