-
Notifications
You must be signed in to change notification settings - Fork 5
Expand file tree
/
Copy pathgrafana.yaml
More file actions
77 lines (64 loc) · 2.08 KB
/
Copy pathgrafana.yaml
File metadata and controls
77 lines (64 loc) · 2.08 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
# Heddle Starter Pack: Grafana
# Dashboard and alert visibility for any Grafana instance.
#
# Usage:
# 1. Copy to agents/
# 2. Update base URL and auth header
# 3. Store credentials: heddle secrets set grafana-auth "Bearer <token>"
# Then: heddle secrets grant grafana grafana-auth
# 4. heddle run agents/grafana.yaml --port 8201
#
# All tools are read-only (T1). Requires an API key or basic auth.
agent:
name: grafana
version: "1.0.0"
description: >
Read-only Grafana bridge. Lists dashboards, retrieves dashboard JSON,
shows datasources, and checks alert rule status.
exposes:
- name: dashboards
access: read
description: "List all Grafana dashboards with UIDs and titles."
- name: dashboard
access: read
description: "Get the full JSON model of a dashboard by UID."
parameters:
uid: { type: string, required: true, description: "Dashboard UID" }
- name: datasources
access: read
description: "List all configured Grafana datasources."
- name: alert_rules
access: read
description: "List all Grafana alert rules and their current state."
- name: health
access: read
description: "Check Grafana health and version."
http_bridge:
- tool_name: dashboards
method: GET
url: "http://localhost:3000/api/search?type=dash-db"
headers:
Authorization: "{{secret:grafana-auth}}"
- tool_name: dashboard
method: GET
url: "http://localhost:3000/api/dashboards/uid/{{uid}}"
headers:
Authorization: "{{secret:grafana-auth}}"
- tool_name: datasources
method: GET
url: "http://localhost:3000/api/datasources"
headers:
Authorization: "{{secret:grafana-auth}}"
- tool_name: alert_rules
method: GET
url: "http://localhost:3000/api/ruler/grafana/api/v1/rules"
headers:
Authorization: "{{secret:grafana-auth}}"
- tool_name: health
method: GET
url: "http://localhost:3000/api/health"
runtime:
trust_tier: 1
max_execution_time: 30s
triggers:
- type: on_demand