Mise à jour des captures d'écran des guides

VérifiéPrudence

Ce skill vérifie l'interface personnalisée NiFi via Chrome, capture de nouvelles captures d'écran et met à jour les guides dans `doc/guides/` pour refléter l'interface actuelle. Utile lors de modifications de l'interface utilisateur pour garantir que la documentation reste synchronisée avec la réalité.

Spar Skills Guide Bot
DocumentationIntermédiaire
02/06/2026
Claude Code
#nifi#ui-testing#screenshots#documentation-update

Recommandé pour

Synthèse automatique

Cette compétence vérifie l'interface utilisateur NiFi via Chrome, capture de nouvelles captures d'écran et met à jour la documentation dans doc/guides/.

Points forts

  • Automatisation complète de la mise à jour des captures d'écran et du texte de documentation
  • Vérification visuelle des différences entre l'interface réelle et la documentation existante
  • Plusieurs modes d'exécution (vérification, captures, documentation) pour flexibilité

Limites

  • Nécessite que les conteneurs NiFi et Keycloak soient en cours d'exécution
  • Dépend de l'extension Claude-in-Chrome pour la navigation du navigateur
  • Ne démarre pas les conteneurs automatiquement
Quand l'utiliser

Utilisez cette compétence lorsque vous devez synchroniser la documentation des guides avec l'interface utilisateur actuelle de NiFi après une mise à jour.

Quand l'éviter

Ne l'utilisez pas si vous ne disposez pas d'un environnement NiFi en cours d'exécution ou si vous n'êtes pas en train de mettre à jour la documentation de l'interface.

Analyse de sécurité

Prudence
Score qualité92/100

The skill performs local development tasks (checking Docker containers, taking screenshots, updating docs) using Bash, file writes, and browser automation. No destructive commands, external data exfiltration, or obfuscated payloads. However, it leverages powerful tools (Bash, Playwright) in a way that could be risky if dependencies are tampered with, so caution is appropriate.

Points d'attention
  • •Uses Bash to run scripts that check container status and start Playwright tests, which could potentially execute arbitrary code if dependencies are compromised, but all operations are local development tasks.
  • •Chrome browser automation with the Claude-in-Chrome extension may interact with local NiFi instance; no data exfiltration.
  • •Playwright scripts may access localhost services and handle authentication credentials, but they remain within the containerized environment.
Comment cette analyse est faite

Exemples

Full screenshot update
/update-guide-screenshots
Verify UI only
/update-guide-screenshots verify

name: update-guide-screenshots description: Verify NiFi custom UI tabs via Chrome and update doc/guides screenshots and guides user-invocable: true allowed-tools: Bash, Read, Write, Edit, Glob, Grep, mcp__claude-in-chrome__*

Update Guide Screenshots Skill

Verifies the NiFi custom UI against existing documentation, takes fresh screenshots, and updates doc/guides/ content to match the current UI.

Parameters

Optional argument selects the workflow:

  • /update-guide-screenshots — Full workflow: verify UI via Chrome, take screenshots, update docs
  • /update-guide-screenshots verify — Chrome-only: browse UI tabs and report differences (no file changes)
  • /update-guide-screenshots screenshots — Take screenshots only (Playwright headless, no Chrome needed)
  • /update-guide-screenshots docs — Update documentation text only (assumes screenshots are current)

Prerequisites

  • NiFi and Keycloak containers must be running. Use /deploy start if not.
  • For verify mode: Chrome browser with Claude-in-Chrome extension connected.
  • For screenshots and default mode: Playwright installed in e-2-e-playwright/.

Workflow

Step 1: Verify Containers Running

./integration-testing/src/main/docker/check-status.sh --quiet

If not healthy, instruct the user to run /deploy start first. Do NOT start containers from this skill.

Step 2: Read Current Documentation

Read these files to understand the current documented state:

  • doc/guides/QuickStart.adoc — Main guide with processor and gateway documentation
  • doc/guides/IssuerConfigPropertiesGuide.adoc — Detailed issuer configuration walkthrough

Also read all existing screenshot PNGs in doc/guides/ to compare against the live UI.

Step 3: Verify UI via Chrome (for verify and default mode)

Use Chrome browser automation to navigate the live NiFi UI and compare against documentation.

3a. Log in to NiFi

  1. Navigate to https://localhost:9095/nifi/
  2. Enter credentials: testUser / drowssap
  3. Click Log in
  4. Wait for canvas to load (URL contains /process-groups/)

3b. Inspect JWT Processor Custom UI

  1. From root canvas, double-click the JWT Auth Pipeline process group
  2. Right-click the MultiIssuerJWTTokenAuthenticator processor → click Advanced
  3. Wait for custom UI to load
  4. Verify and screenshot each tab:
    • Configuration — Issuer form with Name, JWKS Source Type, Issuer URI, JWKS URL, Audience, Client ID
    • Token Verification — Token input textarea, Verify Token / Clear buttons, Verification Results area
    • Metrics — Shows "Metrics Not Available" message for JWT processor
    • Help — Accordion sections: Getting Started, Issuer Configuration, Authorization Rules, Token Verification, Troubleshooting, Additional Resources
  5. Click Back to Processor to return

3c. Inspect REST API Gateway Custom UI

  1. Navigate to root canvas, double-click the REST API Gateway process group
  2. Right-click the RestApiGateway processor → click Advanced
  3. Wait for custom UI to load
  4. Verify and screenshot each tab:
    • Endpoint Configuration — Global Settings table + route table with Name, Path, Methods, Enabled, Actions columns
    • Endpoint Tester — Route dropdown, Method dropdown, Authorization Token textarea, Send Request button
    • Issuer Configuration — Issuer table with Name, JWKS Source, Type, Issuer URI, Actions columns
    • Token Verification — Same as JWT processor Token Verification
    • Metrics — Gateway Metrics with Token Validation, HTTP Security, Gateway Events sections
    • Help — REST API Gateway accordion with Key Features, Tabs listing, Troubleshooting, Additional Resources

Also capture the Route Editor by clicking Edit on a route from the Endpoint Configuration tab.

3d. Report Differences

Compare what was seen in Chrome against the existing screenshots and documentation text. Report:

  • New tabs not documented
  • Removed tabs still documented
  • Changed content/layout within tabs
  • Incorrect text descriptions

Step 4: Take Fresh Screenshots (for screenshots and default mode)

Write a temporary Playwright script to e-2-e-playwright/take-screenshots.mjs and run it. The script must:

  1. Use @playwright/test (installed in e-2-e-playwright/node_modules)
  2. Launch headless Chromium with --ignore-certificate-errors, ignoreHTTPSErrors: true, and locale: 'en-US' to force English UI
  3. Set viewport to 1456 x 816 for consistent screenshot dimensions
  4. Log in via the NiFi login form (testUser / drowssap)
  5. Use the NiFi REST API (/nifi-api/flow/process-groups/root) to discover processor IDs
  6. Navigate to each processor's advanced UI via URL: https://localhost:9095/nifi/#/process-groups/{pgId}/Processor/{procId}/advanced
  7. Wait for the iframe to load and locate it with page.waitForSelector('iframe') + contentFrame()
  8. Click tabs WITHIN THE IFRAME using frame.locator('a:visible').filter({ hasText: /^Tab Name$/ })
    • IMPORTANT: Use :visible filter — some tabs have hidden duplicates with class "hidden"
  9. Take page.screenshot({ fullPage: true }) for each tab (captures the full NiFi shell including iframe)
  10. Save screenshots to doc/guides/ with these exact filenames

JWT Processor screenshots:

| Filename | Tab | Notes | |----------|-----|-------| | ui-configuration-tab.png | Configuration | Default tab, shows issuer form | | ui-token-verification-tab.png | Token Verification | Empty token input state |

Gateway Processor screenshots:

| Filename | Tab | Notes | |----------|-----|-------| | ui-gateway-endpoint-configuration.png | Endpoint Configuration | Default tab, shows routes table | | ui-gateway-route-editor.png | Endpoint Configuration | After clicking Edit on first route | | ui-gateway-endpoint-tester.png | Endpoint Tester | Empty state | | ui-gateway-endpoint-tester-response.png | Endpoint Tester | After clicking Send Request | | ui-gateway-issuer-configuration.png | Issuer Configuration | Shows issuers table | | ui-gateway-token-verification.png | Token Verification | Empty token input state | | ui-gateway-metrics.png | Metrics | Shows Gateway Metrics sections | | ui-gateway-help.png | Help | Shows Component Help accordion |

After the script runs successfully, delete the temporary take-screenshots.mjs file.

Step 5: Update Guide Documentation (for docs and default mode)

Update doc/guides/QuickStart.adoc and doc/guides/IssuerConfigPropertiesGuide.adoc based on differences found:

Common things to check and update:

  • Tab counts and names in gateway description (e.g., "four tabs" → "six tabs")
  • Tab list in gateway introduction paragraph
  • New sections for any tabs not yet documented (with image:: directive and description)
  • Removed sections for tabs that no longer exist
  • Screenshot references — ensure every image:: directive matches an actual file in doc/guides/
  • Login credentials — must be testUser / drowssap (not admin/adminadminadmin)
  • Cross-reference anchors — verify link: targets resolve correctly

Do NOT change sections about tabs whose UI has not changed. Only update what is actually different.

Step 6: Report Summary

Output a summary table showing:

  • Which screenshots were updated/added/unchanged
  • Which documentation sections were modified
  • Any issues found that require manual attention

Key Paths

| Path | Purpose | |------|---------| | doc/guides/QuickStart.adoc | Main quick start guide | | doc/guides/IssuerConfigPropertiesGuide.adoc | Detailed issuer configuration guide | | doc/guides/*.png | Guide screenshots | | e-2-e-playwright/ | Playwright project root (has node_modules/) | | e-2-e-playwright/utils/constants.js | Processor type names for API lookups |

Critical Rules

  • NEVER start or stop Docker containers — this skill only reads the running UI
  • ALWAYS delete the temporary take-screenshots.mjs after use
  • ALWAYS use :visible selector when clicking tabs in iframes (hidden duplicates exist)
  • Screenshots MUST use fullPage: true to capture the complete NiFi shell
  • The Playwright script MUST run from the e-2-e-playwright/ directory (for node_modules resolution)
  • Do NOT update screenshots that haven't visually changed — compare before overwriting
  • NiFi custom UI loads inside an iframe on the /advanced URL — all tab interactions must target the iframe's contentFrame()
  • Screenshots MUST always be in English — the UI auto-detects browser language via navigator.language, so Playwright must launch with locale: 'en-US' to prevent German or other translations from appearing

Du fichier au premier essai

Le téléchargement contient exactement le contenu affiché sur cette fiche. Cette copie peut différer de la dernière version du dépôt source.

Consulter la source et ses fichiers annexes

Ce téléchargement contient uniquement SKILL.md. Les scripts, références, modèles et dépendances éventuels ne sont pas inclus. Récupérez les fichiers nécessaires depuis la source en conservant leur arborescence avant de poursuivre.

1. Télécharger le fichier

Télécharger SKILL.md

Depuis la racine d’un projet de test, enregistrez le fichier sous .skill-downloads/update-guide-screenshots-mmk3nhb4/SKILL.md, ou utilisez la commande suivante. Ce dossier sert à examiner la skill avant son installation.

Commande pour macOS/Linux ou WSL : un shell POSIX et curl sont nécessaires. Sous Windows sans WSL, utilisez le bouton de téléchargement et créez le dossier manuellement.

mkdir -p '.skill-downloads/update-guide-screenshots-mmk3nhb4' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/update-guide-screenshots-mmk3nhb4/download' --output '.skill-downloads/update-guide-screenshots-mmk3nhb4/SKILL.md.part' && mv '.skill-downloads/update-guide-screenshots-mmk3nhb4/SKILL.md.part' '.skill-downloads/update-guide-screenshots-mmk3nhb4/SKILL.md'

2. Vérifier les prérequis

Lisez SKILL.md avant de l’utiliser. Si le fichier cite des scripts ou services externes, examinez-les et préparez les accès nécessaires dans votre environnement de test.

Outils déclarés par l’auteur (à vérifier dans votre agent) : Bash, Read, Write, Edit, Glob, Grep, mcp__claude-in-chrome__*

Extrait original : Prerequisites
  • NiFi and Keycloak containers must be running. Use /deploy start if not.
  • For verify mode: Chrome browser with Claude-in-Chrome extension connected.
  • For screenshots and default mode: Playwright installed in e-2-e-playwright/.

Les plateformes de la fiche sont des indications du catalogue. Les chemins ci-dessous suivent la documentation des outils ; ils ne prouvent pas que cette skill y a été exécutée. Aucune version minimale de ces outils n’est attestée pour cette fiche.

3. Charger la skill

Après vérification, copiez le dossier complet dans le projet avec l’une des commandes ci-dessous, puis ouvrez une nouvelle session de l’outil. La commande s’arrête si un dossier du même nom existe déjà : comparez les fichiers avant de le remplacer.

Claude Code
test -f '.skill-downloads/update-guide-screenshots-mmk3nhb4/SKILL.md' && test -s '.skill-downloads/update-guide-screenshots-mmk3nhb4/SKILL.md' && mkdir -p '.claude/skills' && test ! -e '.claude/skills/update-guide-screenshots' && cp -R '.skill-downloads/update-guide-screenshots-mmk3nhb4' '.claude/skills/update-guide-screenshots'

OpenSkills

OpenSkills doit déjà être installé. La procédure locale install/read est contrôlée avec OpenSkills 1.5.0, qui exige Node.js ≥ 20.6.0. Aucun slug du catalogue n’est résolu automatiquement.

Installation officielle d’OpenSkills
openskills install './.skill-downloads/update-guide-screenshots-mmk3nhb4'

openskills read 'update-guide-screenshots-mmk3nhb4'

La lecture doit afficher le contenu du fichier installé et son dossier de base. Elle ne lance ni la skill ni ses dépendances.

Pour un agent qui lit AGENTS.md, synchronisez ensuite l’index. Cette commande modifie AGENTS.md : relisez le diff avant de l’utiliser.

openskills sync

Mode manuel ou autre outil : joignez SKILL.md à une conversation, ou ouvrez-le dans un agent capable de lire les fichiers. Ajoutez les ressources annexes nécessaires. Il n’existe pas de dossier universel reconnu par tous les outils.

4. Faire un premier essai

Utilisez une entrée courte et fictive : un endpoint d’API, un petit document ou un brief d’interface. Dans une nouvelle conversation, joignez le fichier ou donnez son chemin à l’agent, puis adaptez cette demande :

Lis .skill-downloads/update-guide-screenshots-mmk3nhb4/SKILL.md et applique ses instructions à cet exemple : [décrire une entrée de test]. Indique les fichiers, dépendances ou accès qui manquent. Produis le résultat demandé par la skill sans inventer de données ni exécuter de script non examiné.

Résultat attendu : une sortie correspondant aux instructions de la skill, ou une liste précise des prérequis manquants. Une simple confirmation de lecture ne valide pas le premier usage. Si une ressource externe est indisponible, ce parcours reste à tester.

Skills similaires