Skip to content

kxsystems/kx-dashboards-knowledge

v0.1.1

KX Dashboards component knowledge for generating schema-valid dashboard JSON from natural language. Bundles kx-dashboard-core (the dashboard envelope, data sources, ViewState, binding, actions and pre-flight checklist) plus per-component skills (Datagrid, Pivot Grid, ChartGL, Maps, Forms, Gauge, and more).

kx-accordion

Use this when the user wants collapsible or expandable sections in a KX Dashboards layout. Use it for section-based content organization; use kx-tabs for tabbed switching and kx-flex-panel for non-collapsible flexible layout containers.

kx-actions

Use this alongside a component skill when adding KX Dashboards interactions such as clicks, hovers, row selection, navigation, or data-source re-execution. It defines how actions are attached and triggered, not the base component itself.

kx-basiccomponents-containers

Use this for KX Dashboards layout containers and navigation primitives such as panels, navigation menus, and overlay drawers. Use it for structural layout needs; use kx-tabs for tabbed switching, kx-accordion for collapsible sections, and kx-flex-panel for fixed-plus-flex layouts.

kx-breadcrumbs

Use this when the user wants a KX Dashboards breadcrumb trail for hierarchical drilldown or drill-through navigation, especially with pivot grids or chart-based exploration. Use kx-tabs for tabbed navigation instead of breadcrumbs.

kx-button

Use this when the user wants a KX Dashboards button or clickable action trigger: labels, icons, tooltips, alignment, fixed width, disabled state, colours, and click actions. Use it for buttons and action triggers; use kx-textinput for free-text entry, kx-dropdown for selection lists, or kx-selectioncontrols for radio/checkbox choices.

kx-chart3d

Use this when the user wants a KX Dashboards 3D chart or 3D visualisation: scatter, line, bar, surface, or 4D color/size-encoded layers. Use it for 3D graphics; use kx-chartgl for standard 2D WebGL charts and kx-gauge for dial or bullet-style KPI charts.

kx-chartgl

Use this when the user wants a KX Dashboards ChartGL chart or chart layer: line, bar, bubble, waterfall, candlestick, multi-axis, streaming, or other WebGL-accelerated visualisations. Use kx-heatmap for standalone heatmap components; read kx-dashboard-core first for the dashboard envelope, data sources, ViewState, and checklist.

kx-dashboard-core

Use this when building or editing any KX Dashboards JSON dashboard: start here for the dashboard envelope, screens, widget wrapper, ViewState, data sources, actions, notifications, deployment, and the pre-flight checklist. Load it before component skills such as kx-chartgl, kx-datagrid, kx-pivot-grid, or kx-query when you are assembling a full dashboard or wiring its shared infrastructure.

kx-datafilter

Generate KX Dashboards input and filter components: DataFilter (visual filter builder, definitionId=48) and QueryBuilder (visual kdb+ query constructor, definitionId=10254). Use when the user asks for a filter panel, filter builder, AND/OR filter, or query builder for a grid or chart. Critical: DataFilter requires a two-data-source + ViewState bridge — always follow that pattern. For parameter input forms and Dataform (definitionId=27) use the kx-dataform skill instead. Not for a simple single/multi value picker bound to a ViewState (use kx-dropdown or kx-selectioncontrols). Also read kx-dashboard-core for envelope, data sources, ViewState, and the agent checklist.

kx-dataform

Use this when the user wants a KX Dashboards parameter-input form that writes values into ViewStates and re-executes a data source on submit: simple input panels, forms with dropdowns, date pickers, sliders, or password fields. Use kx-formbuilder for free-form record entry and kx-datafilter for filter/query-builder UIs instead.

kx-datagrid

Use this when the user wants a flat, row-by-row KX Dashboards table for browsing or editing records (trade blotter, price table, real-time table, sortable grid, editable grid). Do not use it for aggregated pivot-style analysis; use kx-pivot-grid for that. Read kx-dashboard-core first for the shared dashboard envelope, data sources, ViewState, and checklist.

kx-datepicker

Use this when the user wants a KX Dashboards date or time picker: calendar date, datetime, timestamp, timespan, or month input bound to a ViewState. The picker mode is determined by the ViewState type bound to SelectedDate. Also read kx-dashboard-core for envelope, data sources, ViewState, and the agent checklist.

kx-dropdown

Use this when the user wants a KX Dashboards dropdown or multi-select list for picking one or more values: symbol selectors, filter lists, dependent dropdowns, grouped items, or static option lists. Use kx-selectioncontrols for radio buttons or checkboxes and kx-datafilter for multi-condition filter-builder UIs.

kx-flex-panel

Use this when a KX Dashboards layout needs a fixed header, footer, or sidebar beside a flexible main content area. Use it for pinned-plus-fill layouts; use kx-basiccomponents-containers for general panels and drawers and kx-tabs for tabbed switching.

kx-formbuilder

Use this when the user wants a KX Dashboards data-entry form that collects user values for submission or editing, including dynamic forms, validators, and form-state output to ViewStates. Use kx-dataform for parameter-input forms that re-run data sources on submit rather than general data entry.

kx-gauge

Use this when the user wants a KX Dashboards gauge, dial, speedometer, or bullet-style KPI visual. Use it for progress and target-vs-actual displays; use kx-chartgl for conventional charts and kx-pie for proportional segment charts.

kx-handlebars

Use this when a KX Dashboards component needs Handlebars templating for labels, tooltips, KPI text, or other dynamic content. Read it when generating or debugging Template, CustomTooltip, TooltipTemplate, or advancedTooltip fields.

kx-heatmap

Generate KX Dashboards Heatmap/Treemap component: hierarchical treemap visualisation (key=Heatmap, componentName=Treemap, definitionId=5). Use for: treemap, heatmap, treechart, market map, portfolio map, proportional area chart, group-by hierarchy, colour-coded tiles, node size/colour. Data[] layers define display column, size column, colour column, and highlight rules. ColorPalette drives tile colouring. GroupBy creates nested parent/child hierarchy. Not for a heatmap layer on an X/Y chart (use kx-chartgl's Heatmap layer) or a geographic heatmap on map tiles (use kx-offline-map); this is a standalone hierarchical treemap/heatmap of coloured tiles. Also read kx-dashboard-core for envelope, data sources, ViewState, and the agent checklist.

kx-maps

Use this only when the user explicitly wants a KX Dashboards Google Maps GeoMap. For standard offline or custom tile-server maps, use kx-offline-map or kx-quad-map instead.

kx-offline-map

Generate KX Dashboards OfflineMap components (MapLibre/MapTiler, definitionId=1035). ⭐ DEFAULT map type — use this whenever the user asks for a map, geographic visualization, points on a map, heatmap, animated circles, GeoJSON overlay, offline map, or tile map in a KX Dashboard, UNLESS the user explicitly requests Google Maps (use kx-maps GeoMap). Covers all sub-sections: Points, Circles, Lines, Heatmap, HeatmapGrid, AnimatedCircles, ConcentricCircles, Layers, Annotation, Bounds, Icons, NightDayLayer, TileServer, ExternalAPI, Export, and Interactions. For WMTS / OpenLayers custom tile-server maps use kx-quad-map instead.

kx-pie

Generate a KX Dashboards PieJS component: pie or donut chart of proportional segments (key=PieJS, definitionId=1009). Use for: pie chart, donut chart, doughnut, share-of-total, proportional segments, percentage breakdown, part-to-whole, categorical composition, market share, portfolio allocation. DataSet.Label is the categorical column and DataSet.Layers[n].Segment is the numeric value column; DonutRatio > 0 makes it a donut. Use kx-chartgl for line/bar/area charts and kx-gauge for KPI-style gauges. Also read kx-dashboard-core for envelope, data sources, ViewState, and the agent checklist.

kx-pivot-grid

Use this when the user wants a KX Dashboards Pivot Grid or pivot-table-style experience: aggregated drilldown grids, breakdown/aggregate views, OLAP-style analysis, or a grid linked to Breadcrumbs. It is the right choice for pivot-style analysis; use kx-datagrid for flat, record-level tables instead. Load kx-dashboard-core first.

kx-playback

Generate KX Dashboards PlayBack component: time-series playback controller (definitionId=47, key=PlayBack). Use for: playback, time-series replay, animate data, step through events, timeline scrubber, playback speed control, data animation. Mode=Event steps through data rows; Mode=Time uses a time column. Selected ViewState receives the current position. Also read kx-dashboard-core for envelope, data sources, ViewState, and the agent checklist.

kx-quad-map

Generate KX Dashboards QuadMap components (OpenLayers/WMTS, definitionId=1036). Use QuadMap when the user asks for a tile-server map, WMTS map, or OpenLayers map. QuadMap supports Circle/Icon/Line data layers and annotation drawing, but for a standard point/line map without a custom tile server prefer kx-offline-map. For requests involving Google Maps use kx-maps GeoMap; for MapLibre/MapTiler use kx-offline-map. Also read kx-dashboard-core for envelope, data sources, ViewState, and the agent checklist.

kx-query

Use this when creating or changing a KX Dashboards data source: choose the data type, write or validate a kdb+/SQL query, wire ViewState parameters, set polling or streaming, or bind query results to widgets. Read it before generating queries for charts, grids, forms, maps, or actions in a dashboard.

kx-radar

Use this when the user wants a KX Dashboards radar or polar-area chart for comparing dimensions or categories. Use it for radial comparison visuals; use kx-chartgl for standard chart types such as line, bar, or candlestick.

kx-selectioncontrols

Use this when the user wants simple KX Dashboards radio buttons or checkboxes for a single or multiple selection choice. Use kx-dropdown for searchable or dependent selection lists and kx-datafilter for multi-condition filter-builder panels.

kx-specialist

Generate KX Dashboards specialist and visualisation components: EditableList (watchlist, definitionId=668), TreeView (hierarchical tree, definitionId=2002), Trade (Level 2 order book, definitionId=1013), ActionTracker (alert workflow, definitionId=1001), Bitmap (EmbedPy/matplotlib image, definitionId=1999), Graph (force-directed/network graph, definitionId=11110). Triggers: watchlist, editable list, tree, hierarchy, order book, trade book, alert tracker, matplotlib image, network graph, force directed. For PieJS (definitionId=1009) use kx-pie. For Gauge (definitionId=11178) use kx-gauge. For Heatmap (definitionId=5) use kx-heatmap. For PlayBack (definitionId=47) use kx-playback. For Radar (definitionId=1008) use kx-radar. For Breadcrumbs (definitionId=19) use kx-breadcrumbs. Also read kx-dashboard-core for envelope, data sources, ViewState, and the agent checklist.

kx-tabs

Use this when the user wants a KX Dashboards tabbed interface that switches between grouped content sections. Use it for tabbed navigation or content organization; use kx-accordion for collapsible sections and kx-basiccomponents-containers for general panels and drawers.

kx-text

Generate KX Dashboards text display component: Text (static or dynamic label/heading/paragraph/KPI tile, definitionId=17). Use for: label, heading, title, paragraph, static text, rich text, HTML markup, dynamic text from a data source, ViewState-interpolated text via Handlebars template, single-value scalar display, KPI tile, metric card, stat display, total count, aggregate result. IMPORTANT: when a query returns a single value (count, sum, last price, etc.), always use Text — never Dropdown. ComponentName=Text, key=BasicComponents. Also read kx-dashboard-core for envelope, data sources, ViewState, and the agent checklist.

kx-textinput

Use this when the user wants a KX Dashboards free-text input box: search boxes, filter inputs, symbol entry, or multiline text entry. Use kx-button for clickable triggers, kx-datepicker for calendar selection, and kx-selectioncontrols for radio buttons or checkboxes.

kx-texttospeech

Generate KX Dashboards TextToSpeech component: text display with browser speech synthesis (definitionId=36, ComponentName=TextToSpeech, key=BasicComponents). Use for: text to speech, read aloud, voice output, speech synthesis, audio narration, spoken data. Shares HtmlText/Template/Data pattern with the Text component. SpeechOptions controls Voice, Rate, CacheData, and ShowPlayPause. Also read kx-dashboard-core for envelope, data sources, ViewState, and the agent checklist.