Communitygithub.com

idaibin/aicraft

Compétences IA, prompts et workflows d'agents réutilisables.

Qu'est-ce que aicraft ?

Ce skill est un ensemble réutilisable de compétences, prompts et workflows pour agents IA, conçu pour standardiser l'interaction avec des applications de bureau réelles, en particulier celles basées sur Tauri, Electron ou d'autres runtimes natifs. Il offre des modes opératoires précis pour le lancement, la capture de fenêtres, l'interaction via l'accessibilité, et la validation d'UI opérable par l'IA. Utile pour les développeurs qui créent ou testent des agents capables de manipuler des interfaces de bureau sans dépendre de prévisualisations navigateur, ce skill impose des règles strictes pour éviter les perturbations du poste de travail et garantir des preuves visuelles fiables. Il est maintenu via des références d'évaluation et un pipeline de validation automatisé.

Compatible avec~Claude Code✓Codex CLI~Cursor
npx skills add idaibin/aicraft

Demander à votre IA préférée

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

Documentation

Client Bureau

Aperçu

Opérer et vérifier des fenêtres réelles d'applications de bureau. Les conseils actuels sont axés sur Tauri, mais la compétence s'applique aux applications clientes où les prévisualisations navigateur ne sont pas des preuves valides.

Flux de travail

  1. Identifier la cible cliente spécifiée : nom de l'application, chemin du dépôt, répertoire du package/de l'application, processus, PID, fenêtre visible et preuve demandée.
  2. Si l'on travaille à partir d'un dépôt, confirmer s'il contient une application de bureau/cliente en vérifiant les manifestes et la structure du code source, comme src-tauri/, tauri.conf.*, les configurations Electron, les cibles natives, les scripts de package, les tâches justfile, ou les instructions d'exécution du README.
  3. Confirmer la commande de démarrage et la source d'exécution avant la vérification : pnpm tauri dev, bundle de débogage, application de release, commande d'exécution Electron/native, ou Non trouvé/Non vérifié en cas d'incertitude.
  4. Énumérer les fenêtres réelles et identifier le CGWindowID correspondant par propriétaire, PID, titre et limites.
  5. Capturer la fenêtre réelle sans dépendre du focus avant-plan : screencapture -x -l<CGWindowID> /private/tmp/desktop-client-window.png
  6. Inspecter les captures d'écran avec view_image avant de revendiquer une preuve visuelle.
  7. Privilégier l'inspection en arrière-plan et les actions Accessibilité comme AXPress sur les contrôles nommés.
  8. Reconstruire/redémarrer l'instance cliente visée après des modifications pertinentes de l'UI, du bundle ou de l'Accessibilité avant de revérifier.

Modes

  • Revue de Lancement : identifier l'application cliente appartenant au dépôt et sa commande de démarrage avant de l'exécuter ou de la vérifier.
  • Preuve de Fenêtre : prouver le processus, l'exécution, l'identité de la fenêtre et la source de la capture d'écran.
  • Interaction : utiliser les chemins d'accessibilité/arbre de contrôle avant les clics par coordonnées.
  • UI Opérable par IA : améliorer les surfaces DOM et d'accessibilité pour que les agents puissent identifier les contrôles de manière fiable.

Ne Pas Utiliser Pour

  • Pages navigateur simples, prévisualisations web, workflows de formulaires, téléchargements, ou vérifications console/réseau du navigateur ; utiliser ops-browser.
  • Découverte ordinaire de dépôt à moins que l'utilisateur ne demande une revue de lancement client, une vérification de fenêtre réelle, ou une invalidation de prévisualisation navigateur.
  • Preuve par prévisualisation navigateur lorsque la tâche nécessite une preuve provenant d'un runtime Tauri, Electron ou natif.
  • Revue de différences locale, planification, ou revue uniquement de sécurité ; utiliser la compétence code-* appropriée.

Règles Strictes

  • Ne pas traiter les prévisualisations navigateur, les pages de serveur de développement, ou les captures d'écran de région comme preuves d'application de bureau, sauf si l'utilisateur demande explicitement une vérification uniquement par navigateur.
  • Ne pas démarrer ou redémarrer un client avant d'avoir confirmé la source de la commande de démarrage et si cela pourrait perturber une instance d'application existante, une fenêtre active, ou le workflow de l'utilisateur.
  • Ne pas voler la souris de l'utilisateur, déplacer le pointeur, activer des fenêtres non liées, ou effectuer des clics par coordonnées sauf si aucun chemin de contrôle stable n'existe et que le risque est acceptable.
  • Privilégier les contrôles sémantiques, les noms accessibles, aria-label, title, sr-only, les étiquettes de formulaire associées, et les sélecteurs data-testid stables pour les contrôles critiques.
  • Dire Non vérifié lorsque le processus, l'exécution, la source de la fenêtre ou la preuve d'interaction ne sont pas vérifiés.

Contrat de Sortie

Rapporter la cible cliente spécifiée, la preuve de propriété du dépôt/client, la commande de démarrage ou Non trouvé, le processus/runtime cible, la preuve de fenêtre réelle, la source de capture d'écran, la méthode d'interaction, les lacunes d'accessibilité ou DOM, le statut de redémarrage/reconstruction, et tout élément Non vérifié.

Maintenance de la Compétence

Lors de la maintenance de ce package, mettre à jour references/eval-cases.md, references/usage.md, et agents/openai.yaml en cas de modification du périmètre de déclenchement, des modes, des règles strictes, ou du contrat de sortie. Dans AICraft, exécuter python3 scripts/validate-skills.py avant de publier et npx skills add https://github.com/idaibin/aicraft --list après publication sur GitHub.

Références

Skills associés