Ce qui se passe
Quand un agent doit regarder un fichier de données, il écrit un script Python, le lance et lit la sortie. Ça marche — c'est lent, et surtout il devine les noms de colonnes et les types au lieu de les lire.
L'équipe DuckDB publie duckdb-skills, un lot de skills qui remplace ce
détour par une requête SQL, puisque DuckDB lit à peu près n'importe quel fichier
directement.
/plugin marketplace add duckdb/duckdb-skills
/plugin install duckdb-skills@duckdb-skillsLes skills deviennent disponibles comme /duckdb-skills:nom-du-skill dans toutes
les sessions suivantes. La CLI DuckDB doit être installée ; sinon les skills
proposent de l'installer.
La boucle qui change tout
L'exemple de l'annonce vaut mieux qu'une description :
-- Question : combien de trajets font plus de 10 miles ?
SELECT count(*) FROM 'trips.parquet' WHERE distance > 10;
-- Binder Error: Referenced column "distance" not found
-- Candidate bindings: "trip_distance"
SELECT count(*) FROM 'trips.parquet' WHERE trip_distance > 10;
-- 184362Deux conversations s'empilent : la vôtre avec Claude, en langage naturel, et celle de Claude avec DuckDB, en SQL. Quand une requête échoue, l'agent lit l'erreur, ajuste le SQL et recommence — sans repasser par vous. DuckDB donne des réponses exactes à des questions exactes, ce qui donne à l'agent une base ferme pour raisonner.
Ce qu'il y a dans le plugin
Lire, interroger, convertir
attach-dbattache une base DuckDB et l'enregistre dans l'état de session.queryexécute du SQL ou une question en français sur les bases attachées ou un fichier.read-filelit et profile n'importe quel fichier — CSV, JSON, Parquet, Avro, Excel, spatial, SQLite, Jupyter — sur disque local, S3, GCS, Azure ou HTTPS.convert-fileconvertit d'un format à l'autre.
Distant et spatial
s3-exploreliste et interroge S3, R2, GCS, MinIO ou tout stockage compatible S3 sans rien télécharger.spatialrépond aux questions de distance, plus proches voisins, jointures spatiales, y compris sur les données libres Overture Maps.
Contexte
duckdb-docscherche dans la documentation DuckDB et DuckLake.read-memoriesfouille les journaux des sessions précédentes pour retrouver décisions, conventions et TODO en suspens.install-duckdbinstalle ou met à jour les extensions, y compris communautaires.
Il n'est pas nécessaire de taper la commande slash : chaque skill porte une description qui dit à Claude Code quand il s'applique. « Convertis ce CSV en Parquet » suffit.
L'état partagé
Les skills partagent un fichier state.sql par projet — un script SQL nu
d'instructions ATTACH, USE et LOAD, plus les secrets et les macros. Une
session se restaure donc à la main :
duckdb -init state.sqlC'est le détail qui empêche le dispositif d'être une boîte noire : ce que l'agent a mis en place est lisible, versionnable, et rejouable sans lui.
À retenir
Deux limites annoncées. C'est réservé à Claude Code, et l'annonce ne donne aucun chiffre — ni tokens économisés, ni temps gagné. Le gain reste donc qualitatif : l'agent cesse de deviner un schéma qu'il pouvait lire.
Le dépôt est duckdb/duckdb-skills.
Pour signaler une erreur DuckDB, joindre la sortie de duckdb --version.