Diwall

Français
Télécharger 1.24.4

Guide rapide

Chaque commande, action et code de sortie sur une seule page — le guide rapide du dépôt, copié tel quel.

Version 1.24.4 — Septembre 2026

Tout sur une seule page. Référence complète : docs/MANUEL.md.


Trois commandes

# Consulter une page : PNG + éléments numérotés + arbre d'accessibilité.
/opt/diwall/venv/bin/python3 /opt/diwall/shot.py --url URL --som --a11y

# Lecture sans capture (~2 secondes plus rapide, pas de fichier PNG).
/opt/diwall/venv/bin/python3 /opt/diwall/shot.py --url URL --mode fast

# Exécuter un scénario.
/opt/diwall/venv/bin/python3 /opt/diwall/rpa.py --scenario FILE.json

Installé depuis le .deb ? Utilisez diwall-shot et diwall-rpa au lieu des chemins complets. Le premier appel sur une machine nécessite --guide-version X.Y, à lire avec grep notice-version /opt/diwall/docs/GUIDE_LLM.md.


La boucle

        you decide what to do next
                  │
                  ▼
   ┌──────────────────────────────┐
   │  shot.py / rpa.py            │   one process, one JSON on stdout
   │    ├─ Chromium (headless)    │
   │    ├─ SoM: numbers elements  │
   │    ├─ A11y: page structure   │
   │    └─ secrets: fills credentials│   never in the shell, never in a log
   └──────────────┬───────────────┘
                  │  PNG + JSON
                  ▼
        you read the same state
        the operator can see too

L’état de la session est stocké dans un fichier, et non dans le processus : un deuxième appel avec --reprendre-session réutilise les cookies – jamais l’état du DOM.


Lire la sortie dans cet ordre

LireVous indique
successi l’exécution s’est terminée
boussole.url_couranteoù vous vous êtes réellement trouvé
boussole.dernier_code_httple dernier état de navigation
etat.pret_a_agir + etat.raisonsles frictions perçues — un rapport, et non une alerte
capture_som / elements_somce qu’il faut cliquer, et son numéro
respectvotre propre trace : pages, actions, durée

Si boussole ne correspond pas à vos attentes, arrêtez-vous avant toute action modifiant le texte.


Chaque action

type est toujours requis. Les clés ci-dessous sont les clés supplémentaires.

ActionRequisOptionnel
naviguerurl—
cliquerselecteurforce, repli_js
cliquer_somid—
cliquer_visueldescription—
cliquer_iframeiframe_selecteur | iframe_chemin, selecteurforce
remplirselecteur, valeursecret_cle
remplir_somid, valeursecret_cle
remplir_iframeiframe_selecteur | iframe_chemin, selecteur, valeursecret_cle
capturernomsom
evaluerscriptattendu | contient | motif
defilerpx | selecteur—
pausemsinterval_capture
attendreselecteurinterval_capture
attendre_selecteur_presentselecteur—
attendre_absenceselecteurdelai_initial_ms
attendre_navigation——
attendre_urlmotifattendre_changement
attendre_reseau_calme—timeout_ms
attendre_mfa_ntfyid_somtimeout
nettoyer_overlayselecteur—
declencher_scenarioscenario—

Identifiants — la seule forme correcte

{"type": "remplir_som", "id": 3, "valeur": "depuis_secrets", "secret_cle": "password"}

N’extrayez jamais un secret dans le shell. lib/repertoire_chiffre.py le résout à l’intérieur du processus Playwright ; la valeur n’atteint jamais votre ligne de commande, votre historique, ni aucun journal. depuis_secrets_totp fait de même pour un code TOTP.


Quand quelque chose résiste

SymptômeEssayez
Le délai d’attente de clic, l’élément est visuellement masqué"force": true, puis "repli_js": true
L’élément n’est pas numéroté par SoM--shadow-dom (ouvrir les Shadow Roots)
Élément sous la ligne de flottaisondefiler d’abord — vérifiez boussole.som_hors_viewport
La page ne se charge jamais complètement--wait-until load
Le bouton de soumission ne fait rien, aucune erreurvalidation HTML native — soumettez le formulaire via evaluer
exit 42répertoire chiffré non monté : diwall-monter-secrets
exit 43pas de diwall.conf — copiez l’exemple à côté
guide_non_lupasser --guide-version une fois
403 / 429lire respect.waf_bloquants — un signal, et non une exception

Codes de sortie

0 succès · 1 erreur Playwright ou assertion échouée · 2 Incompatibilité de la zone d’affichage (watch.py) · 3 Mauvais interpréteur, utilisez l’environnement virtuel (venv) · 42 Répertoire chiffré fermé ou somme de contrôle incorrecte · 43 diwall.conf manquant.