steedos-analytics

Generates Steedos question and dashboard YAML files with MBQL queries and grid layouts.

1.6k|414|Updated Mar 4, 2019
One-click install
npx skills add https://github.com/steedos/steedos-platform --skill steedos-analytics
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: steedos-analytics
Source: https://github.com/steedos/steedos-platform/tree/main/skills/steedos-analytics
Command: npx skills add https://github.com/steedos/steedos-platform --skill steedos-analytics

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Writing Steedos analytics files by hand is error-prone: questions and dashboards require strict YAML structures, MongoDB-style ObjectIds, MBQL query syntax, result_metadata column definitions, and an 18-column dashboard grid. This Skill encodes all of those rules so you can produce valid .question.yml and .dashboard.yml files directly.

Core Features & Use Cases

  • Question file generation: Creates .question.yml files with MBQL dataset_query definitions (count, filter, breakout, limit, native SQL), display types (scalar, table, bar, line, pie, funnel, pivot), visualization_settings, and result_metadata with correct base_type mappings.
  • Dashboard file generation: Creates .dashboard.yml files with 18-column grid card placement, dashboard filter parameters (string, number, date types), parameter_mappings linking filters to cards, and string-typed boolean fields.
  • ID and workflow rules: Enforces unique 24-character ObjectIds, id == entity_id constraints, and the create-questions-first-then-dashboard workflow.
  • Use Case: You need a media statistics dashboard for a Steedos app. Generate three question files (total count scalar, type breakdown bar chart, org list table), then a dashboard arranging them with cascading unit-name and unit-level filters.

Quick Start

Create a Steedos analytics dashboard with a scalar count question and a bar chart question grouped by status for the contracts object, including a status filter parameter.

Frequently Asked Questions about steedos-analytics

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I create a Steedos question YAML file with an MBQL query?

Create a .question.yml file under <package>/main/default/questions/ with a dataset_query block containing source-table, aggregation, and optional filter or breakout clauses. Set display to a type like scalar, bar, or table, and include result_metadata entries for each output column.

How do I add filter parameters to a Steedos dashboard?

Define entries in the dashboard's top-level parameters list with an 8-char hex id, a type like string/= or date/range, and a values_source_type of card, static-list, or connected-field. Then add parameter_mappings on each card linking the parameter id to a target field dimension.

What display types does Steedos analytics support for charts?

Supported display values include scalar, table, bar, line, pie, area, row, smartscalar, funnel, and pivot. Choose scalar for single counts, bar or pie for grouped breakouts, and table for raw record lists.

Can I use native SQL instead of MBQL in a Steedos question?

Yes, set dataset_query.type to native and provide the SQL string under dataset_query.native.query. The query_type field remains query, and database_id stays 1.

Why does my Steedos dashboard card layout break or overlap?

The dashboard grid is 18 columns wide, so each card's col plus size_x must not exceed 18. Common patterns are three cards at size_x 6 with cols 0, 6, 12, or a full-width card at size_x 18.

When should I use steedos-pages instead of analytics dashboards?

Use steedos-pages when you need a custom Amis page rather than a question-and-dashboard analytics view. The analytics skill only covers .question.yml and .dashboard.yml files, not custom page definitions or analytics API calls.