mit einem Klick
mit einem Klick
Create and update Dynatrace dashboards for DSOA telemetry
Create and update Dynatrace workflows for DSOA automation
Create and update DSOA plugins — full development lifecycle from planning through validation
Review a pull request and process review comments left by others
AI-guided QA walkthrough for DSOA releases. Automates version detection, deployment commands, notebook deployment, and interactive test walkthrough. Use when a QA engineer needs to execute the DSOA release test suite.
Create and update Snowflake synthetic test setups for DSOA telemetry validation
| name | dashboard-docs |
| description | Create and update dashboard and workflow documentation |
| license | MIT |
| compatibility | opencode |
| metadata | {"audience":"developers"} |
Use this skill whenever you create or update a dashboard or workflow. Documentation is a first-class deliverable — never skip it.
For every dashboard:
docs/dashboards/<name>/readme.md ← main documentation (you write this)
docs/dashboards/<name>/img/.gitkeep ← placeholder until screenshots are taken
docs/dashboards/README.md ← index (update the table)
For every workflow:
docs/workflows/<name>/readme.md
docs/workflows/<name>/img/.gitkeep
docs/workflows/README.md
readme.md StructureUse a narrative-first, use-case-oriented style. The canonical reference is
docs/dashboards/snowpipes-monitoring/readme.md and
docs/dashboards/tasks-pipelines/readme.md — read one of them before writing.
Rules:
text for plain text, paths,
or commit messages when no more specific language applies. Never leave a bare ```.## heading.# Dashboard: <Title>
<One paragraph: what it monitors, who it is for, and why it matters.>

## <Section 1 Name>

<Open with the question(s) this section answers. Then describe tiles in narrative form,
explaining what each reveals and what action it drives. Use bullets only for compact
per-tile detail.>
## <Section 2 Name>

<Narrative prose ...>
<!-- Embed close-up for a tile that needs it: -->

## Dashboard Variables
| Variable | Type | Default | Description |
|-------------|-------|---------|--------------------------------------------------------|
| `$Accounts` | query | all | Filter by Snowflake account (`deployment.environment`) |
| `$<Other>` | query | all | <description> |
<One sentence on multi-select behaviour and typical filtering patterns.>
## Required Plugin(s)
<Which plugins must be enabled, what contexts they produce, collection cadence,
and data latency summary.>
## Known Limitations
- <Data gap, latency caveat, or deferred tile — one bullet per issue.>
- Reference telemetry issue IDs (e.g. TI-004) where applicable.
docs/dashboards/README.mdAdd a row to the dashboards table after the closest related entry. Keep the table sorted by domain/theme, not alphabetically.
| [<Title>](dashboards/<name>/readme.md) | <one-line description> | `<plugin-a>`, `<plugin-b>` |
Same pattern for docs/workflows/README.md.
At the end of every dashboard/workflow delivery, output a Screenshot Checklist in this exact format so the human reviewer knows exactly what to capture:
## Screenshot Checklist — <Dashboard Name>
Please open the dashboard at:
<Dynatrace URL>
Set variables: $Accounts = <dev environment name>, $<Other> = <value>
Capture and save to docs/dashboards/<name>/img/:
[ ] overview.png
Full dashboard scrolled to show all sections, time range = last 2h
[ ] section-<name>.png
<Section title> — zoom in so tile labels are readable
[ ] <tile-name>.png
<Specific tile> — should show <what representative data looks like>
(repeat for each meaningful section / tile)
This checklist must be the last output of any dashboard implementation task, after the git commit.
Once the human drops the image files into img/, update readme.md to embed them
inline (replacing any placeholder table or comment) using  at
the top of each relevant section, as described in the readme.md Structure above.
The git commit for a dashboard or workflow delivery must include all of:
docs/dashboards/<name>/<name>.yml ← YAML source (with id: field added)
docs/dashboards/<name>/readme.md ← documentation
docs/dashboards/<name>/img/.gitkeep ← placeholder
docs/dashboards/README.md ← updated index
test/tools/setup_test_<plugin>.sql ← synthetic setup (if new or updated)
For workflows, replace docs/dashboards/ with docs/workflows/.
Commit message format:
feat(dashboards): add <dashboard-name> monitoring dashboard
Covers use cases: <comma-separated list from readme Use Cases table>
Dashboard ID: <uuid from dtctl>
Synthetic setup: test/tools/setup_test_<plugin>.sql
Commit message rules:
#83).After the git commit and push, output a Use Cases Summary so the human can verify scope coverage:
## ✅ Implemented Use Cases — <Dashboard Name>
| # | Use Case | Theme | Tile | Status |
|---|------------|---------|--------------|-----------------------|
| 1 | <use case> | <theme> | <tile title> | ✅ Implemented |
| 2 | <use case> | <theme> | <tile title> | ✅ Implemented |
| 3 | <use case> | <theme> | — | ⏭ Deferred (<reason>) |
This summary must appear after the Screenshot Checklist.