metrics-schema-generator
// Generate metrics schemas for Prometheus, OpenTelemetry, and Grafana dashboards
$ git log --oneline --stat
stars:384
forks:73
updated:March 4, 2026
SKILL.mdreadonly
SKILL.md Frontmatter
namemetrics-schema-generator
descriptionGenerate metrics schemas for Prometheus, OpenTelemetry, and Grafana dashboards
allowed-toolsBash,Read,Write,Glob
Metrics Schema Generator Skill
Overview
Generates metrics schemas for Prometheus, OpenTelemetry metric definitions, SLI/SLO specifications, and Grafana dashboard configurations.
Capabilities
- Generate Prometheus metrics schemas
- OpenTelemetry metric definitions
- SLI/SLO specification generation
- Grafana dashboard generation
- Metric naming conventions
- Label/tag standardization
- Recording rules generation
- Alert rules generation
Target Processes
- observability-implementation
- performance-optimization
Input Schema
{
"type": "object",
"required": ["services"],
"properties": {
"services": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": { "type": "string" },
"type": { "type": "string" },
"endpoints": { "type": "array" },
"slos": { "type": "array" }
}
}
},
"format": {
"type": "string",
"enum": ["prometheus", "opentelemetry", "both"],
"default": "prometheus"
},
"options": {
"type": "object",
"properties": {
"includeStandardMetrics": {
"type": "boolean",
"default": true
},
"generateDashboards": {
"type": "boolean",
"default": true
},
"generateAlerts": {
"type": "boolean",
"default": true
},
"namingConvention": {
"type": "string",
"enum": ["prometheus", "opentelemetry"],
"default": "prometheus"
}
}
}
}
}
Output Schema
{
"type": "object",
"properties": {
"metrics": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": { "type": "string" },
"type": { "type": "string" },
"description": { "type": "string" },
"labels": { "type": "array" },
"unit": { "type": "string" }
}
}
},
"sloDefinitions": {
"type": "array"
},
"recordingRules": {
"type": "string",
"description": "Prometheus recording rules YAML"
},
"alertRules": {
"type": "string",
"description": "Prometheus alert rules YAML"
},
"dashboards": {
"type": "array",
"description": "Grafana dashboard JSON definitions"
}
}
}
Usage Example
{
kind: 'skill',
skill: {
name: 'metrics-schema-generator',
context: {
services: [
{
name: 'api-gateway',
type: 'http',
endpoints: ['/api/users', '/api/orders'],
slos: [{ name: 'availability', target: 99.9 }]
}
],
format: 'prometheus',
options: {
generateDashboards: true,
generateAlerts: true
}
}
}
}