# PromptKey **Gestionnaire de prompts pour intelligences artificielles, sous Windows, écrit en AutoHotkey v2.** PromptKey vit dans la zone de notification et insère, en quelques frappes, le bon prompt dans n'importe quelle application — ChatGPT, Claude, Gemini, Qwen, DeepSeek, un terminal, un éditeur, un courriel. Une seule bibliothèque de prompts, pour toutes les IA. ## Le geste central ``` Ctrl+Alt+Espace → taper « résu… » → Entrée → remplir 1-2 variables si demandé → le prompt est collé ``` Le texte sélectionné dans l'application d'origine est capturé automatiquement (`{{selection}}`) ; PromptKey rend ensuite le focus à l'application et colle le prompt résolu. Il **insère** le texte — il ne l'envoie jamais à votre place (sauf option explicite par profil, désactivée par défaut). ## Installation Prérequis : - Windows 10 ou 11 - [AutoHotkey v2.0](https://www.autohotkey.com/) (64 bits) — seulement pour lancer la version source ou recompiler Deux façons de lancer : 1. **Version compilée** : `PromptKey.exe` (voir « Compilation » ci-dessous ou l'archive portable `dist\PromptKey-portable.zip`). Aucune installation : double-cliquer, l'icône apparaît dans la zone de notification. 2. **Version source** : double-cliquer sur `PromptKey.ahk`, ou `AutoHotkey64.exe PromptKey.ahk` en ligne de commande. Premier lancement : le dossier de bibliothèque est créé automatiquement (`Documents\PromptKey\Bibliothèque`, ou le dossier `Bibliothèque\` à côté du programme en mode portable) et, s'il est vide, le **pack de démarrage** (`packs\essentiels\`, 20 prompts prêts à l'emploi en 4 catégories : Général, Écriture, Code, Analyse) y est recopié. Le dossier peut ensuite être changé dans les Paramètres. Pour démarrer PromptKey avec Windows : créer un raccourci vers `PromptKey.ahk` (ou l'exécutable compilé) dans le dossier Démarrage (`shell:startup`). ## Raccourcis par défaut | Raccourci | Action | |-----------|--------| | `Ctrl+Alt+Espace` | Ouvrir le Quick Picker (rechercher et insérer un prompt) | | `Ctrl+Alt+M` | Ouvrir le Gestionnaire (bibliothèque complète) | | `Ctrl+Alt+N` | Nouveau prompt (depuis la sélection, s'il y en a une) | | `Ctrl+Alt+1` … `Ctrl+Alt+9` | Insérer directement le prompt épinglé n° 1…9 | | `Ctrl+Alt+V` | Réinsérer le dernier prompt utilisé | Dans le Picker : `↑`/`↓` naviguer, `Entrée` utiliser, `Ctrl+Entrée` utiliser avec les valeurs par défaut, `Ctrl+E` modifier, `Échap` fermer sans rien insérer. Chaque prompt peut aussi avoir son propre raccourci (`hotkey:`) ou une abréviation tapée (`hotstring:`, ex. taper `resu;` insère le prompt « Résumer en 5 points »). Tous les raccourcis sont modifiables dans les Paramètres. ## Format d'un prompt **Un prompt = un fichier Markdown.** La catégorie est le dossier qui le contient ; l'en-tête entre `---` décrit le prompt, le corps est le texte du prompt avec ses variables `{{…}}` : ```markdown --- id: 96d0d5b7-7a07-43a1-af84-dfa7024b4bcf title: Résumer en 5 points tags: [résumé, synthèse, court] targets: [défaut, claude, chatgpt, gemini, qwen] favorite: true created: 2026-10-11 updated: 2026-10-11 variables: - name: ton label: Ton de la réponse type: enum choices: [neutre, formel, amical, direct] default: neutre --- Résume le texte suivant, ton {{ton}}. Texte : {{selection}} ``` Variables automatiques (jamais demandées) : `{{selection}}` (texte sélectionné), `{{clipboard}}` (presse-papiers), `{{date}}`, `{{datetime}}`, `{{time}}`, `{{app}}` (application d'origine), `{{cursor}}` (position du curseur après insertion). Le format complet (sous-ensemble d'en-tête accepté, profils de destination, moteur d'injection) est spécifié dans le document d'architecture et de conception de PromptKey, §7 et suivants. ## Structure du projet ``` PromptKey\ ├─ PromptKey.ahk point d'entrée (tray, démarrage) ├─ lib\ services : magasin de prompts, index/recherche, │ moteur de variables, injecteur, presse-papiers… ├─ gui\ Quick Picker, Gestionnaire, Éditeur, formulaires ├─ packs\essentiels\ pack de démarrage : 20 prompts, 4 catégories ├─ scripts\check_pack.py contrôle de cohérence du pack (utilisé par la CI) ├─ tests\ suites de tests AutoHotkey ├─ build.ps1 compilation + archive portable (voir ci-dessous) ├─ config.ini paramètres (créé au premier lancement, local) └─ README.md ``` La bibliothèque de prompts peut vivre ailleurs (dossier au choix dans les Paramètres) ; elle est faite de simples fichiers `.md`, versionnables sous Git — ce dépôt en est la démonstration. ## Compilation Avec PowerShell, à la racine du projet : ```powershell .\build.ps1 ``` Le script vérifie la présence d'AutoHotkey v2 et d'**Ahk2Exe**, lance les tests de `tests\` s'ils sont présents, compile `PromptKey.ahk` en `dist\PromptKey.exe`, puis assemble l'archive portable `dist\PromptKey-portable.zip` (exe + packs + README + LICENSE). Ahk2Exe est fourni avec AutoHotkey v2 (dossier `Compiler\`) ou via le programme d'installation d'AutoHotkey (option « Compile »). ## Sécurité et vie privée - **Zéro réseau.** PromptKey n'appelle aucun service, n'envoie aucune télémétrie, ne parle à aucune API d'IA : il prépare du texte et le colle localement. - **Presse-papiers restauré.** L'injection par presse-papiers sauvegarde son contenu, colle le prompt, puis restaure l'original après un court délai (abandon propre si vous avez copié autre chose entre-temps). Les prompts marqués `sensitive: true` vident le presse-papiers après injection au lieu de le restaurer. - **Aucun contenu journalisé.** Le journal ne contient ni prompts, ni sélections, ni valeurs de variables ; les variables de type `password` ne sont jamais persistées. - **Ne mettez pas de secrets dans vos prompts** : ce sont des fichiers texte en clair, pensés pour être versionnés. ## Licence MIT — voir [LICENSE](LICENSE). Copyright © 2026 Bruno.