1. État et ouverture
silent_status, silent_list_documents, puis open_document ou create_document : chacun renvoie documentId, revision et stateToken.
SERVEUR MCP · ADOBE INDESIGN · WINDOWS
Adobe InDesign for Claude Code and Codex.
Un moteur Windows natif, NexusInDesign.exe (C#, autonome), pilote InDesign 2024 à 2026 par sa seule automatisation COM : des scripts UXP lancés par DoScript, sans aucune interaction. Ni panneau, ni plugin UXP Adobe, ni Node.js, ni port réseau, ni Computer Use. Chaque modification est vérifiée contre la révision du document, chaque document ouvert est sauvegardé d’abord, chaque fichier exporté est contrôlé.
Compatible avec
open_document(…)run_layout_script(…)preflight_document(…)finalize_layout(…)01 / CE QUE ÇA FAIT
Le skill nexus-indesign guide l’agent ; run_layout_script fait chaque modification cohérente en un seul passage suivi dans InDesign.
run_layout_scriptVérifie révision et jeton d’état, sauvegarde chaque document ouvert, lance le script UXP, enregistre si demandé, rend un aperçu PNG vérifié et renvoie la nouvelle révision : les appels s’enchaînent sans réinspection.
open_document, create_documentOuvrir ou créer un document ; chacun renvoie documentId, revision et stateToken.
preflight_document, finalize_layoutLe contrôle en amont, puis un PDF seulement si le contrat de mise en page et le contrôle en amont d’Adobe passent.
export_pdf, export_png, export_idmlLes exports, chacun vérifié dans sa structure ; aussi package_document, save_document et save_as.
analyze_layout, compare_layout_snapshotGéométrie, ressources, styles, audit typographique et empreinte stable de la mise en page.
preview_layoutUn aperçu, annoté sur demande (marges, gouttières, contour et #id de chaque bloc, texte en excès en rouge), sans toucher au document source.
silent_restore_backupRestaurer une sauvegarde ; l’état actuel est sauvegardé d’abord.
silent_operation_statusCe qui est connu après un délai dépassé ou un plantage, avant toute nouvelle commande.
indesign_doctor, search_official_domContrôles locaux sans lancer InDesign ; index hors ligne de la référence DOM officielle d’Adobe, figé par SHA-256.
01 / COMMENT ÇA MARCHE
silent_status, silent_list_documents, puis open_document ou create_document : chacun renvoie documentId, revision et stateToken.
run_layout_script pour chaque changement cohérent ; un script qui échoue est un résultat connu, avec sa sauvegarde.
preflight_document, puis finalize_layout ou export_pdf, export_png, export_idml, package_document.
silent_close_document pour les documents que la tâche a ouverts.
Annulation en une étape : un seul undo() retire les changements de la partie synchrone d’un script (tout ce qui précède son premier await), y compris ceux d’un script qui a échoué.
02 / INSTALLATION
Collez ce message dans Claude Code ou Codex : elle suit le guide de NexusSystem et installe NexusInDesign.
Installe NexusInDesign en suivant https://raw.githubusercontent.com/pironjulien/NexusSystem/main/INSTALL-AI.mdGratuite sur le Microsoft Store, sans compte : elle lance le get.ps1 de NexusInDesign et ajoute le plugin nexus-indesign à Claude Code et Codex depuis le catalogue Nexus.
Quittez-les complètement pour qu’ils chargent le nouveau serveur MCP et son skill.
Dans Claude Code ou Codex, demandez par exemple : « Ouvre ce document InDesign et fais son contrôle en amont. » Le moteur lance InDesign au besoin.
Dans PowerShell, sans droits administrateur : téléchargez get.ps1 et la liste des empreintes, vérifiez l’empreinte SHA-256, puis lancez le fichier. Il installe %USERPROFILE%\.nexus\nexus-indesign\NexusInDesign.exe, le chemin que lancent les deux plugins.
$r = 'https://github.com/pironjulien/NexusInDesign/releases/latest/download'
Invoke-WebRequest "$r/get.ps1" -OutFile get.ps1
Invoke-WebRequest "$r/SHA256SUMS.txt" -OutFile SHA256SUMS.txt
$h = (Select-String SHA256SUMS.txt -Pattern '^([0-9a-f]{64})\s+get\.ps1$').Matches[0].Groups[1].Value
if ((Get-FileHash get.ps1 -Algorithm SHA256).Hash -ne $h) { throw 'get.ps1 does not match SHA256SUMS.txt' }
powershell -NoProfile -ExecutionPolicy Bypass -File .\get.ps1Chaque fichier de la release est attesté (gh attestation verify get.ps1 --repo pironjulien/NexusInDesign). Relancez get.ps1 pour mettre à jour ; -Remove retire le programme et garde les sauvegardes et le journal d’audit. Détails : README du dépôt.
Collez ce message dans votre IA : elle suit le guide de NexusSystem, propose les produits Nexus qui conviennent à votre PC, installe chacun avec son installeur officiel puis vérifie le résultat. Ou l’appli NexusSystem, gratuite sur le Microsoft Store.
Installe Nexus pour moi en suivant https://raw.githubusercontent.com/pironjulien/NexusSystem/main/INSTALL-AI.mdCode, documentation et installeur : dépôt GitHub de NexusInDesign.
Projet indépendant, non affilié à Adobe, Anthropic ni OpenAI.
03 / ÉCOSYSTÈME NEXUS
NexusInDesign s’installe seul, ou avec les autres briques Nexus, chacune à la carte.
AvecNexusSystem lance son get.ps1 et ajoute le plugin nexus-indesign à Claude Code et Codex depuis le catalogue Nexus.
Sansget.ps1, depuis la release, installe le moteur ; le plugin s’ajoute depuis le catalogue Nexus.
Découvrir NexusSystemChacune s’installe seule, à la carte, avec son propre installeur.
04 / SÉCURITÉ
Les garde-fous sont dans le moteur, pas seulement dans la consigne donnée aux agents.
Claude Code ou Codex lance NexusInDesign.exe --mcp et lui parle par stdio. Le moteur n’ouvre aucun port, n’expose aucune API HTTP et n’envoie rien sur le réseau.
Le démarrage est refusé sauf si un processus parent est un agent autorisé : claude.exe signé par Anthropic ou codex.exe signé par OpenAI, avec une signature Authenticode valide, dans un dossier autorisé.
Chaque chemin lu ou écrit par un outil structuré est résolu à travers jonctions et liens, puis doit rester dans les dossiers autorisés (par défaut le profil utilisateur), hors des dossiers refusés : stockage privé, ~\.nexus, .ssh, .gnupg, AppData. Un fichier existant n’est remplacé qu’avec overwrite=true, après une copie privée.
Chaque document ouvert est sauvegardé avant toute modification, avec sa signature INDD et son SHA-256 ; une restauration vérifie cette provenance et sauvegarde d’abord l’état actuel.
Chaque modification vérifie la révision du document et son stateToken avant et après ; toute différence refuse ou signale le résultat. Après un délai dépassé ou un plantage, toute commande InDesign est refusée jusqu’à la réconciliation.
PDF, PNG, IDML et INDD produits sont contrôlés dans leur structure, jamais crus sur le seul rapport d’InDesign.
Sauvegardes, journal d’audit et fichiers d’exécution restent dans %USERPROFILE%\.nexus\nexus-indesign\private, lisible par l’utilisateur seul. Le journal n’enregistre jamais le texte d’un document, un chemin, du code ni un secret.
05 / À SAVOIR
run_layout_script et execute_uxp_silent ont les droits complets des scripts Adobe, fichiers et réseau compris : ce n’est pas un bac à sable, et les agents n’y lancent que du code décidé pour la tâche.
Il enregistre son serveur COM. Le moteur le lance au besoin et le referme s’il l’a lancé caché et que rien ne reste ouvert.
Par défaut, les documents sont lus et écrits dans le profil utilisateur ; pour changer les dossiers, %USERPROFILE%\.nexus\nexus-indesign\settings.json (readRoots, writeRoots, deniedRoots).
06 / LIENS
Le moteur, les plugins, le skill, les tests et la documentation sont sur GitHub, sous licence MIT.