dashboard-creator
Use before creating dashboards or publishing dashboard data.
- License 许可
- Apache-2.0
- 所属仓库
- accuknox/agentZ
- 最近更新
- 2026-11-10
- Stars
- ★ 56
- Forks
- 14
01 前言 Front Matter
- name
- dashboard-creator
- license
- Apache-2.0
- metadata
- { "domain": "core", "source": "bundled-defaults" }
- description
- Use before creating dashboards or publishing dashboard data.
- compatibility
- opencode
03 SKILL.md 正文
Dashboard Creator
Build the dashboard from values you have already computed. The gateway validates, stores, limits, and queries data; it is not a transformation engine.
Sequence
- Call
list_dashboardsbefore choosing a name. - Finalize every widget definition before calling
create_dashboard. Definitions are immutable. - Call
get_dashboardimmediately before publishing and use the returneddata_revisionfor each widget. - Call
publish_dashboard_dataonce per widget update, with at most 100 records. - If a definition is wrong or a widget reports invalid stored data, delete the dashboard, recreate it, and publish corrected data.
Widget contracts
line,area,step: temporal only; 1–5 series. Each record contains onlyrecorded_atandvalues, with one number per series.pie: latest only; exactly one series. Each record contains onlycategoryand onevaluesentry.bar,horizontal_grouped_bar: temporal or latest; 1–5 series. Each record containscategoryand one value per series.funnel,horizontal_funnel: latest only; exactly one series. Publish uniquely named stages in display order with non-increasing values. Each record containscategoryand one non-negative value.sankey: latest only; exactly one series. Each record containssource,target, and a positivevalue. Source/target pairs must be unique, and all links together must form an acyclic graph.scatter: temporal or latest; 1–5 declared series andaxesmetadata forxandy. Each axis has a displaylabeland optionalunit. Each record containsseries,x,y, and an optionallabel.gauge: latest only; exactly one series, an increasingminimum/maximum, and up to five increasing thresholds. Publish exactly one record containing one value.table: temporal or latest; 1–12 columns and no series. Each record containscells, one cell per declared column. A cell must contain exactly one matching key:text,number,boolean, ordatetime.
Temporal bar, horizontal_grouped_bar, scatter, and table records also require recorded_at.
Latest records must omit it. Only gauges support thresholds. Use an empty thresholds array for
every other widget kind.
Use sum, average, minimum, maximum, last, or count to declare how temporal values
combine inside a server-selected time bucket.
Layout
- Every widget has the same height in the UI.
- Choose
full,half, orthirdwidth. - Prefer a varied layout. Use full width for dense tables and multi-series time charts; use half or third width for gauges and compact categorical charts.
- Keep titles short. Do not encode units or explanatory paragraphs into titles; put units in series or column labels.
- Put scatter coordinate units in
axes.x.unitandaxes.y.unit.
Data rules
- Dashboard, widget, series, and column names are lowercase DNS labels: letters, numbers, and internal hyphens only.
recorded_atanddatetimevalues are RFC 3339 timestamps. Offsets such as+05:30are valid.- Temporal publishing appends records at their explicit
recorded_attimestamps. Timestamps must be within the 30-day retention window and no more than five minutes in the future. - Latest publishing atomically replaces that widget's current snapshot.
- Compute categories, series values, funnel stages, Sankey links, scatter coordinates, table cells, and gauge values before publishing.
- Publish small datasets inline. When records already exist on disk or would make the tool call
large, pass
records: {"json_file":"path"}without reading the file first. The file must contain a UTF-8 JSON array and must not exceed 8 MiB. - Never send extra fields "just in case". Shape mismatches are rejected.
- Do not exceed five series, twelve table columns, one hundred records per publish, or the configured publish request-byte limit.
04 同仓库更多 Skills
example-skill
A valid Agent Skill you can copy and edit.
workflow-scheduler
Use when creating, changing, or deleting workflow schedules.
workflow-results
Use when reviewing workflow results or investigating failed runs.
workflow-creator
Use when creating or revising saved workflow definitions.
skill-creator
Use when creating or updating a skill.