Synthèse automatique
Assistant interactif qui guide l'utilisateur pour connecter un nouveau jeu de données (CSV, DuckDB, MotherDuck, PostgreSQL, BigQuery, Snowflake) au système d'analyse IA, en validant la connexion et en créant le manifeste du dataset.
Points forts
- Couvre six types de sources, des fichiers CSV locaux aux entrepôts cloud comme BigQuery et Snowflake
- Exécute réellement les étapes (création de fichiers, test de connexion, profilage du schéma) au lieu de se limiter à de la documentation
- Génère un identifiant de dataset normalisé et l'arborescence .knowledge/datasets/{id}/ avec un manifest.yaml
- Invite à stocker les identifiants dans des variables d'environnement plutôt que de demander des mots de passe en clair
Limites
- Snowflake est délégué à un assistant séparé (/setup-snowflake) plutôt que traité entièrement ici
- MotherDuck dépend d'un jeton MCP configuré en amont, hors du périmètre du wizard
- Ne traite pas la gestion des rôles, la rotation des identifiants ni l'audit des accès
À utiliser dès qu'un utilisateur veut ajouter une nouvelle source de données ou connecter une base à analyser et qu'aucun dataset n'existe encore.
À éviter si le dataset est déjà connecté et qu'il s'agit simplement de basculer dessus avec /switch-dataset ou de modifier une connexion existante.
Analyse de sécurité
SûrThe skill is a legitimate interactive setup wizard for connecting datasets. It creates local knowledge files, validates database connections, and profiles schemas. It explicitly avoids storing passwords in plain text and directs users to environment variables. No destructive commands, obfuscated payloads, secret exfiltration, or safety-disabling instructions are present.
Aucun point d'attention détecté
Comment cette analyse est faiteExemples
/connect-data type=postgres — I want to hook up our production Postgres replica for analysis.I have a folder of CSV exports at ./data/sales-2024 — add it as a new dataset I can analyze.Can you connect to my BigQuery dataset so I can start querying it?name: connect-data description: | Guided wizard to connect a new dataset to the AI Analyst system. Use this skill whenever the user wants to add a new data source, connect a database, set up data access, or configure a new dataset for analysis. This skill handles the full connection workflow: choosing connection type (CSV, DuckDB, MotherDuck, PostgreSQL, BigQuery, Snowflake), collecting credentials, validating connectivity, profiling schema, and setting up the knowledge brain. Trigger this skill when users say things like "/connect-data", "connect my database", "add a new dataset", "set up my data", "I have a database I want to analyze", "can you connect to my Postgres/BigQuery/Snowflake", "I need to add CSV files", "how do I get my data into this system", or "connect to my warehouse". Also trigger after first-run welcome when users need to set up their first dataset, or after /switch-dataset when the target dataset doesn't exist yet. This is the primary entry point for all new data connections — always offer this when users mention having data they want to analyze but haven't connected yet.
Skill: Connect Data
Purpose
This is an interactive setup wizard, not a documentation generator. Guide the user through the actual connection process by executing each step, creating files, testing connectivity, and setting up the knowledge system. Do not just explain what would happen — make it happen.
When to Use
- User says
/connect-dataor "connect my database" or "add a new dataset" - First-run welcome suggests connecting data
- After
/switch-datasetwhen the target dataset doesn't exist yet
Invocation
/connect-data — start the connection wizard
/connect-data type=postgres — skip type selection and go directly to Step 2
Parameter Handling: If the user provides type={connection_type} (e.g., type=bigquery, type=postgres), SKIP Step 1 entirely and proceed directly to Step 2 with that connection type already selected.
Instructions
Step 1: Choose Connection Type
Skip this step if type parameter was provided in the invocation.
Present options:
- CSV files — "I have CSV files in a local directory"
- DuckDB — "I have a local DuckDB database file"
- MotherDuck — "I have a MotherDuck cloud database"
- PostgreSQL — "I have a PostgreSQL database"
- BigQuery — "I have a Google BigQuery dataset"
- Snowflake — "I have a Snowflake warehouse"
Step 2: Collect Connection Details
For CSV:
- Ask: "What's the path to your CSV directory? (relative to this repo)"
- Verify the directory exists and contains .csv files
- List found files and ask to confirm
For DuckDB:
- Ask: "Path to your .duckdb file?"
- Verify file exists
- Test connection with
SELECT 1
For MotherDuck:
- Ask: "Database name and schema?"
- Note: "MotherDuck connects via MCP. Make sure your token is configured."
For PostgreSQL / BigQuery:
- Copy the appropriate template from
connection_templates/ - Ask user to fill in required fields
- IMPORTANT: Never ask for or store passwords directly. Guide the user
to use environment variables (e.g.,
$PG_PASSWORD).
For Snowflake:
- Route to the dedicated setup wizard: "Run
/setup-snowflakefor guided Snowflake setup — it'll configure your credentials, test the MCP connection, and explore your data." - If
.envalready hasSNOWFLAKE_ACCOUNT,SNOWFLAKE_USER, andSNOWFLAKE_PASSWORD, skip the wizard and use the Snowflake MCPrun_snowflake_querytool directly for testing and schema profiling.
Step 3: Create Dataset Brain
- Generate a dataset_id from the display name using lowercase letters with hyphens (NOT underscores).
- Example: "Production Analytics" →
production-analytics - Example: "GA4 Event Data" →
ga4-event-data - Example: "Sales Database" →
sales-database
- Example: "Production Analytics" →
- Create
.knowledge/datasets/{id}/directory - Write
manifest.yamlfrom the connection template + user inputs - Create empty
quirks.mdwith section headers - Create empty
metrics/index.yaml
Step 4: Test Connection
You MUST use ConnectionManager — do not write custom connection scripts.
Use ConnectionManager from helpers/connection_manager.py:
- Instantiate with the new config:
from helpers.connection_manager import ConnectionManager config = {"type": connection_type, "dataset_id": dataset_id, ...} mgr = ConnectionManager(config=config) - Call
test_connection():result = mgr.test_connection() - If fails: show error, offer to retry or edit config
- If passes: proceed to schema profiling
Why ConnectionManager? It handles connection pooling, error handling, and provides a consistent interface across all warehouse types (CSV, DuckDB, Postgres, BigQuery, Snowflake). Do not bypass it with psycopg2, pandas, or warehouse-specific clients.
Step 5: Profile Schema
Use ConnectionManager methods — do not write raw SQL for schema introspection.
- Call
mgr.list_tables()to enumerate tables - For each table: get column names and types via
mgr.get_table_schema(table_name) - Generate
schema.mdusingschema_to_markdown()fromhelpers/data_helpers.py - Write to
.knowledge/datasets/{id}/schema.md - Offer to run full data profiling: "Want me to deep-profile this dataset?"
Why? ConnectionManager abstracts away warehouse-specific schema queries (INFORMATION_SCHEMA for Postgres/BigQuery, PRAGMA for DuckDB, pandas for CSV).
Step 6: Set Active
- Update
.knowledge/active.yamlto point to the new dataset - Confirm: "Connected! {display_name} is now your active dataset."
- Show: table count, estimated row count, date range (if detected)
- Suggest next steps:
/exploreto browse,/metricsto define metrics, or just ask a question
Rules
- Never store credentials in plain text in manifest files
- Always test the connection before declaring success
- Always generate a schema.md — it's required for analysis
- Create the full .knowledge/datasets/{id}/ tree even if profiling fails
- If the user already has this dataset, ask before overwriting
Edge Cases
- Directory doesn't exist: Offer to create it
- No CSV files found: Check for other formats (.parquet, .json)
- Connection fails repeatedly: Suggest checking credentials, firewall, VPN
- Schema too large (>100 tables): Profile only, skip per-table details
- Dataset name collision: Append a number (e.g., "mydata-2")
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 annexesCe 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.mdDepuis la racine d’un projet de test, enregistrez le fichier sous .skill-downloads/data-connection-wizard-mrwakceb/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/data-connection-wizard-mrwakceb' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/data-connection-wizard-mrwakceb/download' --output '.skill-downloads/data-connection-wizard-mrwakceb/SKILL.md.part' && mv '.skill-downloads/data-connection-wizard-mrwakceb/SKILL.md.part' '.skill-downloads/data-connection-wizard-mrwakceb/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.
Aucune section de prérequis reconnue dans ce fichier. Cela ne signifie pas qu’il est autonome : les bibliothèques, outils et accès peuvent être cités ailleurs dans le contenu ou dans le dépôt source.
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/data-connection-wizard-mrwakceb/SKILL.md' && test -s '.skill-downloads/data-connection-wizard-mrwakceb/SKILL.md' && mkdir -p '.claude/skills' && test ! -e '.claude/skills/connect-data' && cp -R '.skill-downloads/data-connection-wizard-mrwakceb' '.claude/skills/connect-data'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’OpenSkillsopenskills install './.skill-downloads/data-connection-wizard-mrwakceb'openskills read 'data-connection-wizard-mrwakceb'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 syncMode 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/data-connection-wizard-mrwakceb/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.
Créer des cartes interactives avec kepler.gl
Data & IA
Création de cartes interactives et export HTML autonome avec le package Python keplergl, à partir de données géospatiales (DataFrame, GeoJSON, CSV).
Optimisation de paramètres par agent
Data & IA
Guide d'optimisation de systèmes configurables avec objectif mesurable, via des essais bornés et une recommandation fondée sur des preuves.
Relance des visiteurs ICP
Data & IA
Identifiez les utilisateurs inscrits correspondant au profil client idéal mais qui n'ont pas activé, et rédigez des messages de relance personnalisés pour les réengager.