Que fait CLI-Anything OpenRefine ?
Utilisez cette compétence lorsqu'une tâche nécessite un nettoyage de données, une transformation, des historiques d'opérations réutilisables ou une exportation CSV/TSV d'OpenRefine à partir d'un flux de travail automatisé d'agent.
Prérequis
Installez le harnais :
cd openrefine/agent-harness
python -m pip install -e .
Démarrez OpenRefine avant les commandes backend :
openrefine -i 127.0.0.1 -p 3333
Définissez un serveur personnalisé avec OPENREFINE_URL=http://127.0.0.1:3333 ou passez --base-url.
Règles de commande pour les agents
- Préférez
--jsonsur chaque commande ponctuelle. - Utilisez
--session <chemin>pour un état de tâche isolé. - Importez ou ouvrez un projet avant les commandes de ligne, d'application, d'exportation, d'annulation ou de rétablissement.
- Les fichiers JSON d'historique d'opérations OpenRefine existants peuvent être passés directement à
data apply. - Les fichiers générés sont des opérations JSON OpenRefine normales et des données CSV/TSV exportées.
Commandes courantes
cli-anything-openrefine --json server ping
cli-anything-openrefine --json project list
cli-anything-openrefine --json --session run/session.json project import messy.csv --name cleanup
cli-anything-openrefine --json --session run/session.json data rows --limit 10
cli-anything-openrefine --json ops text-transform run/trim.json --column Name --expression 'value.trim()'
cli-anything-openrefine --json --session run/session.json data apply run/trim.json
cli-anything-openrefine --json --session run/session.json data export run/clean.csv --format csv
cli-anything-openrefine --json --session run/session.json session undo
cli-anything-openrefine --json --session run/session.json session redo
REPL
Exécutez cli-anything-openrefine sans sous-commande pour entrer dans le REPL.
Pour les parcours utilisateur automatisés, redirigez des commandes REPL séparées par des sauts de ligne via l'entrée standard. Les flux redirigés utilisent automatiquement un chemin d'entrée/sortie ASCII uniquement tandis que les terminaux interactifs conservent la bannière Unicode, l'historique des invites et le style :
printf 'help\nexit\n' | cli-anything-openrefine
Les charges utiles Unicode sont rendues sous forme d'échappements ASCII inversibles lorsque le REPL est redirigé, évitant ainsi que les anciens encodages de sortie Windows transforment une commande réussie en un parcours échoué.
Les workflows redirigés renvoient un statut de sortie non nul à exit ou EOF si une commande a échoué,
ce qui permet à CI de détecter un parcours utilisateur non réussi.
Gestion des erreurs
Lorsque --json est défini, les échecs de commande écrivent un objet JSON sur stderr avec ok: false.