From wave
Ayuda al usuario a descubrir qué datos, métricas y dashboards están disponibles en su empresa. Úsalo cuando el usuario pregunte "qué puedo consultar", "qué datos tengo", "qué métricas hay", "qué dashboards existen" o quiera explorar antes de preguntar.
How this skill is triggered — by the user, by Claude, or both
Slash command
/wave:wave-explore-dataThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Descubrimiento del catálogo de datos disponible para el usuario: modelos semánticos, dashboards, cubes, métricas y dimensiones, traducidos a lenguaje de negocio.
Descubrimiento del catálogo de datos disponible para el usuario: modelos semánticos, dashboards, cubes, métricas y dimensiones, traducidos a lenguaje de negocio.
wave_schema(detail="full", field=...); si quiere ver la distribución de una dimensión, usa wave_profile(target="dimension"); si quiere inspeccionar data cruda, usa wave_preview.wave_whoami
wave_list_dashboards
wave_list_semantic_layers
Presenta al usuario un resumen: "Tienes X modelos de datos y Y dashboards. Estos son los principales: ...". Nombres humanos, sin IDs.
Cuando el usuario se interese por un modelo específico:
wave_schema({ semanticLayerId, detail: "names" })
Responde con una lista por área: "El modelo de Ventas tiene los siguientes cubes: Pedidos, Clientes, Productos. En Pedidos puedes medir: monto total, cantidad de pedidos, ticket promedio. Lo puedes cortar por: mes, vendedor, canal, región."
wave_schema({ semanticLayerId, detail: "full", cube: "<cube>" })
Muestra medidas y dimensiones con sus labels y, cuando estén, sus descripciones. No muestres el SQL base salvo que el usuario pregunte "cómo se calcula esto".
Para inspeccionar filas reales del cube modelado:
wave_preview({ target: "cube", dataSourceId, semanticLayerId, cube: "<cube>", limit: 10 })
Para inspeccionar una tabla cruda del data source (power user):
wave_list_tables({ dataSourceId }) // descubrir
wave_preview({ target: "table", dataSourceId, tableName: "<schema.tabla>", limit: 10 })
Presenta como tabla Markdown con headers humanos.
Cuando el usuario pida un campo de otro cube (p.ej. "ventas por sucursal" donde ventas y sucursales son cubes distintos), basta con escribir targetCube.field en dimensions[] o measures[]. El motor encuentra el JOIN automáticamente:
wave_semantic_query({
cube: "ventas",
measures: ["venta_neta"],
dimensions: ["sucursales.nombre"] // cross-cube — JOIN automático
})
El motor incluso resuelve multi-hop: dimensions: ["region.nombre"] desde ventas con ventas → sucursales → region declarado en YAML traversa los 2 hops sin que tengas que enumerarlos. Si el motor responde "no join path", indica que la relación no está declarada en el modelo — pide ayuda al equipo Datawalt.
wave_profile({ target: "dimension", dataSourceId, semanticLayerId, cube: "<cube>", dimension: "<dim>" })
Úsalo cuando el usuario pregunte "qué valores toma X" o "cuáles son los principales <categoría>". Presenta el top-N en prosa, no como JSON.
wave_list_dashboards
Lista por nombre. Si el usuario pregunta qué contiene un dashboard, nómbraselo y sugiere: "Puedo ayudarte a reproducir las mismas preguntas con wave-ask o wave-insights si quieres profundizar".
wave_list_tables sin propósito claro — es más ruido que señal para un usuario de negocio.npx claudepluginhub datawalt/wave-plugins --plugin waveProvides UI/UX resources: 50+ styles, color palettes, font pairings, guidelines, charts for web/mobile across React, Next.js, Vue, Svelte, Tailwind, React Native, Flutter. Aids planning, building, reviewing interfaces.
Searches MemPalace before answering questions about past work, people, projects, or prior decisions. Returns verbatim stored content instead of guessing from model memory.